Changeset 10081


Ignore:
Timestamp:
10/03/11 15:00:33 (13 years ago)
Author:
Mathieu Morlighem
Message:

petsc version is now automated

File:
1 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk/m4/issm_options.m4

    r9999 r10081  
    404404        fi
    405405
    406         AC_ARG_WITH([petsc-version],
    407                           AS_HELP_STRING([--with-petsc-version = VERSION],
    408                                                          [petsc version -- 3.1 or 3.2]),
    409                           [PETSC_VERSION=$withval],[PETSC_VERSION=""])
    410 
    411         dnl [morlighe@astrid m4]$ echo 3.2 | sed -e 's/3\..*//'
    412         dnl [morlighe@astrid m4]$ echo 3.2 | sed -e 's/3\.//'
    413 
    414406        if test "$PARALLEL_VALUE" = "yes" ; then
    415                 if test "$PETSC_VERSION" = "" ; then
    416                         AC_MSG_ERROR([missing --with-petsc-version argument for parallel compilation!])
    417                 fi
    418                 if test "$PETSC_VERSION" = "2.3" ; then
    419                         AC_DEFINE([_PETSC_MAJOR_],[2],[ Petsc version major])
    420                         AC_DEFINE([_PETSC_MINOR_],[3],[ Petsc version minor])
    421                 fi
    422                 if test "$PETSC_VERSION" = "3" ; then
    423                         AC_DEFINE([_PETSC_MAJOR_],[3],[ Petsc version major])
    424                         AC_DEFINE([_PETSC_MINOR_],[1],[ Petsc version minor])
    425                 fi
    426                 if test "$PETSC_VERSION" = "3.1" ; then
    427                         AC_DEFINE([_PETSC_MAJOR_],[3],[ Petsc version major])
    428                         AC_DEFINE([_PETSC_MINOR_],[1],[ Petsc version minor])
    429                 fi
    430                 if test "$PETSC_VERSION" = "3.2" ; then
    431                         AC_DEFINE([_PETSC_MAJOR_],[3],[ Petsc version major])
    432                         AC_DEFINE([_PETSC_MINOR_],[2],[ Petsc version minor])
    433                 fi
     407                AC_MSG_CHECKING(for petsc version)
     408                PETSC_MAJOR=`cat $PETSC_ROOT/include/petscversion.h | grep "#define PETSC_VERSION_MAJOR" | sed 's/#define PETSC_VERSION_MAJOR//' | sed 's/ //g'`
     409                PETSC_MINOR=`cat $PETSC_ROOT/include/petscversion.h | grep "#define PETSC_VERSION_MINOR" | sed 's/#define PETSC_VERSION_MINOR//' | sed 's/ //g'`
     410                AC_DEFINE_UNQUOTED([_PETSC_MAJOR_],$PETSC_MAJOR,[ Petsc version major])
     411                AC_DEFINE_UNQUOTED([_PETSC_MINOR_],$PETSC_MINOR,[ Petsc version minor])
     412                AC_MSG_RESULT($PETSC_MAJOR.$PETSC_MINOR)
    434413        fi
    435414       
     
    457436                        ;;
    458437                        *linux*)
    459                         if test "$PETSC_VERSION" = "2.3" ; then
     438                        if test "$PETSC_MAJOR" = "2" ; then
    460439                        PETSCLIB="-L$PETSC_ROOT/$PETSC_ARCH/lib -L$PETSC_ROOT/lib -L$PETSC_ROOT/lib/$PETSC_ARCH -lpetscksp -lpetscdm -lpetscmat -lpetscvec -lpetsc  -lpetscsnes -lpetscts"
    461                         fi
    462                         if test "$PETSC_VERSION" = "3" ; then
     440                        else
    463441                        PETSCLIB="-L$PETSC_ROOT/$PETSC_ARCH/lib -L$PETSC_ROOT/lib -L$PETSC_ROOT/lib/$PETSC_ARCH -lpetsc"
    464442                        fi
    465                         if test "$PETSC_VERSION" = "3.1" ; then
    466                          PETSCLIB="-L$PETSC_ROOT/$PETSC_ARCH/lib -L$PETSC_ROOT/lib -L$PETSC_ROOT/lib/$PETSC_ARCH -lpetsc"
    467                         fi
    468                         if test "$PETSC_VERSION" = "3.2" ; then
    469                          PETSCLIB="-L$PETSC_ROOT/$PETSC_ARCH/lib -L$PETSC_ROOT/lib -L$PETSC_ROOT/lib/$PETSC_ARCH -lpetsc"
    470                         fi
    471443                        ;;
    472444                        *darwin*)
    473                         if test "$PETSC_VERSION" = "2.3" ; then
     445                        if test "$PETSC_MAJOR" = "2" ; then
    474446                        PETSCLIB="-L$PETSC_ROOT/$PETSC_ARCH/lib -L$PETSC_ROOT/lib/$PETSC_ARCH/ -L$PETSC_ROOT/lib -L$PETSC_ROOT/lib/$PETSC_ARCH -lpetscksp -lpetscdm -lpetscmat -lpetscvec -lpetscsnes -lpetscts -lpetsc"
    475                         fi
    476                         if test "$PETSC_VERSION" = "3" ; then
    477                         PETSCLIB="-L$PETSC_ROOT/$PETSC_ARCH/lib -L$PETSC_ROOT/lib/$PETSC_ARCH/ -L$PETSC_ROOT/lib -L$PETSC_ROOT/lib/$PETSC_ARCH -lpetsc"
    478                         fi
    479                         if test "$PETSC_VERSION" = "3.1" ; then
    480                         PETSCLIB="-L$PETSC_ROOT/$PETSC_ARCH/lib -L$PETSC_ROOT/lib/$PETSC_ARCH/ -L$PETSC_ROOT/lib -L$PETSC_ROOT/lib/$PETSC_ARCH -lpetsc"
    481                         fi
    482                         if test "$PETSC_VERSION" = "3.2" ; then
     447                        else
    483448                        PETSCLIB="-L$PETSC_ROOT/$PETSC_ARCH/lib -L$PETSC_ROOT/lib/$PETSC_ARCH/ -L$PETSC_ROOT/lib -L$PETSC_ROOT/lib/$PETSC_ARCH -lpetsc"
    484449                        fi
     
    695660                HAVE_MUMPS=yes
    696661                MUMPSINCL=-I"$MUMPS_ROOT/include"
    697                 if test "$PETSC_VERSION" = "2.3" ; then
     662                if test "$PETSC_MAJOR" = "2" ; then
    698663                MUMPSLIB=-L"$MUMPS_ROOT/lib -ldmumps -lcmumps  -lpord "
    699664                else
Note: See TracChangeset for help on using the changeset viewer.