diff --git a/wmake/rules/mingwGcc/ARCHITECTURE_TESTED b/wmake/rules/mingwGcc/ARCHITECTURE_TESTED new file mode 100644 index 000000000..fa5233266 --- /dev/null +++ b/wmake/rules/mingwGcc/ARCHITECTURE_TESTED @@ -0,0 +1 @@ +by bgschaid. 2010-10-06 on Centos 5.5 with gcc 4.1 diff --git a/wmake/rules/mingwGcc/X b/wmake/rules/mingwGcc/X new file mode 100644 index 000000000..5d1f9c5cc --- /dev/null +++ b/wmake/rules/mingwGcc/X @@ -0,0 +1,3 @@ +XFLAGS = +XINC = $(XFLAGS) -I/usr/X11R6/include +XLIBS = -L/usr/X11R6/lib64 -lXext -lX11 diff --git a/wmake/rules/mingwGcc/c b/wmake/rules/mingwGcc/c new file mode 100644 index 000000000..a8e588f66 --- /dev/null +++ b/wmake/rules/mingwGcc/c @@ -0,0 +1,16 @@ +.SUFFIXES: .c .h + +cWARN = -Wall + +cc = gcc + +include $(RULES)/c$(WM_COMPILE_OPTION) + +cFLAGS = $(GFLAGS) $(cWARN) $(cOPT) $(cDBUG) $(LIB_HEADER_DIRS) -fPIC -Dmingw + +ctoo = $(WM_SCHEDULER) $(cc) $(cFLAGS) -c $$SOURCE -o $@ + +LINK_LIBS = $(cDBUG) + +LINKLIBSO = $(cc) -shared +LINKEXE = $(cc) -Xlinker --add-needed -Xlinker -z -Xlinker nodefs diff --git a/wmake/rules/mingwGcc/c++ b/wmake/rules/mingwGcc/c++ new file mode 100644 index 000000000..2692d673e --- /dev/null +++ b/wmake/rules/mingwGcc/c++ @@ -0,0 +1,22 @@ +.SUFFIXES: .C .cxx .cc .cpp + +c++WARN = -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor + +CC = g++ + +include $(RULES)/c++$(WM_COMPILE_OPTION) + +ptFLAGS = -DNoRepository -ftemplate-depth-200 + +GFLAGS = -DWM_$(WM_PRECISION_OPTION) +c++FLAGS = $(GFLAGS) $(c++WARN) $(c++OPT) $(c++DBUG) $(ptFLAGS) $(LIB_HEADER_DIRS) -I$(OPENMPI_DIR)/include -I$(WM_THIRD_PARTY_DIR)/packages/system/include -Dmingw -DBIG_ENDIAN=0 -DLITTLE_ENDIAN=1 -DBYTE_ORDER=BIG_ENDIAN + +Ctoo = $(WM_SCHEDULER) $(CC) $(c++FLAGS) -c $$SOURCE -o $@ +cxxtoo = $(Ctoo) +cctoo = $(Ctoo) +cpptoo = $(Ctoo) + +LINK_LIBS = $(c++DBUG) -L$(OPENMPI_DIR)/lib -lmpi -lpthread -lz -L$(WM_THIRD_PARTY_DIR)/packages/system/lib -ldl -lpsapi + +LINKLIBSO = $(CC) $(c++FLAGS) -shared -Xlinker --add-needed -Xlinker --no-as-needed +LINKEXE = $(CC) $(c++FLAGS) -Xlinker --add-needed -Xlinker --no-as-needed $(FOAM_LIBBIN)/libOSspecific.o diff --git a/wmake/rules/mingwGcc/c++Debug b/wmake/rules/mingwGcc/c++Debug new file mode 100644 index 000000000..19bdb9c33 --- /dev/null +++ b/wmake/rules/mingwGcc/c++Debug @@ -0,0 +1,2 @@ +c++DBUG = -ggdb3 -DFULLDEBUG +c++OPT = -O0 -fdefault-inline diff --git a/wmake/rules/mingwGcc/c++Opt b/wmake/rules/mingwGcc/c++Opt new file mode 100644 index 000000000..3446f7f58 --- /dev/null +++ b/wmake/rules/mingwGcc/c++Opt @@ -0,0 +1,4 @@ +c++DBUG = +c++OPT = -O3 +#c++OPT = -march=nocona -O3 +# -ftree-vectorize -ftree-vectorizer-verbose=3 diff --git a/wmake/rules/mingwGcc/c++Prof b/wmake/rules/mingwGcc/c++Prof new file mode 100644 index 000000000..3bda4dad5 --- /dev/null +++ b/wmake/rules/mingwGcc/c++Prof @@ -0,0 +1,2 @@ +c++DBUG = -pg +c++OPT = -O2 diff --git a/wmake/rules/mingwGcc/cDebug b/wmake/rules/mingwGcc/cDebug new file mode 100644 index 000000000..72b638f45 --- /dev/null +++ b/wmake/rules/mingwGcc/cDebug @@ -0,0 +1,2 @@ +cDBUG = -ggdb -DFULLDEBUG +cOPT = -O1 -fdefault-inline -finline-functions diff --git a/wmake/rules/mingwGcc/cOpt b/wmake/rules/mingwGcc/cOpt new file mode 100644 index 000000000..17318709f --- /dev/null +++ b/wmake/rules/mingwGcc/cOpt @@ -0,0 +1,2 @@ +cDBUG = +cOPT = -O3 diff --git a/wmake/rules/mingwGcc/cProf b/wmake/rules/mingwGcc/cProf new file mode 100644 index 000000000..ca3ac9bf5 --- /dev/null +++ b/wmake/rules/mingwGcc/cProf @@ -0,0 +1,2 @@ +cDBUG = -pg +cOPT = -O2 diff --git a/wmake/rules/mingwGcc/general b/wmake/rules/mingwGcc/general new file mode 100644 index 000000000..fac7c56ed --- /dev/null +++ b/wmake/rules/mingwGcc/general @@ -0,0 +1,11 @@ +CPP = cpp -traditional-cpp -Dmingw +LD = ld + +PROJECT_LIBS = -l$(WM_PROJECT) -liberty + +include $(GENERAL_RULES)/standard + +include $(RULES)/X +include $(RULES)/c +include $(RULES)/c++ +include $(RULES)/nvcc diff --git a/wmake/rules/mingwGcc/mplib b/wmake/rules/mingwGcc/mplib new file mode 100644 index 000000000..294bd8615 --- /dev/null +++ b/wmake/rules/mingwGcc/mplib @@ -0,0 +1,3 @@ +PFLAGS = +PINC = +PLIBS = diff --git a/wmake/rules/mingwGcc/mplibGAMMA b/wmake/rules/mingwGcc/mplibGAMMA new file mode 100644 index 000000000..11606f298 --- /dev/null +++ b/wmake/rules/mingwGcc/mplibGAMMA @@ -0,0 +1,3 @@ +PFLAGS = +PINC = -I$(MPI_ARCH_PATH)/include +PLIBS = -L$(MPI_ARCH_PATH)/lib -lgamma diff --git a/wmake/rules/mingwGcc/mplibHPMPI b/wmake/rules/mingwGcc/mplibHPMPI new file mode 100644 index 000000000..574492a23 --- /dev/null +++ b/wmake/rules/mingwGcc/mplibHPMPI @@ -0,0 +1,3 @@ +PFLAGS = +PINC = -I$(MPI_ARCH_PATH)/include -D_MPICC_H +PLIBS = -L$(MPI_ARCH_PATH)/lib/linux_amd64 -lmpi diff --git a/wmake/rules/mingwGcc/mplibMPICH b/wmake/rules/mingwGcc/mplibMPICH new file mode 100644 index 000000000..ad53c8d44 --- /dev/null +++ b/wmake/rules/mingwGcc/mplibMPICH @@ -0,0 +1,3 @@ +PFLAGS = +PINC = -I$(MPI_ARCH_PATH)/include +PLIBS = -L$(MPI_ARCH_PATH)/lib -lmpich diff --git a/wmake/rules/mingwGcc/mplibMPICH-GM b/wmake/rules/mingwGcc/mplibMPICH-GM new file mode 100644 index 000000000..88493ebc7 --- /dev/null +++ b/wmake/rules/mingwGcc/mplibMPICH-GM @@ -0,0 +1,3 @@ +PFLAGS = +PINC = -I$(MPI_ARCH_PATH)/include +PLIBS = -L$(MPI_ARCH_PATH)/lib -lmpich -L$(GM_LIB_PATH) -lgm diff --git a/wmake/rules/mingwGcc/mplibOPENMPI b/wmake/rules/mingwGcc/mplibOPENMPI new file mode 100644 index 000000000..50018e30b --- /dev/null +++ b/wmake/rules/mingwGcc/mplibOPENMPI @@ -0,0 +1,3 @@ +PFLAGS = -DOMPI_SKIP_MPICXX +PINC = -I$(OPENMPI_DIR)/include +PLIBS = -L$(OPENMPI_DIR)/lib -lmpi diff --git a/wmake/rules/mingwGcc/mplibQSMPI b/wmake/rules/mingwGcc/mplibQSMPI new file mode 100644 index 000000000..807d20ab3 --- /dev/null +++ b/wmake/rules/mingwGcc/mplibQSMPI @@ -0,0 +1,3 @@ +PFLAGS = +PINC = -I$(MPI_ARCH_PATH)/include +PLIBS = -L$(MPI_ARCH_PATH)/lib -lmpi diff --git a/wmake/rules/mingwGcc/mplibSYSTEMOPENMPI b/wmake/rules/mingwGcc/mplibSYSTEMOPENMPI new file mode 100644 index 000000000..98fa814ce --- /dev/null +++ b/wmake/rules/mingwGcc/mplibSYSTEMOPENMPI @@ -0,0 +1 @@ +PFLAGS = -DOMPI_SKIP_MPICXX diff --git a/wmake/rules/mingwGcc/nvcc b/wmake/rules/mingwGcc/nvcc new file mode 100644 index 000000000..9a04fe4d6 --- /dev/null +++ b/wmake/rules/mingwGcc/nvcc @@ -0,0 +1,17 @@ +.SUFFIXES: .cu + +NVCC = nvcc -arch $(CUDA_ARCH) + +NVCC_ptFLAGS = -DNoRepository + +NVCC_FLAGS = $(NVCC_ptFLAGS) -Xcompiler -fPIC $(LIB_HEADER_DIRS) $(GFLAGS) $(c++OPT) $(c++DBUG) + +cutoo = $(WM_SCHEDULER) $(NVCC) $(NVCC_FLAGS) -c $$SOURCE -o $@ + +LINK_LIBS = $(c++DBUG) + +LINKLIBSO = $(CC) $(c++FLAGS) -shared -Xlinker --add-needed -Xlinker --no-as-needed +LINKEXE = $(CC) $(c++FLAGS) -Xlinker --add-needed -Xlinker --no-as-needed + +.cu.dep: + $(MAKE_DEP)