From 1ca62e5352b2d3eba4342c0dc728c9e38d07e5dc Mon Sep 17 00:00:00 2001 From: Anthony Scemama Date: Thu, 28 May 2015 14:00:30 +0200 Subject: [PATCH 01/10] Added support for Ninja --- configure.ac | 11 +++++++++++ make.config.in | 1 + src/Makefile | 1 + version | 2 +- 4 files changed, 14 insertions(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac index 4de884f..862ceba 100644 --- a/configure.ac +++ b/configure.ac @@ -62,6 +62,17 @@ if [[ "$PYTHON" = no ]] ; then AC_MSG_ERROR([Please install Python.]) fi +# Test Ninja +# ----------- + +if [[ -z "$NINJA" ]] ; then + AC_CHECK_PROG([NINJA],[ninja],[yes],[no]) + if [[ "$NINJA" = no ]] ; then + NINJA= + fi +fi +AC_SUBST[[NINJA]] + # Test AR # ------- diff --git a/make.config.in b/make.config.in index 916197a..31efc33 100644 --- a/make.config.in +++ b/make.config.in @@ -3,3 +3,4 @@ FC = @FC@ -fPIC FCFLAGS= @FCFLAGS@ RANLIB = @RANLIB@ AR = @AR@ +NINJA = @NINJA@ diff --git a/src/Makefile b/src/Makefile index d4464ab..5975a22 100644 --- a/src/Makefile +++ b/src/Makefile @@ -27,6 +27,7 @@ DEFAULT_TARGET: python ../make.config: make -C .. make.config include ../make.config +export include irpf90.make diff --git a/version b/version index 07c79d3..a9a3ac1 100644 --- a/version +++ b/version @@ -1 +1 @@ -VERSION=1.2.1 +VERSION=1.2.2 From 6df5989f1667bf8f5ebd05ba5e980bc611c4bc5d Mon Sep 17 00:00:00 2001 From: Anthony Scemama Date: Mon, 1 Jun 2015 15:06:01 +0200 Subject: [PATCH 02/10] Added doc in IRPF90 subroutines --- src/groups_templates.py | 75 ++++++++++++++++++++++++++++++++++++++--- 1 file changed, 70 insertions(+), 5 deletions(-) diff --git a/src/groups_templates.py b/src/groups_templates.py index cb31829..ee197fd 100644 --- a/src/groups_templates.py +++ b/src/groups_templates.py @@ -49,6 +49,7 @@ END_PROVIDER attributes = """ BEGIN_PROVIDER [ %(type)s, %(group)s_%(var)s ] + implicit none BEGIN_DOC ! %(var)s attribute of group %(group)s END_DOC @@ -58,23 +59,39 @@ BEGIN_PROVIDER [ %(type)s, %(group)s_%(var)s ] END_PROVIDER subroutine ezfio_set_%(group)s_%(var)s(%(var)s) + implicit none + BEGIN_DOC +! Sets the %(group)s/%(var)s attribute + END_DOC %(type_set)s :: %(var)s call ezfio_write_%(type_short)s(path_%(group)s,'%(var)s',%(var)s) FREE %(group)s_%(var)s end subroutine subroutine ezfio_get_%(group)s_%(var)s(%(var)s) + implicit none + BEGIN_DOC +! Gets the %(group)s/%(var)s attribute + END_DOC %(type)s :: %(var)s %(var)s = %(group)s_%(var)s end subroutine subroutine ezfio_has_%(group)s_%(var)s(result) + implicit none + BEGIN_DOC +! True if the %(group)s/%(var)s attribute exists in the EZFIO directory + END_DOC logical :: result inquire(file=trim(path_%(group)s)//'/%(var)s',exist=result) end subroutine subroutine ezfio_free_%(group)s_%(var)s() - FREE %(group)s_%(var)s + implicit none + BEGIN_DOC +! Frees the memory for %(group)s/%(var) + END_DOC + FREE %(group)s_%(var)s end """ @@ -95,6 +112,10 @@ BEGIN_PROVIDER [ %(type)s, %(group)s_%(var)s, %(dims)s ] END_PROVIDER subroutine ezfio_set_%(group)s_%(var)s(%(var)s) + implicit none + BEGIN_DOC +! Sets the %(group)s/%(var)s attribute + END_DOC %(type_set)s :: %(var)s (*) integer :: rank, dim_max, i integer :: dims(10) @@ -107,18 +128,30 @@ subroutine ezfio_set_%(group)s_%(var)s(%(var)s) end subroutine subroutine ezfio_get_%(group)s_%(var)s(%(var)s) + implicit none + BEGIN_DOC +! Gets the %(group)s/%(var)s attribute + END_DOC %(type)s, intent(out) :: %(var)s (*) character*(1024) :: message %(var)s(1: %(dim_max)s ) = reshape ( %(group)s_%(var)s, (/ %(dim_max)s /) ) end subroutine subroutine ezfio_has_%(group)s_%(var)s(result) + implicit none + BEGIN_DOC +! True if the %(group)s/%(var)s attribute exists in the EZFIO directory + END_DOC logical :: result inquire(file=trim(path_%(group)s)//'/%(var)s.gz',exist=result) end subroutine subroutine ezfio_free_%(group)s_%(var)s() - FREE %(group)s_%(var)s + implicit none + BEGIN_DOC +! Frees the memory for %(group)s/%(var) + END_DOC + FREE %(group)s_%(var)s end """ @@ -131,38 +164,70 @@ BEGIN_PROVIDER [ %(type)s, %(group)s_%(var)s ] END_PROVIDER subroutine ezfio_get_%(group)s_%(var)s(%(var)s) - %(type)s, intent(out) :: %(var)s - %(var)s = %(group)s_%(var)s + implicit none + BEGIN_DOC +! Gets the %(group)s/%(var)s attribute + END_DOC + %(type)s, intent(out) :: %(var)s + %(var)s = %(group)s_%(var)s end subroutine ezfio_free_%(group)s_%(var)s() - FREE %(group)s_%(var)s + implicit none + BEGIN_DOC +! Frees the memory for %(group)s/%(var) + END_DOC + FREE %(group)s_%(var)s end """ buffered=""" subroutine ezfio_open_read_%(group)s_%(var)s() + implicit none + BEGIN_DOC +! Opens the read buffer for %(group)s/%(var)s + END_DOC call ezfio_open_read_buffer(path_%(group)s,'%(var)s',%(dims)s) end subroutine ezfio_open_write_%(group)s_%(var)s() + implicit none + BEGIN_DOC +! Opens the write buffer for %(group)s/%(var)s + END_DOC call ezfio_open_write_buffer(path_%(group)s,'%(var)s',%(dims)s) end subroutine ezfio_close_read_%(group)s_%(var)s() + implicit none + BEGIN_DOC +! Closes the read buffer for %(group)s/%(var)s + END_DOC call ezfio_close_read_buffer(path_%(group)s,'%(var)s') end subroutine ezfio_close_write_%(group)s_%(var)s() + implicit none + BEGIN_DOC +! Closes the write buffer for %(group)s/%(var)s + END_DOC call ezfio_close_write_buffer(path_%(group)s,'%(var)s') end subroutine ezfio_has_%(group)s_%(var)s(result) + implicit none + BEGIN_DOC +! If the %(group)s_%(var)s, returns True + END_DOC logical :: result inquire(file=trim(path_%(group)s)//'/%(var)s.gz',exist=result) end subroutine subroutine ezfio_free_%(group)s_%(var)s() + implicit none + BEGIN_DOC +! Frees the memory for %(group)s/%(var) + END_DOC FREE %(group)s_%(var)s end """ From 425ed281c2b123604c7d1323813e07e6068ac339 Mon Sep 17 00:00:00 2001 From: Anthony Scemama Date: Mon, 1 Jun 2015 15:11:31 +0200 Subject: [PATCH 03/10] Added doc in IRPF90 subroutines --- src/libezfio_error.irp.f | 3 +++ src/libezfio_file.irp.f | 24 +++++++++++++++++++++++ src/libezfio_util.irp.f | 42 ++++++++++++++++++++++++++++++++++++++++ 3 files changed, 69 insertions(+) diff --git a/src/libezfio_error.irp.f b/src/libezfio_error.irp.f index df612d6..5756bbb 100644 --- a/src/libezfio_error.irp.f +++ b/src/libezfio_error.irp.f @@ -24,6 +24,9 @@ subroutine ezfio_error(where,txt) implicit none + BEGIN_DOC +! Prints an error message + END_DOC character*(*) :: where character*(*) :: txt character*(128) :: fname diff --git a/src/libezfio_file.irp.f b/src/libezfio_file.irp.f index 31de062..860eb8e 100644 --- a/src/libezfio_file.irp.f +++ b/src/libezfio_file.irp.f @@ -23,6 +23,7 @@ ! scemama@irsamc.ups-tlse.fr BEGIN_PROVIDER [ logical, libezfio_read_only ] + implicit none BEGIN_DOC ! If true, the EZFIO file is read-only END_DOC @@ -31,18 +32,29 @@ BEGIN_PROVIDER [ logical, libezfio_read_only ] END_PROVIDER subroutine ezfio_set_read_only(v) + implicit none + BEGIN_DOC +! If true, sets the EZFIO file in a read-only state + END_DOC logical :: v libezfio_read_only = v TOUCH libezfio_read_only end subroutine ezfio_set_read_only subroutine ezfio_is_read_only(v) + implicit none + BEGIN_DOC +! True if the EZFIO file is in a read-only state + END_DOC logical :: v v = libezfio_read_only end subroutine ezfio_is_read_only integer function char_to_version(v) implicit none + BEGIN_DOC +! Computes the version number from a string + END_DOC character*(32), intent(in) :: v character*(32) :: vnew integer :: i, j, k @@ -78,6 +90,9 @@ END_PROVIDER subroutine ezfio_get_filename(fname) implicit none + BEGIN_DOC +! Returns the name of the EZFIO file + END_DOC character*(*) :: fname fname = libezfio_filename end subroutine @@ -107,6 +122,9 @@ END_PROVIDER logical function exists(path) implicit none + BEGIN_DOC +! Returns True if the path exists + END_DOC character*(*) :: path character*(32) :: V inquire(file=trim(path)//'/.version',exist=exists) @@ -124,6 +142,9 @@ end function subroutine ezfio_set_file(filename_in) implicit none + BEGIN_DOC +! Sets the file for I/O + END_DOC character*(*) :: filename_in @@ -153,6 +174,9 @@ end subroutine subroutine ezfio_finish() implicit none + BEGIN_DOC +! Close all open buffers + END_DOC close(libezfio_iunit) BEGIN_SHELL [ /usr/bin/python ] import os diff --git a/src/libezfio_util.irp.f b/src/libezfio_util.irp.f index 1bc866a..d87ef91 100644 --- a/src/libezfio_util.irp.f +++ b/src/libezfio_util.irp.f @@ -35,6 +35,9 @@ END_PROVIDER logical function ezfio_exists(path) implicit none + BEGIN_DOC +! Checks if a file path exists + END_DOC character*(*) :: path inquire(file=trim(path)//'/.version',exist=ezfio_exists) if (ezfio_exists) then @@ -47,6 +50,9 @@ end function subroutine ezfio_mkdir(path) implicit none + BEGIN_DOC +! Creates a directory + END_DOC character*(*) :: path logical :: ezfio_exists if (libezfio_read_only) then @@ -63,6 +69,9 @@ end subroutine subroutine libezfio_openz(filename,mode,err) implicit none + BEGIN_DOC +! Opens a compressed file + END_DOC character*(*) :: filename, mode character*(1024) :: fifo integer :: err @@ -83,6 +92,9 @@ end subroutine libezfio_closez(filename,mode) implicit none + BEGIN_DOC +! Closes a compressed file + END_DOC character*(*) :: filename, mode character*(1024) :: fifo fifo = trim(filename)//'.'//PID_str @@ -102,6 +114,9 @@ from f_types import format, t_short template = """ subroutine ezfio_read_%(type_short)s(dir,fil,dat) implicit none + BEGIN_DOC +! Reads a %(type_short)s + END_DOC character*(*), intent(in) :: dir, fil %(type)s, intent(out) :: dat character*(1024) :: l_filename @@ -117,6 +132,9 @@ end subroutine ezfio_write_%(type_short)s(dir,fil,dat) implicit none + BEGIN_DOC +! Writes a %(type_short)s + END_DOC character*(*), intent(in) :: dir, fil %(type)s, intent(in) :: dat character*(1024) :: l_filename(2) @@ -133,6 +151,9 @@ end subroutine ezfio_read_array_%(type_short)s(dir,fil,rank,dims,dim_max,dat) implicit none + BEGIN_DOC +! Reads a %(type_short)s array + END_DOC character*(*), intent(in) :: dir, fil integer :: rank integer :: dims(rank) @@ -182,6 +203,9 @@ end subroutine ezfio_write_array_%(type_short)s(dir,fil,rank,dims,dim_max,dat) implicit none + BEGIN_DOC +! Writes a %(type_short)s array + END_DOC character*(*), intent(in) :: dir, fil integer, intent(in) :: rank integer, intent(in) :: dims(rank) @@ -337,6 +361,9 @@ END_PROVIDER subroutine ezfio_open_write_buffer(dir,fil,rank) implicit none + BEGIN_DOC +! Opens a buffer for writing + END_DOC character*(*),intent(in) :: dir character*(*),intent(in) :: fil integer,intent(in) :: rank @@ -367,6 +394,9 @@ end subroutine ezfio_open_read_buffer(dir,fil,rank) implicit none + BEGIN_DOC +! Opens a buffer for reading + END_DOC character*(*),intent(in) :: dir character*(*),intent(in) :: fil integer,intent(in) :: rank @@ -399,6 +429,9 @@ end subroutine ezfio_close_read_buffer(dir,fil,rank) implicit none + BEGIN_DOC +! Closes a buffer + END_DOC character*(*),intent(in) :: dir character*(*),intent(in) :: fil integer,intent(in) :: rank @@ -411,6 +444,9 @@ end subroutine ezfio_close_write_buffer(dir,fil,rank) implicit none + BEGIN_DOC +! Closes a buffer + END_DOC character*(*),intent(in) :: dir character*(*),intent(in) :: fil integer,intent(in) :: rank @@ -423,6 +459,9 @@ end subroutine ezfio_read_buffer(indices,values,isize) implicit none + BEGIN_DOC +! Reads a buffer + END_DOC integer, intent(inout) :: isize integer, intent(out) :: indices(*) @@ -444,6 +483,9 @@ end subroutine ezfio_write_buffer(indices,values,isize) implicit none + BEGIN_DOC +! Writes a buffer + END_DOC integer, intent(in) :: isize integer, intent(in) :: indices(*) From 5313cd9e4124277ad1b647e7afc4406c248084f9 Mon Sep 17 00:00:00 2001 From: Anthony Scemama Date: Mon, 1 Jun 2015 16:12:05 +0200 Subject: [PATCH 04/10] Works with ninja --- Bash/ezfio.sh | 4 + README.rst | 5 +- configure | 3929 --------------------------------------- configure.ac | 145 -- make.config.example | 6 + make.config.in | 6 - src/Makefile | 22 +- src/create_bash.py | 89 + src/create_python.py | 31 + src/groups.py | 3 + src/groups_templates.py | 8 +- src/libezfio_util.irp.f | 4 + src/run.irp.f | 3 + version | 2 +- 14 files changed, 157 insertions(+), 4100 deletions(-) create mode 100644 Bash/ezfio.sh delete mode 100755 configure delete mode 100644 configure.ac create mode 100644 make.config.example delete mode 100644 make.config.in create mode 100755 src/create_bash.py create mode 100755 src/create_python.py diff --git a/Bash/ezfio.sh b/Bash/ezfio.sh new file mode 100644 index 0000000..c901bc3 --- /dev/null +++ b/Bash/ezfio.sh @@ -0,0 +1,4 @@ +#!/bin/bash + +# TODO + diff --git a/README.rst b/README.rst index 77764c9..95970cb 100644 --- a/README.rst +++ b/README.rst @@ -39,11 +39,12 @@ Create an empty directory for your project and unpack the ``EZFIO.tar.gz`` file $ ls EZFIO/ -Get into the ``EZFIO`` directory and run: +Get into the ``EZFIO`` directory and set up your compiling options: .. code-block:: bash - $ ./configure + $ cp make.config.example make.config + $ vim make.config Now, configure the library to produce the desired suboutines. Get into the ``config`` directory and create a new file ``test.config`` diff --git a/configure b/configure deleted file mode 100755 index 9ecabcb..0000000 --- a/configure +++ /dev/null @@ -1,3929 +0,0 @@ -#! /bin/sh -# From configure.ac Revision: VERSION . -# Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.68. -# -# -# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, -# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software -# Foundation, Inc. -# -# -# This configure script is free software; the Free Software Foundation -# gives unlimited permission to copy, distribute and modify it. -## -------------------- ## -## M4sh Initialization. ## -## -------------------- ## - -# Be more Bourne compatible -DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in #( - *posix*) : - set -o posix ;; #( - *) : - ;; -esac -fi - - -as_nl=' -' -export as_nl -# Printing a long string crashes Solaris 7 /usr/bin/printf. -as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo -# Prefer a ksh shell builtin over an external printf program on Solaris, -# but without wasting forks for bash or zsh. -if test -z "$BASH_VERSION$ZSH_VERSION" \ - && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='print -r --' - as_echo_n='print -rn --' -elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='printf %s\n' - as_echo_n='printf %s' -else - if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then - as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' - as_echo_n='/usr/ucb/echo -n' - else - as_echo_body='eval expr "X$1" : "X\\(.*\\)"' - as_echo_n_body='eval - arg=$1; - case $arg in #( - *"$as_nl"*) - expr "X$arg" : "X\\(.*\\)$as_nl"; - arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; - esac; - expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" - ' - export as_echo_n_body - as_echo_n='sh -c $as_echo_n_body as_echo' - fi - export as_echo_body - as_echo='sh -c $as_echo_body as_echo' -fi - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { - (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || - PATH_SEPARATOR=';' - } -fi - - -# IFS -# We need space, tab and new line, in precisely that order. Quoting is -# there to prevent editors from complaining about space-tab. -# (If _AS_PATH_WALK were called with IFS unset, it would disable word -# splitting by setting IFS to empty value.) -IFS=" "" $as_nl" - -# Find who we are. Look in the path if we contain no directory separator. -as_myself= -case $0 in #(( - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break - done -IFS=$as_save_IFS - - ;; -esac -# We did not find ourselves, most probably we were run as `sh COMMAND' -# in which case we are not to be found in the path. -if test "x$as_myself" = x; then - as_myself=$0 -fi -if test ! -f "$as_myself"; then - $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - exit 1 -fi - -# Unset variables that we do not need and which cause bugs (e.g. in -# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" -# suppresses any "Segmentation fault" message there. '((' could -# trigger a bug in pdksh 5.2.14. -for as_var in BASH_ENV ENV MAIL MAILPATH -do eval test x\${$as_var+set} = xset \ - && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : -done -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -LC_ALL=C -export LC_ALL -LANGUAGE=C -export LANGUAGE - -# CDPATH. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - -if test "x$CONFIG_SHELL" = x; then - as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then : - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which - # is contrary to our usage. Disable this feature. - alias -g '\${1+\"\$@\"}'='\"\$@\"' - setopt NO_GLOB_SUBST -else - case \`(set -o) 2>/dev/null\` in #( - *posix*) : - set -o posix ;; #( - *) : - ;; -esac -fi -" - as_required="as_fn_return () { (exit \$1); } -as_fn_success () { as_fn_return 0; } -as_fn_failure () { as_fn_return 1; } -as_fn_ret_success () { return 0; } -as_fn_ret_failure () { return 1; } - -exitcode=0 -as_fn_success || { exitcode=1; echo as_fn_success failed.; } -as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; } -as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; } -as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; } -if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then : - -else - exitcode=1; echo positional parameters were not saved. -fi -test x\$exitcode = x0 || exit 1" - as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO - as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO - eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && - test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1" - if (eval "$as_required") 2>/dev/null; then : - as_have_required=yes -else - as_have_required=no -fi - if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then : - -else - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -as_found=false -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - as_found=: - case $as_dir in #( - /*) - for as_base in sh bash ksh sh5; do - # Try only shells that exist, to save several forks. - as_shell=$as_dir/$as_base - if { test -f "$as_shell" || test -f "$as_shell.exe"; } && - { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then : - CONFIG_SHELL=$as_shell as_have_required=yes - if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then : - break 2 -fi -fi - done;; - esac - as_found=false -done -$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } && - { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then : - CONFIG_SHELL=$SHELL as_have_required=yes -fi; } -IFS=$as_save_IFS - - - if test "x$CONFIG_SHELL" != x; then : - # We cannot yet assume a decent shell, so we have to provide a - # neutralization value for shells without unset; and this also - # works around shells that cannot unset nonexistent variables. - # Preserve -v and -x to the replacement shell. - BASH_ENV=/dev/null - ENV=/dev/null - (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV - export CONFIG_SHELL - case $- in # (((( - *v*x* | *x*v* ) as_opts=-vx ;; - *v* ) as_opts=-v ;; - *x* ) as_opts=-x ;; - * ) as_opts= ;; - esac - exec "$CONFIG_SHELL" $as_opts "$as_myself" ${1+"$@"} -fi - - if test x$as_have_required = xno; then : - $as_echo "$0: This script requires a shell more modern than all" - $as_echo "$0: the shells that I found on your system." - if test x${ZSH_VERSION+set} = xset ; then - $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should" - $as_echo "$0: be upgraded to zsh 4.3.4 or later." - else - $as_echo "$0: Please tell bug-autoconf@gnu.org about your system, -$0: including any error possibly output before this -$0: message. Then install a modern shell, or manually run -$0: the script under such a shell if you do have one." - fi - exit 1 -fi -fi -fi -SHELL=${CONFIG_SHELL-/bin/sh} -export SHELL -# Unset more variables known to interfere with behavior of common tools. -CLICOLOR_FORCE= GREP_OPTIONS= -unset CLICOLOR_FORCE GREP_OPTIONS - -## --------------------- ## -## M4sh Shell Functions. ## -## --------------------- ## -# as_fn_unset VAR -# --------------- -# Portably unset VAR. -as_fn_unset () -{ - { eval $1=; unset $1;} -} -as_unset=as_fn_unset - -# as_fn_set_status STATUS -# ----------------------- -# Set $? to STATUS, without forking. -as_fn_set_status () -{ - return $1 -} # as_fn_set_status - -# as_fn_exit STATUS -# ----------------- -# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. -as_fn_exit () -{ - set +e - as_fn_set_status $1 - exit $1 -} # as_fn_exit - -# as_fn_mkdir_p -# ------------- -# Create "$as_dir" as a directory, including parents if necessary. -as_fn_mkdir_p () -{ - - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || eval $as_mkdir_p || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" - - -} # as_fn_mkdir_p -# as_fn_append VAR VALUE -# ---------------------- -# Append the text in VALUE to the end of the definition contained in VAR. Take -# advantage of any shell optimizations that allow amortized linear growth over -# repeated appends, instead of the typical quadratic growth present in naive -# implementations. -if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : - eval 'as_fn_append () - { - eval $1+=\$2 - }' -else - as_fn_append () - { - eval $1=\$$1\$2 - } -fi # as_fn_append - -# as_fn_arith ARG... -# ------------------ -# Perform arithmetic evaluation on the ARGs, and store the result in the -# global $as_val. Take advantage of shells that can avoid forks. The arguments -# must be portable across $(()) and expr. -if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : - eval 'as_fn_arith () - { - as_val=$(( $* )) - }' -else - as_fn_arith () - { - as_val=`expr "$@" || test $? -eq 1` - } -fi # as_fn_arith - - -# as_fn_error STATUS ERROR [LINENO LOG_FD] -# ---------------------------------------- -# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are -# provided, also output the error to LOG_FD, referencing LINENO. Then exit the -# script with STATUS, using 1 if that was 0. -as_fn_error () -{ - as_status=$1; test $as_status -eq 0 && as_status=1 - if test "$4"; then - as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 - fi - $as_echo "$as_me: error: $2" >&2 - as_fn_exit $as_status -} # as_fn_error - -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi - -as_me=`$as_basename -- "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - - - as_lineno_1=$LINENO as_lineno_1a=$LINENO - as_lineno_2=$LINENO as_lineno_2a=$LINENO - eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" && - test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || { - # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-) - sed -n ' - p - /[$]LINENO/= - ' <$as_myself | - sed ' - s/[$]LINENO.*/&-/ - t lineno - b - :lineno - N - :loop - s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ - t loop - s/-\n.*// - ' >$as_me.lineno && - chmod +x "$as_me.lineno" || - { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensitive to this). - . "./$as_me.lineno" - # Exit status is that of the last command. - exit -} - -ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in #((((( --n*) - case `echo 'xy\c'` in - *c*) ECHO_T=' ';; # ECHO_T is single tab character. - xy) ECHO_C='\c';; - *) echo `echo ksh88 bug on AIX 6.1` > /dev/null - ECHO_T=' ';; - esac;; -*) - ECHO_N='-n';; -esac - -rm -f conf$$ conf$$.exe conf$$.file -if test -d conf$$.dir; then - rm -f conf$$.dir/conf$$.file -else - rm -f conf$$.dir - mkdir conf$$.dir 2>/dev/null -fi -if (echo >conf$$.file) 2>/dev/null; then - if ln -s conf$$.file conf$$ 2>/dev/null; then - as_ln_s='ln -s' - # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -p'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -p' - elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln - else - as_ln_s='cp -p' - fi -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file -rmdir conf$$.dir 2>/dev/null - -if mkdir -p . 2>/dev/null; then - as_mkdir_p='mkdir -p "$as_dir"' -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -if test -x / >/dev/null 2>&1; then - as_test_x='test -x' -else - if ls -dL / >/dev/null 2>&1; then - as_ls_L_option=L - else - as_ls_L_option= - fi - as_test_x=' - eval sh -c '\'' - if test -d "$1"; then - test -d "$1/."; - else - case $1 in #( - -*)set "./$1";; - esac; - case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( - ???[sx]*):;;*)false;;esac;fi - '\'' sh - ' -fi -as_executable_p=$as_test_x - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -test -n "$DJDIR" || exec 7<&0 &1 - -# Name of the host. -# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status, -# so uname gets run too. -ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` - -# -# Initializations. -# -ac_default_prefix=/usr/local -ac_clean_files= -ac_config_libobj_dir=. -LIBOBJS= -cross_compiling=no -subdirs= -MFLAGS= -MAKEFLAGS= - -# Identity of this package. -PACKAGE_NAME= -PACKAGE_TARNAME= -PACKAGE_VERSION= -PACKAGE_STRING= -PACKAGE_BUGREPORT= -PACKAGE_URL= - -ac_unique_file="EZFIO Library Generator" -ac_unique_file="src/run.irp.f" -ac_default_prefix=./ -ac_subst_vars='LTLIBOBJS -LIBOBJS -LIB -IRPF90 -HAS_GZIP -MKFIFO -ZCAT -GZIP -AR -PYTHON -FCFLAGS_F90 -OBJEXT -EXEEXT -ac_ct_FC -LDFLAGS -FCFLAGS -FC -RANLIB -ROOT -target_alias -host_alias -build_alias -LIBS -ECHO_T -ECHO_N -ECHO_C -DEFS -mandir -localedir -libdir -psdir -pdfdir -dvidir -htmldir -infodir -docdir -oldincludedir -includedir -localstatedir -sharedstatedir -sysconfdir -datadir -datarootdir -libexecdir -sbindir -bindir -program_transform_name -prefix -exec_prefix -PACKAGE_URL -PACKAGE_BUGREPORT -PACKAGE_STRING -PACKAGE_VERSION -PACKAGE_TARNAME -PACKAGE_NAME -PATH_SEPARATOR -SHELL -VERSION' -ac_subst_files='' -ac_user_opts=' -enable_option_checking -' - ac_precious_vars='build_alias -host_alias -target_alias -FC -FCFLAGS -LDFLAGS -LIBS' - - -# Initialize some variables set by options. -ac_init_help= -ac_init_version=false -ac_unrecognized_opts= -ac_unrecognized_sep= -# The variables have the same names as the options, with -# dashes changed to underlines. -cache_file=/dev/null -exec_prefix=NONE -no_create= -no_recursion= -prefix=NONE -program_prefix=NONE -program_suffix=NONE -program_transform_name=s,x,x, -silent= -site= -srcdir= -verbose= -x_includes=NONE -x_libraries=NONE - -# Installation directory options. -# These are left unexpanded so users can "make install exec_prefix=/foo" -# and all the variables that are supposed to be based on exec_prefix -# by default will actually change. -# Use braces instead of parens because sh, perl, etc. also accept them. -# (The list follows the same order as the GNU Coding Standards.) -bindir='${exec_prefix}/bin' -sbindir='${exec_prefix}/sbin' -libexecdir='${exec_prefix}/libexec' -datarootdir='${prefix}/share' -datadir='${datarootdir}' -sysconfdir='${prefix}/etc' -sharedstatedir='${prefix}/com' -localstatedir='${prefix}/var' -includedir='${prefix}/include' -oldincludedir='/usr/include' -docdir='${datarootdir}/doc/${PACKAGE}' -infodir='${datarootdir}/info' -htmldir='${docdir}' -dvidir='${docdir}' -pdfdir='${docdir}' -psdir='${docdir}' -libdir='${exec_prefix}/lib' -localedir='${datarootdir}/locale' -mandir='${datarootdir}/man' - -ac_prev= -ac_dashdash= -for ac_option -do - # If the previous option needs an argument, assign it. - if test -n "$ac_prev"; then - eval $ac_prev=\$ac_option - ac_prev= - continue - fi - - case $ac_option in - *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; - *=) ac_optarg= ;; - *) ac_optarg=yes ;; - esac - - # Accept the important Cygnus configure options, so we can diagnose typos. - - case $ac_dashdash$ac_option in - --) - ac_dashdash=yes ;; - - -bindir | --bindir | --bindi | --bind | --bin | --bi) - ac_prev=bindir ;; - -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) - bindir=$ac_optarg ;; - - -build | --build | --buil | --bui | --bu) - ac_prev=build_alias ;; - -build=* | --build=* | --buil=* | --bui=* | --bu=*) - build_alias=$ac_optarg ;; - - -cache-file | --cache-file | --cache-fil | --cache-fi \ - | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) - ac_prev=cache_file ;; - -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ - | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) - cache_file=$ac_optarg ;; - - --config-cache | -C) - cache_file=config.cache ;; - - -datadir | --datadir | --datadi | --datad) - ac_prev=datadir ;; - -datadir=* | --datadir=* | --datadi=* | --datad=*) - datadir=$ac_optarg ;; - - -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \ - | --dataroo | --dataro | --datar) - ac_prev=datarootdir ;; - -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \ - | --dataroot=* | --dataroo=* | --dataro=* | --datar=*) - datarootdir=$ac_optarg ;; - - -disable-* | --disable-*) - ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error $? "invalid feature name: $ac_useropt" - ac_useropt_orig=$ac_useropt - ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` - case $ac_user_opts in - *" -"enable_$ac_useropt" -"*) ;; - *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig" - ac_unrecognized_sep=', ';; - esac - eval enable_$ac_useropt=no ;; - - -docdir | --docdir | --docdi | --doc | --do) - ac_prev=docdir ;; - -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*) - docdir=$ac_optarg ;; - - -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv) - ac_prev=dvidir ;; - -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*) - dvidir=$ac_optarg ;; - - -enable-* | --enable-*) - ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error $? "invalid feature name: $ac_useropt" - ac_useropt_orig=$ac_useropt - ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` - case $ac_user_opts in - *" -"enable_$ac_useropt" -"*) ;; - *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig" - ac_unrecognized_sep=', ';; - esac - eval enable_$ac_useropt=\$ac_optarg ;; - - -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ - | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ - | --exec | --exe | --ex) - ac_prev=exec_prefix ;; - -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ - | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ - | --exec=* | --exe=* | --ex=*) - exec_prefix=$ac_optarg ;; - - -gas | --gas | --ga | --g) - # Obsolete; use --with-gas. - with_gas=yes ;; - - -help | --help | --hel | --he | -h) - ac_init_help=long ;; - -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) - ac_init_help=recursive ;; - -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) - ac_init_help=short ;; - - -host | --host | --hos | --ho) - ac_prev=host_alias ;; - -host=* | --host=* | --hos=* | --ho=*) - host_alias=$ac_optarg ;; - - -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht) - ac_prev=htmldir ;; - -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \ - | --ht=*) - htmldir=$ac_optarg ;; - - -includedir | --includedir | --includedi | --included | --include \ - | --includ | --inclu | --incl | --inc) - ac_prev=includedir ;; - -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ - | --includ=* | --inclu=* | --incl=* | --inc=*) - includedir=$ac_optarg ;; - - -infodir | --infodir | --infodi | --infod | --info | --inf) - ac_prev=infodir ;; - -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) - infodir=$ac_optarg ;; - - -libdir | --libdir | --libdi | --libd) - ac_prev=libdir ;; - -libdir=* | --libdir=* | --libdi=* | --libd=*) - libdir=$ac_optarg ;; - - -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ - | --libexe | --libex | --libe) - ac_prev=libexecdir ;; - -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ - | --libexe=* | --libex=* | --libe=*) - libexecdir=$ac_optarg ;; - - -localedir | --localedir | --localedi | --localed | --locale) - ac_prev=localedir ;; - -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*) - localedir=$ac_optarg ;; - - -localstatedir | --localstatedir | --localstatedi | --localstated \ - | --localstate | --localstat | --localsta | --localst | --locals) - ac_prev=localstatedir ;; - -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ - | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*) - localstatedir=$ac_optarg ;; - - -mandir | --mandir | --mandi | --mand | --man | --ma | --m) - ac_prev=mandir ;; - -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) - mandir=$ac_optarg ;; - - -nfp | --nfp | --nf) - # Obsolete; use --without-fp. - with_fp=no ;; - - -no-create | --no-create | --no-creat | --no-crea | --no-cre \ - | --no-cr | --no-c | -n) - no_create=yes ;; - - -no-recursion | --no-recursion | --no-recursio | --no-recursi \ - | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) - no_recursion=yes ;; - - -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ - | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ - | --oldin | --oldi | --old | --ol | --o) - ac_prev=oldincludedir ;; - -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ - | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ - | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) - oldincludedir=$ac_optarg ;; - - -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) - ac_prev=prefix ;; - -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) - prefix=$ac_optarg ;; - - -program-prefix | --program-prefix | --program-prefi | --program-pref \ - | --program-pre | --program-pr | --program-p) - ac_prev=program_prefix ;; - -program-prefix=* | --program-prefix=* | --program-prefi=* \ - | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) - program_prefix=$ac_optarg ;; - - -program-suffix | --program-suffix | --program-suffi | --program-suff \ - | --program-suf | --program-su | --program-s) - ac_prev=program_suffix ;; - -program-suffix=* | --program-suffix=* | --program-suffi=* \ - | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) - program_suffix=$ac_optarg ;; - - -program-transform-name | --program-transform-name \ - | --program-transform-nam | --program-transform-na \ - | --program-transform-n | --program-transform- \ - | --program-transform | --program-transfor \ - | --program-transfo | --program-transf \ - | --program-trans | --program-tran \ - | --progr-tra | --program-tr | --program-t) - ac_prev=program_transform_name ;; - -program-transform-name=* | --program-transform-name=* \ - | --program-transform-nam=* | --program-transform-na=* \ - | --program-transform-n=* | --program-transform-=* \ - | --program-transform=* | --program-transfor=* \ - | --program-transfo=* | --program-transf=* \ - | --program-trans=* | --program-tran=* \ - | --progr-tra=* | --program-tr=* | --program-t=*) - program_transform_name=$ac_optarg ;; - - -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd) - ac_prev=pdfdir ;; - -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*) - pdfdir=$ac_optarg ;; - - -psdir | --psdir | --psdi | --psd | --ps) - ac_prev=psdir ;; - -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*) - psdir=$ac_optarg ;; - - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - silent=yes ;; - - -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) - ac_prev=sbindir ;; - -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ - | --sbi=* | --sb=*) - sbindir=$ac_optarg ;; - - -sharedstatedir | --sharedstatedir | --sharedstatedi \ - | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ - | --sharedst | --shareds | --shared | --share | --shar \ - | --sha | --sh) - ac_prev=sharedstatedir ;; - -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ - | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ - | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ - | --sha=* | --sh=*) - sharedstatedir=$ac_optarg ;; - - -site | --site | --sit) - ac_prev=site ;; - -site=* | --site=* | --sit=*) - site=$ac_optarg ;; - - -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) - ac_prev=srcdir ;; - -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) - srcdir=$ac_optarg ;; - - -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ - | --syscon | --sysco | --sysc | --sys | --sy) - ac_prev=sysconfdir ;; - -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ - | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) - sysconfdir=$ac_optarg ;; - - -target | --target | --targe | --targ | --tar | --ta | --t) - ac_prev=target_alias ;; - -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) - target_alias=$ac_optarg ;; - - -v | -verbose | --verbose | --verbos | --verbo | --verb) - verbose=yes ;; - - -version | --version | --versio | --versi | --vers | -V) - ac_init_version=: ;; - - -with-* | --with-*) - ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error $? "invalid package name: $ac_useropt" - ac_useropt_orig=$ac_useropt - ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` - case $ac_user_opts in - *" -"with_$ac_useropt" -"*) ;; - *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig" - ac_unrecognized_sep=', ';; - esac - eval with_$ac_useropt=\$ac_optarg ;; - - -without-* | --without-*) - ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error $? "invalid package name: $ac_useropt" - ac_useropt_orig=$ac_useropt - ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` - case $ac_user_opts in - *" -"with_$ac_useropt" -"*) ;; - *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig" - ac_unrecognized_sep=', ';; - esac - eval with_$ac_useropt=no ;; - - --x) - # Obsolete; use --with-x. - with_x=yes ;; - - -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ - | --x-incl | --x-inc | --x-in | --x-i) - ac_prev=x_includes ;; - -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ - | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) - x_includes=$ac_optarg ;; - - -x-libraries | --x-libraries | --x-librarie | --x-librari \ - | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) - ac_prev=x_libraries ;; - -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ - | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) - x_libraries=$ac_optarg ;; - - -*) as_fn_error $? "unrecognized option: \`$ac_option' -Try \`$0 --help' for more information" - ;; - - *=*) - ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` - # Reject names that are not valid shell variable names. - case $ac_envvar in #( - '' | [0-9]* | *[!_$as_cr_alnum]* ) - as_fn_error $? "invalid variable name: \`$ac_envvar'" ;; - esac - eval $ac_envvar=\$ac_optarg - export $ac_envvar ;; - - *) - # FIXME: should be removed in autoconf 3.0. - $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2 - expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && - $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2 - : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}" - ;; - - esac -done - -if test -n "$ac_prev"; then - ac_option=--`echo $ac_prev | sed 's/_/-/g'` - as_fn_error $? "missing argument to $ac_option" -fi - -if test -n "$ac_unrecognized_opts"; then - case $enable_option_checking in - no) ;; - fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;; - *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;; - esac -fi - -# Check all directory arguments for consistency. -for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ - datadir sysconfdir sharedstatedir localstatedir includedir \ - oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ - libdir localedir mandir -do - eval ac_val=\$$ac_var - # Remove trailing slashes. - case $ac_val in - */ ) - ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'` - eval $ac_var=\$ac_val;; - esac - # Be sure to have absolute directory names. - case $ac_val in - [\\/$]* | ?:[\\/]* ) continue;; - NONE | '' ) case $ac_var in *prefix ) continue;; esac;; - esac - as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val" -done - -# There might be people who depend on the old broken behavior: `$host' -# used to hold the argument of --host etc. -# FIXME: To remove some day. -build=$build_alias -host=$host_alias -target=$target_alias - -# FIXME: To remove some day. -if test "x$host_alias" != x; then - if test "x$build_alias" = x; then - cross_compiling=maybe - $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host. - If a cross compiler is detected then cross compile mode will be used" >&2 - elif test "x$build_alias" != "x$host_alias"; then - cross_compiling=yes - fi -fi - -ac_tool_prefix= -test -n "$host_alias" && ac_tool_prefix=$host_alias- - -test "$silent" = yes && exec 6>/dev/null - - -ac_pwd=`pwd` && test -n "$ac_pwd" && -ac_ls_di=`ls -di .` && -ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || - as_fn_error $? "working directory cannot be determined" -test "X$ac_ls_di" = "X$ac_pwd_ls_di" || - as_fn_error $? "pwd does not report name of working directory" - - -# Find the source files, if location was not specified. -if test -z "$srcdir"; then - ac_srcdir_defaulted=yes - # Try the directory containing this script, then the parent directory. - ac_confdir=`$as_dirname -- "$as_myself" || -$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_myself" : 'X\(//\)[^/]' \| \ - X"$as_myself" : 'X\(//\)$' \| \ - X"$as_myself" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$as_myself" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - srcdir=$ac_confdir - if test ! -r "$srcdir/$ac_unique_file"; then - srcdir=.. - fi -else - ac_srcdir_defaulted=no -fi -if test ! -r "$srcdir/$ac_unique_file"; then - test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." - as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir" -fi -ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" -ac_abs_confdir=`( - cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg" - pwd)` -# When building in place, set srcdir=. -if test "$ac_abs_confdir" = "$ac_pwd"; then - srcdir=. -fi -# Remove unnecessary trailing slashes from srcdir. -# Double slashes in file names in object file debugging info -# mess up M-x gdb in Emacs. -case $srcdir in -*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;; -esac -for ac_var in $ac_precious_vars; do - eval ac_env_${ac_var}_set=\${${ac_var}+set} - eval ac_env_${ac_var}_value=\$${ac_var} - eval ac_cv_env_${ac_var}_set=\${${ac_var}+set} - eval ac_cv_env_${ac_var}_value=\$${ac_var} -done - -# -# Report the --help message. -# -if test "$ac_init_help" = "long"; then - # Omit some internal or obsolete options to make the list less imposing. - # This message is too long to be a string in the A/UX 3.1 sh. - cat <<_ACEOF -\`configure' configures this package to adapt to many kinds of systems. - -Usage: $0 [OPTION]... [VAR=VALUE]... - -To assign environment variables (e.g., CC, CFLAGS...), specify them as -VAR=VALUE. See below for descriptions of some of the useful variables. - -Defaults for the options are specified in brackets. - -Configuration: - -h, --help display this help and exit - --help=short display options specific to this package - --help=recursive display the short help of all the included packages - -V, --version display version information and exit - -q, --quiet, --silent do not print \`checking ...' messages - --cache-file=FILE cache test results in FILE [disabled] - -C, --config-cache alias for \`--cache-file=config.cache' - -n, --no-create do not create output files - --srcdir=DIR find the sources in DIR [configure dir or \`..'] - -Installation directories: - --prefix=PREFIX install architecture-independent files in PREFIX - [$ac_default_prefix] - --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX - [PREFIX] - -By default, \`make install' will install all the files in -\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify -an installation prefix other than \`$ac_default_prefix' using \`--prefix', -for instance \`--prefix=\$HOME'. - -For better control, use the options below. - -Fine tuning of the installation directories: - --bindir=DIR user executables [EPREFIX/bin] - --sbindir=DIR system admin executables [EPREFIX/sbin] - --libexecdir=DIR program executables [EPREFIX/libexec] - --sysconfdir=DIR read-only single-machine data [PREFIX/etc] - --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] - --localstatedir=DIR modifiable single-machine data [PREFIX/var] - --libdir=DIR object code libraries [EPREFIX/lib] - --includedir=DIR C header files [PREFIX/include] - --oldincludedir=DIR C header files for non-gcc [/usr/include] - --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] - --datadir=DIR read-only architecture-independent data [DATAROOTDIR] - --infodir=DIR info documentation [DATAROOTDIR/info] - --localedir=DIR locale-dependent data [DATAROOTDIR/locale] - --mandir=DIR man documentation [DATAROOTDIR/man] - --docdir=DIR documentation root [DATAROOTDIR/doc/PACKAGE] - --htmldir=DIR html documentation [DOCDIR] - --dvidir=DIR dvi documentation [DOCDIR] - --pdfdir=DIR pdf documentation [DOCDIR] - --psdir=DIR ps documentation [DOCDIR] -_ACEOF - - cat <<\_ACEOF -_ACEOF -fi - -if test -n "$ac_init_help"; then - - cat <<\_ACEOF - -Some influential environment variables: - FC Fortran compiler command - FCFLAGS Fortran compiler flags - LDFLAGS linker flags, e.g. -L if you have libraries in a - nonstandard directory - LIBS libraries to pass to the linker, e.g. -l - -Use these variables to override the choices made by `configure' or to help -it to find libraries and programs with nonstandard names/locations. - -Report bugs to the package provider. -_ACEOF -ac_status=$? -fi - -if test "$ac_init_help" = "recursive"; then - # If there are subdirs, report their specific --help. - for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue - test -d "$ac_dir" || - { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } || - continue - ac_builddir=. - -case "$ac_dir" in -.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -*) - ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` - # A ".." for each directory in $ac_dir_suffix. - ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` - case $ac_top_builddir_sub in - "") ac_top_builddir_sub=. ac_top_build_prefix= ;; - *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; - esac ;; -esac -ac_abs_top_builddir=$ac_pwd -ac_abs_builddir=$ac_pwd$ac_dir_suffix -# for backward compatibility: -ac_top_builddir=$ac_top_build_prefix - -case $srcdir in - .) # We are building in place. - ac_srcdir=. - ac_top_srcdir=$ac_top_builddir_sub - ac_abs_top_srcdir=$ac_pwd ;; - [\\/]* | ?:[\\/]* ) # Absolute name. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir - ac_abs_top_srcdir=$srcdir ;; - *) # Relative name. - ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_build_prefix$srcdir - ac_abs_top_srcdir=$ac_pwd/$srcdir ;; -esac -ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix - - cd "$ac_dir" || { ac_status=$?; continue; } - # Check for guested configure. - if test -f "$ac_srcdir/configure.gnu"; then - echo && - $SHELL "$ac_srcdir/configure.gnu" --help=recursive - elif test -f "$ac_srcdir/configure"; then - echo && - $SHELL "$ac_srcdir/configure" --help=recursive - else - $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 - fi || ac_status=$? - cd "$ac_pwd" || { ac_status=$?; break; } - done -fi - -test -n "$ac_init_help" && exit $ac_status -if $ac_init_version; then - cat <<\_ACEOF -configure -generated by GNU Autoconf 2.68 - -Copyright (C) 2010 Free Software Foundation, Inc. -This configure script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it. -_ACEOF - exit -fi - -## ------------------------ ## -## Autoconf initialization. ## -## ------------------------ ## - -# ac_fn_fc_try_compile LINENO -# --------------------------- -# Try to compile conftest.$ac_ext, and return whether this succeeded. -ac_fn_fc_try_compile () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - rm -f conftest.$ac_objext - if { { ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_compile") 2>conftest.err - ac_status=$? - if test -s conftest.err; then - grep -v '^ *+' conftest.err >conftest.er1 - cat conftest.er1 >&5 - mv -f conftest.er1 conftest.err - fi - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && { - test -z "$ac_fc_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then : - ac_retval=0 -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_retval=1 -fi - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - as_fn_set_status $ac_retval - -} # ac_fn_fc_try_compile -cat >config.log <<_ACEOF -This file contains any messages produced by compilers while -running configure, to aid debugging if configure makes a mistake. - -It was created by $as_me, which was -generated by GNU Autoconf 2.68. Invocation command line was - - $ $0 $@ - -_ACEOF -exec 5>>config.log -{ -cat <<_ASUNAME -## --------- ## -## Platform. ## -## --------- ## - -hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` -uname -m = `(uname -m) 2>/dev/null || echo unknown` -uname -r = `(uname -r) 2>/dev/null || echo unknown` -uname -s = `(uname -s) 2>/dev/null || echo unknown` -uname -v = `(uname -v) 2>/dev/null || echo unknown` - -/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` -/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` - -/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` -/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` -/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` -/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown` -/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` -/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` -/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` - -_ASUNAME - -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - $as_echo "PATH: $as_dir" - done -IFS=$as_save_IFS - -} >&5 - -cat >&5 <<_ACEOF - - -## ----------- ## -## Core tests. ## -## ----------- ## - -_ACEOF - - -# Keep a trace of the command line. -# Strip out --no-create and --no-recursion so they do not pile up. -# Strip out --silent because we don't want to record it for future runs. -# Also quote any args containing shell meta-characters. -# Make two passes to allow for proper duplicate-argument suppression. -ac_configure_args= -ac_configure_args0= -ac_configure_args1= -ac_must_keep_next=false -for ac_pass in 1 2 -do - for ac_arg - do - case $ac_arg in - -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - continue ;; - *\'*) - ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - case $ac_pass in - 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;; - 2) - as_fn_append ac_configure_args1 " '$ac_arg'" - if test $ac_must_keep_next = true; then - ac_must_keep_next=false # Got value, back to normal. - else - case $ac_arg in - *=* | --config-cache | -C | -disable-* | --disable-* \ - | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ - | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ - | -with-* | --with-* | -without-* | --without-* | --x) - case "$ac_configure_args0 " in - "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; - esac - ;; - -* ) ac_must_keep_next=true ;; - esac - fi - as_fn_append ac_configure_args " '$ac_arg'" - ;; - esac - done -done -{ ac_configure_args0=; unset ac_configure_args0;} -{ ac_configure_args1=; unset ac_configure_args1;} - -# When interrupted or exit'd, cleanup temporary files, and complete -# config.log. We remove comments because anyway the quotes in there -# would cause problems or look ugly. -# WARNING: Use '\'' to represent an apostrophe within the trap. -# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug. -trap 'exit_status=$? - # Save into config.log some information that might help in debugging. - { - echo - - $as_echo "## ---------------- ## -## Cache variables. ## -## ---------------- ##" - echo - # The following way of writing the cache mishandles newlines in values, -( - for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do - eval ac_val=\$$ac_var - case $ac_val in #( - *${as_nl}*) - case $ac_var in #( - *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 -$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; - esac - case $ac_var in #( - _ | IFS | as_nl) ;; #( - BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( - *) { eval $ac_var=; unset $ac_var;} ;; - esac ;; - esac - done - (set) 2>&1 | - case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #( - *${as_nl}ac_space=\ *) - sed -n \ - "s/'\''/'\''\\\\'\'''\''/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p" - ;; #( - *) - sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" - ;; - esac | - sort -) - echo - - $as_echo "## ----------------- ## -## Output variables. ## -## ----------------- ##" - echo - for ac_var in $ac_subst_vars - do - eval ac_val=\$$ac_var - case $ac_val in - *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; - esac - $as_echo "$ac_var='\''$ac_val'\''" - done | sort - echo - - if test -n "$ac_subst_files"; then - $as_echo "## ------------------- ## -## File substitutions. ## -## ------------------- ##" - echo - for ac_var in $ac_subst_files - do - eval ac_val=\$$ac_var - case $ac_val in - *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; - esac - $as_echo "$ac_var='\''$ac_val'\''" - done | sort - echo - fi - - if test -s confdefs.h; then - $as_echo "## ----------- ## -## confdefs.h. ## -## ----------- ##" - echo - cat confdefs.h - echo - fi - test "$ac_signal" != 0 && - $as_echo "$as_me: caught signal $ac_signal" - $as_echo "$as_me: exit $exit_status" - } >&5 - rm -f core *.core core.conftest.* && - rm -f -r conftest* confdefs* conf$$* $ac_clean_files && - exit $exit_status -' 0 -for ac_signal in 1 2 13 15; do - trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal -done -ac_signal=0 - -# confdefs.h avoids OS command line length limits that DEFS can exceed. -rm -f -r conftest* confdefs.h - -$as_echo "/* confdefs.h */" > confdefs.h - -# Predefined preprocessor variables. - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_NAME "$PACKAGE_NAME" -_ACEOF - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_TARNAME "$PACKAGE_TARNAME" -_ACEOF - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_VERSION "$PACKAGE_VERSION" -_ACEOF - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_STRING "$PACKAGE_STRING" -_ACEOF - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" -_ACEOF - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_URL "$PACKAGE_URL" -_ACEOF - - -# Let the site file select an alternate cache file if it wants to. -# Prefer an explicitly selected file to automatically selected ones. -ac_site_file1=NONE -ac_site_file2=NONE -if test -n "$CONFIG_SITE"; then - # We do not want a PATH search for config.site. - case $CONFIG_SITE in #(( - -*) ac_site_file1=./$CONFIG_SITE;; - */*) ac_site_file1=$CONFIG_SITE;; - *) ac_site_file1=./$CONFIG_SITE;; - esac -elif test "x$prefix" != xNONE; then - ac_site_file1=$prefix/share/config.site - ac_site_file2=$prefix/etc/config.site -else - ac_site_file1=$ac_default_prefix/share/config.site - ac_site_file2=$ac_default_prefix/etc/config.site -fi -for ac_site_file in "$ac_site_file1" "$ac_site_file2" -do - test "x$ac_site_file" = xNONE && continue - if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 -$as_echo "$as_me: loading site script $ac_site_file" >&6;} - sed 's/^/| /' "$ac_site_file" >&5 - . "$ac_site_file" \ - || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "failed to load site script $ac_site_file -See \`config.log' for more details" "$LINENO" 5; } - fi -done - -if test -r "$cache_file"; then - # Some versions of bash will fail to source /dev/null (special files - # actually), so we avoid doing that. DJGPP emulates it as a regular file. - if test /dev/null != "$cache_file" && test -f "$cache_file"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5 -$as_echo "$as_me: loading cache $cache_file" >&6;} - case $cache_file in - [\\/]* | ?:[\\/]* ) . "$cache_file";; - *) . "./$cache_file";; - esac - fi -else - { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5 -$as_echo "$as_me: creating cache $cache_file" >&6;} - >$cache_file -fi - -# Check that the precious variables saved in the cache have kept the same -# value. -ac_cache_corrupted=false -for ac_var in $ac_precious_vars; do - eval ac_old_set=\$ac_cv_env_${ac_var}_set - eval ac_new_set=\$ac_env_${ac_var}_set - eval ac_old_val=\$ac_cv_env_${ac_var}_value - eval ac_new_val=\$ac_env_${ac_var}_value - case $ac_old_set,$ac_new_set in - set,) - { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 -$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,set) - { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5 -$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,);; - *) - if test "x$ac_old_val" != "x$ac_new_val"; then - # differences in whitespace do not lead to failure. - ac_old_val_w=`echo x $ac_old_val` - ac_new_val_w=`echo x $ac_new_val` - if test "$ac_old_val_w" != "$ac_new_val_w"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5 -$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} - ac_cache_corrupted=: - else - { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 -$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;} - eval $ac_var=\$ac_old_val - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5 -$as_echo "$as_me: former value: \`$ac_old_val'" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5 -$as_echo "$as_me: current value: \`$ac_new_val'" >&2;} - fi;; - esac - # Pass precious variables to config.status. - if test "$ac_new_set" = set; then - case $ac_new_val in - *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; - *) ac_arg=$ac_var=$ac_new_val ;; - esac - case " $ac_configure_args " in - *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. - *) as_fn_append ac_configure_args " '$ac_arg'" ;; - esac - fi -done -if $ac_cache_corrupted; then - { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5 -$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;} - as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5 -fi -## -------------------- ## -## Main body of script. ## -## -------------------- ## - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for long file names" >&5 -$as_echo_n "checking for long file names... " >&6; } -if ${ac_cv_sys_long_file_names+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_cv_sys_long_file_names=yes -# Test for long file names in all the places we know might matter: -# . the current directory, where building will happen -# $prefix/lib where we will be installing things -# $exec_prefix/lib likewise -# $TMPDIR if set, where it might want to write temporary files -# /tmp where it might want to write temporary files -# /var/tmp likewise -# /usr/tmp likewise -for ac_dir in . "$TMPDIR" /tmp /var/tmp /usr/tmp "$prefix/lib" "$exec_prefix/lib"; do - # Skip $TMPDIR if it is empty or bogus, and skip $exec_prefix/lib - # in the usual case where exec_prefix is '${prefix}'. - case $ac_dir in #( - . | /* | ?:[\\/]*) ;; #( - *) continue;; - esac - test -w "$ac_dir/." || continue # It is less confusing to not echo anything here. - ac_xdir=$ac_dir/cf$$ - (umask 077 && mkdir "$ac_xdir" 2>/dev/null) || continue - ac_tf1=$ac_xdir/conftest9012345 - ac_tf2=$ac_xdir/conftest9012346 - touch "$ac_tf1" 2>/dev/null && test -f "$ac_tf1" && test ! -f "$ac_tf2" || - ac_cv_sys_long_file_names=no - rm -f -r "$ac_xdir" 2>/dev/null - test $ac_cv_sys_long_file_names = no && break -done -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_long_file_names" >&5 -$as_echo "$ac_cv_sys_long_file_names" >&6; } -if test $ac_cv_sys_long_file_names = yes; then - -$as_echo "#define HAVE_LONG_FILE_NAMES 1" >>confdefs.h - -fi - -ROOT=`pwd` - - - -ac_config_files="$ac_config_files make.config" - - - -STATIC_LIB=$ROOT/lib/libezfio.a - -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. -set dummy ${ac_tool_prefix}ranlib; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_RANLIB+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$RANLIB"; then - ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -RANLIB=$ac_cv_prog_RANLIB -if test -n "$RANLIB"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5 -$as_echo "$RANLIB" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_RANLIB"; then - ac_ct_RANLIB=$RANLIB - # Extract the first word of "ranlib", so it can be a program name with args. -set dummy ranlib; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_RANLIB+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_RANLIB"; then - ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_ac_ct_RANLIB="ranlib" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB -if test -n "$ac_ct_RANLIB"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5 -$as_echo "$ac_ct_RANLIB" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_RANLIB" = x; then - RANLIB=":" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - RANLIB=$ac_ct_RANLIB - fi -else - RANLIB="$ac_cv_prog_RANLIB" -fi - - -# Test Fortran -# ------------ - -ac_ext=${ac_fc_srcext-f} -ac_compile='$FC -c $FCFLAGS $ac_fcflags_srcext conftest.$ac_ext >&5' -ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_fc_compiler_gnu - -ac_ext=${ac_fc_srcext-f} -ac_compile='$FC -c $FCFLAGS $ac_fcflags_srcext conftest.$ac_ext >&5' -ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_fc_compiler_gnu -if test -n "$ac_tool_prefix"; then - for ac_prog in ifort gfortran - do - # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_FC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$FC"; then - ac_cv_prog_FC="$FC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_FC="$ac_tool_prefix$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -FC=$ac_cv_prog_FC -if test -n "$FC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $FC" >&5 -$as_echo "$FC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$FC" && break - done -fi -if test -z "$FC"; then - ac_ct_FC=$FC - for ac_prog in ifort gfortran -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_FC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_FC"; then - ac_cv_prog_ac_ct_FC="$ac_ct_FC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_ac_ct_FC="$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_FC=$ac_cv_prog_ac_ct_FC -if test -n "$ac_ct_FC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_FC" >&5 -$as_echo "$ac_ct_FC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$ac_ct_FC" && break -done - - if test "x$ac_ct_FC" = x; then - FC="" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - FC=$ac_ct_FC - fi -fi - - -# Provide some information about the compiler. -$as_echo "$as_me:${as_lineno-$LINENO}: checking for Fortran compiler version" >&5 -set X $ac_compile -ac_compiler=$2 -for ac_option in --version -v -V -qversion; do - { { ac_try="$ac_compiler $ac_option >&5" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_compiler $ac_option >&5") 2>conftest.err - ac_status=$? - if test -s conftest.err; then - sed '10a\ -... rest of stderr output deleted ... - 10q' conftest.err >conftest.er1 - cat conftest.er1 >&5 - fi - rm -f conftest.er1 conftest.err - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } -done -rm -f a.out - -cat > conftest.$ac_ext <<_ACEOF - program main - - end -_ACEOF -ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out" -# Try to create an executable without -o first, disregard a.out. -# It will help us diagnose broken compilers, and finding out an intuition -# of exeext. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the Fortran compiler works" >&5 -$as_echo_n "checking whether the Fortran compiler works... " >&6; } -ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` - -# The possible output files: -ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*" - -ac_rmfiles= -for ac_file in $ac_files -do - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; - * ) ac_rmfiles="$ac_rmfiles $ac_file";; - esac -done -rm -f $ac_rmfiles - -if { { ac_try="$ac_link_default" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_link_default") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then : - # Autoconf-2.13 could set the ac_cv_exeext variable to `no'. -# So ignore a value of `no', otherwise this would lead to `EXEEXT = no' -# in a Makefile. We should not override ac_cv_exeext if it was cached, -# so that the user can short-circuit this test for compilers unknown to -# Autoconf. -for ac_file in $ac_files '' -do - test -f "$ac_file" || continue - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) - ;; - [ab].out ) - # We found the default executable, but exeext='' is most - # certainly right. - break;; - *.* ) - if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; - then :; else - ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - fi - # We set ac_cv_exeext here because the later test for it is not - # safe: cross compilers may not add the suffix if given an `-o' - # argument, so we may need to know it at that point already. - # Even if this section looks crufty: it has the advantage of - # actually working. - break;; - * ) - break;; - esac -done -test "$ac_cv_exeext" = no && ac_cv_exeext= - -else - ac_file='' -fi -if test -z "$ac_file"; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -$as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error 77 "Fortran compiler cannot create executables -See \`config.log' for more details" "$LINENO" 5; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for Fortran compiler default output file name" >&5 -$as_echo_n "checking for Fortran compiler default output file name... " >&6; } -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 -$as_echo "$ac_file" >&6; } -ac_exeext=$ac_cv_exeext - -rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out -ac_clean_files=$ac_clean_files_save -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5 -$as_echo_n "checking for suffix of executables... " >&6; } -if { { ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_link") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then : - # If both `conftest.exe' and `conftest' are `present' (well, observable) -# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will -# work properly (i.e., refer to `conftest.exe'), while it won't with -# `rm'. -for ac_file in conftest.exe conftest conftest.*; do - test -f "$ac_file" || continue - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; - *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - break;; - * ) break;; - esac -done -else - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "cannot compute suffix of executables: cannot compile and link -See \`config.log' for more details" "$LINENO" 5; } -fi -rm -f conftest conftest$ac_cv_exeext -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 -$as_echo "$ac_cv_exeext" >&6; } - -rm -f conftest.$ac_ext -EXEEXT=$ac_cv_exeext -ac_exeext=$EXEEXT -cat > conftest.$ac_ext <<_ACEOF - program main - open(unit=9,file='conftest.out') - close(unit=9) - - end -_ACEOF -ac_clean_files="$ac_clean_files conftest.out" -# Check that the compiler produces executables we can run. If not, either -# the compiler is broken, or we cross compile. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 -$as_echo_n "checking whether we are cross compiling... " >&6; } -if test "$cross_compiling" != yes; then - { { ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_link") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } - if { ac_try='./conftest$ac_cv_exeext' - { { case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; }; then - cross_compiling=no - else - if test "$cross_compiling" = maybe; then - cross_compiling=yes - else - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "cannot run Fortran compiled programs. -If you meant to cross compile, use \`--host'. -See \`config.log' for more details" "$LINENO" 5; } - fi - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 -$as_echo "$cross_compiling" >&6; } - -rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out -ac_clean_files=$ac_clean_files_save -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 -$as_echo_n "checking for suffix of object files... " >&6; } -if ${ac_cv_objext+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat > conftest.$ac_ext <<_ACEOF - program main - - end -_ACEOF -rm -f conftest.o conftest.obj -if { { ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_compile") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then : - for ac_file in conftest.o conftest.obj conftest.*; do - test -f "$ac_file" || continue; - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;; - *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` - break;; - esac -done -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "cannot compute suffix of object files: cannot compile -See \`config.log' for more details" "$LINENO" 5; } -fi -rm -f conftest.$ac_cv_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5 -$as_echo "$ac_cv_objext" >&6; } -OBJEXT=$ac_cv_objext -ac_objext=$OBJEXT -# If we don't use `.F' as extension, the preprocessor is not run on the -# input file. (Note that this only needs to work for GNU compilers.) -ac_save_ext=$ac_ext -ac_ext=F -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU Fortran compiler" >&5 -$as_echo_n "checking whether we are using the GNU Fortran compiler... " >&6; } -if ${ac_cv_fc_compiler_gnu+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat > conftest.$ac_ext <<_ACEOF - program main -#ifndef __GNUC__ - choke me -#endif - - end -_ACEOF -if ac_fn_fc_try_compile "$LINENO"; then : - ac_compiler_gnu=yes -else - ac_compiler_gnu=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -ac_cv_fc_compiler_gnu=$ac_compiler_gnu - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_fc_compiler_gnu" >&5 -$as_echo "$ac_cv_fc_compiler_gnu" >&6; } -ac_ext=$ac_save_ext -ac_test_FCFLAGS=${FCFLAGS+set} -ac_save_FCFLAGS=$FCFLAGS -FCFLAGS= -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $FC accepts -g" >&5 -$as_echo_n "checking whether $FC accepts -g... " >&6; } -if ${ac_cv_prog_fc_g+:} false; then : - $as_echo_n "(cached) " >&6 -else - FCFLAGS=-g -cat > conftest.$ac_ext <<_ACEOF - program main - - end -_ACEOF -if ac_fn_fc_try_compile "$LINENO"; then : - ac_cv_prog_fc_g=yes -else - ac_cv_prog_fc_g=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_fc_g" >&5 -$as_echo "$ac_cv_prog_fc_g" >&6; } -if test "$ac_test_FCFLAGS" = set; then - FCFLAGS=$ac_save_FCFLAGS -elif test $ac_cv_prog_fc_g = yes; then - if test "x$ac_cv_fc_compiler_gnu" = xyes; then - FCFLAGS="-g -O2" - else - FCFLAGS="-g" - fi -else - if test "x$ac_cv_fc_compiler_gnu" = xyes; then - FCFLAGS="-O2" - else - FCFLAGS= - fi -fi - -ac_ext=${ac_fc_srcext-f} -ac_compile='$FC -c $FCFLAGS $ac_fcflags_srcext conftest.$ac_ext >&5' -ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_fc_compiler_gnu - -ac_ext=${ac_fc_srcext-f} -ac_compile='$FC -c $FCFLAGS $ac_fcflags_srcext conftest.$ac_ext >&5' -ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_fc_compiler_gnu -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $FC understands -c and -o together" >&5 -$as_echo_n "checking whether $FC understands -c and -o together... " >&6; } -if ${ac_cv_prog_fc_c_o+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat > conftest.$ac_ext <<_ACEOF - program main - - end -_ACEOF -# We test twice because some compilers refuse to overwrite an existing -# `.o' file with `-o', although they will create one. -ac_try='$FC $FCFLAGS -c conftest.$ac_ext -o conftest2.$ac_objext >&5' -rm -f conftest2.* -if { { case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && - test -f conftest2.$ac_objext && - { { case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - ac_cv_prog_fc_c_o=yes -else - ac_cv_prog_fc_c_o=no -fi -rm -f conftest* -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_fc_c_o" >&5 -$as_echo "$ac_cv_prog_fc_c_o" >&6; } -if test $ac_cv_prog_fc_c_o = no; then - -$as_echo "#define FC_NO_MINUS_C_MINUS_O 1" >>confdefs.h - -fi - -ac_ext=${ac_fc_srcext-f} -ac_compile='$FC -c $FCFLAGS $ac_fcflags_srcext conftest.$ac_ext >&5' -ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_fc_compiler_gnu - - -ac_ext=${ac_fc_srcext-f} -ac_compile='$FC -c $FCFLAGS $ac_fcflags_srcext conftest.$ac_ext >&5' -ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_fc_compiler_gnu -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for Fortran flag to compile .F90 files" >&5 -$as_echo_n "checking for Fortran flag to compile .F90 files... " >&6; } -if ${ac_cv_fc_srcext_F90+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_ext=F90 -ac_fcflags_srcext_save=$ac_fcflags_srcext -ac_fcflags_srcext= -ac_cv_fc_srcext_F90=unknown -for ac_flag in none -qsuffix=f=F90 -Tf; do - test "x$ac_flag" != xnone && ac_fcflags_srcext="$ac_flag" - cat > conftest.$ac_ext <<_ACEOF - program main - - end -_ACEOF -if ac_fn_fc_try_compile "$LINENO"; then : - ac_cv_fc_srcext_F90=$ac_flag; break -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -done -rm -f conftest.$ac_objext conftest.F90 -ac_fcflags_srcext=$ac_fcflags_srcext_save - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_fc_srcext_F90" >&5 -$as_echo "$ac_cv_fc_srcext_F90" >&6; } -if test "x$ac_cv_fc_srcext_F90" = xunknown; then - as_fn_error $? "Fortran could not compile .F90 files" "$LINENO" 5 -else - ac_fc_srcext=F90 - if test "x$ac_cv_fc_srcext_F90" = xnone; then - ac_fcflags_srcext="" - FCFLAGS_F90="" - else - ac_fcflags_srcext=$ac_cv_fc_srcext_F90 - FCFLAGS_F90=$ac_cv_fc_srcext_F90 - fi - - -fi -ac_ext=${ac_fc_srcext-f} -ac_compile='$FC -c $FCFLAGS $ac_fcflags_srcext conftest.$ac_ext >&5' -ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_fc_compiler_gnu - -ac_ext=${ac_fc_srcext-f} -ac_compile='$FC -c $FCFLAGS $ac_fcflags_srcext conftest.$ac_ext >&5' -ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_fc_compiler_gnu -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for Fortran flag needed to accept free-form source" >&5 -$as_echo_n "checking for Fortran flag needed to accept free-form source... " >&6; } -if ${ac_cv_fc_freeform+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_cv_fc_freeform=unknown -ac_fc_freeform_FCFLAGS_save=$FCFLAGS -for ac_flag in none -ffree-form -FR -free -qfree -Mfree -Mfreeform \ - -freeform "-f free" +source=free -nfix -do - test "x$ac_flag" != xnone && FCFLAGS="$ac_fc_freeform_FCFLAGS_save $ac_flag" - cat > conftest.$ac_ext <<_ACEOF - - program freeform - ! FIXME: how to best confuse non-freeform compilers? - print *, 'Hello ', & - 'world.' - end -_ACEOF -if ac_fn_fc_try_compile "$LINENO"; then : - ac_cv_fc_freeform=$ac_flag; break -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -done -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -FCFLAGS=$ac_fc_freeform_FCFLAGS_save - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_fc_freeform" >&5 -$as_echo "$ac_cv_fc_freeform" >&6; } -if test "x$ac_cv_fc_freeform" = xunknown; then - as_fn_error 77 "Fortran does not accept free-form source" "$LINENO" 5 -else - if test "x$ac_cv_fc_freeform" != xnone; then - FCFLAGS="$FCFLAGS $ac_cv_fc_freeform" - fi - -fi -ac_ext=${ac_fc_srcext-f} -ac_compile='$FC -c $FCFLAGS $ac_fcflags_srcext conftest.$ac_ext >&5' -ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_fc_compiler_gnu - - -# Test Python -# ------------ - -# Extract the first word of "python", so it can be a program name with args. -set dummy python; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_PYTHON+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$PYTHON"; then - ac_cv_prog_PYTHON="$PYTHON" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_PYTHON="yes" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - test -z "$ac_cv_prog_PYTHON" && ac_cv_prog_PYTHON="no" -fi -fi -PYTHON=$ac_cv_prog_PYTHON -if test -n "$PYTHON"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PYTHON" >&5 -$as_echo "$PYTHON" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -if [ "$PYTHON" = no ] ; then - as_fn_error $? "Please install Python." "$LINENO" 5 -fi - -# Test AR -# ------- - -if [ -z "$AR" ] ; then - # Extract the first word of "ar", so it can be a program name with args. -set dummy ar; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_AR+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$AR"; then - ac_cv_prog_AR="$AR" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_AR="yes" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - test -z "$ac_cv_prog_AR" && ac_cv_prog_AR="no" -fi -fi -AR=$ac_cv_prog_AR -if test -n "$AR"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5 -$as_echo "$AR" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - if [ "$AR" = no ] ; then - as_fn_error $? "ar not found." "$LINENO" 5 - fi - AR=ar -fi - - -# Test Gzip and zcat -# ------------------ - -if [ -z "$HAS_GZIP" ] ; then - # Extract the first word of "gzip", so it can be a program name with args. -set dummy gzip; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_GZIP+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$GZIP"; then - ac_cv_prog_GZIP="$GZIP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_GZIP="yes" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - test -z "$ac_cv_prog_GZIP" && ac_cv_prog_GZIP="no" -fi -fi -GZIP=$ac_cv_prog_GZIP -if test -n "$GZIP"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GZIP" >&5 -$as_echo "$GZIP" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - if [ "$GZIP" = no ] ; then - HAS_GZIP="-DNO_GZIP" - fi - - # Extract the first word of "zcat", so it can be a program name with args. -set dummy zcat; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ZCAT+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ZCAT"; then - ac_cv_prog_ZCAT="$ZCAT" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_ZCAT="yes" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - test -z "$ac_cv_prog_ZCAT" && ac_cv_prog_ZCAT="no" -fi -fi -ZCAT=$ac_cv_prog_ZCAT -if test -n "$ZCAT"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ZCAT" >&5 -$as_echo "$ZCAT" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - if [ "$ZCAT" = no ] ; then - HAS_GZIP="-DNO_GZIP" - fi - - # Extract the first word of "mkfifo", so it can be a program name with args. -set dummy mkfifo; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_MKFIFO+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$MKFIFO"; then - ac_cv_prog_MKFIFO="$MKFIFO" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_MKFIFO="yes" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - test -z "$ac_cv_prog_MKFIFO" && ac_cv_prog_MKFIFO="no" -fi -fi -MKFIFO=$ac_cv_prog_MKFIFO -if test -n "$MKFIFO"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKFIFO" >&5 -$as_echo "$MKFIFO" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - if [ "$MKFIFO" = no ] ; then - HAS_GZIP="-DNO_GZIP" - fi -fi - - -# Test IRPF90 -# ------------ - -if [ -z "$IRPF90" ] ; then - # Extract the first word of "irpf90", so it can be a program name with args. -set dummy irpf90; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_IRPF90+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$IRPF90"; then - ac_cv_prog_IRPF90="$IRPF90" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_IRPF90="yes" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - test -z "$ac_cv_prog_IRPF90" && ac_cv_prog_IRPF90="no" -fi -fi -IRPF90=$ac_cv_prog_IRPF90 -if test -n "$IRPF90"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $IRPF90" >&5 -$as_echo "$IRPF90" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - if [ "$IRPF90" = no ] ; then - as_fn_error $? "Please install IRPF90:\nhttp://irpf90.ups-tlse.fr" "$LINENO" 5 - fi - IRPF90=`which irpf90` -fi - - -if [ -z "$FCFLAGS" ] ; then - case $FC in - ifort*) - FCFLAGS="-O2 -g -ip" - STATIC_FC="-static-intel -static-libgcc -static" - ;; - gfortran*) - FCFLAGS="-O2 -g -ffree-line-length-none" - STATIC_FC="-static-libgcc -static" - ;; - esac -fi - -# Write make.config - -LIB="$STATIC_LIB" -FCFLAGS="$FCFLAGS $STATIC_FC" - - -# Done -#----- - -cat >confcache <<\_ACEOF -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs, see configure's option --config-cache. -# It is not useful on other systems. If it contains results you don't -# want to keep, you may remove or edit it. -# -# config.status only pays attention to the cache file if you give it -# the --recheck option to rerun configure. -# -# `ac_cv_env_foo' variables (set or unset) will be overridden when -# loading this file, other *unset* `ac_cv_foo' will be assigned the -# following values. - -_ACEOF - -# The following way of writing the cache mishandles newlines in values, -# but we know of no workaround that is simple, portable, and efficient. -# So, we kill variables containing newlines. -# Ultrix sh set writes to stderr and can't be redirected directly, -# and sets the high bit in the cache file unless we assign to the vars. -( - for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do - eval ac_val=\$$ac_var - case $ac_val in #( - *${as_nl}*) - case $ac_var in #( - *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 -$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; - esac - case $ac_var in #( - _ | IFS | as_nl) ;; #( - BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( - *) { eval $ac_var=; unset $ac_var;} ;; - esac ;; - esac - done - - (set) 2>&1 | - case $as_nl`(ac_space=' '; set) 2>&1` in #( - *${as_nl}ac_space=\ *) - # `set' does not quote correctly, so add quotes: double-quote - # substitution turns \\\\ into \\, and sed turns \\ into \. - sed -n \ - "s/'/'\\\\''/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" - ;; #( - *) - # `set' quotes correctly as required by POSIX, so do not add quotes. - sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" - ;; - esac | - sort -) | - sed ' - /^ac_cv_env_/b end - t clear - :clear - s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ - t end - s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ - :end' >>confcache -if diff "$cache_file" confcache >/dev/null 2>&1; then :; else - if test -w "$cache_file"; then - if test "x$cache_file" != "x/dev/null"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5 -$as_echo "$as_me: updating cache $cache_file" >&6;} - if test ! -f "$cache_file" || test -h "$cache_file"; then - cat confcache >"$cache_file" - else - case $cache_file in #( - */* | ?:*) - mv -f confcache "$cache_file"$$ && - mv -f "$cache_file"$$ "$cache_file" ;; #( - *) - mv -f confcache "$cache_file" ;; - esac - fi - fi - else - { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5 -$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;} - fi -fi -rm -f confcache - -test "x$prefix" = xNONE && prefix=$ac_default_prefix -# Let make expand exec_prefix. -test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' - -# Transform confdefs.h into DEFS. -# Protect against shell expansion while executing Makefile rules. -# Protect against Makefile macro expansion. -# -# If the first sed substitution is executed (which looks for macros that -# take arguments), then branch to the quote section. Otherwise, -# look for a macro that doesn't take arguments. -ac_script=' -:mline -/\\$/{ - N - s,\\\n,, - b mline -} -t clear -:clear -s/^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\)/-D\1=\2/g -t quote -s/^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\)/-D\1=\2/g -t quote -b any -:quote -s/[ `~#$^&*(){}\\|;'\''"<>?]/\\&/g -s/\[/\\&/g -s/\]/\\&/g -s/\$/$$/g -H -:any -${ - g - s/^\n// - s/\n/ /g - p -} -' -DEFS=`sed -n "$ac_script" confdefs.h` - - -ac_libobjs= -ac_ltlibobjs= -U= -for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue - # 1. Remove the extension, and $U if already installed. - ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' - ac_i=`$as_echo "$ac_i" | sed "$ac_script"` - # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR - # will be set to the directory where LIBOBJS objects are built. - as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext" - as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo' -done -LIBOBJS=$ac_libobjs - -LTLIBOBJS=$ac_ltlibobjs - - - -: "${CONFIG_STATUS=./config.status}" -ac_write_fail=0 -ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files $CONFIG_STATUS" -{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5 -$as_echo "$as_me: creating $CONFIG_STATUS" >&6;} -as_write_fail=0 -cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1 -#! $SHELL -# Generated by $as_me. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false - -SHELL=\${CONFIG_SHELL-$SHELL} -export SHELL -_ASEOF -cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1 -## -------------------- ## -## M4sh Initialization. ## -## -------------------- ## - -# Be more Bourne compatible -DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in #( - *posix*) : - set -o posix ;; #( - *) : - ;; -esac -fi - - -as_nl=' -' -export as_nl -# Printing a long string crashes Solaris 7 /usr/bin/printf. -as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo -# Prefer a ksh shell builtin over an external printf program on Solaris, -# but without wasting forks for bash or zsh. -if test -z "$BASH_VERSION$ZSH_VERSION" \ - && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='print -r --' - as_echo_n='print -rn --' -elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='printf %s\n' - as_echo_n='printf %s' -else - if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then - as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' - as_echo_n='/usr/ucb/echo -n' - else - as_echo_body='eval expr "X$1" : "X\\(.*\\)"' - as_echo_n_body='eval - arg=$1; - case $arg in #( - *"$as_nl"*) - expr "X$arg" : "X\\(.*\\)$as_nl"; - arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; - esac; - expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" - ' - export as_echo_n_body - as_echo_n='sh -c $as_echo_n_body as_echo' - fi - export as_echo_body - as_echo='sh -c $as_echo_body as_echo' -fi - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { - (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || - PATH_SEPARATOR=';' - } -fi - - -# IFS -# We need space, tab and new line, in precisely that order. Quoting is -# there to prevent editors from complaining about space-tab. -# (If _AS_PATH_WALK were called with IFS unset, it would disable word -# splitting by setting IFS to empty value.) -IFS=" "" $as_nl" - -# Find who we are. Look in the path if we contain no directory separator. -as_myself= -case $0 in #(( - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break - done -IFS=$as_save_IFS - - ;; -esac -# We did not find ourselves, most probably we were run as `sh COMMAND' -# in which case we are not to be found in the path. -if test "x$as_myself" = x; then - as_myself=$0 -fi -if test ! -f "$as_myself"; then - $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - exit 1 -fi - -# Unset variables that we do not need and which cause bugs (e.g. in -# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" -# suppresses any "Segmentation fault" message there. '((' could -# trigger a bug in pdksh 5.2.14. -for as_var in BASH_ENV ENV MAIL MAILPATH -do eval test x\${$as_var+set} = xset \ - && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : -done -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -LC_ALL=C -export LC_ALL -LANGUAGE=C -export LANGUAGE - -# CDPATH. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - - -# as_fn_error STATUS ERROR [LINENO LOG_FD] -# ---------------------------------------- -# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are -# provided, also output the error to LOG_FD, referencing LINENO. Then exit the -# script with STATUS, using 1 if that was 0. -as_fn_error () -{ - as_status=$1; test $as_status -eq 0 && as_status=1 - if test "$4"; then - as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 - fi - $as_echo "$as_me: error: $2" >&2 - as_fn_exit $as_status -} # as_fn_error - - -# as_fn_set_status STATUS -# ----------------------- -# Set $? to STATUS, without forking. -as_fn_set_status () -{ - return $1 -} # as_fn_set_status - -# as_fn_exit STATUS -# ----------------- -# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. -as_fn_exit () -{ - set +e - as_fn_set_status $1 - exit $1 -} # as_fn_exit - -# as_fn_unset VAR -# --------------- -# Portably unset VAR. -as_fn_unset () -{ - { eval $1=; unset $1;} -} -as_unset=as_fn_unset -# as_fn_append VAR VALUE -# ---------------------- -# Append the text in VALUE to the end of the definition contained in VAR. Take -# advantage of any shell optimizations that allow amortized linear growth over -# repeated appends, instead of the typical quadratic growth present in naive -# implementations. -if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : - eval 'as_fn_append () - { - eval $1+=\$2 - }' -else - as_fn_append () - { - eval $1=\$$1\$2 - } -fi # as_fn_append - -# as_fn_arith ARG... -# ------------------ -# Perform arithmetic evaluation on the ARGs, and store the result in the -# global $as_val. Take advantage of shells that can avoid forks. The arguments -# must be portable across $(()) and expr. -if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : - eval 'as_fn_arith () - { - as_val=$(( $* )) - }' -else - as_fn_arith () - { - as_val=`expr "$@" || test $? -eq 1` - } -fi # as_fn_arith - - -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi - -as_me=`$as_basename -- "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in #((((( --n*) - case `echo 'xy\c'` in - *c*) ECHO_T=' ';; # ECHO_T is single tab character. - xy) ECHO_C='\c';; - *) echo `echo ksh88 bug on AIX 6.1` > /dev/null - ECHO_T=' ';; - esac;; -*) - ECHO_N='-n';; -esac - -rm -f conf$$ conf$$.exe conf$$.file -if test -d conf$$.dir; then - rm -f conf$$.dir/conf$$.file -else - rm -f conf$$.dir - mkdir conf$$.dir 2>/dev/null -fi -if (echo >conf$$.file) 2>/dev/null; then - if ln -s conf$$.file conf$$ 2>/dev/null; then - as_ln_s='ln -s' - # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -p'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -p' - elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln - else - as_ln_s='cp -p' - fi -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file -rmdir conf$$.dir 2>/dev/null - - -# as_fn_mkdir_p -# ------------- -# Create "$as_dir" as a directory, including parents if necessary. -as_fn_mkdir_p () -{ - - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || eval $as_mkdir_p || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" - - -} # as_fn_mkdir_p -if mkdir -p . 2>/dev/null; then - as_mkdir_p='mkdir -p "$as_dir"' -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -if test -x / >/dev/null 2>&1; then - as_test_x='test -x' -else - if ls -dL / >/dev/null 2>&1; then - as_ls_L_option=L - else - as_ls_L_option= - fi - as_test_x=' - eval sh -c '\'' - if test -d "$1"; then - test -d "$1/."; - else - case $1 in #( - -*)set "./$1";; - esac; - case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( - ???[sx]*):;;*)false;;esac;fi - '\'' sh - ' -fi -as_executable_p=$as_test_x - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -exec 6>&1 -## ----------------------------------- ## -## Main body of $CONFIG_STATUS script. ## -## ----------------------------------- ## -_ASEOF -test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1 - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -# Save the log message, to keep $0 and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. -ac_log=" -This file was extended by $as_me, which was -generated by GNU Autoconf 2.68. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -on `(hostname || uname -n) 2>/dev/null | sed 1q` -" - -_ACEOF - -case $ac_config_files in *" -"*) set x $ac_config_files; shift; ac_config_files=$*;; -esac - - - -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -# Files that config.status was made for. -config_files="`echo $ac_config_files`" - -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -ac_cs_usage="\ -\`$as_me' instantiates files and other configuration actions -from templates according to the current configuration. Unless the files -and actions are specified as TAGs, all are instantiated by default. - -Usage: $0 [OPTION]... [TAG]... - - -h, --help print this help, then exit - -V, --version print version number and configuration settings, then exit - --config print configuration, then exit - -q, --quiet, --silent - do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - -Configuration files: -$config_files - -Report bugs to the package provider." - -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" -ac_cs_version="\\ -config.status -configured by $0, generated by GNU Autoconf 2.68, - with options \\"\$ac_cs_config\\" - -Copyright (C) 2010 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." - -ac_pwd='$ac_pwd' -srcdir='$srcdir' -test -n "\$AWK" || AWK=awk -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -# The default lists apply if the user does not specify any file. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=?*) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` - ac_shift=: - ;; - --*=) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg= - ac_shift=: - ;; - *) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - esac - - case $ac_option in - # Handling of the options. - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) - $as_echo "$ac_cs_version"; exit ;; - --config | --confi | --conf | --con | --co | --c ) - $as_echo "$ac_cs_config"; exit ;; - --debug | --debu | --deb | --de | --d | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - case $ac_optarg in - *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; - '') as_fn_error $? "missing file argument" ;; - esac - as_fn_append CONFIG_FILES " '$ac_optarg'" - ac_need_defaults=false;; - --he | --h | --help | --hel | -h ) - $as_echo "$ac_cs_usage"; exit ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) as_fn_error $? "unrecognized option: \`$1' -Try \`$0 --help' for more information." ;; - - *) as_fn_append ac_config_targets " $1" - ac_need_defaults=false ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -if \$ac_cs_recheck; then - set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion - shift - \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6 - CONFIG_SHELL='$SHELL' - export CONFIG_SHELL - exec "\$@" -fi - -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX - $as_echo "$ac_log" -} >&5 - -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 - -# Handling of arguments. -for ac_config_target in $ac_config_targets -do - case $ac_config_target in - "make.config") CONFIG_FILES="$CONFIG_FILES make.config" ;; - - *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; - esac -done - - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason against having it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Hook for its removal unless debugging. -# Note that there is a small window in which the directory will not be cleaned: -# after its creation but before its name has been assigned to `$tmp'. -$debug || -{ - tmp= ac_tmp= - trap 'exit_status=$? - : "${ac_tmp:=$tmp}" - { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status -' 0 - trap 'as_fn_exit 1' 1 2 13 15 -} -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && - test -d "$tmp" -} || -{ - tmp=./conf$$-$RANDOM - (umask 077 && mkdir "$tmp") -} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 -ac_tmp=$tmp - -# Set up the scripts for CONFIG_FILES section. -# No need to generate them if there are no CONFIG_FILES. -# This happens for instance with `./config.status config.h'. -if test -n "$CONFIG_FILES"; then - - -ac_cr=`echo X | tr X '\015'` -# On cygwin, bash can eat \r inside `` if the user requested igncr. -# But we know of no other shell where ac_cr would be empty at this -# point, so we can use a bashism as a fallback. -if test "x$ac_cr" = x; then - eval ac_cr=\$\'\\r\' -fi -ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` -if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then - ac_cs_awk_cr='\\r' -else - ac_cs_awk_cr=$ac_cr -fi - -echo 'BEGIN {' >"$ac_tmp/subs1.awk" && -_ACEOF - - -{ - echo "cat >conf$$subs.awk <<_ACEOF" && - echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' && - echo "_ACEOF" -} >conf$$subs.sh || - as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 -ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'` -ac_delim='%!_!# ' -for ac_last_try in false false false false false :; do - . ./conf$$subs.sh || - as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 - - ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X` - if test $ac_delim_n = $ac_delim_num; then - break - elif $ac_last_try; then - as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 - else - ac_delim="$ac_delim!$ac_delim _$ac_delim!! " - fi -done -rm -f conf$$subs.sh - -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK && -_ACEOF -sed -n ' -h -s/^/S["/; s/!.*/"]=/ -p -g -s/^[^!]*!// -:repl -t repl -s/'"$ac_delim"'$// -t delim -:nl -h -s/\(.\{148\}\)..*/\1/ -t more1 -s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/ -p -n -b repl -:more1 -s/["\\]/\\&/g; s/^/"/; s/$/"\\/ -p -g -s/.\{148\}// -t nl -:delim -h -s/\(.\{148\}\)..*/\1/ -t more2 -s/["\\]/\\&/g; s/^/"/; s/$/"/ -p -b -:more2 -s/["\\]/\\&/g; s/^/"/; s/$/"\\/ -p -g -s/.\{148\}// -t delim -' >$CONFIG_STATUS || ac_write_fail=1 -rm -f conf$$subs.awk -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -_ACAWK -cat >>"\$ac_tmp/subs1.awk" <<_ACAWK && - for (key in S) S_is_set[key] = 1 - FS = "" - -} -{ - line = $ 0 - nfields = split(line, field, "@") - substed = 0 - len = length(field[1]) - for (i = 2; i < nfields; i++) { - key = field[i] - keylen = length(key) - if (S_is_set[key]) { - value = S[key] - line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) - len += length(value) + length(field[++i]) - substed = 1 - } else - len += 1 + keylen - } - - print line -} - -_ACAWK -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then - sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" -else - cat -fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \ - || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 -_ACEOF - -# VPATH may cause trouble with some makes, so we remove sole $(srcdir), -# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and -# trailing colons and then remove the whole line if VPATH becomes empty -# (actually we leave an empty line to preserve line numbers). -if test "x$srcdir" = x.; then - ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{ -h -s/// -s/^/:/ -s/[ ]*$/:/ -s/:\$(srcdir):/:/g -s/:\${srcdir}:/:/g -s/:@srcdir@:/:/g -s/^:*// -s/:*$// -x -s/\(=[ ]*\).*/\1/ -G -s/\n// -s/^[^=]*=[ ]*$// -}' -fi - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -fi # test -n "$CONFIG_FILES" - - -eval set X " :F $CONFIG_FILES " -shift -for ac_tag -do - case $ac_tag in - :[FHLC]) ac_mode=$ac_tag; continue;; - esac - case $ac_mode$ac_tag in - :[FHL]*:*);; - :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;; - :[FH]-) ac_tag=-:-;; - :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; - esac - ac_save_IFS=$IFS - IFS=: - set x $ac_tag - IFS=$ac_save_IFS - shift - ac_file=$1 - shift - - case $ac_mode in - :L) ac_source=$1;; - :[FH]) - ac_file_inputs= - for ac_f - do - case $ac_f in - -) ac_f="$ac_tmp/stdin";; - *) # Look for the file first in the build tree, then in the source tree - # (if the path is not absolute). The absolute path cannot be DOS-style, - # because $ac_f cannot contain `:'. - test -f "$ac_f" || - case $ac_f in - [\\/$]*) false;; - *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; - esac || - as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;; - esac - case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac - as_fn_append ac_file_inputs " '$ac_f'" - done - - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - configure_input='Generated from '` - $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' - `' by configure.' - if test x"$ac_file" != x-; then - configure_input="$ac_file. $configure_input" - { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 -$as_echo "$as_me: creating $ac_file" >&6;} - fi - # Neutralize special characters interpreted by sed in replacement strings. - case $configure_input in #( - *\&* | *\|* | *\\* ) - ac_sed_conf_input=`$as_echo "$configure_input" | - sed 's/[\\\\&|]/\\\\&/g'`;; #( - *) ac_sed_conf_input=$configure_input;; - esac - - case $ac_tag in - *:-:* | *:-) cat >"$ac_tmp/stdin" \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; - esac - ;; - esac - - ac_dir=`$as_dirname -- "$ac_file" || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - as_dir="$ac_dir"; as_fn_mkdir_p - ac_builddir=. - -case "$ac_dir" in -.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -*) - ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` - # A ".." for each directory in $ac_dir_suffix. - ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` - case $ac_top_builddir_sub in - "") ac_top_builddir_sub=. ac_top_build_prefix= ;; - *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; - esac ;; -esac -ac_abs_top_builddir=$ac_pwd -ac_abs_builddir=$ac_pwd$ac_dir_suffix -# for backward compatibility: -ac_top_builddir=$ac_top_build_prefix - -case $srcdir in - .) # We are building in place. - ac_srcdir=. - ac_top_srcdir=$ac_top_builddir_sub - ac_abs_top_srcdir=$ac_pwd ;; - [\\/]* | ?:[\\/]* ) # Absolute name. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir - ac_abs_top_srcdir=$srcdir ;; - *) # Relative name. - ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_build_prefix$srcdir - ac_abs_top_srcdir=$ac_pwd/$srcdir ;; -esac -ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix - - - case $ac_mode in - :F) - # - # CONFIG_FILE - # - -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -# If the template does not know about datarootdir, expand it. -# FIXME: This hack should be removed a few years after 2.60. -ac_datarootdir_hack=; ac_datarootdir_seen= -ac_sed_dataroot=' -/datarootdir/ { - p - q -} -/@datadir@/p -/@docdir@/p -/@infodir@/p -/@localedir@/p -/@mandir@/p' -case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in -*datarootdir*) ac_datarootdir_seen=yes;; -*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 -$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 - ac_datarootdir_hack=' - s&@datadir@&$datadir&g - s&@docdir@&$docdir&g - s&@infodir@&$infodir&g - s&@localedir@&$localedir&g - s&@mandir@&$mandir&g - s&\\\${datarootdir}&$datarootdir&g' ;; -esac -_ACEOF - -# Neutralize VPATH when `$srcdir' = `.'. -# Shell code in configure.ac might set extrasub. -# FIXME: do we really want to maintain this feature? -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -ac_sed_extra="$ac_vpsub -$extrasub -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s|@configure_input@|$ac_sed_conf_input|;t t -s&@top_builddir@&$ac_top_builddir_sub&;t t -s&@top_build_prefix@&$ac_top_build_prefix&;t t -s&@srcdir@&$ac_srcdir&;t t -s&@abs_srcdir@&$ac_abs_srcdir&;t t -s&@top_srcdir@&$ac_top_srcdir&;t t -s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t -s&@builddir@&$ac_builddir&;t t -s&@abs_builddir@&$ac_abs_builddir&;t t -s&@abs_top_builddir@&$ac_abs_top_builddir&;t t -$ac_datarootdir_hack -" -eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \ - >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - -test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && - { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } && - { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \ - "$ac_tmp/out"`; test -z "$ac_out"; } && - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined" >&5 -$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined" >&2;} - - rm -f "$ac_tmp/stdin" - case $ac_file in - -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";; - *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";; - esac \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - ;; - - - - esac - -done # for ac_tag - - -as_fn_exit 0 -_ACEOF -ac_clean_files=$ac_clean_files_save - -test $ac_write_fail = 0 || - as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5 - - -# configure is writing to config.log, and then calls config.status. -# config.status does its own redirection, appending to config.log. -# Unfortunately, on DOS this fails, as config.log is still kept open -# by configure, so config.status won't be able to write to it; its -# output is simply discarded. So we exec the FD to /dev/null, -# effectively closing config.log, so it can be properly (re)opened and -# appended to by config.status. When coming back to configure, we -# need to make the FD available again. -if test "$no_create" != yes; then - ac_cs_success=: - ac_config_status_args= - test "$silent" = yes && - ac_config_status_args="$ac_config_status_args --quiet" - exec 5>/dev/null - $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false - exec 5>>config.log - # Use ||, not &&, to avoid exiting from the if with $? = 1, which - # would make configure fail if this is the last instruction. - $ac_cs_success || as_fn_exit 1 -fi -if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 -$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} -fi - - - diff --git a/configure.ac b/configure.ac deleted file mode 100644 index 862ceba..0000000 --- a/configure.ac +++ /dev/null @@ -1,145 +0,0 @@ -# EZFIO is an automatic generator of I/O libraries -# Copyright (C) 2009 Anthony SCEMAMA, CNRS -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -# -# Anthony Scemama -# LCPQ - IRSAMC - CNRS -# Universite Paul Sabatier -# 118, route de Narbonne -# 31062 Toulouse Cedex 4 -# scemama@irsamc.ups-tlse.fr -# -*- Autoconf -*- -# Process this file with autoconf to produce a configure script. - -VERSION=[`. version ; echo $VERSION`] -AC_SUBST([VERSION]) - -AC_REVISION([$Revision: $VERSION $]) - -AC_PREREQ([2.50]) - -AC_INIT([EZFIO Library Generator], [], [scemama@irsamc.ups-tlse.fr],[ezfio],[http://ezfio.sourceforge.net]) - -AC_SYS_LONG_FILE_NAMES -ROOT=`pwd` -AC_SUBST([ROOT]) - -AC_CONFIG_SRCDIR([src/run.irp.f]) -AC_CONFIG_FILES([make.config]) -AC_PREFIX_DEFAULT([./]) - -STATIC_LIB=$ROOT/lib/libezfio.a - -AC_PROG_RANLIB - -# Test Fortran -# ------------ - -AC_LANG([Fortran]) -AC_PROG_FC([ifort gfortran],[Fortran 90]) -AC_PROG_FC_C_O -AC_FC_SRCEXT([F90]) -AC_FC_FREEFORM - -# Test Python -# ------------ - -AC_CHECK_PROG([PYTHON],[python],[yes],[no]) -if [[ "$PYTHON" = no ]] ; then - AC_MSG_ERROR([Please install Python.]) -fi - -# Test Ninja -# ----------- - -if [[ -z "$NINJA" ]] ; then - AC_CHECK_PROG([NINJA],[ninja],[yes],[no]) - if [[ "$NINJA" = no ]] ; then - NINJA= - fi -fi -AC_SUBST[[NINJA]] - -# Test AR -# ------- - -if [[ -z "$AR" ]] ; then - AC_CHECK_PROG([AR],[ar],[yes],[no]) - if [[ "$AR" = no ]] ; then - AC_MSG_ERROR([ar not found.]) - fi - AR=ar -fi -AC_SUBST([AR]) - -# Test Gzip and zcat -# ------------------ - -if [[ -z "$HAS_GZIP" ]] ; then - AC_CHECK_PROG([GZIP],[gzip],[yes],[no]) - if [[ "$GZIP" = no ]] ; then - HAS_GZIP="-DNO_GZIP" - fi - - AC_CHECK_PROG([ZCAT],[zcat],[yes],[no]) - if [[ "$ZCAT" = no ]] ; then - HAS_GZIP="-DNO_GZIP" - fi - - AC_CHECK_PROG([MKFIFO],[mkfifo],[yes],[no]) - if [[ "$MKFIFO" = no ]] ; then - HAS_GZIP="-DNO_GZIP" - fi -fi -AC_SUBST([HAS_GZIP]) - -# Test IRPF90 -# ------------ - -if [[ -z "$IRPF90" ]] ; then - AC_CHECK_PROG([IRPF90],[irpf90],[yes],[no]) - if [[ "$IRPF90" = no ]] ; then - AC_MSG_ERROR([Please install IRPF90:\nhttp://irpf90.ups-tlse.fr]) - fi - IRPF90=`which irpf90` -fi -AC_SUBST([IRPF90]) - -if [[ -z "$FCFLAGS" ]] ; then - case $FC in - ifort*) - FCFLAGS="-O2 -g -ip" - STATIC_FC="-static-intel -static-libgcc -static" - ;; - gfortran*) - FCFLAGS="-O2 -g -ffree-line-length-none" - STATIC_FC="-static-libgcc -static" - ;; - esac -fi - -# Write make.config - -LIB="$STATIC_LIB" -FCFLAGS="$FCFLAGS $STATIC_FC" -AC_SUBST([LIB]) - -# Done -#----- - -AC_OUTPUT - - diff --git a/make.config.example b/make.config.example new file mode 100644 index 0000000..b185904 --- /dev/null +++ b/make.config.example @@ -0,0 +1,6 @@ +IRPF90 = irpf90 +FC = gfortran -ffree-line-length-none -fPIC +FCFLAGS= -O2 +RANLIB = ranlib +AR = ar +NINJA = ninja diff --git a/make.config.in b/make.config.in deleted file mode 100644 index 31efc33..0000000 --- a/make.config.in +++ /dev/null @@ -1,6 +0,0 @@ -IRPF90 = @IRPF90@ @HAS_GZIP@ -FC = @FC@ -fPIC -FCFLAGS= @FCFLAGS@ -RANLIB = @RANLIB@ -AR = @AR@ -NINJA = @NINJA@ diff --git a/src/Makefile b/src/Makefile index 5975a22..7ee4841 100644 --- a/src/Makefile +++ b/src/Makefile @@ -22,10 +22,8 @@ # 31062 Toulouse Cedex 4 # scemama@irsamc.ups-tlse.fr -DEFAULT_TARGET: python +DEFAULT_TARGET: all -../make.config: - make -C .. make.config include ../make.config export @@ -36,25 +34,23 @@ irpf90.make: $(wildcard *.irp.f) ../config/* include ../version -.PHONY: python static +.PHONY: static all -static: ../lib/libezfio_irp.a ../lib/libezfio.a +all: static -../lib/libezfio.a: $(OBJ1) - - bash -c "[[ -e ../libezfio.a ]] && rm ../lib/libezfio.a" +static: ../lib/libezfio.a ../lib/libezfio_irp.a + +../lib/libezfio.a: IRPF90_temp/irpf90.a + rm -f ../lib/libezfio.a $(AR) cru ../lib/libezfio.a $(OBJ1) $(RANLIB) ../lib/libezfio.a ../lib/libezfio_irp.a: ../lib/libezfio.a + rm -f ../lib/libezfio_irp.a cp ../lib/libezfio.a ../lib/libezfio_irp.a $(AR) dv ../lib/libezfio_irp.a irp_stack.irp.o $(RANLIB) ../lib/libezfio_irp.a test: static - ifort -o $@ IRPF90_temp/run.irp.F90 -L../lib/ -lezfio - -python: static - cat ezfio-head.py libezfio_groups-gen.py libezfio_util-gen.py ezfio-tail.py > ../Python/ezfio.py - -ezfio.py: python + $(FC) -o $@ IRPF90_temp/run.irp.F90 -L../lib/ -lezfio diff --git a/src/create_bash.py b/src/create_bash.py new file mode 100755 index 0000000..21099c7 --- /dev/null +++ b/src/create_bash.py @@ -0,0 +1,89 @@ +#!/usr/bin/env python +# EZFIO is an automatic generator of I/O libraries +# Copyright (C) 2009 Anthony SCEMAMA, CNRS +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# +# Anthony Scemama +# LCPQ - IRSAMC - CNRS +# Universite Paul Sabatier +# 118, route de Narbonne +# 31062 Toulouse Cedex 4 +# scemama@irsamc.ups-tlse.fr + +import re +from read_config import groups +from groups_templates import * +from f_types import t_short, f2ocaml +import os + +import sys + +def run(): + + head = [] + tail = [] + + file = open("../version","r") + v = file.readline() + file.close() + v = v.split('=')[1].strip() + l = os.getcwd().replace('/src','') + head += ["""let version = "%s";;"""%(v), + """let library = "%s";;"""%(l)] + + for group in groups.keys(): + for var,type,dims,command in groups[group]: + if command is not "": + continue + dims_py = str(dims) + for g in groups.keys(): + dims_py = dims_py.replace(g,'self.'+g) + var = var.lower() + group = group.lower() + strdims = tuple(map(lambda x: '('+str(x)+')',dims)) + strdims = str(strdims).replace("'","") + if len(dims) == 1: + strdims = strdims[:-2]+")" + dim_max = strdims[1:-1].replace(',','*') + type_set = type + if type.lower().startswith('character'): + type_set = 'character*(*)' + d = { 'type_short': f2ocaml[t_short(type)], + 'type': type, + 'type_set': type_set, + 'var': var, + 'group': group, + 'dims': strdims} + if dims == (): + tail += ['let get_%(group)s_%(var)s () = read_%(type_short)s "%(group)s" "%(var)s";;' %(d), + 'let set_%(group)s_%(var)s = write_%(type_short)s "%(group)s" "%(var)s" ;;' %(d) , + 'let has_%(group)s_%(var)s () = has "%(group)s" "%(var)s" ;;' %(d) ] + else: + tail += ['let get_%(group)s_%(var)s () = read_%(type_short)s_array "%(group)s" "%(var)s";;' %(d), + 'let set_%(group)s_%(var)s = write_%(type_short)s_array "%(group)s" "%(var)s";;' %(d) , + 'let has_%(group)s_%(var)s () = has_array "%(group)s" "%(var)s" ;;' %(d) ] + + + file = open('ezfio.ml','r') + template = file.read() + file.close() + template = template.replace("(*$HEAD*)",'\n'.join(head)) + template = template.replace("(*$TAIL*)",'\n'.join(tail)) + + file = open('../Ocaml/ezfio.ml','w') + file.write(template) + file.close() + diff --git a/src/create_python.py b/src/create_python.py new file mode 100755 index 0000000..7322f12 --- /dev/null +++ b/src/create_python.py @@ -0,0 +1,31 @@ +#!/bin/bash +# EZFIO is an automatic generator of I/O libraries +# Copyright (C) 2009 Anthony SCEMAMA, CNRS +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# +# Anthony Scemama +# LCPQ - IRSAMC - CNRS +# Universite Paul Sabatier +# 118, route de Narbonne +# 31062 Toulouse Cedex 4 +# scemama@irsamc.ups-tlse.fr + +def run(): + with open('../Python/ezfio.py','w') as out: + for f in "ezfio-head.py libezfio_groups-gen.py libezfio_util-gen.py ezfio-tail.py".split(): + with open(f,'r') as inp: + out.write(inp.read()) + diff --git a/src/groups.py b/src/groups.py index fcb9f4b..8e3ddf1 100644 --- a/src/groups.py +++ b/src/groups.py @@ -148,3 +148,6 @@ file_py.close() import create_ocaml create_ocaml.run() +import create_python +create_python.run() + diff --git a/src/groups_templates.py b/src/groups_templates.py index ee197fd..4e14c24 100644 --- a/src/groups_templates.py +++ b/src/groups_templates.py @@ -89,7 +89,7 @@ end subroutine subroutine ezfio_free_%(group)s_%(var)s() implicit none BEGIN_DOC -! Frees the memory for %(group)s/%(var) +! Frees the memory for %(group)s/%(var)s END_DOC FREE %(group)s_%(var)s end @@ -149,7 +149,7 @@ end subroutine subroutine ezfio_free_%(group)s_%(var)s() implicit none BEGIN_DOC -! Frees the memory for %(group)s/%(var) +! Frees the memory for %(group)s/%(var)s END_DOC FREE %(group)s_%(var)s end @@ -175,7 +175,7 @@ end subroutine ezfio_free_%(group)s_%(var)s() implicit none BEGIN_DOC -! Frees the memory for %(group)s/%(var) +! Frees the memory for %(group)s/%(var)s END_DOC FREE %(group)s_%(var)s end @@ -226,7 +226,7 @@ end subroutine subroutine ezfio_free_%(group)s_%(var)s() implicit none BEGIN_DOC -! Frees the memory for %(group)s/%(var) +! Frees the memory for %(group)s/%(var)s END_DOC FREE %(group)s_%(var)s end diff --git a/src/libezfio_util.irp.f b/src/libezfio_util.irp.f index d87ef91..91887ce 100644 --- a/src/libezfio_util.irp.f +++ b/src/libezfio_util.irp.f @@ -237,6 +237,10 @@ end template_no_logical = """ integer function n_count_%(type_short)s(array,isize,val) + implicit none + BEGIN_DOC +! Count number of elements of array of type %(type)s + END_DOC %(type)s, intent(in) :: array(*) integer, intent(in) :: isize %(type)s, intent(in) :: val diff --git a/src/run.irp.f b/src/run.irp.f index d6a8240..7d78f38 100644 --- a/src/run.irp.f +++ b/src/run.irp.f @@ -23,6 +23,9 @@ ! scemama@irsamc.ups-tlse.fr program run + BEGIN_DOC +! Test run + END_DOC ! Leave this empty end diff --git a/version b/version index a9a3ac1..0743293 100644 --- a/version +++ b/version @@ -1 +1 @@ -VERSION=1.2.2 +VERSION=1.3.0 From 5dc35098319340392c9cd46e13d831ad8aab8ef6 Mon Sep 17 00:00:00 2001 From: Anthony Scemama Date: Mon, 1 Jun 2015 16:37:31 +0200 Subject: [PATCH 05/10] Updated configure --- Makefile | 16 +++++----------- make.config.example | 6 ------ src/Makefile | 2 +- 3 files changed, 6 insertions(+), 18 deletions(-) delete mode 100644 make.config.example diff --git a/Makefile b/Makefile index 66d3d59..e290321 100644 --- a/Makefile +++ b/Makefile @@ -28,17 +28,14 @@ include make.config .PHONY: default clean distclean archive configure default: make.config - - bash -c "[[ -e lib/libezfio.a ]] && rm $$PWD/lib/*" - @echo Compiling library && make -C $$PWD/src static - @echo Building Python module && make -C $$PWD/src python + $(MAKE) -C $$PWD/src clean: - bash -c "[[ -e lib/libezfio.a ]] && rm $$PWD/lib/*" - bash -c "[[ -e Python/ezfio.py ]] && rm $$PWD/Python/*" - - make -C $$PWD/src veryclean - -distclean: clean - - rm -rf autom4te.cache config.status config.log make.config + - bash -c "[[ -e Ocaml/ezfio.ml ]] && rm $$PWD/Ocaml/*" + - bash -c "[[ -e Bash/ezfio.sh ]] && rm $$PWD/Bash/*" + - $(MAKE) -C $$PWD/src veryclean archive: distclean git archive --format=tar HEAD > EZFIO.$(VERSION).tar @@ -47,9 +44,6 @@ archive: distclean tar -zcvf EZFIO.$(VERSION).tar.gz EZFIO rm -rf EZFIO -configure: make.config.in configure.ac - autoconf - make.config: - ./configure --host=dummy + python configure.py diff --git a/make.config.example b/make.config.example deleted file mode 100644 index b185904..0000000 --- a/make.config.example +++ /dev/null @@ -1,6 +0,0 @@ -IRPF90 = irpf90 -FC = gfortran -ffree-line-length-none -fPIC -FCFLAGS= -O2 -RANLIB = ranlib -AR = ar -NINJA = ninja diff --git a/src/Makefile b/src/Makefile index 7ee4841..30f30f2 100644 --- a/src/Makefile +++ b/src/Makefile @@ -29,7 +29,7 @@ export include irpf90.make -irpf90.make: $(wildcard *.irp.f) ../config/* +irpf90.make: $(wildcard *.irp.f) ../config/* $(IRPF90) include ../version From c29b6066c8c0ccd7a4d0fcbc34ca46ed9a9005b5 Mon Sep 17 00:00:00 2001 From: Anthony Scemama Date: Mon, 1 Jun 2015 16:45:10 +0200 Subject: [PATCH 06/10] Add configure.py --- configure.py | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100755 configure.py diff --git a/configure.py b/configure.py new file mode 100755 index 0000000..161a246 --- /dev/null +++ b/configure.py @@ -0,0 +1,22 @@ +#!/usr/bin/env python + +import os + +if __name__ == '__main__': + + d_default = { + "IRPF90" : 'irpf90', + "FC" : 'gfortran -g -ffree-line-length-none -fPIC', + "FCFLAGS" : '-O2', + "RANLIB" : 'ranlib', + "AR" : 'ar', + "NINJA" : 'ninja' + } + + with open("make.config",'w') as out: + for var,default in d_default.iteritems(): + try: + cur = os.environ[var] + except KeyError: + cur = default + out.write("{0} = {1}\n".format(var,cur)) From 62e78049c210ddf916fa372c3d3cb5cdf87110ed Mon Sep 17 00:00:00 2001 From: Anthony Scemama Date: Tue, 2 Jun 2015 01:48:43 +0200 Subject: [PATCH 07/10] Bash/ezfio.sh --- .gitignore | 18 +++ Bash/.empty | 0 Bash/ezfio.sh | 270 ++++++++++++++++++++++++++++++++++++++++++++- Makefile | 8 +- README | 86 --------------- build.ninja | 22 ++++ configure.py | 130 +++++++++++++++++++--- src/create_bash.py | 4 +- 8 files changed, 429 insertions(+), 109 deletions(-) create mode 100644 Bash/.empty delete mode 100644 README create mode 100644 build.ninja diff --git a/.gitignore b/.gitignore index ee0d897..a0f2136 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,19 @@ update.sh +Python/ezfio.py +Ocaml/ezfio.ml +Bash/ezfio.sh +.ninja_deps +.ninja_log +generated.ninja +lib/libezfio.a +lib/libezfio_irp.a +make.config +src/IRPF90_man/ +src/IRPF90_temp/ +src/irpf90.make +src/irpf90_entities +src/libezfio_groups-gen.py +src/libezfio_util-gen.py +src/*.pyc +src/run +src/tags diff --git a/Bash/.empty b/Bash/.empty new file mode 100644 index 0000000..e69de29 diff --git a/Bash/ezfio.sh b/Bash/ezfio.sh index c901bc3..e43c9e4 100644 --- a/Bash/ezfio.sh +++ b/Bash/ezfio.sh @@ -1,4 +1,272 @@ #!/bin/bash -# TODO +function _ezfio_usage() +{ + echo " +Usage: + ezfio set_file EZFIO_DIRECTORY + ezfio unset_file + ezfio has DIRECTORY ITEM + ezfio get DIRECTORY ITEM + ezfio set DIRECTORY ITEM VALUE : Scalar values + ezfio set DIRECTORY ITEM : Array values read from stdin + + ezfio set_verbose + ezfio unset_verbose +" +} + +function _require_ezfio_file() +{ + if [[ -z ${EZFIO_FILE} ]] + then + echo "EZFIO directory not set: try 'ezfio set_file'" + return 1 + fi + + if [[ ! -d ${EZFIO_FILE} ]] + then + echo "EZFIO directory not accessible: try 'ezfio set_file'" + return 1 + fi +} + +function _require_first_argument() +{ + if [[ -z $1 ]] + then + _ezfio_usage + echo "Error: First argument not set" + return 1 + else + return 0 + fi +} + +function _require_second_argument() +{ + if [[ -z $2 ]] + then + _ezfio_usage + echo "Error: Second argument not set" + return 1 + fi +} + +function _ezfio_set_verbose() +{ + function _ezfio_info() + { + echo "$1" + } + return 0 +} + +function _ezfio_unset_verbose() +{ + function _ezfio_info() + { + : + } + return 0 +} + +function _ezfio_set_file() +{ + _require_first_argument $@ || return 1 + + if [[ ! -d $1 ]] + then + echo "No such directory: $1" + return 1 + fi + export EZFIO_FILE=$1 + _ezfio_info "Set file ${EZFIO_FILE}" + return 0 +} + +function _ezfio_unset_file() +{ + _require_ezfio_file || return 1 + _ezfio_info "Unset file ${EZFIO_FILE}" + unset EZFIO_FILE + return 0 +} + +function _ezfio_has() +{ + _require_ezfio_file || return 1 + _require_first_argument $@ || return 1 + + if [[ ! -d ${EZFIO_FILE}/${1,,} ]] + then + return 1 + fi + + if [[ -z $2 ]] + then + return 0 + fi + + if [[ -f ${EZFIO_FILE}/${1,,}/${2,,} ]] + then + _ezfio_info "EZFIO has $1 / $2" + return 0 + elif [[ -f ${EZFIO_FILE}/${1,,}/${2,,}.gz ]] + then + _ezfio_info "EZFIO has $1 / $2" + return 0 + else + _ezfio_info "EZFIO doesn't have $1 / $2" + return 1 + fi +} + +function _ezfio_get() +{ + _require_ezfio_file || return 1 + + if [[ -z $1 ]] + then + ls ${EZFIO_FILE} + return 0 + fi + + _ezfio_has $@ || return 1 + + if [[ -z $2 ]] + then + ls ${EZFIO_FILE}/${1,,} + return 0 + fi + + if [[ -f ${EZFIO_FILE}/${1,,}/${2,,} ]] + then + cat ${EZFIO_FILE}/${1,,}/${2,,} + elif [[ -f ${EZFIO_FILE}/${1,,}/${2,,}.gz ]] + then + zcat ${EZFIO_FILE}/${1,,}/${2,,}.gz + else + _ezfio_info "EZFIO doesn't have $1 / $2" + return 1 + fi + return 0 +} + +function _ezfio_set() +{ + _require_ezfio_file || return 1 + _require_first_argument $@ || return 1 + _require_second_argument $@ || return 2 + + if [[ ! -d ${EZFIO_FILE}/${1,,} ]] + then + mkdir -p ${EZFIO_FILE}/${1,,} + fi + if [[ ! -z "$3" ]] + then + echo "$3" > ${EZFIO_FILE}/${1,,}/${2,,} + else + zcat > ${EZFIO_FILE}/${1,,}/${2,,}.gz + fi + return 0 +} + +#--- + +function ezfio() +{ + case $1 in + "has") + shift + _ezfio_has $@ + ;; + + "set") + shift + _ezfio_set $@ + ;; + + "get") + shift + _ezfio_get $@ + ;; + + "set_file") + shift + _ezfio_set_file $@ + ;; + + "unset_file") + shift + _ezfio_unset_file + ;; + + "set_verbose") + _ezfio_set_verbose + ;; + + "unset_verbose") + _ezfio_unset_verbose + ;; + + *) + _ezfio_usage + ;; + esac + +} + + +_ezfio_unset_verbose + + +# Completion + + +_Complete() +{ + local cur + + COMPREPLY=() + cur="${COMP_WORDS[COMP_CWORD]}" + prev="${COMP_WORDS[COMP_CWORD-1]}" + prev2="${COMP_WORDS[COMP_CWORD-2]}" + + case "${prev2}" in + set|has|get) + COMPREPLY=( $(compgen -W "$(cd ${EZFIO_FILE}/${prev} ; ls | sed 's/\.gz//' )" -- $cur ) ) + return 0 + ;; + esac + + case "${prev}" in + unset_file|set_verbose|unset_verbose) + COMPREPLY=() + return 0 + ;; + set_file) + COMPREPLY=( $(compgen -W "$(\ls -d */ | sed 's|/||g')" -- ${cur} ) ) + return 0 + ;; + set|has|get) + COMPREPLY=( $(compgen -W "$(cd ${EZFIO_FILE} ; \ls -d */ | sed 's|/||g')" -- $cur ) ) + return 0 + ;; + *) + if [[ -z ${EZFIO_FILE} ]] + then + COMPREPLY=( $(compgen -W 'set_file \ + set_verbose unset_verbose -h' -- $cur ) ) + else + COMPREPLY=( $(compgen -W 'has get set unset_file \ + set_verbose unset_verbose -h' -- $cur ) ) + fi + return 0 + ;; + esac + +} + +complete -F _Complete ezfio diff --git a/Makefile b/Makefile index e290321..b49b241 100644 --- a/Makefile +++ b/Makefile @@ -31,10 +31,10 @@ default: make.config $(MAKE) -C $$PWD/src clean: - - bash -c "[[ -e lib/libezfio.a ]] && rm $$PWD/lib/*" - - bash -c "[[ -e Python/ezfio.py ]] && rm $$PWD/Python/*" - - bash -c "[[ -e Ocaml/ezfio.ml ]] && rm $$PWD/Ocaml/*" - - bash -c "[[ -e Bash/ezfio.sh ]] && rm $$PWD/Bash/*" + - bash -c "[[ -f lib/libezfio.a ]] && rm $$PWD/lib/*" + - bash -c "[[ -f Python/ezfio.py ]] && rm $$PWD/Python/*" + - bash -c "[[ -f Ocaml/ezfio.ml ]] && rm $$PWD/Ocaml/*" + - bash -c "[[ -f Bash/ezfio.sh ]] && rm $$PWD/Bash/*" - $(MAKE) -C $$PWD/src veryclean archive: distclean diff --git a/README b/README deleted file mode 100644 index 930e644..0000000 --- a/README +++ /dev/null @@ -1,86 +0,0 @@ -====================================================================== - EZFIO -====================================================================== - -Author: A. Scemama, LCPQ-IRSAMC, CNRS-Universite Paul Sabatier -scemama@irsamc.ups-tlse.fr - -== About EZFIO == - - EZFIO is the Easy Fortran I/O library. With EZFIO, your data is organized -in a file system inside a main directory. This main directory contains -subdirectories, which contain files. Each file corresponds to a data. For -atomic data the file is a plain text file, and for array data the file is a -gzipped text file. - - -== Building a library == - -Your EZFIO library is built according to the definitions given in the -files of the 'config' directory. A configuration file can be, for example: ---- - -system - title character*(128) - num_elec integer = system_num_alpha + system_num_beta - num_alpha integer - num_beta integer - -geometry - num_atom integer - nuc_energy double precision - label character*(32) (geometry_num_atom) - atomic_number integer (geometry_num_atom) - charge double precision (geometry_num_atom) - coord double precision (3,geometry_num_atom) - ---- - - A subdirectory is defined by its name at the beginning of a new line. The -data contained in this subdirectory is defined by the triplet -(name,type,dimension), leaving at least one white space at the beginning of the -line. - If the dimension of an array is a data defined in the file, its name can be -used as _. For example, the -dimension '(geometry_num_atom)' uses the data 'num_atom' of subdirectory -'geometry'. - A data can also be the result of a simple operation. In that case, the -simple operation is written after an '=' symbol (as for 'num_elec'). In -that case, the data is read_only. - -Once your configuration file is ready, run 'make' and your library will be -built. - -== Using the library == - - In the following, we will call 'EZFIO file' the main directory containing the -EZFIO data. - -Only one EZFIO file can be manipulated at a time. To select a file, use: - character*(64) :: filename - call ezfio_set_file(filename) -To get the name of the current used EZFIO file, use - character*(64) :: filename - call ezfio_get_filename(filename) - -For each data, 3 subroutines are created. - is the name of the subdirectory which contains the data and - is the name of the data. - -* subroutine ezfio_has__ (result) -sets result to .True. if the data exists in the EZFIO file, .False. otherwise. - -* subroutine ezfio_set__ (source) -writes the source data to the EZFIO file. - -* subroutine ezfio_get__ (destination) -reads the data from the EZFIO file to the destination. - -For safety, a read-only attribute can be set to the file by - call ezfio_set_read_only(.True.) -or inquired by - logical :: is_read_only - call ezfio_is_read_only(is_read_only) - - - diff --git a/build.ninja b/build.ninja new file mode 100644 index 0000000..dcd17ad --- /dev/null +++ b/build.ninja @@ -0,0 +1,22 @@ +include version + +rule build_generated_ninja + command = python configure.py + description = Creating generated.ninja + generator = 1 + +rule run_ninja + command = ninja -f $in + +rule build_archive + command = git archive --format=tar HEAD > EZFIO.${version}.tar && mkdir -p EZFIO && cd EZFIO && tar -xvf ../EZFIO.${version}.tar && cd .. && rm EZFIO.${version}.tar && tar -zcvf EZFIO.${version}.tar.gz EZFIO && rm -rf EZFIO + description = Building archive + +build make.config generated.ninja: build_generated_ninja | configure.py + +build all: run_ninja generated.ninja +default all + +build EZFIO.${VERSION}.tar.gz: build_archive + +build archive: phony EZFIO.${VERSION}.tar.gz diff --git a/configure.py b/configure.py index 161a246..d6d11cb 100755 --- a/configure.py +++ b/configure.py @@ -2,21 +2,119 @@ import os -if __name__ == '__main__': - - d_default = { - "IRPF90" : 'irpf90', - "FC" : 'gfortran -g -ffree-line-length-none -fPIC', - "FCFLAGS" : '-O2', - "RANLIB" : 'ranlib', - "AR" : 'ar', - "NINJA" : 'ninja' - } +with open("version",'r') as f: + version = f.read().strip().rsplit('=')[1] - with open("make.config",'w') as out: - for var,default in d_default.iteritems(): +d_default = { + "VERSION" : version, + "IRPF90" : 'irpf90', + "FC" : 'gfortran -g -ffree-line-length-none -fPIC', + "FCFLAGS" : '-O2', + "RANLIB" : 'ranlib', + "AR" : 'ar', + "NINJA" : 'ninja', + "CONFIG_FILES" : + ' '.join([ x for x in os.listdir('config') if x != '.empty']) +} + +def create_make_config(): + + with open("make.config",'w') as out: + for var,default in d_default.iteritems(): + try: + cur = os.environ[var] + except KeyError: + cur = default + out.write('{0}={1}\n'.format(var,cur)) + + +def read_make_config(): + result = {} + with open("make.config",'r') as f: + for line in f.readlines(): try: - cur = os.environ[var] - except KeyError: - cur = default - out.write("{0} = {1}\n".format(var,cur)) + key, value = line.strip().split('=') + except: + print "Error in make.config:" + print line + sys.exit(1) + result[key] = value + return result + + +def create_build_ninja(): + + if "make.config" not in os.listdir(os.getcwd()): + create_make_config() + + d = read_make_config() + + d["irpf90_files"] = [ "src/{0}".format(x) for x in + """ + IRPF90_temp/build.ninja irpf90.make irpf90_entities + tags + """.split() ] + \ + """ + Python/ezfio.py Ocaml/ezfio.ml Bash/ezfio.sh + """.split() + + d["irpf90_sources"] = [ "src/{0}".format(x) for x in + """ + libezfio_error.irp.f create_ocaml.py groups_templates.py + libezfio_file.irp.f create_python.py libezfio_groups-gen.py + libezfio_groups.irp.f ezfio-head.py libezfio_util-gen.py + libezfio_util.irp.f ezfio-tail.py read_config.py run.irp.f + f_types.py test.py create_bash.py groups.py + """.split() ] + [ "make.config" ] + + d["irpf90_files"] = ' '.join(d["irpf90_files"]) + d["irpf90_sources"] = ' '.join(d["irpf90_sources"]) + + + template = """ +rule build_archive + command = git archive --format=tar HEAD > EZFIO.{VERSION}.tar && mkdir -p EZFIO && cd EZFIO && tar -xvf ../EZFIO.{VERSION}.tar && cd .. && rm EZFIO.{VERSION}.tar && tar -zcvf EZFIO.{VERSION}.tar.gz EZFIO && rm -rf EZFIO + description = Building archive + +rule build_make_config + command = python configure.py + description = Creating make.config + +rule compile_irpf90 + command = cd src ; {IRPF90} --ninja + description = Compiling IRPF90 + +rule build_irpf90_a + command = {NINJA} -C src/IRPF90_temp + description = Compiling Fortran files + +rule build_libezfio_a + command = cp src/IRPF90_temp/irpf90.a lib/libezfio.a ; {RANLIB} lib/libezfio.a + description = Building libezfio.a + +rule build_libezfio_irp_a + command = cp lib/libezfio.a lib/libezfio_irp.a ; {AR} dv lib/libezfio_irp.a irp_stack.irp.o ; {RANLIB} lib/libezfio_irp.a + description = Building libezfio_irp.a + + + +build make.config: build_make_config | configure.py + +build {irpf90_files}: compile_irpf90 | {irpf90_sources} + +build src/IRPF90_temp/irpf90.a: build_irpf90_a | {irpf90_files} + +build lib/libezfio.a: build_libezfio_a | src/IRPF90_temp/irpf90.a + +build lib/libezfio_irp.a: build_libezfio_irp_a | lib/libezfio.a + + +""" + + with open('generated.ninja','w') as f: + f.write(template.format(**d)) + + +if __name__ == '__main__': + + create_build_ninja() diff --git a/src/create_bash.py b/src/create_bash.py index 21099c7..036d2a0 100755 --- a/src/create_bash.py +++ b/src/create_bash.py @@ -77,13 +77,13 @@ def run(): 'let has_%(group)s_%(var)s () = has_array "%(group)s" "%(var)s" ;;' %(d) ] - file = open('ezfio.ml','r') + file = open('ezfio.sh','r') template = file.read() file.close() template = template.replace("(*$HEAD*)",'\n'.join(head)) template = template.replace("(*$TAIL*)",'\n'.join(tail)) - file = open('../Ocaml/ezfio.ml','w') + file = open('../Bash/ezfio-gen.sh','w') file.write(template) file.close() From 3b97748adcfad05b350bd095ca6c1590d4e9c569 Mon Sep 17 00:00:00 2001 From: Anthony Scemama Date: Tue, 2 Jun 2015 12:12:11 +0200 Subject: [PATCH 08/10] Bash calls ezfio.py --- Bash/ezfio.sh | 124 ++++++++++++++++++---------------------- README.rst | 107 +++++++++++++++++++++++++--------- configure.py | 12 ++-- src/ezfio-head.py | 1 + src/ezfio-tail.py | 49 ++++++++++++++++ src/groups.py | 7 --- src/libezfio_util.irp.f | 7 +++ src/run.irp.f | 31 ---------- 8 files changed, 201 insertions(+), 137 deletions(-) delete mode 100644 src/run.irp.f diff --git a/Bash/ezfio.sh b/Bash/ezfio.sh index e43c9e4..9d36360 100644 --- a/Bash/ezfio.sh +++ b/Bash/ezfio.sh @@ -1,5 +1,13 @@ #!/bin/bash +EZFIO_ROOT=$( cd $(dirname "${BASH_SOURCE}")/.. ; pwd -P ) + +function _ezfio_py() +{ + python ${EZFIO_ROOT}/Python/ezfio.py $@ +} + + function _ezfio_usage() { echo " @@ -78,8 +86,7 @@ function _ezfio_set_file() if [[ ! -d $1 ]] then - echo "No such directory: $1" - return 1 + mkdir -p $1 || return 1 fi export EZFIO_FILE=$1 _ezfio_info "Set file ${EZFIO_FILE}" @@ -109,18 +116,7 @@ function _ezfio_has() return 0 fi - if [[ -f ${EZFIO_FILE}/${1,,}/${2,,} ]] - then - _ezfio_info "EZFIO has $1 / $2" - return 0 - elif [[ -f ${EZFIO_FILE}/${1,,}/${2,,}.gz ]] - then - _ezfio_info "EZFIO has $1 / $2" - return 0 - else - _ezfio_info "EZFIO doesn't have $1 / $2" - return 1 - fi + _ezfio_py has $@ && return 0 || return 1 } function _ezfio_get() @@ -129,29 +125,15 @@ function _ezfio_get() if [[ -z $1 ]] then - ls ${EZFIO_FILE} - return 0 + ls ${EZFIO_FILE} && return 0 || return 1 fi - _ezfio_has $@ || return 1 - if [[ -z $2 ]] then - ls ${EZFIO_FILE}/${1,,} - return 0 + ls ${EZFIO_FILE}/${1,,} && return 0 || return 1 fi - if [[ -f ${EZFIO_FILE}/${1,,}/${2,,} ]] - then - cat ${EZFIO_FILE}/${1,,}/${2,,} - elif [[ -f ${EZFIO_FILE}/${1,,}/${2,,}.gz ]] - then - zcat ${EZFIO_FILE}/${1,,}/${2,,}.gz - else - _ezfio_info "EZFIO doesn't have $1 / $2" - return 1 - fi - return 0 + _ezfio_py get $@ && return 0 || return 1 } function _ezfio_set() @@ -160,15 +142,11 @@ function _ezfio_set() _require_first_argument $@ || return 1 _require_second_argument $@ || return 2 - if [[ ! -d ${EZFIO_FILE}/${1,,} ]] + if [[ -z $3 ]] then - mkdir -p ${EZFIO_FILE}/${1,,} - fi - if [[ ! -z "$3" ]] - then - echo "$3" > ${EZFIO_FILE}/${1,,}/${2,,} + _ezfio_py set $@ || return 1 else - zcat > ${EZFIO_FILE}/${1,,}/${2,,}.gz + echo $3 | _ezfio_py set $1 $2 || return 1 fi return 0 } @@ -234,39 +212,51 @@ _Complete() prev="${COMP_WORDS[COMP_CWORD-1]}" prev2="${COMP_WORDS[COMP_CWORD-2]}" - case "${prev2}" in - set|has|get) - COMPREPLY=( $(compgen -W "$(cd ${EZFIO_FILE}/${prev} ; ls | sed 's/\.gz//' )" -- $cur ) ) - return 0 - ;; - esac + if [[ -n ${EZFIO_FILE} && -d ${EZFIO_FILE} ]] + then - case "${prev}" in - unset_file|set_verbose|unset_verbose) - COMPREPLY=() - return 0 - ;; - set_file) - COMPREPLY=( $(compgen -W "$(\ls -d */ | sed 's|/||g')" -- ${cur} ) ) - return 0 - ;; - set|has|get) - COMPREPLY=( $(compgen -W "$(cd ${EZFIO_FILE} ; \ls -d */ | sed 's|/||g')" -- $cur ) ) - return 0 - ;; - *) - if [[ -z ${EZFIO_FILE} ]] - then - COMPREPLY=( $(compgen -W 'set_file \ - set_verbose unset_verbose -h' -- $cur ) ) - else + case "${prev2}" in + set|has|get) + COMPREPLY=( $(compgen -W "$(cd ${EZFIO_FILE}/${prev} ; ls | sed 's/\.gz//' )" -- $cur ) ) + return 0 + ;; + esac + + case "${prev}" in + unset_file|set_verbose|unset_verbose) + COMPREPLY=() + return 0 + ;; + set|has|get) + COMPREPLY=( $(compgen -W "$(cd ${EZFIO_FILE} ; \ls -d */ | sed 's|/||g')" -- $cur ) ) + return 0 + ;; + *) COMPREPLY=( $(compgen -W 'has get set unset_file \ set_verbose unset_verbose -h' -- $cur ) ) - fi - return 0 - ;; - esac + return 0 + ;; + esac + else + + case "${prev}" in + set_verbose|unset_verbose) + COMPREPLY=() + return 0 + ;; + set_file) + COMPREPLY=( $(compgen -W "$(\ls -d */ | sed 's|/||g')" -- ${cur} ) ) + return 0 + ;; + *) + COMPREPLY=( $(compgen -W 'set_file \ + set_verbose unset_verbose -h' -- $cur ) ) + return 0 + ;; + esac + + fi } complete -F _Complete ezfio diff --git a/README.rst b/README.rst index 95970cb..459f1c8 100644 --- a/README.rst +++ b/README.rst @@ -19,8 +19,8 @@ The following packages are needed: * `IRPF90 `_ * `Python `_ +* `GNU make `_ or `Ninja `_ -The latest version can be downloaded `here `_. Tutorial ======== @@ -39,15 +39,9 @@ Create an empty directory for your project and unpack the ``EZFIO.tar.gz`` file $ ls EZFIO/ -Get into the ``EZFIO`` directory and set up your compiling options: - -.. code-block:: bash - - $ cp make.config.example make.config - $ vim make.config - -Now, configure the library to produce the desired suboutines. Get into -the ``config`` directory and create a new file ``test.config`` +Get into the ``EZFIO`` directory and configure the library to produce the +desired suboutines. Get into the ``config`` directory and create a new file +``test.config`` containing:: molecule @@ -79,19 +73,27 @@ simple operation is written after an = symbol (as for ``mass`` in the Once your configuration file is ready, run ``make`` and your library will be built. + Building the library -------------------- -Now, go back to the EZFIO root directory, and run: +Now, go back to the EZFIO root directory. To build with GNU make, run: .. code-block:: bash $ make -The ``lib`` directory now contains the shared library -(``libezfio.so``), the static library (``libezfio.a``), and a static +Or you can use Ninja to build the library: + +.. code-block:: bash + + $ ninja + + +The ``lib`` directory now contains the static library ``libezfio.a``, and a static library for use under the IRPF90 environment (``libezfio_irp.a``). -The ``Python`` directory contains the Python module for the use of the library in Python. +The ``Python``, ``Ocaml`` and ``Bash`` directories contain the binding for these languages. + Using the produced library -------------------------- @@ -220,7 +222,7 @@ Create a file named ``create_input.py`` with: ezfio.molecule_mass = mass ezfio.molecule_coord = coord - # Check that the total charge and mass is correct: + # Check that the total mass is correct: print ezfio.properties_mass # Should give 18. Execute the script: @@ -236,10 +238,10 @@ The printed mass is correct, and a new directory (``Water``) was created with ou $ ls Water/* Water/ezfio: - creation + creation library user Water/molecule: - charge.gz coord.gz mass.gz num_atoms + coord.gz mass.gz num_atoms In Fortran ---------- @@ -307,6 +309,20 @@ the EZFIO file. end +Compile the fortran program and link it the ``libezfio.a`` library, and run the +executable. + +.. code-block:: bash + + $ gfortran test.f90 EZFIO/lib/libezfio.a -o test.x + $ ./test.x + Data in the EZFIO file: + 16.0000000 0.00000000 0.222396001 0.00000000 + 1.00000000 1.43649399 -0.889660001 0.00000000 + 1.00000000 -1.43649399 -0.889660001 0.00000000 + + + A new directory (``properties``) was created with the center_of_mass file: @@ -317,25 +333,64 @@ file: creation Water/molecule: - charge.gz coord.gz mass.gz num_atoms + coord.gz mass.gz num_atoms Water/properties: center_of_mass.gz -Compile and run the program using: +Using Bash +---------- + +To use EZFIO in Bash, you need to source the ``ezfio.sh`` file: .. code-block:: bash - $ $FC -o test test.F90 EZFIO/lib/libezfio.a - $ ./test + $ source EZFIO/Bash/ezfio.sh -where ``$FC`` is your fortran compiler, and ``test.F90`` is the file -containing the test example. If you don't have the EZFIO static -library, you can use the shared library as: +The usage of the ``ezfio`` bash command is:: + + ezfio set_file EZFIO_DIRECTORY + ezfio unset_file + + ezfio has DIRECTORY ITEM + ezfio get DIRECTORY ITEM + ezfio set DIRECTORY ITEM VALUE : Scalar values + ezfio set DIRECTORY ITEM : Array values read from stdin + + ezfio set_verbose + ezfio unset_verbose + + +Here is the same script as the Python script, but using Bash (``create_input.sh``): .. code-block:: bash - $ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PWD/EZFIO/lib - $ $FC -o test -L./EZFIO/lib -lezfio + #!/bin/bash + + source EZFIO/Bash/ezfio.sh + + # Select the EZFIO file + ezfio set_file Water + + # Set the number of atoms + ezfio set molecule num_atoms 3 + + # Create the mass array + mass="[16.0, 1.0, 1.0]" + echo $mass | ezfio set molecule mass + + # Create the coordinates + cat << EOF | ezfio set molecule coord + [ + [ 0.000000, 0.222396, 0.0], + [ 1.436494, -0.889660, 0.0], + [-1.436494, -0.889660, 0.0] + ] + EOF + + # Check that the total mass is correct: + ezfio get properties mass # Should print 18. + + diff --git a/configure.py b/configure.py index d6d11cb..3865a77 100755 --- a/configure.py +++ b/configure.py @@ -52,18 +52,18 @@ def create_build_ninja(): d["irpf90_files"] = [ "src/{0}".format(x) for x in """ IRPF90_temp/build.ninja irpf90.make irpf90_entities - tags + tags libezfio_groups-gen.py libezfio_util-gen.py """.split() ] + \ """ - Python/ezfio.py Ocaml/ezfio.ml Bash/ezfio.sh + Python/ezfio.py Ocaml/ezfio.ml """.split() d["irpf90_sources"] = [ "src/{0}".format(x) for x in """ libezfio_error.irp.f create_ocaml.py groups_templates.py - libezfio_file.irp.f create_python.py libezfio_groups-gen.py - libezfio_groups.irp.f ezfio-head.py libezfio_util-gen.py - libezfio_util.irp.f ezfio-tail.py read_config.py run.irp.f + libezfio_file.irp.f create_python.py + libezfio_groups.irp.f ezfio-head.py + libezfio_util.irp.f ezfio-tail.py read_config.py f_types.py test.py create_bash.py groups.py """.split() ] + [ "make.config" ] @@ -93,7 +93,7 @@ rule build_libezfio_a description = Building libezfio.a rule build_libezfio_irp_a - command = cp lib/libezfio.a lib/libezfio_irp.a ; {AR} dv lib/libezfio_irp.a irp_stack.irp.o ; {RANLIB} lib/libezfio_irp.a + command = cp lib/libezfio.a lib/libezfio_irp.a ; {AR} dv lib/libezfio_irp.a irp_stack.irp.o > /dev/null ; {RANLIB} lib/libezfio_irp.a description = Building libezfio_irp.a diff --git a/src/ezfio-head.py b/src/ezfio-head.py index 6c64cbb..d38091d 100644 --- a/src/ezfio-head.py +++ b/src/ezfio-head.py @@ -1,3 +1,4 @@ +#!/usr/bin/env python # EZFIO is an automatic generator of I/O libraries # Copyright (C) 2009 Anthony SCEMAMA, CNRS # diff --git a/src/ezfio-tail.py b/src/ezfio-tail.py index e9a090a..63e6e62 100644 --- a/src/ezfio-tail.py +++ b/src/ezfio-tail.py @@ -24,3 +24,52 @@ ezfio = ezfio_obj() +def main(): + import pprint + import sys + import os + + try: + EZFIO_FILE = os.environ["EZFIO_FILE"] + except KeyError: + print "EZFIO_FILE not defined" + return 1 + + ezfio.set_file(EZFIO_FILE) + + command = '_'.join(sys.argv[1:]).lower() + + try: + f = getattr(ezfio,command) + except AttributeError: + print "{0} not found".format(command) + return 1 + + if command.startswith('has'): + if f(): return 0 + else : return 1 + + elif command.startswith('get'): + result = f() + pprint.pprint( result, width=60, depth=3, indent=4 ) + return 0 + + elif command.startswith('set'): + try: + data = eval(sys.stdin.read()) + except: + print "Syntax Error" + return 1 + f(data) + return 0 + + else: + return 1 + + +if __name__ == '__main__': + rc = main() + sys.exit(rc) + + + diff --git a/src/groups.py b/src/groups.py index 8e3ddf1..83dd175 100644 --- a/src/groups.py +++ b/src/groups.py @@ -144,10 +144,3 @@ for group in groups.keys(): print >>file_py, attributes_arr_py%d file_py.close() - -import create_ocaml -create_ocaml.run() - -import create_python -create_python.run() - diff --git a/src/libezfio_util.irp.f b/src/libezfio_util.irp.f index 91887ce..89d4aa6 100644 --- a/src/libezfio_util.irp.f +++ b/src/libezfio_util.irp.f @@ -354,6 +354,13 @@ print >>file_py, """ """%cwd file_py.close() + +import create_ocaml +create_ocaml.run() + +import create_python +create_python.run() + END_SHELL BEGIN_PROVIDER [ integer, libezfio_buffer_rank ] diff --git a/src/run.irp.f b/src/run.irp.f deleted file mode 100644 index 7d78f38..0000000 --- a/src/run.irp.f +++ /dev/null @@ -1,31 +0,0 @@ -! EZFIO is an automatic generator of I/O libraries -! Copyright (C) 2009 Anthony SCEMAMA, CNRS -! -! This program is free software; you can redistribute it and/or modify -! it under the terms of the GNU General Public License as published by -! the Free Software Foundation; either version 2 of the License, or -! (at your option) any later version. -! -! This program is distributed in the hope that it will be useful, -! but WITHOUT ANY WARRANTY; without even the implied warranty of -! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -! GNU General Public License for more details. -! -! You should have received a copy of the GNU General Public License along -! with this program; if not, write to the Free Software Foundation, Inc., -! 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -! -! Anthony Scemama -! LCPQ - IRSAMC - CNRS -! Universite Paul Sabatier -! 118, route de Narbonne -! 31062 Toulouse Cedex 4 -! scemama@irsamc.ups-tlse.fr - -program run - BEGIN_DOC -! Test run - END_DOC -! Leave this empty -end - From c70b96dd583bf0ff90b3a8b15f33375004d4d7d3 Mon Sep 17 00:00:00 2001 From: Anthony Scemama Date: Tue, 2 Jun 2015 15:54:06 +0200 Subject: [PATCH 09/10] Cleaned build --- Bash/ezfio.sh | 262 ---------------------------------------- build.ninja | 14 ++- configure.py | 26 ++-- src/Makefile | 10 +- src/create_bash.py | 89 -------------- src/create_ocaml.py | 4 + src/create_python.py | 2 + src/libezfio_util.irp.f | 6 - 8 files changed, 43 insertions(+), 370 deletions(-) delete mode 100644 Bash/ezfio.sh delete mode 100755 src/create_bash.py diff --git a/Bash/ezfio.sh b/Bash/ezfio.sh deleted file mode 100644 index 9d36360..0000000 --- a/Bash/ezfio.sh +++ /dev/null @@ -1,262 +0,0 @@ -#!/bin/bash - -EZFIO_ROOT=$( cd $(dirname "${BASH_SOURCE}")/.. ; pwd -P ) - -function _ezfio_py() -{ - python ${EZFIO_ROOT}/Python/ezfio.py $@ -} - - -function _ezfio_usage() -{ - echo " -Usage: - ezfio set_file EZFIO_DIRECTORY - ezfio unset_file - - ezfio has DIRECTORY ITEM - ezfio get DIRECTORY ITEM - ezfio set DIRECTORY ITEM VALUE : Scalar values - ezfio set DIRECTORY ITEM : Array values read from stdin - - ezfio set_verbose - ezfio unset_verbose -" -} - -function _require_ezfio_file() -{ - if [[ -z ${EZFIO_FILE} ]] - then - echo "EZFIO directory not set: try 'ezfio set_file'" - return 1 - fi - - if [[ ! -d ${EZFIO_FILE} ]] - then - echo "EZFIO directory not accessible: try 'ezfio set_file'" - return 1 - fi -} - -function _require_first_argument() -{ - if [[ -z $1 ]] - then - _ezfio_usage - echo "Error: First argument not set" - return 1 - else - return 0 - fi -} - -function _require_second_argument() -{ - if [[ -z $2 ]] - then - _ezfio_usage - echo "Error: Second argument not set" - return 1 - fi -} - -function _ezfio_set_verbose() -{ - function _ezfio_info() - { - echo "$1" - } - return 0 -} - -function _ezfio_unset_verbose() -{ - function _ezfio_info() - { - : - } - return 0 -} - -function _ezfio_set_file() -{ - _require_first_argument $@ || return 1 - - if [[ ! -d $1 ]] - then - mkdir -p $1 || return 1 - fi - export EZFIO_FILE=$1 - _ezfio_info "Set file ${EZFIO_FILE}" - return 0 -} - -function _ezfio_unset_file() -{ - _require_ezfio_file || return 1 - _ezfio_info "Unset file ${EZFIO_FILE}" - unset EZFIO_FILE - return 0 -} - -function _ezfio_has() -{ - _require_ezfio_file || return 1 - _require_first_argument $@ || return 1 - - if [[ ! -d ${EZFIO_FILE}/${1,,} ]] - then - return 1 - fi - - if [[ -z $2 ]] - then - return 0 - fi - - _ezfio_py has $@ && return 0 || return 1 -} - -function _ezfio_get() -{ - _require_ezfio_file || return 1 - - if [[ -z $1 ]] - then - ls ${EZFIO_FILE} && return 0 || return 1 - fi - - if [[ -z $2 ]] - then - ls ${EZFIO_FILE}/${1,,} && return 0 || return 1 - fi - - _ezfio_py get $@ && return 0 || return 1 -} - -function _ezfio_set() -{ - _require_ezfio_file || return 1 - _require_first_argument $@ || return 1 - _require_second_argument $@ || return 2 - - if [[ -z $3 ]] - then - _ezfio_py set $@ || return 1 - else - echo $3 | _ezfio_py set $1 $2 || return 1 - fi - return 0 -} - -#--- - -function ezfio() -{ - case $1 in - "has") - shift - _ezfio_has $@ - ;; - - "set") - shift - _ezfio_set $@ - ;; - - "get") - shift - _ezfio_get $@ - ;; - - "set_file") - shift - _ezfio_set_file $@ - ;; - - "unset_file") - shift - _ezfio_unset_file - ;; - - "set_verbose") - _ezfio_set_verbose - ;; - - "unset_verbose") - _ezfio_unset_verbose - ;; - - *) - _ezfio_usage - ;; - esac - -} - - -_ezfio_unset_verbose - - -# Completion - - -_Complete() -{ - local cur - - COMPREPLY=() - cur="${COMP_WORDS[COMP_CWORD]}" - prev="${COMP_WORDS[COMP_CWORD-1]}" - prev2="${COMP_WORDS[COMP_CWORD-2]}" - - if [[ -n ${EZFIO_FILE} && -d ${EZFIO_FILE} ]] - then - - case "${prev2}" in - set|has|get) - COMPREPLY=( $(compgen -W "$(cd ${EZFIO_FILE}/${prev} ; ls | sed 's/\.gz//' )" -- $cur ) ) - return 0 - ;; - esac - - case "${prev}" in - unset_file|set_verbose|unset_verbose) - COMPREPLY=() - return 0 - ;; - set|has|get) - COMPREPLY=( $(compgen -W "$(cd ${EZFIO_FILE} ; \ls -d */ | sed 's|/||g')" -- $cur ) ) - return 0 - ;; - *) - COMPREPLY=( $(compgen -W 'has get set unset_file \ - set_verbose unset_verbose -h' -- $cur ) ) - return 0 - ;; - esac - - else - - case "${prev}" in - set_verbose|unset_verbose) - COMPREPLY=() - return 0 - ;; - set_file) - COMPREPLY=( $(compgen -W "$(\ls -d */ | sed 's|/||g')" -- ${cur} ) ) - return 0 - ;; - *) - COMPREPLY=( $(compgen -W 'set_file \ - set_verbose unset_verbose -h' -- $cur ) ) - return 0 - ;; - esac - - fi -} - -complete -F _Complete ezfio diff --git a/build.ninja b/build.ninja index dcd17ad..4d8bcc1 100644 --- a/build.ninja +++ b/build.ninja @@ -1,18 +1,24 @@ include version rule build_generated_ninja - command = python configure.py + command = python $in ninja description = Creating generated.ninja generator = 1 rule run_ninja - command = ninja -f $in + command = bash -c 'source make.config ; bash -c "$$NINJA -f $in"' + description = Building Fortran library rule build_archive command = git archive --format=tar HEAD > EZFIO.${version}.tar && mkdir -p EZFIO && cd EZFIO && tar -xvf ../EZFIO.${version}.tar && cd .. && rm EZFIO.${version}.tar && tar -zcvf EZFIO.${version}.tar.gz EZFIO && rm -rf EZFIO description = Building archive -build make.config generated.ninja: build_generated_ninja | configure.py +rule clean_all + command = bash -c 'source make.config ; bash -c "$$NINJA -f $in -t clean ; $$NINJA -t clean" ; rm -rf src/IRPF90_{temp,man} src/*.pyc' + description = Cleaning directory + + +build make.config generated.ninja: build_generated_ninja configure.py build all: run_ninja generated.ninja default all @@ -20,3 +26,5 @@ default all build EZFIO.${VERSION}.tar.gz: build_archive build archive: phony EZFIO.${VERSION}.tar.gz + +build clean: clean_all generated.ninja diff --git a/configure.py b/configure.py index 3865a77..7857e13 100755 --- a/configure.py +++ b/configure.py @@ -1,6 +1,6 @@ #!/usr/bin/env python -import os +import os,sys with open("version",'r') as f: version = f.read().strip().rsplit('=')[1] @@ -19,13 +19,18 @@ d_default = { def create_make_config(): + if sys.argv[-1] == 'ninja': + fmt = '{0}="{1}"\n' + else: + fmt = '{0}={1}\n' + with open("make.config",'w') as out: for var,default in d_default.iteritems(): try: cur = os.environ[var] except KeyError: cur = default - out.write('{0}={1}\n'.format(var,cur)) + out.write(fmt.format(var,cur)) def read_make_config(): @@ -53,10 +58,7 @@ def create_build_ninja(): """ IRPF90_temp/build.ninja irpf90.make irpf90_entities tags libezfio_groups-gen.py libezfio_util-gen.py - """.split() ] + \ - """ - Python/ezfio.py Ocaml/ezfio.ml - """.split() + """.split() ] d["irpf90_sources"] = [ "src/{0}".format(x) for x in """ @@ -64,7 +66,7 @@ def create_build_ninja(): libezfio_file.irp.f create_python.py libezfio_groups.irp.f ezfio-head.py libezfio_util.irp.f ezfio-tail.py read_config.py - f_types.py test.py create_bash.py groups.py + f_types.py test.py groups.py """.split() ] + [ "make.config" ] d["irpf90_files"] = ' '.join(d["irpf90_files"]) @@ -96,6 +98,13 @@ rule build_libezfio_irp_a command = cp lib/libezfio.a lib/libezfio_irp.a ; {AR} dv lib/libezfio_irp.a irp_stack.irp.o > /dev/null ; {RANLIB} lib/libezfio_irp.a description = Building libezfio_irp.a +rule build_python + command = cd src ; python create_python.py + description = Building Python module + +rule build_ocaml + command = cd src ; python create_ocaml.py + description = Building Ocaml module build make.config: build_make_config | configure.py @@ -108,6 +117,9 @@ build lib/libezfio.a: build_libezfio_a | src/IRPF90_temp/irpf90.a build lib/libezfio_irp.a: build_libezfio_irp_a | lib/libezfio.a +build Python/ezfio.py: build_python | lib/libezfio.a + +build Ocaml/ezfio.ml: build_ocaml | lib/libezfio.a """ diff --git a/src/Makefile b/src/Makefile index 30f30f2..91f9ae6 100644 --- a/src/Makefile +++ b/src/Makefile @@ -36,7 +36,7 @@ include ../version .PHONY: static all -all: static +all: static ../Python/ezfio.py ../Ocaml/ezfio.ml static: ../lib/libezfio.a ../lib/libezfio_irp.a @@ -51,6 +51,10 @@ static: ../lib/libezfio.a ../lib/libezfio_irp.a $(AR) dv ../lib/libezfio_irp.a irp_stack.irp.o $(RANLIB) ../lib/libezfio_irp.a -test: static - $(FC) -o $@ IRPF90_temp/run.irp.F90 -L../lib/ -lezfio +../Python/ezfio.py: + python create_python.py + +../Ocaml/ezfio.ml: + python create_ocaml.py + diff --git a/src/create_bash.py b/src/create_bash.py deleted file mode 100755 index 036d2a0..0000000 --- a/src/create_bash.py +++ /dev/null @@ -1,89 +0,0 @@ -#!/usr/bin/env python -# EZFIO is an automatic generator of I/O libraries -# Copyright (C) 2009 Anthony SCEMAMA, CNRS -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -# -# Anthony Scemama -# LCPQ - IRSAMC - CNRS -# Universite Paul Sabatier -# 118, route de Narbonne -# 31062 Toulouse Cedex 4 -# scemama@irsamc.ups-tlse.fr - -import re -from read_config import groups -from groups_templates import * -from f_types import t_short, f2ocaml -import os - -import sys - -def run(): - - head = [] - tail = [] - - file = open("../version","r") - v = file.readline() - file.close() - v = v.split('=')[1].strip() - l = os.getcwd().replace('/src','') - head += ["""let version = "%s";;"""%(v), - """let library = "%s";;"""%(l)] - - for group in groups.keys(): - for var,type,dims,command in groups[group]: - if command is not "": - continue - dims_py = str(dims) - for g in groups.keys(): - dims_py = dims_py.replace(g,'self.'+g) - var = var.lower() - group = group.lower() - strdims = tuple(map(lambda x: '('+str(x)+')',dims)) - strdims = str(strdims).replace("'","") - if len(dims) == 1: - strdims = strdims[:-2]+")" - dim_max = strdims[1:-1].replace(',','*') - type_set = type - if type.lower().startswith('character'): - type_set = 'character*(*)' - d = { 'type_short': f2ocaml[t_short(type)], - 'type': type, - 'type_set': type_set, - 'var': var, - 'group': group, - 'dims': strdims} - if dims == (): - tail += ['let get_%(group)s_%(var)s () = read_%(type_short)s "%(group)s" "%(var)s";;' %(d), - 'let set_%(group)s_%(var)s = write_%(type_short)s "%(group)s" "%(var)s" ;;' %(d) , - 'let has_%(group)s_%(var)s () = has "%(group)s" "%(var)s" ;;' %(d) ] - else: - tail += ['let get_%(group)s_%(var)s () = read_%(type_short)s_array "%(group)s" "%(var)s";;' %(d), - 'let set_%(group)s_%(var)s = write_%(type_short)s_array "%(group)s" "%(var)s";;' %(d) , - 'let has_%(group)s_%(var)s () = has_array "%(group)s" "%(var)s" ;;' %(d) ] - - - file = open('ezfio.sh','r') - template = file.read() - file.close() - template = template.replace("(*$HEAD*)",'\n'.join(head)) - template = template.replace("(*$TAIL*)",'\n'.join(tail)) - - file = open('../Bash/ezfio-gen.sh','w') - file.write(template) - file.close() - diff --git a/src/create_ocaml.py b/src/create_ocaml.py index 21099c7..db2cc06 100755 --- a/src/create_ocaml.py +++ b/src/create_ocaml.py @@ -87,3 +87,7 @@ def run(): file.write(template) file.close() + +if __name__ == '__main__': + run() + diff --git a/src/create_python.py b/src/create_python.py index 7322f12..1b5e0b4 100755 --- a/src/create_python.py +++ b/src/create_python.py @@ -29,3 +29,5 @@ def run(): with open(f,'r') as inp: out.write(inp.read()) +if __name__ == '__main__': + run() diff --git a/src/libezfio_util.irp.f b/src/libezfio_util.irp.f index 89d4aa6..3d6a9b0 100644 --- a/src/libezfio_util.irp.f +++ b/src/libezfio_util.irp.f @@ -355,12 +355,6 @@ print >>file_py, """ file_py.close() -import create_ocaml -create_ocaml.run() - -import create_python -create_python.run() - END_SHELL BEGIN_PROVIDER [ integer, libezfio_buffer_rank ] From bb8975215dbb1e3311752912b2a22eb371eb75dc Mon Sep 17 00:00:00 2001 From: Anthony Scemama Date: Tue, 2 Jun 2015 15:56:51 +0200 Subject: [PATCH 10/10] Cleaned build --- Makefile | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index b49b241..7b83dae 100644 --- a/Makefile +++ b/Makefile @@ -25,7 +25,7 @@ include version include make.config -.PHONY: default clean distclean archive configure +.PHONY: default clean veryclean archive configure default: make.config $(MAKE) -C $$PWD/src @@ -47,3 +47,9 @@ archive: distclean make.config: python configure.py +veryclean: + $(MAKE) -C src veryclean + rm -f make.config + rm -f Ocaml/ezfio.ml + rm -f Python/ezfio.py + rm -f lib/{libezfio.a,libezfio_irp.a}