diff options
Diffstat (limited to 'biology/bolt-lmm/files/patch-src_Makefile')
-rw-r--r-- | biology/bolt-lmm/files/patch-src_Makefile | 88 |
1 files changed, 47 insertions, 41 deletions
diff --git a/biology/bolt-lmm/files/patch-src_Makefile b/biology/bolt-lmm/files/patch-src_Makefile index 7cd1f25f5420..cf667e25edd4 100644 --- a/biology/bolt-lmm/files/patch-src_Makefile +++ b/biology/bolt-lmm/files/patch-src_Makefile @@ -1,21 +1,27 @@ ---- src/Makefile.orig 2018-03-13 02:44:52 UTC +--- src/Makefile.orig 2019-08-11 03:05:04 UTC +++ src/Makefile -@@ -1,29 +1,28 @@ +@@ -1,31 +1,35 @@ ++ ### modify these paths to local Boost and NLopt install directories -BOOST_INSTALL_DIR = /home/pl88/boost_1_58_0/install -NLOPT_INSTALL_DIR = /n/groups/price/poru/HSPH_SVN/src/BOLT-LMM/nlopt-2.4.2 -+BOOST_INSTALL_DIR ?= ${LOCALBASE} -+# Redundant on FreeBSD NLOPT_INSTALL_DIR = /n/groups/price/poru/HSPH_SVN/src/BOLT-LMM/nlopt-2.4.2 ++### by setting them in the environment or make command line args ++### which will override variables set with ?= - INTELROOT = /n/groups/price/poru/external_software/intel_mkl_2018 - MKLROOT = ${INTELROOT}/mkl +-INTELROOT = /n/groups/price/poru/external_software/intel_mkl_2019u4 +-MKLROOT = ${INTELROOT}/mkl -ZLIB_STATIC_DIR = /n/groups/price/poru/external_software/zlib/zlib-1.2.11 # probably unnecessary on most systems -LIBSTDCXX_STATIC_DIR = /n/groups/price/poru/external_software/libstdc++/usr/lib/gcc/x86_64-redhat-linux/4.8.5/ -GLIBC_STATIC_DIR = /home/pl88/glibc-static/usr/lib64 -+ZLIB_STATIC_DIR ?= /usr/lib -+LIBSTDCXX_STATIC_DIR ?= /usr/lib -+GLIBC_STATIC_DIR ?= /usr/lib - ++BOOST_INSTALL_DIR ?= /home/pl88/boost_1_58_0/install ++NLOPT_INSTALL_DIR ?= /n/groups/price/poru/HSPH_SVN/src/BOLT-LMM/nlopt-2.4.2 + ++INTELROOT ?= /n/groups/price/poru/external_software/intel_mkl_2019u4 ++MKLROOT ?= ${INTELROOT}/mkl ++ZLIB_STATIC_DIR ?= /n/groups/price/poru/external_software/zlib/zlib-1.2.11 # probably unnecessary on most systems ++LIBSTDCXX_STATIC_DIR ?= /n/groups/price/poru/external_software/libstdc++/usr/lib/gcc/x86_64-redhat-linux/4.8.5/ ++GLIBC_STATIC_DIR ?= /home/pl88/glibc-static/usr/lib64 ++ ifeq ($(strip ${linking}),) linking = dynamic endif @@ -36,33 +42,25 @@ -CFLAGS += -msse -msse2 -CFLAGS += -DUSE_SSE -DMEASURE_DGEMM -DVERBOSE -CFLAGS += -Wall -+CXXFLAGS += -DMEASURE_DGEMM -DVERBOSE -+CXXFLAGS += -Wall - ++# Set SSEFLAGS to empty string in the env or make command line if building on ++# systems with no SSE such as PowerPC ++SSEFLAGS ?= -msse -msse2 -DUSE_SSE ++CXXFLAGS += ${SSEFLAGS} -DMEASURE_DGEMM -DVERBOSE -Wall +- # add Boost include and lib paths -@@ -38,9 +37,9 @@ endif - # add NLopt include and lib paths - ifneq ($(strip ${NLOPT_INSTALL_DIR}),) - CPATHS += -I${NLOPT_INSTALL_DIR}/api -- LPATHS += -L${NLOPT_INSTALL_DIR}/.libs -+ LPATHS += -L${NLOPT_INSTALL_DIR}/libs - ifeq (${linking},dynamic) -- LPATHS += -Wl,-rpath,${NLOPT_INSTALL_DIR}/.libs -+ LPATHS += -Wl,-rpath,${NLOPT_INSTALL_DIR}/libs - endif - endif - -@@ -52,7 +51,7 @@ ifneq ($(strip ${ZLIB_STATIC_DIR}),) + ifneq ($(strip ${BOOST_INSTALL_DIR}),) + CPATHS += -I${BOOST_INSTALL_DIR}/include +@@ -52,7 +56,7 @@ ifneq ($(strip ${ZLIB_STATIC_DIR}),) endif # add MKL paths (if not compiling with g++, i.e., compiling with icpc) -ifneq (${CC},g++) -+ifneq (${CXX},${CXX}) ++ifeq (${CXX},icpc) CPATHS += -I${MKLROOT}/include - ifeq (${linking},dynamic) - LPATHS += -L${MKLROOT}/lib/intel64 -Wl,-rpath,${MKLROOT}/lib/intel64 # for libmkl* -@@ -61,28 +60,28 @@ ifneq (${CC},g++) + ifeq (${linking},static) + LPATHS += -L${INTELROOT}/lib/intel64 '-Wl,-rpath,$$ORIGIN/lib' # for libiomp5.so (now packaged with binary) +@@ -65,34 +69,34 @@ ifneq (${CC},g++) endif # add flags for static linking; build LAPACK/MKL component of link line @@ -70,10 +68,10 @@ - CFLAGS += -fopenmp - LFLAGS += -fopenmp - LLAPACK = -llapack -lgfortran -+ifeq (${CXX},${CXX}) ++ifneq (${CXX},icpc) + CXXFLAGS += -fopenmp + LDFLAGS += -fopenmp -+ LLAPACK = -lopenblas -lgfortran ++ LLAPACK ?= -llapack -lgfortran ifeq (${linking},static) - LFLAGS += -static + LDFLAGS += -static @@ -92,39 +90,47 @@ + CXXFLAGS += -qopenmp + LDFLAGS += -qopenmp + CXXFLAGS += -Wunused-variable -Wpointer-arith -Wuninitialized -Wreturn-type -Wcheck -Wshadow + LIOMP5 = -liomp5 + LDL = -ldl ifeq (${linking},static) - LFLAGS += -static + LDFLAGS += -static LPATHS += -L${GLIBC_STATIC_DIR} -L${ZLIB_STATIC_DIR} - LLAPACK = -Wl,--start-group ${MKLROOT}/lib/intel64/libmkl_intel_lp64.a ${MKLROOT}/lib/intel64/libmkl_core.a ${MKLROOT}/lib/intel64/libmkl_intel_thread.a -Wl,--end-group + LLAPACK = -Wl,--start-group ${MKLROOT}/lib/intel64/libmkl_intel_lp64.a ${MKLROOT}/lib/intel64/libmkl_intel_thread.a ${MKLROOT}/lib/intel64/libmkl_core.a -Wl,--end-group else ifeq (${linking},static-except-glibc) - LFLAGS += -static-intel -static-libstdc++ -static-libgcc + LDFLAGS += -static-intel -static-libstdc++ -static-libgcc LPATHS += -L${ZLIB_STATIC_DIR} - LLAPACK = -Wl,--start-group ${MKLROOT}/lib/intel64/libmkl_intel_lp64.a ${MKLROOT}/lib/intel64/libmkl_core.a ${MKLROOT}/lib/intel64/libmkl_intel_thread.a -Wl,--end-group + LLAPACK = -Wl,--start-group ${MKLROOT}/lib/intel64/libmkl_intel_lp64.a ${MKLROOT}/lib/intel64/libmkl_intel_thread.a ${MKLROOT}/lib/intel64/libmkl_core.a -Wl,--end-group + else ifeq (${linking},static-except-glibc-intel) +- LFLAGS += -static-libstdc++ -static-libgcc ++ LDFLAGS += -static-libstdc++ -static-libgcc + LPATHS += -L${ZLIB_STATIC_DIR} + LLAPACK = -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core else -@@ -95,7 +94,8 @@ else +@@ -105,7 +109,7 @@ else endif # build link line (minus flags) -LLIBS = -lboost_program_options -lboost_iostreams -lz -lnlopt +LLIBS = -lnlopt -lboost_program_options -lboost_iostreams -lz -+# LLIBS = /usr/local/lib/libboost_program_options.a -lnlopt -lboost_iostreams -lz ifeq (${linking},static-except-glibc) - L = -L${LIBSTDCXX_STATIC_DIR} ${LPATHS} -Wl,--wrap=memcpy -Wl,-Bstatic ${LLIBS} ${LLAPACK} -Wl,-Bdynamic -lpthread -lm - else -@@ -105,16 +105,18 @@ endif + L = -L${LIBSTDCXX_STATIC_DIR} ${LPATHS} -Wl,--wrap=memcpy -Wl,-Bstatic ${LLIBS} ${LLAPACK} -Wl,-Bdynamic ${LIOMP5} -lpthread -lm ${LDL} + else ifeq (${linking},static-except-glibc-intel) +@@ -117,16 +121,20 @@ endif T = bolt -O = Bolt.o BoltParams.o BoltParEstCV.o BoltReml.o CovariateBasis.o DataMatrix.o FileUtils.o Jackknife.o LDscoreCalibration.o MapInterpolater.o MatrixUtils.o MemoryUtils.o NonlinearOptMulti.o NumericUtils.o PhenoBuilder.o RestrictSnpSet.o SnpData.o SnpInfo.o SpectrumTools.o StatsUtils.o StringUtils.o Timer.o memcpy.o -+O = Bolt.o BoltParams.o BoltParEstCV.o BoltReml.o CovariateBasis.o DataMatrix.o FileUtils.o Jackknife.o LDscoreCalibration.o MapInterpolater.o MatrixUtils.o MemoryUtils.o NonlinearOptMulti.o NumericUtils.o PhenoBuilder.o RestrictSnpSet.o SnpData.o SnpInfo.o SpectrumTools.o StatsUtils.o StringUtils.o Timer.o ++# Set to empty string in env or make command line to use system memcpy ++MEMCPY ?= memcpy.o ++O = Bolt.o BoltParams.o BoltParEstCV.o BoltReml.o CovariateBasis.o DataMatrix.o FileUtils.o Jackknife.o LDscoreCalibration.o MapInterpolater.o MatrixUtils.o MemoryUtils.o NonlinearOptMulti.o NumericUtils.o PhenoBuilder.o RestrictSnpSet.o SnpData.o SnpInfo.o SpectrumTools.o StatsUtils.o StringUtils.o Timer.o ${MEMCPY} OMAIN = BoltMain.o $O -.PHONY: clean +.PHONY: clean all -+all: $T ++all: ${T} + %.o: %.cpp - ${CC} ${CFLAGS} ${CPATHS} -o $@ -c $< |