From 3d790d76c0e87bb7f792cd094d8394db3ee0a21a Mon Sep 17 00:00:00 2001 From: treadway Date: Thu, 18 Oct 2001 23:10:08 +0000 Subject: [PATCH] initial HP-UX support added, Blas, and Fortran calling C mods for SuperLU --- FEI_mv/SuperLU/Makefile.in | 2 + HYPRE_config.h.in | 4 ++ configure.in | 102 +++++++++++++++++++++++++++++++++---- utilities/fortran.h | 2 +- 4 files changed, 98 insertions(+), 12 deletions(-) diff --git a/FEI_mv/SuperLU/Makefile.in b/FEI_mv/SuperLU/Makefile.in index 2e140db84..47229f6e0 100644 --- a/FEI_mv/SuperLU/Makefile.in +++ b/FEI_mv/SuperLU/Makefile.in @@ -17,6 +17,7 @@ VPATH = @srcdir@ CC = @CC@ C_COMPILE_FLAGS=@CFLAGS@ +C_SUPERLU_FLAGS=@CSUPERLUFLAGS@ CXX_COMPILE_FLAGS=@CXXFLAGS@ F77_COMPILE_FLAGS=@F77FLAGS@ CINCLUDES=@INCLUDES@ @@ -24,6 +25,7 @@ CINCLUDES=@INCLUDES@ CFLAGS =\ -I$(srcdir)\ ${C_COMPILE_FLAGS}\ + ${C_SUPERLU_FLAGS}\ ${CINCLUDES} RANLIB= @RANLIB@ diff --git a/HYPRE_config.h.in b/HYPRE_config.h.in index 4aa74c1cc..c8ba4f708 100644 --- a/HYPRE_config.h.in +++ b/HYPRE_config.h.in @@ -38,6 +38,10 @@ #undef HYPRE_LINUX #endif +#ifndef HYPRE_HPPA +#undef HYPRE_HPPA +#endif + #ifndef HYPRE_IRIX64 #undef HYPRE_IRIX64 #endif diff --git a/configure.in b/configure.in index d808fc14d..d9d4d8a6b 100644 --- a/configure.in +++ b/configure.in @@ -642,10 +642,7 @@ case $ARCH in if test "$casc_using_openmp" = "no" ; then AC_CHECK_PROGS(CC, mpicc) else - AC_CHECK_PROGS(CC,ompcc) - CASC_CHECK_HEADER(omp.h, /usr/local/omni/lib/openmp/include) - CASC_CHECK_HEADER(mpi.h, /usr/local/mpich-1.2.1/include) - CASC_ADD_LIB(ompc, main, /usr/local/omni/lib/openmp/lib) + AC_CHECK_PROGS(CC,pgcc) fi fi fi @@ -658,7 +655,7 @@ case $ARCH in if test "$casc_using_openmp" = "no" ; then AC_CHECK_PROGS(CXX, mpiCC) else - AC_CHECK_PROGS(CXX,ompcc) + AC_CHECK_PROGS(CXX,pgcc) fi fi fi @@ -671,7 +668,74 @@ case $ARCH in if test "$casc_using_openmp" = "no" ; then AC_CHECK_PROGS(F77, mpif77) else - AC_CHECK_PROGS(F77,ompf77) + AC_CHECK_PROGS(F77,pgf77) + fi + fi + fi + + if test "$casc_using_openmp" = "no" ; then + if test -z "$CFLAGS"; then + CASC_SET_COPT(-O) + fi + if test -z "$CXXFLAGS"; then + CASC_SET_CXXOPT(-O) + fi + if test -z "$F77FLAGS"; then + CASC_SET_FOPT(-O) + fi + else + if test -z "$CFLAGS"; then + CASC_SET_COPT(-mp) + fi + if test -z "$CXXFLAGS"; then + CASC_SET_CXXOPT(-mp) + fi + if test -z "$F77FLAGS"; then + CASC_SET_FOPT(-mp) + fi + fi + CASC_SET_CDEBUG(-g) + CASC_SET_CXXDEBUG(-g) + CASC_SET_FDEBUG(-g) + ;; + + hpux | HPUX | hppa | HPPA ) + if test -z "$CC"; then + if test "$casc_using_mpi" = "no" && + test "$casc_using_openmp" = "no" + then + AC_CHECK_PROGS(CC, c89 cc gcc kcc) + else + if test "$casc_using_openmp" = "no" ; then + AC_CHECK_PROGS(CC, mpicc) + else + AC_CHECK_PROGS(CC,guidec) + fi + fi + fi + if test -z "$CXX"; then + if test "$casc_using_mpi" = "no" && + test "$casc_using_openmp" = "no" + then + AC_CHECK_PROGS(CXX, aCC CC g++) + else + if test "$casc_using_openmp" = "no" ; then + AC_CHECK_PROGS(CXX, mpiCC) + else + AC_CHECK_PROGS(CXX,guidec++) + fi + fi + fi + if test -z "$F77"; then + if test "$casc_using_mpi" = "no" && + test "$casc_using_openmp" = "no" + then + AC_CHECK_PROGS(F77, fort77 f77 g77) + else + if test "$casc_using_openmp" = "no" ; then + AC_CHECK_PROGS(F77, mpif77) + else + AC_CHECK_PROGS(F77,guidef77) fi fi fi @@ -903,7 +967,7 @@ case $ARCH in CASC_SET_FDEBUG(-g) ;; - IRIX64) + IRIX64 | IRIX ) if test -z "$CC"; then AC_CHECK_PROGS(CC, cc gcc c89) fi @@ -956,24 +1020,36 @@ esac case $ARCH in sun4 | solaris ) AC_DEFINE(HYPRE_SOLARIS) + CSUPERLUFLAGS=-DAdd_ ;; LINUX | Linux ) AC_DEFINE(HYPRE_LINUX) + CSUPERLUFLAGS=-DAdd_ + ;; + hpux | HPUX | hppa | HPPA ) + AC_DEFINE(HYPRE_HPPA) + CSUPERLUFLAGS=--DNoChange + if test -z "$casc_using_blas" ; then + casc_using_blas=yes + fi ;; alpha) AC_DEFINE(HYPRE_ALPHA) + CSUPERLUFLAGS=-DAdd_ if test -z "$casc_using_blas" ; then casc_using_blas=yes fi ;; rs6000) AC_DEFINE(HYPRE_RS6000) + CSUPERLUFLAGS=--DNoChange if test -z "$casc_using_blas" ; then casc_using_blas=yes fi ;; IRIX64) AC_DEFINE(HYPRE_IRIX64) + CSUPERLUFLAGS=-DAdd_ ;; esac @@ -1114,15 +1190,18 @@ fi if test "$casc_using_blas" = "yes" then - CASC_FIND_BLAS - if test "$BLASLIBFLAGS" = "-lessl" + if test "$ARCH" = "rs6000" then + BLASLIBFLAGS=-lessl AC_DEFINE(HYPRE_USING_ESSL) - elif test "$BLASLIBFLAGS" = "-ldxml" + elif test "$ARCH" = "alpha" then + BLASLIBFLAGS=-ldxml AC_DEFINE(HYPRE_USING_DXML) - elif test "$BLASLIBFLAGS" = "" + elif test "$ARCH" = "hpux" then + BLASLIBFLAGS="-lblas -lcl" + else casc_using_blas=no fi fi @@ -1213,6 +1292,7 @@ AC_SUBST(HYPRE_PETSCLIBDIRS) AC_SUBST(HYPRE_TOP_SRC_DIR) +AC_SUBST(CSUPERLUFLAGS) AC_SUBST(BLASLIBFLAGS) dnl ********************************************************************* diff --git a/utilities/fortran.h b/utilities/fortran.h index e2b4161d0..b376c5a6d 100644 --- a/utilities/fortran.h +++ b/utilities/fortran.h @@ -31,7 +31,7 @@ # define hypre_NAME_C_CALLING_FORT(name,NAME) name##__ # define hypre_NAME_FORT_CALLING_C(name,NAME) name##__ -#elif defined(HYPRE_HP) +#elif defined(HYPRE_HPPA) # define hypre_NAME_C_CALLING_FORT(name,NAME) name # define hypre_NAME_FORT_CALLING_C(name,NAME) name