1# This make include file is intended for building under MinGW32. As is,
2# it relies on :
3#   - pthread-win32 (http://sourceware.org/pthreads-win32/),
4#   - zlib (http://www.zlib.net/)
5#   - mpich2 (http://www.mcs.anl.gov/research/projects/mpich2/).
6# It must be adapted to reflect your environment, in particular
7# installation root directories, include path and library name.
8# Since all files are linked with the MPI libraries, this file is
9# for compiling PT-Scotch only. To compile Scotch, remove the
10# -DSCOTCH_PTSCOTCH flag, as well as all references to MPI in the
11# CFLAGS and CLIBFLAGS	=
12LDFLAGS variables.
13
14EXE			=
15LIB			= .a
16OBJ			= .o
17
18MAKE			= make
19AR			= ar
20ARFLAGS			= -ruv
21CAT			= cat
22CCS			= gcc
23CCP			= gcc
24CCD			= gcc
25
26#--- Compiler/loader flags
27CFLAGS_CPL		= -O0 -g3
28CFLAGS_INC		=
29CFLAGS_DEF		= -DCOMMON_RANDOM_FIXED_SEED -DCOMMON_STUB_FORK -DSCOTCH_PTSCOTCH -DSCOTCH_RENAME -D'pipe(pfds)=_pipe(pfds,1024,0x8000)'
30CLIBFLAGS	=
31LDFLAGS   		=
32
33PGMFILES=$(PROGRAMFILES)
34
35#--- MPI
36MPI_ROOTDIR		= $(PGMFILES)/MPICH2
37CFLAGS_INC	+= -I$(MPI_ROOTDIR)/include
38#--- Comment/Uncomment for threaded MPI
39CLIBFLAGS	=
40LDFLAGS    	+= -L$(MPI_ROOTDIR)/lib -lm -lmpi
41#CLIBFLAGS	=
42LDFLAGS    	+= -L$(MPI_ROOTDIR)/lib -lm -lmpich2mt
43
44#--- Pthread : Uncomment for pthread support
45#PTHREAD_ROOTDIR		= $(PGMFILES)/pthread-win32
46#CFLAGS_INC		+= -I$(PTHREAD_ROOTDIR)/include
47#CLIBFLAGS	=
48LDFLAGS		+= -L$(PTHREAD_ROOTDIR)/lib -lpthreadGC2
49
50#--- zlib: Uncomment for compressed files
51#ZLIB_ROOTDIR		= $(PGMFILES)/zlib-1.2.3
52#CFLAGS_INC	+= -I$(ZLIB_ROOTDIR)/include
53#CLIBFLAGS	=
54LDFLAGS	+= -L$(ZLIB_ROOTDIR)/lib -lzdll
55
56#--- COMMON_PTHREAD: Uncomment for compressed files
57#CFLAGS_DEF	+= -DCOMMON_PTHREAD -DCOMMON_FILE_COMPRESS_GZ
58
59#--- SCOTCH_PTHREAD: Uncomment for threaded MPI
60#CFLAGS_DEF	+= -DSCOTCH_PTHREAD
61
62CFLAGS		= $(CFLAGS_CPL) $(CFLAGS_INC) $(CFLAGS_DEF)
63CP			= cp
64LEX			= flex -Pscotchyy -olex.yy.c
65LN			= cp
66MKDIR			= mkdir
67MV			= mv
68RANLIB			= ranlib
69YACC			= bison -pscotchyy -y -b y
70