Index: /issm/trunk/configs/linux32-cosmos/linux32.sh
===================================================================
--- /issm/trunk/configs/linux32-cosmos/linux32.sh	(revision 2241)
+++ /issm/trunk/configs/linux32-cosmos/linux32.sh	(revision 2241)
@@ -0,0 +1,3 @@
+#!/bin/csh
+
+./configure --prefix=$ISSM_DIR --with-serial=no --with-metis-dir=$ISSM_DIR/externalpackages/metis/install --with-petsc-dir=$ISSM_DIR/externalpackages/petsc/install --with-mpi-include=/opt/mpich/gm/intel10.1/include  --with-mpi-lib="-L/opt/mpich/gm/intel10.1/lib -lmpich -L/usr/local/gm/lib/ -lgm  -lpthread  -lrt" --with-petsc-arch=$ISSM_ARCH --with-mkl-dir=/opt/intel/mkl/10.0.5.025/lib/32/  --with-plapack-dir=$ISSM_DIR/externalpackages/petsc/install/externalpackages/PLAPACKR32-hg/$ISSM_ARCH --with-mumps-dir=$ISSM_DIR/externalpackages/petsc/install/externalpackages/MUMPS_4.6.3/$ISSM_ARCH/ --with-scalapack-dir=$ISSM_DIR/externalpackages/petsc/install/externalpackages/SCALAPACK/$ISSM_ARCH/ --with-blacs-dir=$ISSM_DIR/externalpackages/petsc/install/externalpackages/blacs-dev/$ISSM_ARCH  --with-vendor=intel-linux --with-graphics-lib=/usr/X11R6/lib/libX11.so
Index: /issm/trunk/externalpackages/metis/configs/linux64/Makefile.in.patch
===================================================================
--- /issm/trunk/externalpackages/metis/configs/linux64/Makefile.in.patch	(revision 2240)
+++ /issm/trunk/externalpackages/metis/configs/linux64/Makefile.in.patch	(revision 2241)
@@ -1,4 +1,4 @@
 3,5c3
-< CC = gcc
+< CC = icc
 < OBJ_EXT=o
 < LIB_EXT=a
Index: /issm/trunk/externalpackages/petsc/configs/linux32-cosmos/configure.sh
===================================================================
--- /issm/trunk/externalpackages/petsc/configs/linux32-cosmos/configure.sh	(revision 2241)
+++ /issm/trunk/externalpackages/petsc/configs/linux32-cosmos/configure.sh	(revision 2241)
@@ -0,0 +1,3 @@
+PETSC_DIR=$ISSM_DIR/externalpackages/petsc/install
+
+./config/configure.py  --prefix=$PETSC_DIR --with-batch=1  --ISSM_ARCH=$ISSM_ARCH --PETSC_DIR=$PETSC_DIR   --with-debugging=no COPTFLAGS=-O3 FOPTFLAGS=-O3 --with-blas-lapack-dir=/opt/intel/mkl/10.0.5.025/ --with-mpi-dir=/opt/mpich/gm/intel10.1/  --download-mumps=yes --download-scalapack=yes --download-blacs=yes  --download-plapack=yes --FFLAGS=-I/usr/include  --with-mpi-shared=1
Index: /issm/trunk/m4/issm_options.m4
===================================================================
--- /issm/trunk/m4/issm_options.m4	(revision 2240)
+++ /issm/trunk/m4/issm_options.m4	(revision 2241)
@@ -628,8 +628,12 @@
 	if test -n "$VENDOR"; then
 
-		if  test $VENDOR = intel; then
+		if  test $VENDOR = intel-win; then
 			export CC=icl
 			export CXX=icl
-			export CXXFLAGS="-DWIN32 -D_INTEL_"
+			export CXXFLAGS="-DWIN32 -D_INTEL_WIN_"
+		elif test $VENDOR = intel-linux; then
+			export CC=icc
+			export CXX=icpc
+			export CXXFLAGS=" -D_INTEL_LINUX_"
 		else
 		AC_MSG_ERROR([unknow compiler vendor!])
Index: /issm/trunk/src/c/Makefile.am
===================================================================
--- /issm/trunk/src/c/Makefile.am	(revision 2240)
+++ /issm/trunk/src/c/Makefile.am	(revision 2241)
@@ -6,13 +6,17 @@
 lib_LIBRARIES = 
 else
-lib_LIBRARIES = libpISSM.a
+lib_LIBRARIES = libpISSM.a libOverload.a
 endif
 else
 if NOPARALLEL
-lib_LIBRARIES = libISSM.a 
+lib_LIBRARIES = libISSM.a  libOverload.a
 else
-lib_LIBRARIES = libISSM.a libpISSM.a
+lib_LIBRARIES = libISSM.a libpISSM.a libOverload.a
 endif
 endif
+
+#Overload library, to overload any non-standard symbols.
+libOverload_a_SOURCES = ./shared/String/stricmp.c
+libOverload_a_CFLAGS = -fPIC -D_PARALLEL_   -D_C_ $(COPTFLAGS)
 
 #Serial compilation
@@ -619,5 +623,5 @@
 endif
 
-LDADD =   ./libpISSM.a $(PETSCLIB)   $(FLIBS)  $(PLAPACKLIB)  $(MUMPSLIB) $(SCALAPACKLIB)  $(BLACSLIB)  $(DAKOTALIB) $(METISLIB) $(BLASLAPACKLIB)  $(MKLLIB) $(MPILIB) $(MATHLIB) $(FORTRANLIB) $(GRAPHICSLIB)
+LDADD =    ./libpISSM.a $(PETSCLIB)    $(FLIBS)  $(PLAPACKLIB)  $(MUMPSLIB) $(SCALAPACKLIB)  $(BLACSLIB)  $(DAKOTALIB) $(METISLIB) $(BLASLAPACKLIB)  $(MKLLIB) $(MPILIB) $(MATHLIB) $(FORTRANLIB) $(GRAPHICSLIB) libOverload.a
 
 diagnostic_exe_SOURCES = parallel/diagnostic.cpp
Index: /issm/trunk/src/c/shared/Numerics/isnan.cpp
===================================================================
--- /issm/trunk/src/c/shared/Numerics/isnan.cpp	(revision 2240)
+++ /issm/trunk/src/c/shared/Numerics/isnan.cpp	(revision 2241)
@@ -1,4 +1,4 @@
 /*This routine only used by Intel compler: */
-#ifdef _INTEL_
+#ifdef _INTEL_WIN_
 
 int isnan(double x){
Index: /issm/trunk/src/c/shared/Numerics/isnan.h
===================================================================
--- /issm/trunk/src/c/shared/Numerics/isnan.h	(revision 2240)
+++ /issm/trunk/src/c/shared/Numerics/isnan.h	(revision 2241)
@@ -6,5 +6,5 @@
 #define _ISNAN_INTEL_H_
 
-#ifdef _INTEL_
+#ifdef _INTEL_WIN_
 int isnan(double X);
 #endif
Index: /issm/trunk/src/c/shared/String/stricmp.c
===================================================================
--- /issm/trunk/src/c/shared/String/stricmp.c	(revision 2241)
+++ /issm/trunk/src/c/shared/String/stricmp.c	(revision 2241)
@@ -0,0 +1,11 @@
+/* \file stricmp.cpp
+ * \brief bypass non-standard stricmp
+ */
+
+#ifndef WIN32
+
+#include <strings.h>
+int stricmp(const char* a,const char* b){
+	return  strcasecmp(a,b);
+}
+#endif
