Index: sm/trunk/externalpackages/metis/Makefile.in.patch
===================================================================
--- /issm/trunk/externalpackages/metis/Makefile.in.patch	(revision 1387)
+++ 	(revision )
@@ -1,4 +1,0 @@
-6c6
-< OPTFLAGS = -O2 
----
-> OPTFLAGS = -O2  -fPIC
Index: /issm/trunk/externalpackages/metis/Makefile.patch
===================================================================
--- /issm/trunk/externalpackages/metis/Makefile.patch	(revision 1388)
+++ /issm/trunk/externalpackages/metis/Makefile.patch	(revision 1388)
@@ -0,0 +1,6 @@
+5,6c5,6
+< #	(cd Programs ; make ) 
+< #	(cd Test ; make ) 
+---
+> 	(cd Programs ; make ) 
+> 	(cd Test ; make ) 
Index: /issm/trunk/externalpackages/metis/config/linux/Makefile.in.patch.linux
===================================================================
--- /issm/trunk/externalpackages/metis/config/linux/Makefile.in.patch.linux	(revision 1388)
+++ /issm/trunk/externalpackages/metis/config/linux/Makefile.in.patch.linux	(revision 1388)
@@ -0,0 +1,10 @@
+3,5c3
+< CC = gcc
+< OBJ_EXT=o
+< LIB_EXT=a
+---
+> CC = cc
+8c6
+< OPTFLAGS = -DLINUX
+---
+> OPTFLAGS = -O2 
Index: /issm/trunk/externalpackages/metis/config/linux/configure.sh
===================================================================
--- /issm/trunk/externalpackages/metis/config/linux/configure.sh	(revision 1388)
+++ /issm/trunk/externalpackages/metis/config/linux/configure.sh	(revision 1388)
@@ -0,0 +1,3 @@
+#!/bin/bash
+patch install/Makefile.in config/linux/Makefile.patch.in.linux
+
Index: /issm/trunk/externalpackages/metis/config/win32/Makefile.in.patch.win32
===================================================================
--- /issm/trunk/externalpackages/metis/config/win32/Makefile.in.patch.win32	(revision 1388)
+++ /issm/trunk/externalpackages/metis/config/win32/Makefile.in.patch.win32	(revision 1388)
@@ -0,0 +1,10 @@
+3,5c3
+< CC = icl
+< OBJ_EXT=obj
+< LIB_EXT=dll
+---
+> CC = cc
+8c6
+< OPTFLAGS = -DWIN32
+---
+> OPTFLAGS = -O2 
Index: /issm/trunk/externalpackages/metis/config/win32/configure.sh
===================================================================
--- /issm/trunk/externalpackages/metis/config/win32/configure.sh	(revision 1388)
+++ /issm/trunk/externalpackages/metis/config/win32/configure.sh	(revision 1388)
@@ -0,0 +1,3 @@
+#!/bin/bash
+patch -R install/Makefile.in config/win32/Makefile.in.patch.win32
+
Index: /issm/trunk/externalpackages/metis/install.sh
===================================================================
--- /issm/trunk/externalpackages/metis/install.sh	(revision 1387)
+++ /issm/trunk/externalpackages/metis/install.sh	(revision 1388)
@@ -21,7 +21,12 @@
 rm -rf metis-$version
 
-#Apply patch
+#Platform specific stuff: 
+./configure.sh
+
+#Apply patches
 cd install 
-patch Makefile.in ../Makefile.in.patch
+patch -R Makefile ../Makefile.patch
+patch -R Lib/metis.h ../metis.h.patch
+patch Lib/Makefile ../lib_Makefile.patch
 
 #Compile metis
@@ -30,3 +35,2 @@
 #Patch proto.h
 patch Lib/proto.h ../proto.h.patch
-
Index: /issm/trunk/externalpackages/metis/lib_Makefile.patch
===================================================================
--- /issm/trunk/externalpackages/metis/lib_Makefile.patch	(revision 1388)
+++ /issm/trunk/externalpackages/metis/lib_Makefile.patch	(revision 1388)
@@ -0,0 +1,40 @@
+9,18c9,18
+< OBJS = coarsen.o fm.o initpart.o match.o ccgraph.o memory.o \
+<        pmetis.o pqueue.o refine.o util.o timing.o debug.o \
+<        bucketsort.o graph.o stat.o kmetis.o kwayrefine.o \
+<        kwayfm.o balance.o ometis.o srefine.o sfm.o separator.o \
+<        mincover.o mmd.o mesh.o meshpart.o frename.o fortran.o \
+<        myqsort.o compress.o parmetis.o estmem.o \
+<        mpmetis.o mcoarsen.o mmatch.o minitpart.o mbalance.o \
+<        mrefine.o mutil.o mfm.o mkmetis.o mkwayrefine.o mkwayfmh.o \
+<        mrefine2.o minitpart2.o mbalance2.o mfm2.o \
+<        kvmetis.o kwayvolrefine.o kwayvolfm.o subdomains.o
+---
+> OBJS = coarsen.$(OBJ_EXT) fm.$(OBJ_EXT) initpart.$(OBJ_EXT) match.$(OBJ_EXT) ccgraph.$(OBJ_EXT) memory.$(OBJ_EXT) \
+>        pmetis.$(OBJ_EXT) pqueue.$(OBJ_EXT) refine.$(OBJ_EXT) util.$(OBJ_EXT) timing.$(OBJ_EXT) debug.$(OBJ_EXT) \
+>        bucketsort.$(OBJ_EXT) graph.$(OBJ_EXT) stat.$(OBJ_EXT) kmetis.$(OBJ_EXT) kwayrefine.$(OBJ_EXT) \
+>        kwayfm.$(OBJ_EXT) balance.$(OBJ_EXT) ometis.$(OBJ_EXT) srefine.$(OBJ_EXT) sfm.$(OBJ_EXT) separator.$(OBJ_EXT) \
+>        mincover.$(OBJ_EXT) mmd.$(OBJ_EXT) mesh.$(OBJ_EXT) meshpart.$(OBJ_EXT) frename.$(OBJ_EXT) fortran.$(OBJ_EXT) \
+>        myqsort.$(OBJ_EXT) compress.$(OBJ_EXT) parmetis.$(OBJ_EXT) estmem.$(OBJ_EXT) \
+>        mpmetis.$(OBJ_EXT) mcoarsen.$(OBJ_EXT) mmatch.$(OBJ_EXT) minitpart.$(OBJ_EXT) mbalance.$(OBJ_EXT) \
+>        mrefine.$(OBJ_EXT) mutil.$(OBJ_EXT) mfm.$(OBJ_EXT) mkmetis.$(OBJ_EXT) mkwayrefine.$(OBJ_EXT) mkwayfmh.$(OBJ_EXT) \
+>        mrefine2.$(OBJ_EXT) minitpart2.$(OBJ_EXT) mbalance2.$(OBJ_EXT) mfm2.$(OBJ_EXT) \
+>        kvmetis.$(OBJ_EXT) kwayvolrefine.$(OBJ_EXT) kwayvolfm.$(OBJ_EXT) subdomains.$(OBJ_EXT)
+20,21c20,21
+< .c.o:
+< 	$(CC) $(CFLAGS) -c $*.c
+---
+> %.$(OBJ_EXT) : %.c
+> 	$(CC) -c $(CFLAGS) -o $@ $<
+23c23
+< ../libmetis.a: $(OBJS)
+---
+> ../libmetis.$(LIB_EXT): $(OBJS)
+28c28
+< 	rm -f *.o
+---
+> 	rm -f *.$(OBJ_EXT)
+31c31
+< 	rm -f *.o ; rm -f ../libmetis.a
+---
+> 	rm -f *.$(OBJ_EXT) ; rm -f ../libmetis.$(LIB_EXT)
Index: /issm/trunk/externalpackages/metis/metis.h.patch
===================================================================
--- /issm/trunk/externalpackages/metis/metis.h.patch	(revision 1388)
+++ /issm/trunk/externalpackages/metis/metis.h.patch	(revision 1388)
@@ -0,0 +1,6 @@
+21d20
+< #ifndef WIN32
+23d21
+< #endif
+40d37
+< 
