483 |
|
|
484 |
# Build a CPP macro to automate calling C routines from FORTRAN |
# Build a CPP macro to automate calling C routines from FORTRAN |
485 |
get_fortran_c_namemangling() { |
get_fortran_c_namemangling() { |
486 |
|
|
487 |
|
#echo "FC_NAMEMANGLE = \"$FC_NAMEMANGLE\"" |
488 |
|
if test ! "x$FC_NAMEMANGLE" = x ; then |
489 |
|
return 0 |
490 |
|
fi |
491 |
|
|
492 |
default_nm="#define FC_NAMEMANGLE(X) X ## _" |
default_nm="#define FC_NAMEMANGLE(X) X ## _" |
493 |
|
|
494 |
cat > genmake_test.c <<EOF |
cat > genmake_test.c <<EOF |
625 |
IF (iret .NE. NF_NOERR) write(*,*) NF_STRERROR(iret) |
IF (iret .NE. NF_NOERR) write(*,*) NF_STRERROR(iret) |
626 |
end |
end |
627 |
EOF |
EOF |
628 |
$CPP genmake_tnc.for > genmake_tnc.f \ |
#echo "$CPP $DEFINES $INCLUDES" |
629 |
|
$CPP $DEFINES $INCLUDES genmake_tnc.for > genmake_tnc.f \ |
630 |
&& $FC $FFLAGS $FOPTIM -o genmake_tnc genmake_tnc.f $LIBS >> genmake_tnc.log 2>&1 |
&& $FC $FFLAGS $FOPTIM -o genmake_tnc genmake_tnc.f $LIBS >> genmake_tnc.log 2>&1 |
631 |
RET_COMPILE=$? |
RET_COMPILE=$? |
632 |
test -x ./genmake_tnc && ./genmake_tnc >> genmake_tnc.log 2>&1 |
test -x ./genmake_tnc && ./genmake_tnc >> genmake_tnc.log 2>&1 |
635 |
HAVE_NETCDF=t |
HAVE_NETCDF=t |
636 |
else |
else |
637 |
# try again with "-lnetcdf" added to the libs |
# try again with "-lnetcdf" added to the libs |
638 |
$CPP genmake_tnc.for > genmake_tnc.f \ |
$CPP $DEFINES $INCLUDES genmake_tnc.for > genmake_tnc.f \ |
639 |
&& $FC $FFLAGS $FOPTIM -o genmake_tnc genmake_tnc.f \ |
&& $FC $FFLAGS $FOPTIM -o genmake_tnc genmake_tnc.f \ |
640 |
$LIBS -lnetcdf >> genmake_tnc_2.log 2>&1 |
$LIBS -lnetcdf >> genmake_tnc_2.log 2>&1 |
641 |
RET_COMPILE=$? |
RET_COMPILE=$? |