Index: /issm/trunk/m4/issm_options.m4
===================================================================
--- /issm/trunk/m4/issm_options.m4	(revision 10080)
+++ /issm/trunk/m4/issm_options.m4	(revision 10081)
@@ -404,32 +404,11 @@
 	fi
 
-	AC_ARG_WITH([petsc-version],
-			  AS_HELP_STRING([--with-petsc-version = VERSION],
-							 [petsc version -- 3.1 or 3.2]),
-			  [PETSC_VERSION=$withval],[PETSC_VERSION=""])
-
-	dnl [morlighe@astrid m4]$ echo 3.2 | sed -e 's/3\..*//'
-	dnl [morlighe@astrid m4]$ echo 3.2 | sed -e 's/3\.//'
-
 	if test "$PARALLEL_VALUE" = "yes" ; then
-		if test "$PETSC_VERSION" = "" ; then
-			AC_MSG_ERROR([missing --with-petsc-version argument for parallel compilation!])
-		fi
-		if test "$PETSC_VERSION" = "2.3" ; then
-			AC_DEFINE([_PETSC_MAJOR_],[2],[ Petsc version major])
-			AC_DEFINE([_PETSC_MINOR_],[3],[ Petsc version minor])
-		fi
-		if test "$PETSC_VERSION" = "3" ; then
-			AC_DEFINE([_PETSC_MAJOR_],[3],[ Petsc version major])
-			AC_DEFINE([_PETSC_MINOR_],[1],[ Petsc version minor])
-		fi
-		if test "$PETSC_VERSION" = "3.1" ; then
-			AC_DEFINE([_PETSC_MAJOR_],[3],[ Petsc version major])
-			AC_DEFINE([_PETSC_MINOR_],[1],[ Petsc version minor])
-		fi
-		if test "$PETSC_VERSION" = "3.2" ; then
-			AC_DEFINE([_PETSC_MAJOR_],[3],[ Petsc version major])
-			AC_DEFINE([_PETSC_MINOR_],[2],[ Petsc version minor])
-		fi
+		AC_MSG_CHECKING(for petsc version)
+		PETSC_MAJOR=`cat $PETSC_ROOT/include/petscversion.h | grep "#define PETSC_VERSION_MAJOR" | sed 's/#define PETSC_VERSION_MAJOR//' | sed 's/ //g'`
+		PETSC_MINOR=`cat $PETSC_ROOT/include/petscversion.h | grep "#define PETSC_VERSION_MINOR" | sed 's/#define PETSC_VERSION_MINOR//' | sed 's/ //g'`
+		AC_DEFINE_UNQUOTED([_PETSC_MAJOR_],$PETSC_MAJOR,[ Petsc version major])
+		AC_DEFINE_UNQUOTED([_PETSC_MINOR_],$PETSC_MINOR,[ Petsc version minor])
+		AC_MSG_RESULT($PETSC_MAJOR.$PETSC_MINOR)
 	fi
 	
@@ -457,28 +436,14 @@
 			;;
 			*linux*)
-			if test "$PETSC_VERSION" = "2.3" ; then
+			if test "$PETSC_MAJOR" = "2" ; then
 			PETSCLIB="-L$PETSC_ROOT/$PETSC_ARCH/lib -L$PETSC_ROOT/lib -L$PETSC_ROOT/lib/$PETSC_ARCH -lpetscksp -lpetscdm -lpetscmat -lpetscvec -lpetsc  -lpetscsnes -lpetscts"
-			fi
-			if test "$PETSC_VERSION" = "3" ; then
+			else
 			PETSCLIB="-L$PETSC_ROOT/$PETSC_ARCH/lib -L$PETSC_ROOT/lib -L$PETSC_ROOT/lib/$PETSC_ARCH -lpetsc"
 			fi
-			if test "$PETSC_VERSION" = "3.1" ; then
-			 PETSCLIB="-L$PETSC_ROOT/$PETSC_ARCH/lib -L$PETSC_ROOT/lib -L$PETSC_ROOT/lib/$PETSC_ARCH -lpetsc"
-			fi
-			if test "$PETSC_VERSION" = "3.2" ; then
-			 PETSCLIB="-L$PETSC_ROOT/$PETSC_ARCH/lib -L$PETSC_ROOT/lib -L$PETSC_ROOT/lib/$PETSC_ARCH -lpetsc"
-			fi
 			;;
 			*darwin*)
-			if test "$PETSC_VERSION" = "2.3" ; then
+			if test "$PETSC_MAJOR" = "2" ; then
 			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"
-			fi
-			if test "$PETSC_VERSION" = "3" ; then
-			PETSCLIB="-L$PETSC_ROOT/$PETSC_ARCH/lib -L$PETSC_ROOT/lib/$PETSC_ARCH/ -L$PETSC_ROOT/lib -L$PETSC_ROOT/lib/$PETSC_ARCH -lpetsc"
-			fi
-			if test "$PETSC_VERSION" = "3.1" ; then
-			PETSCLIB="-L$PETSC_ROOT/$PETSC_ARCH/lib -L$PETSC_ROOT/lib/$PETSC_ARCH/ -L$PETSC_ROOT/lib -L$PETSC_ROOT/lib/$PETSC_ARCH -lpetsc"
-			fi
-			if test "$PETSC_VERSION" = "3.2" ; then
+			else
 			PETSCLIB="-L$PETSC_ROOT/$PETSC_ARCH/lib -L$PETSC_ROOT/lib/$PETSC_ARCH/ -L$PETSC_ROOT/lib -L$PETSC_ROOT/lib/$PETSC_ARCH -lpetsc"
 			fi
@@ -695,5 +660,5 @@
 		HAVE_MUMPS=yes
 		MUMPSINCL=-I"$MUMPS_ROOT/include"
-		if test "$PETSC_VERSION" = "2.3" ; then
+		if test "$PETSC_MAJOR" = "2" ; then
 		MUMPSLIB=-L"$MUMPS_ROOT/lib -ldmumps -lcmumps  -lpord "
 		else
