diff --git a/wmake/rules/linux64GccKNL/c b/wmake/rules/linux64GccKNL/c new file mode 100644 index 0000000000..a1cd9d6613 --- /dev/null +++ b/wmake/rules/linux64GccKNL/c @@ -0,0 +1,16 @@ +SUFFIXES += .c + +cWARN = -Wall + +cc = gcc -m64 -march=knl -DvectorMachine -DKNL + +include $(DEFAULT_RULES)/c$(WM_COMPILE_OPTION) + +cFLAGS = $(GFLAGS) $(cWARN) $(cOPT) $(cDBUG) $(LIB_HEADER_DIRS) -fPIC + +ctoo = $(WM_SCHEDULER) $(cc) $(cFLAGS) -c $< -o $@ + +LINK_LIBS = $(cDBUG) + +LINKLIBSO = $(cc) -shared +LINKEXE = $(cc) -Xlinker --add-needed -Xlinker -z -Xlinker nodefs diff --git a/wmake/rules/linux64GccKNL/c++ b/wmake/rules/linux64GccKNL/c++ new file mode 100644 index 0000000000..ed1ad0de52 --- /dev/null +++ b/wmake/rules/linux64GccKNL/c++ @@ -0,0 +1,24 @@ +SUFFIXES += .C + +c++WARN = -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor -Wno-unused-parameter -Wno-invalid-offsetof + +# Suppress some warnings for flex++ and CGAL +c++LESSWARN = -Wno-old-style-cast -Wno-unused-local-typedefs -Wno-array-bounds + +CC = g++ -std=c++0x -m64 -march=knl -DvectorMachine -DKNL + +include $(DEFAULT_RULES)/c++$(WM_COMPILE_OPTION) + +ptFLAGS = -DNoRepository -ftemplate-depth-100 + +c++FLAGS = $(GFLAGS) $(c++WARN) $(c++OPT) $(c++DBUG) $(ptFLAGS) $(LIB_HEADER_DIRS) -fPIC + +Ctoo = $(WM_SCHEDULER) $(CC) $(c++FLAGS) -c $< -o $@ +cxxtoo = $(Ctoo) +cctoo = $(Ctoo) +cpptoo = $(Ctoo) + +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 diff --git a/wmake/rules/linux64GccKNL/c++Debug b/wmake/rules/linux64GccKNL/c++Debug new file mode 100644 index 0000000000..19bdb9c334 --- /dev/null +++ b/wmake/rules/linux64GccKNL/c++Debug @@ -0,0 +1,2 @@ +c++DBUG = -ggdb3 -DFULLDEBUG +c++OPT = -O0 -fdefault-inline diff --git a/wmake/rules/linux64GccKNL/c++Opt b/wmake/rules/linux64GccKNL/c++Opt new file mode 100644 index 0000000000..599e6aba61 --- /dev/null +++ b/wmake/rules/linux64GccKNL/c++Opt @@ -0,0 +1,4 @@ +c++DBUG = +c++OPT = -O3 + +ROUNDING_MATH = -frounding-math diff --git a/wmake/rules/linux64KNLIcc/c++Prof b/wmake/rules/linux64GccKNL/c++Prof similarity index 100% rename from wmake/rules/linux64KNLIcc/c++Prof rename to wmake/rules/linux64GccKNL/c++Prof diff --git a/wmake/rules/linux64GccKNL/cDebug b/wmake/rules/linux64GccKNL/cDebug new file mode 100644 index 0000000000..72b638f458 --- /dev/null +++ b/wmake/rules/linux64GccKNL/cDebug @@ -0,0 +1,2 @@ +cDBUG = -ggdb -DFULLDEBUG +cOPT = -O1 -fdefault-inline -finline-functions diff --git a/wmake/rules/linux64GccKNL/cOpt b/wmake/rules/linux64GccKNL/cOpt new file mode 100644 index 0000000000..17318709f1 --- /dev/null +++ b/wmake/rules/linux64GccKNL/cOpt @@ -0,0 +1,2 @@ +cDBUG = +cOPT = -O3 diff --git a/wmake/rules/linux64KNLIcc/cProf b/wmake/rules/linux64GccKNL/cProf similarity index 100% rename from wmake/rules/linux64KNLIcc/cProf rename to wmake/rules/linux64GccKNL/cProf diff --git a/wmake/rules/linux64GccKNL/general b/wmake/rules/linux64GccKNL/general new file mode 100644 index 0000000000..1002cb169b --- /dev/null +++ b/wmake/rules/linux64GccKNL/general @@ -0,0 +1,8 @@ +CPP = cpp -traditional-cpp $(GFLAGS) + +PROJECT_LIBS = -l$(WM_PROJECT) -ldl + +include $(GENERAL_RULES)/standard + +include $(DEFAULT_RULES)/c +include $(DEFAULT_RULES)/c++ diff --git a/wmake/rules/linux64KNLIcc/mplibHPMPI b/wmake/rules/linux64GccKNL/mplibHPMPI similarity index 100% rename from wmake/rules/linux64KNLIcc/mplibHPMPI rename to wmake/rules/linux64GccKNL/mplibHPMPI diff --git a/wmake/rules/linux64KNLIcc/mplibINTELMPI b/wmake/rules/linux64GccKNL/mplibINTELMPI similarity index 100% rename from wmake/rules/linux64KNLIcc/mplibINTELMPI rename to wmake/rules/linux64GccKNL/mplibINTELMPI diff --git a/wmake/rules/linux64KNLIcc/c b/wmake/rules/linux64IccKNL/c similarity index 100% rename from wmake/rules/linux64KNLIcc/c rename to wmake/rules/linux64IccKNL/c diff --git a/wmake/rules/linux64KNLIcc/c++ b/wmake/rules/linux64IccKNL/c++ similarity index 100% rename from wmake/rules/linux64KNLIcc/c++ rename to wmake/rules/linux64IccKNL/c++ diff --git a/wmake/rules/linux64KNLIcc/c++Debug b/wmake/rules/linux64IccKNL/c++Debug similarity index 100% rename from wmake/rules/linux64KNLIcc/c++Debug rename to wmake/rules/linux64IccKNL/c++Debug diff --git a/wmake/rules/linux64KNLIcc/c++Opt b/wmake/rules/linux64IccKNL/c++Opt similarity index 100% rename from wmake/rules/linux64KNLIcc/c++Opt rename to wmake/rules/linux64IccKNL/c++Opt diff --git a/wmake/rules/linux64IccKNL/c++Prof b/wmake/rules/linux64IccKNL/c++Prof new file mode 100644 index 0000000000..3bda4dad55 --- /dev/null +++ b/wmake/rules/linux64IccKNL/c++Prof @@ -0,0 +1,2 @@ +c++DBUG = -pg +c++OPT = -O2 diff --git a/wmake/rules/linux64KNLIcc/cDebug b/wmake/rules/linux64IccKNL/cDebug similarity index 100% rename from wmake/rules/linux64KNLIcc/cDebug rename to wmake/rules/linux64IccKNL/cDebug diff --git a/wmake/rules/linux64KNLIcc/cOpt b/wmake/rules/linux64IccKNL/cOpt similarity index 100% rename from wmake/rules/linux64KNLIcc/cOpt rename to wmake/rules/linux64IccKNL/cOpt diff --git a/wmake/rules/linux64IccKNL/cProf b/wmake/rules/linux64IccKNL/cProf new file mode 100644 index 0000000000..ca3ac9bf5f --- /dev/null +++ b/wmake/rules/linux64IccKNL/cProf @@ -0,0 +1,2 @@ +cDBUG = -pg +cOPT = -O2 diff --git a/wmake/rules/linux64KNLIcc/general b/wmake/rules/linux64IccKNL/general similarity index 100% rename from wmake/rules/linux64KNLIcc/general rename to wmake/rules/linux64IccKNL/general diff --git a/wmake/rules/linux64IccKNL/mplibHPMPI b/wmake/rules/linux64IccKNL/mplibHPMPI new file mode 100644 index 0000000000..d7c4b0cf30 --- /dev/null +++ b/wmake/rules/linux64IccKNL/mplibHPMPI @@ -0,0 +1,3 @@ +PFLAGS = +PINC = -isystem $(MPI_ARCH_PATH)/include -D_MPICC_H +PLIBS = -L$(MPI_ARCH_PATH)/lib/linux_amd64 -lmpi diff --git a/wmake/rules/linux64IccKNL/mplibINTELMPI b/wmake/rules/linux64IccKNL/mplibINTELMPI new file mode 100644 index 0000000000..278e0b0f22 --- /dev/null +++ b/wmake/rules/linux64IccKNL/mplibINTELMPI @@ -0,0 +1,3 @@ +PFLAGS = -DMPICH_SKIP_MPICXX +PINC = -isystem $(MPI_ARCH_PATH)/include64 +PLIBS = -L$(MPI_ARCH_PATH)/lib64 -lmpi