SHELL := /bin/bash # Use bash syntax # # To run: make env.sh, then source the resulting environment file and run: make # # example command: # make env.sh -f Makefile.ligosoftware_icc_all # source env.sh # time make gstlal -f Makefile.ligosoftware_icc_all 1> make.out 2> make.err # # If you would like to rebuild only part of the software stack, such as lalsuite # or gstlal up, but it starts from the beginning if using the above command, # then use the touch (-t) option on the previous package. # # To rebuild lalsuite: # make gds -f Makefile.ligosoftware_icc_all -t # make lalsuite -f Makefile.ligosoftware_icc_all # # To rebuild gstlal: # make glue -f Makefile.ligosoftware_icc_all -t # make gstlal -f Makefile.ligosoftware_icc_all # Determine cluster CLUSTER:=$(shell hostname -d) # Set directories and paths SRC_DIR:=${PWD}/src TAR_DIR:=tarball LOGS_DIR:=${PWD}/logs PATCH_DIR:=${PWD}/patches INSTALL_DIR:=${LAL_PATH} ifeq ($(findstring debian,$(shell cat /etc/os-release | grep ID=)),debian) PYTHON_LIB_DIR:=/usr/lib/python2.7/config-x86_64-linux-gnu PYTHON_DIR:=${LAL_PATH}/lib/python2.7/site-packages else PYTHON_LIB_DIR:=/usr/lib64 PYTHON_DIR:=${LAL_PATH}/lib64/python2.7/site-packages endif GSTLAL_REPO:=${PWD}/git/gstlal LIGOSCALD_REPO:=${PWD}/git/ligo-scald LALSUITE_REPO:=${PWD}/git/lalsuite # Set to build from git (0 = tarball, 1 = git) GSTLAL_GIT=1 LIGOSCALD_GIT=0 LALSUITE_GIT=0 # Define which branch from git to build. Defaults to 'master', but the user can # set the variable below. The git clone and compilation should fail if this is set to # an unknown branch. # GSTLAL_GIT_BRANCH="master" LIGOSCALD_GIT_BRANCH="master" LALSUITE_GIT_BRANCH="master" # Set package release versions GSTLALINSPIRAL=gstlal-inspiral-1.6.5 GSTLALCALIBRATION=gstlal-calibration-1.2.10 GSTLALBURST=gstlal-burst-0.1.1 GSTLALUGLY=gstlal-ugly-1.6.4 GSTLAL=gstlal-1.5.0 LIGOSCALD=ligo-scald-0.4.1 KAFKA_PYTHON=0.11.5 LIBRDKAFKA=0.11.5 LALAPPS=lalapps-6.24.0 LALINFERENCE=lalinference-1.11.0 LALPULSAR=lalpulsar-1.18.0 LALINSPIRAL=lalinspiral-1.9.0 LALBURST=lalburst-1.5.2 LALSIMULATION=lalsimulation-1.9.0 LALMETAIO=lalmetaio-1.5.1 LALFRAME=lalframe-1.4.5 LAL=lal-6.20.1 GDS=gds-2.18.17 LDASTOOLSFRAMECPP=ldas-tools-framecpp-2.6.5 LDASTOOLSAL=ldas-tools-al-2.6.2 SWIG=swig-3.0.7 METAIO=metaio-8.5.1 LIBFRAME=libframe-8.30 GSTPYTHON=gst-python-1.14.3 GSTPLUGINSGOOD=gst-plugins-good-1.14.3 GSTPLUGINSBASE=gst-plugins-base-1.14.3 GSTREAMER=gstreamer-1.14.3 GSL=gsl-1.16 ORC=orc-0.4.26 FFTW=fftw-3.3.8 # Specify target/dependency files GSTINSPIRAL_TARGET=$(INSTALL_DIR)/lib/libgstlalinspiral.so GSTLALCALIB_TARGET=$(INSTALL_DIR)/bin/gstlal_compute_strain GSTLALBURST_TARGET=$(INSTALL_DIR)/lib/libgstlalburst.so GSTLALUGLY_TARGET=$(INSTALL_DIR)/lib/gstreamer-1.0/libgstnds.so GSTLAL_TARGET=$(INSTALL_DIR)/lib/libgstlal.so LIGOSCALD_TARGET=$(INSTALL_DIR)/lib/python2.7/site-packages/$(LIGOSCALD)-py2.7.egg KAFKA_PYTHON_TARGET=$(PYTHON_DIR)/confluent_kafka-$(KAFKA_PYTHON)-py2.7-linux-x86_64.egg LIBRDKAFKA_TARGET=$(INSTALL_DIR)/lib/librdkafka.so LALAPPS_TARGET=$(INSTALL_DIR)/bin/lalapps_psinject LALINFER_TARGET=$(INSTALL_DIR)/lib/liblalinference.so LALPULSAR_TARGET=$(INSTALL_DIR)/lib/liblalpulsar.so LALINSPIRAL_TARGET=$(INSTALL_DIR)/lib/liblalinspiral.so LALBURST_TARGET=$(INSTALL_DIR)/lib/liblalburst.so LALSIM_TARGET=$(INSTALL_DIR)/lib/liblalsimulation.so LALMETAIO_TARGET=$(INSTALL_DIR)/lib/liblalmetaio.so LALFRAME_TARGET=$(INSTALL_DIR)/lib/liblalframe.so LAL_TARGET=$(INSTALL_DIR)/lib/liblal.so GDS_TARGET=$(INSTALL_DIR)/lib/libwpipe.so LDASTOOLSFRAMECPP_TARGET=$(INSTALL_DIR)/lib/libframecpp.so LDASTOOLSAL_TARGET=$(INSTALL_DIR)/lib/libldastoolsal.so SWIG_TARGET=$(INSTALL_DIR)/bin/swig METAIO_TARGET=$(INSTALL_DIR)/lib/libmetaio.so LIBFRAME_TARGET=$(INSTALL_DIR)/lib/libFrame.so GSTPYTHON_TARGET=$(INSTALL_DIR)/lib/gstreamer-1.0/libgstpython.so GSTGOOD_TARGET=$(INSTALL_DIR)/lib/gstreamer-1.0/libgstpng.so GSTBASE_TARGET=$(INSTALL_DIR)/lib/libgstapp-1.0.so GSTREAMER_TARGET=$(INSTALL_DIR)/lib/libgstreamer-1.0.so GSL_2_TARGET=$(INSTALL_DIR)/lib/pkgconfig/gsl.pc.orig GSL_1_TARGET=$(INSTALL_DIR)/lib/libgsl.so ORC_TARGET=$(INSTALL_DIR)/lib/liborc-0.4.so FFTW_TARGET=$(INSTALL_DIR)/lib/libfftw3.so # tarballs GSTLALINSPIRAL_TAR_TARGET=$(TAR_DIR)/$(GSTLALINSPIRAL).tar.gz GSTLALCALIB_TAR_TARGET=$(TAR_DIR)/$(GSTLALCALIBRATION).tar.gz GSTLALBURST_TAR_TARGET=$(TAR_DIR)/$(GSTLALBURST).tar.gz GSTLALUGLY_TAR_TARGET=$(TAR_DIR)/$(GSTLALUGLY).tar.gz GSTLAL_TAR_TARGET=$(TAR_DIR)/$(GSTLAL).tar.gz LIGOSCALD_TAR_TARGET=$(TAR_DIR)/$(LIGOSCALD).tar.gz KAFKA_PYTHON_TAR_TARGET=$(TAR_DIR)/confluent-kafka-python-$(KAFKA_PYTHON).tar.gz LIBRDKAFKA_TAR_TARGET=$(TAR_DIR)/librdkafka-$(LIBRDKAFKA).tar.gz LALAPPS_TAR_TARGET=$(TAR_DIR)/$(LALAPPS).tar.xz LALINFER_TAR_TARGET=$(TAR_DIR)/$(LALINFERENCE).tar.xz LALPULSAR_TAR_TARGET=$(TAR_DIR)/$(LALPULSAR).tar.xz LALINSPIRAL_TAR_TARGET=$(TAR_DIR)/$(LALINSPIRAL).tar.xz LALBURST_TAR_TARGET=$(TAR_DIR)/$(LALBURST).tar.xz LALSIM_TAR_TARGET=$(TAR_DIR)/$(LALSIMULATION).tar.xz LALMETAIO_TAR_TARGET=$(TAR_DIR)/$(LALMETAIO).tar.xz LALFRAME_TAR_TARGET=$(TAR_DIR)/$(LALFRAME).tar.xz LAL_TAR_TARGET=$(TAR_DIR)/$(LAL).tar.xz GDS_TAR_TARGET=$(TAR_DIR)/$(GDS).tar.gz LDASTOOLSFRAMECPP_TAR_TARGET=$(TAR_DIR)/$(LDASTOOLSFRAMECPP).tar.gz LDASTOOLSAL_TAR_TARGET=$(TAR_DIR)/$(LDASTOOLSAL).tar.gz SWIG_TAR_TARGET=$(TAR_DIR)/$(SWIG).tar.gz METAIO_TAR_TARGET=$(TAR_DIR)/$(METAIO).tar.gz LIBFRAME_TAR_TARGET=$(TAR_DIR)/$(LIBFRAME).tar.gz GSTPYTHON_TAR_TARGET=$(TAR_DIR)/$(GSTPYTHON).tar.xz GSTGOOD_TAR_TARGET=$(TAR_DIR)/$(GSTPLUGINSGOOD).tar.xz GSTBASE_TAR_TARGET=$(TAR_DIR)/$(GSTPLUGINSBASE).tar.xz GSTREAMER_TAR_TARGET=$(TAR_DIR)/$(GSTREAMER).tar.xz GSL_TAR_TARGET=$(TAR_DIR)/$(GSL).tar.gz ORC_TAR_TARGET=$(TAR_DIR)/$(ORC).tar.xz FFTW_TAR_TARGET=$(TAR_DIR)/$(FFTW).tar.gz # git repos GSTLAL_GIT_TARGET=$(GSTLAL_REPO)/TODO.md LIGOSCALD_GIT_TARGET=$(LIGOSCALD_REPO)/README.md LIGOSEGMENTS_GIT_TARGET=$(LIGOSEGMENTS_REPO)/README.rst PYTHONLIGOLW_GIT_TARGET=$(PYTHONLIGOLW_REPO)/MANIFEST.in GLUE_GIT_TARGET=$(GLUE_REPO)/README LALSUITE_GIT_TARGET=$(LALSUITE_REPO)/lal/README # Specify how many processors to run on #CORES:=$(shell echo `nproc --all`"-2" | bc -l) CORES:=8 # Escape code esc=`echo -en "\033"` # Set colors RED="${esc}[0;31m" GREEN="${esc}[0;32m" YELLOW="${esc}[0;33m" BLUE="${esc}[0;34m" WHITE="${esc}[m" # icc compiler locations ICC_CIT:=/ldcg/intel/2018u3/bin/compilervars.sh ICC_LHO:=/ldcg/intel/2018u3/bin/compilervars.sh ICC_LLO:=/ldcg/intel/2018u3/bin/compilervars.sh ICC_UWM:=/opt/intel/2018u3/bin/compilervars.sh ICC_PSU:=/ligo/apps/intel/2017u4/bin/compilervars.sh all : $(GSTINSPIRAL_TARGET) $(LOGS_DIR)/gstlal.txt ##################### # Environment setup # ##################### env.sh : @echo 'unset GST_PLUGIN_PATH PYTHONPATH' > $@ @echo 'unset LD_LIBRARY_PATH LIBRARY_PATH LD_PRELOAD' >> $@ @echo 'LAL_PATH=${PWD}/opt' >> $@ @echo 'export CFLAGS="-O3 -march=native -lfftw3 -lfftw3f -lfftw3_threads -lfftw3f_threads -lmkl_core -lmkl_intel_lp64 -lmkl_sequential -lm -lpthread -Wno-write-strings -lirc -limf -Wl,-rpath,${PWD}/opt/lib"' >> $@ @echo 'export GCCFLAGS="-fPIC -O3 -march=native"' >> $@ @if [[ ${CLUSTER} == *"ligo.caltech.edu" ]] ; then \ echo "source ${ICC_CIT} intel64" >> $@ ; \ echo 'LDFLAGS_INTEL="-L$${MKLROOT}/lib/intel64"' >> $@ ; \ elif [[ ${CLUSTER} == *"ligo-wa.caltech.edu" ]] ; then \ echo "source ${ICC_LHO} intel64" >> $@ ; \ echo 'LDFLAGS_INTEL="-L$${MKLROOT}/lib/intel64"' >> $@ ; \ elif [[ ${CLUSTER} == *"ligo-la.caltech.edu" ]] ; then \ echo "source ${ICC_LLO} intel64" >> $@ ; \ echo 'LDFLAGS_INTEL="-L$${MKLROOT}/lib/intel64"' >> $@ ; \ elif [[ ${CLUSTER} == *"nemo.uwm.edu" ]] ; then \ echo "source ${ICC_UWM} intel64" >> $@ ; \ echo 'LDFLAGS_INTEL="-L$${MKLROOT}/lib/intel64"' >> $@ ; \ elif [[ ${CLUSTER} == *"psu.edu" ]] ; then \ echo "source ${ICC_PSU} intel64" >> $@ ; \ echo 'export LIBRARY_PATH=$${LD_LIBRARY_PATH}' >> $@ ; \ echo 'LDFLAGS_INTEL="-L$${MKLROOT}/lib/intel64"' >> $@ ; \ fi @echo 'export LD_LIBRARY_PATH=$${LAL_PATH}/lib:$${LD_LIBRARY_PATH}' >> $@ @echo 'export CC="icc"' >> $@ @echo 'export CXX="icpc"' >> $@ @echo '# Force explicit linking of optimized FFTW libraries:' >> $@ @echo 'LDFLAGS="$${LDFLAGS_INTEL} -L${PWD}/opt/lib "' >> $@ @echo '# These are environment variables that do get exported' >> $@ @echo 'PATH=$${LAL_PATH}/bin:$${PATH}' >> $@ @echo 'PKG_CONFIG_PATH=$${LAL_PATH}/lib/pkgconfig:$${LAL_PATH}/lib64/pkgconfig:$${PKG_CONFIG_PATH}' >> $@ @echo 'PYTHONPATH=$${LAL_PATH}/lib/python2.7/site-packages:$${LAL_PATH}/lib64/python2.7/site-packages' >> $@ @echo 'GST_PLUGIN_PATH=$${LAL_PATH}/lib/gstreamer-1.0:$${LAL_PATH}/lib64/gstreamer-1.0' >> $@ @echo 'GI_TYPELIB_PATH=$${LAL_PATH}/lib/girepository-1.0:$${LAL_PATH}/lib64/girepository-1.0:$${GI_TYPELIB_PATH}' >> $@ @echo 'GST_REGISTRY_1_0=$${LAL_PATH}/registry.bin' >> $@ @echo 'LAL_DATA_PATH=/home/cbc/ROM_data' >> $@ @echo 'KAFKA_JVM_PERFORMANCE_OPTS="-server -XX:MetaspaceSize=96m -XX:+UseG1GC -XX:MaxGCPauseMillis=20 -XX:InitiatingHeapOccupancyPercent=35 -XX:G1HeapRegionSize=16M -XX:MinMetaspaceFreeRatio=50 -XX:MaxMetaspaceFreeRatio=80"' >> $@ @echo 'KAFKA_HEAP_OPTS="-Xms8G -Xmx8G"' >> $@ @echo 'GSTLAL_FIR_WHITEN=0' >> $@ @echo 'GSTLAL_WEBVIS_DIR=$${LAL_PATH}/share/gstlal' >> $@ @echo 'export LAL_PATH LDFLAGS_INTEL LDFLAGS PATH PKG_CONFIG_PATH PYTHONPATH GST_PLUGIN_PATH GI_TYPELIB_PATH GST_REGISTRY_1_0 LAL_DATA_PATH KAFKA_JVM_PERFORMANCE_OPTS KAFKA_HEAP_OPTS GSTLAL_FIR_WHITEN GSTLAL_WEBVIS_DIR' >> $@ ########### # Install # ########### # gstlal (all) gstlal : $(LOGS_DIR)/gstlal.txt src/kafka_2.11-2.0.0 all : src/kafka_2.11-2.0.0 src: mkdir -p $@ opt/bin: mkdir -p $@/bin opt/config: mkdir -p $@/config opt/libs: mkdir -p $@/libs tarball: mkdir -p $@ # KAFKA tarball/kafka_2.11-2.0.0.tgz: tarball wget -nc -P tarball https://archive.apache.org/dist/kafka/2.0.0/kafka_2.11-2.0.0.tgz src/kafka_2.11-2.0.0: tarball/kafka_2.11-2.0.0.tgz src opt/bin opt/config opt/libs cd src && tar -xzf ../tarball/kafka_2.11-2.0.0.tgz && cd .. && cp -r src/kafka_2.11-2.0.0/bin/* opt/bin/. && cp src/kafka_2.11-2.0.0/libs/* opt/libs/. && cp src/kafka_2.11-2.0.0/config/* opt/config/. ##################### # Check time stamps # ##################### check : @if [ -f $(LOGS_DIR)/all.txt ] ; then rm $(LOGS_DIR)/all.txt ; fi ; @cat $(LOGS_DIR)/* | uniq > $(LOGS_DIR)/all.txt @if [ -f $(LOGS_DIR)/gstlal.txt ] ; then ls $(LOGS_DIR)/gstlal.txt >> $(LOGS_DIR)/all.txt ; fi ; @ls -ltrh $$(cat $(LOGS_DIR)/all.txt) $(LOGS_DIR)/gstlal.txt : $(LOGS_DIR)/ligo-scald.txt $(GSTLAL_TARGET) $(GSTLALUGLY_TARGET) $(GSTLALBURST_TARGET) $(GSTLALCALIB_TARGET) $(GSTINSPIRAL_TARGET) @echo $^ | sed -e "s@ @\n@g" > $@ # gstlal-inspiral $(GSTINSPIRAL_TARGET) : $(GSTLALCALIB_TARGET) @echo $(GREEN)gstlal-inspiral$(WHITE) 1>&2 if [ "${GSTLAL_GIT}" = "1" ]; then \ cd $(GSTLAL_REPO)/gstlal-inspiral && echo | ./00init.sh ; \ cd $(GSTLAL_REPO)/gstlal-inspiral && ./configure --prefix=$(INSTALL_DIR) --without-doxygen ; \ cd $(GSTLAL_REPO)/gstlal-inspiral && make -j$(CORES) && make install -j$(CORES) ; \ else \ tar -xzkf $(TAR_DIR)/$(GSTLALINSPIRAL).tar.gz -C $(SRC_DIR) ; \ cd $(SRC_DIR)/$(GSTLALINSPIRAL) && ./configure --prefix=$(INSTALL_DIR) --without-doxygen --disable-massmodel ; \ cd $(SRC_DIR)/$(GSTLALINSPIRAL) && make -j$(CORES) && make install -j$(CORES) ; \ fi ; # gstlal-calibration $(GSTLALCALIB_TARGET) : $(GSTLALBURST_TARGET) @echo $(GREEN)gstlal-calibration$(WHITE) 1>&2 if [ "${GSTLAL_GIT}" = "1" ]; then \ cd $(GSTLAL_REPO)/gstlal-calibration && echo | ./00init.sh ; \ cd $(GSTLAL_REPO)/gstlal-calibration && ./configure --prefix=$(INSTALL_DIR) --without-doxygen ; \ cd $(GSTLAL_REPO)/gstlal-calibration && make -j$(CORES) && make install -j$(CORES) ; \ else \ tar -xzkf $(TAR_DIR)/$(GSTLALCALIBRATION).tar.gz -C $(SRC_DIR) ; \ cd $(SRC_DIR)/$(GSTLALCALIBRATION) && ./configure --prefix=$(INSTALL_DIR) --without-doxygen ; \ cd $(SRC_DIR)/$(GSTLALCALIBRATION) && make -j$(CORES) && make install -j$(CORES) ; \ fi ; # gstlal-burst $(GSTLALBURST_TARGET) : $(GSTLALUGLY_TARGET) @echo $(GREEN)gstlal-burst$(WHITE) 1>&2 if [ "${GSTLAL_GIT}" = "1" ]; then \ cd $(GSTLAL_REPO)/gstlal-burst && echo | ./00init.sh ; \ cd $(GSTLAL_REPO)/gstlal-burst && ./configure --prefix=$(INSTALL_DIR) --without-doxygen ; \ cd $(GSTLAL_REPO)/gstlal-burst && make -j$(CORES) && make install -j$(CORES) ; \ else \ tar -xzkf $(TAR_DIR)/$(GSTLALBURST).tar.gz -C $(SRC_DIR) ; \ cd $(SRC_DIR)/$(GSTLALBURST) && ./configure --prefix=$(INSTALL_DIR) --without-doxygen ; \ cd $(SRC_DIR)/$(GSTLALBURST) && make -j$(CORES) && make install -j$(CORES) ; \ fi ; # gstlal-ugly $(GSTLALUGLY_TARGET) : $(GSTLAL_TARGET) @echo $(GREEN)gstlal-ugly$(WHITE) 1>&2 if [ "${GSTLAL_GIT}" = "1" ]; then \ cd $(GSTLAL_REPO)/gstlal-ugly && echo | ./00init.sh ; \ cd $(GSTLAL_REPO)/gstlal-ugly && ./configure --prefix=$(INSTALL_DIR) --without-doxygen --with-webdir=$(GSTLAL_WEBVIS_DIR) ; \ cd $(GSTLAL_REPO)/gstlal-ugly && make -j$(CORES) && make install -j$(CORES) ; \ else \ tar -xzkf $(TAR_DIR)/$(GSTLALUGLY).tar.gz -C $(SRC_DIR) ; \ cd $(SRC_DIR)/$(GSTLALUGLY) && ./configure --prefix=$(INSTALL_DIR) --without-doxygen --with-webdir=$(GSTLAL_WEBVIS_DIR) ; \ cd $(SRC_DIR)/$(GSTLALUGLY) && make -j$(CORES) && make install -j$(CORES) ; \ fi ; # gstlal $(GSTLAL_TARGET) : $(LIGOSCALD_TARGET) @echo $(GREEN)gstlal$(WHITE) 1>&2 if [ "${GSTLAL_GIT}" = "1" ]; then \ cd $(GSTLAL_REPO)/gstlal && echo | ./00init.sh ; \ cd $(GSTLAL_REPO)/gstlal && ./configure --prefix=$(INSTALL_DIR) --without-doxygen ; \ cd $(GSTLAL_REPO)/gstlal && make -j$(CORES) && make install -j$(CORES) ; \ else \ tar -xzkf $(TAR_DIR)/$(GSTLAL).tar.gz -C $(SRC_DIR) ; \ cd $(SRC_DIR)/$(GSTLAL) && ./configure --prefix=$(INSTALL_DIR) --without-doxygen ; \ cd $(SRC_DIR)/$(GSTLAL) && make -j$(CORES) && make install -j$(CORES) ; \ fi ; # ligo-scald ligo-scald : $(LOGS_DIR)/ligo-scald.txt $(LOGS_DIR)/ligo-scald.txt : $(LOGS_DIR)/kafka-python.txt $(LIGOSCALD_TARGET) @echo $^ | sed -e "s@ @\n@g" > $@ #$(LIGOSCALD_TARGET) : $(LIGOSEGMENTS_TARGET) $(LIGOSCALD_TARGET) : $(KAFKA_PYTHON_TARGET) @echo $(GREEN)ligo-scald$(WHITE) 1>&2 if [ "${LIGOSCALD_GIT}" = "1" ]; then \ cd $(LIGOSCALD_REPO) && python setup.py install --prefix=$(INSTALL_DIR) ; \ else \ tar -xzf $(TAR_DIR)/$(LIGOSCALD).tar.gz -C $(SRC_DIR) ; \ cd $(SRC_DIR)/$(LIGOSCALD) && python setup.py install --prefix=$(INSTALL_DIR) ; \ fi ; # confluent-kafka-python kafka-python : $(LOGS_DIR)/kafka-python.txt $(LOGS_DIR)/kafka-python.txt : $(LOGS_DIR)/librdkafka.txt $(KAFKA_PYTHON_TARGET) @echo $^ | sed -e "s@ @\n@g" > $@ $(KAFKA_PYTHON_TARGET) : $(LIBRDKAFKA_TARGET) @echo $(GREEN)kafka-python$(WHITE) 1>&2 tar -xzf $(TAR_DIR)/confluent-kafka-python-$(KAFKA_PYTHON).tar.gz -C $(SRC_DIR) ; \ cd $(SRC_DIR)/confluent-kafka-python-$(KAFKA_PYTHON) && CFLAGS="$(GCCFLAGS)" C_INCLUDE_PATH=$(INSTALL_DIR)/include LIBRARY_PATH=$(INSTALL_DIR)/lib python setup.py install --prefix=$(INSTALL_DIR) ; \ # librdkafka librdkafka : $(LOGS_DIR)/librdkafka.txt $(LOGS_DIR)/librdkafka.txt : $(LOGS_DIR)/lalsuite.txt $(LIBRDKAFKA_TARGET) @echo $^ | sed -e "s@ @\n@g" > $@ $(LIBRDKAFKA_TARGET) : $(LALAPPS_TARGET) @echo $(GREEN)librdkafka$(WHITE) 1>&2 tar -xzf $(TAR_DIR)/librdkafka-$(LIBRDKAFKA).tar.gz -C $(SRC_DIR) ; \ cd $(SRC_DIR)/librdkafka-$(LIBRDKAFKA) && ./configure --prefix=$(INSTALL_DIR) ; \ cd $(SRC_DIR)/librdkafka-$(LIBRDKAFKA) && make -j$(CORES) && make install -j$(CORES) ; \ # lalsuite lalsuite : $(LOGS_DIR)/lalsuite.txt $(LOGS_DIR)/lalsuite.txt : $(LOGS_DIR)/gds.txt $(LAL_TARGET) $(LALFRAME_TARGET) $(LALMETAIO_TARGET) $(LALSIM_TARGET) $(LALBURST_TARGET) $(LALINSPIRAL_TARGET) $(LALPULSAR_TARGET) $(LALINFER_TARGET) $(LALAPPS_TARGET) @echo $^ | sed -e "s@ @\n@g" > $@ # lalapps # FIXME --enable-gcc-flags set to no on lalapps configure as work around to avoid warnings stopping install process # FIXME : Commenting out the explicit linking to gslcblas # Not sure what causes the warnings $(LALAPPS_TARGET) : $(LALINFER_TARGET) @echo $(GREEN)lalapps$(WHITE) 1>&2 if [ "${LALSUITE_GIT}" = "1" ]; then \ cd $(LALSUITE_REPO)/lalapps && sed -i -e 's@AC_CHECK_LIB(\[gslcblas\]@#AC_CHECK_LIB(\[gslcblas\]@g' configure.ac ; \ cd $(LALSUITE_REPO)/lalapps && ./00boot ; \ cd $(LALSUITE_REPO)/lalapps && ./configure --enable-gcc-flags=no --enable-swig-python --disable-lalxml --prefix=$(INSTALL_DIR) --without-doxygen ; \ cd $(LALSUITE_REPO)/lalapps && make -j$(CORES) && make install -j$(CORES) ; \ else \ tar -xf $(TAR_DIR)/$(LALAPPS).tar.xz -C $(SRC_DIR) ; \ cd $(SRC_DIR)/$(LALAPPS) && sed -i -e 's@AC_CHECK_LIB(\[gslcblas\]@#AC_CHECK_LIB(\[gslcblas\]@g' configure.ac && autoreconf ; \ cd $(SRC_DIR)/$(LALAPPS) && ./configure --enable-gcc-flags=no --enable-swig-python --disable-lalxml --prefix=$(INSTALL_DIR) --without-doxygen ; \ cd $(SRC_DIR)/$(LALAPPS) && make -j$(CORES) && make install -j$(CORES) ; \ fi ; # lalinference $(LALINFER_TARGET) : $(LALPULSAR_TARGET) @echo $(GREEN)lalinference$(WHITE) 1>&2 if [ "${LALSUITE_GIT}" = "1" ]; then \ cd $(LALSUITE_REPO)/lalapps && sed -i -e 's@AC_CHECK_LIB(\[gslcblas\]@#AC_CHECK_LIB(\[gslcblas\]@g' configure.ac ; \ cd $(LALSUITE_REPO)/lalinference && ./00boot ; \ cd $(LALSUITE_REPO)/lalinference && ./configure --enable-swig-python --disable-lalxml --without-doxygen --prefix=$(INSTALL_DIR) CC="gcc" CXX="g++" CFLAGS="$(GCCFLAGS)" ; \ cd $(LALSUITE_REPO)/lalinference && make -j$(CORES) && make install -j$(CORES) ; \ else \ tar -xf $(TAR_DIR)/$(LALINFERENCE).tar.xz -C $(SRC_DIR) ; \ cd $(SRC_DIR)/$(LALINFERENCE) && sed -i -e 's@AC_CHECK_LIB(\[gslcblas\]@#AC_CHECK_LIB(\[gslcblas\]@g' configure.ac && autoreconf ; \ cd $(SRC_DIR)/$(LALINFERENCE) && ./configure --enable-swig-python --disable-lalxml --without-doxygen --prefix=$(INSTALL_DIR) CC="gcc" CXX="g++" CFLAGS="$(GCCFLAGS)" ; \ cd $(SRC_DIR)/$(LALINFERENCE) && make -j$(CORES) && make install -j$(CORES) ; \ fi ; # lalpulsar $(LALPULSAR_TARGET) : $(LALINSPIRAL_TARGET) @echo $(GREEN)lalpulsar$(WHITE) 1>&2 if [ "${LALSUITE_GIT}" = "1" ]; then \ cd $(LALSUITE_REPO)/lalapps && sed -i -e 's@AC_CHECK_LIB(\[gslcblas\]@#AC_CHECK_LIB(\[gslcblas\]@g' configure.ac ; \ cd $(LALSUITE_REPO)/lalpulsar && ./00boot ; \ cd $(LALSUITE_REPO)/lalpulsar && ./configure --enable-swig-python --disable-lalxml --without-doxygen --prefix=$(INSTALL_DIR) CC="gcc" CXX="g++" CFLAGS="$(GCCFLAGS)" ; \ cd $(LALSUITE_REPO)/lalpulsar && make -j$(CORES) && make install -j$(CORES) ; \ else \ tar -xf $(TAR_DIR)/$(LALPULSAR).tar.xz -C $(SRC_DIR) ; \ cd $(SRC_DIR)/$(LALPULSAR) && sed -i -e 's@AC_CHECK_LIB(\[gslcblas\]@#AC_CHECK_LIB(\[gslcblas\]@g' configure.ac && autoreconf ; \ cd $(SRC_DIR)/$(LALPULSAR) && ./configure --enable-swig-python --disable-lalxml --without-doxygen --prefix=$(INSTALL_DIR) CC="gcc" CXX="g++" CFLAGS="$(GCCFLAGS)" ; \ cd $(SRC_DIR)/$(LALPULSAR) && make -j$(CORES) && make install -j$(CORES) ; \ fi ; # lalinspiral $(LALINSPIRAL_TARGET) : $(LALBURST_TARGET) @echo $(GREEN)lalinspiral$(WHITE) 1>&2 if [ "${LALSUITE_GIT}" = "1" ]; then \ cd $(LALSUITE_REPO)/lalinspiral && sed -i -e 's@AC_CHECK_LIB(\[gslcblas\]@#AC_CHECK_LIB(\[gslcblas\]@g' configure.ac ; \ cd $(LALSUITE_REPO)/lalinspiral && ./00boot ; \ cd $(LALSUITE_REPO)/lalinspiral && ./configure --enable-swig-python --without-doxygen --prefix=$(INSTALL_DIR) ; \ cd $(LALSUITE_REPO)/lalinspiral && make -j$(CORES) && make install -j$(CORES) ; \ else \ tar -xf $(TAR_DIR)/$(LALINSPIRAL).tar.xz -C $(SRC_DIR) ; \ cd $(SRC_DIR)/$(LALINSPIRAL) && sed -i -e 's@AC_CHECK_LIB(\[gslcblas\]@#AC_CHECK_LIB(\[gslcblas\]@g' configure.ac && autoreconf ; \ cd $(SRC_DIR)/$(LALINSPIRAL) && ./configure --enable-swig-python --without-doxygen --prefix=$(INSTALL_DIR) ; \ cd $(SRC_DIR)/$(LALINSPIRAL) && make -j$(CORES) && make install -j$(CORES) ; \ fi ; # lalburst $(LALBURST_TARGET) : $(LALSIM_TARGET) @echo $(GREEN)lalburst$(WHITE) 1>&2 if [ "${LALSUITE_GIT}" = "1" ]; then \ cd $(LALSUITE_REPO)/lalburst && sed -i -e 's@AC_CHECK_LIB(\[gslcblas\]@#AC_CHECK_LIB(\[gslcblas\]@g' configure.ac ; \ cd $(LALSUITE_REPO)/lalburst && ./00boot ; \ cd $(LALSUITE_REPO)/lalburst && ./configure --enable-swig-python --without-doxygen --prefix=$(INSTALL_DIR) ; \ cd $(LALSUITE_REPO)/lalburst && make -j$(CORES) && make install -j$(CORES) ; \ else \ tar -xf $(TAR_DIR)/$(LALBURST).tar.xz -C $(SRC_DIR) ; \ cd $(SRC_DIR)/$(LALBURST) && sed -i -e 's@AC_CHECK_LIB(\[gslcblas\]@#AC_CHECK_LIB(\[gslcblas\]@g' configure.ac && autoreconf ; \ cd $(SRC_DIR)/$(LALBURST) && ./configure --enable-swig-python --without-doxygen --prefix=$(INSTALL_DIR) ; \ cd $(SRC_DIR)/$(LALBURST) && make -j$(CORES) && make install -j$(CORES) ; \ fi ; # lalsimulation $(LALSIM_TARGET) : $(LALMETAIO_TARGET) @echo $(GREEN)lalsimulation$(WHITE) 1>&2 if [ "${LALSUITE_GIT}" = "1" ]; then \ cd $(LALSUITE_REPO)/lalsimulation && sed -i -e 's@AC_CHECK_LIB(\[gslcblas\]@#AC_CHECK_LIB(\[gslcblas\]@g' configure.ac ; \ cd $(LALSUITE_REPO)/lalsimulation && ./00boot ; \ cd $(LALSUITE_REPO)/lalsimulation && ./configure --disable-openmp --enable-swig-python --without-doxygen --prefix=$(INSTALL_DIR) CFLAGS="$(CFLAGS) -lmkl_def" ; \ cd $(LALSUITE_REPO)/lalsimulation && make -j$(CORES) && make install -j$(CORES) ; \ else \ tar -xf $(TAR_DIR)/$(LALSIMULATION).tar.xz -C $(SRC_DIR) ; \ cd $(SRC_DIR)/$(LALSIMULATION) && sed -i -e 's@AC_CHECK_LIB(\[gslcblas\]@#AC_CHECK_LIB(\[gslcblas\]@g' configure.ac && autoreconf ; \ cd $(SRC_DIR)/$(LALSIMULATION) && ./configure --disable-openmp --enable-swig-python --without-doxygen --prefix=$(INSTALL_DIR) CFLAGS="$(CFLAGS) -lmkl_def" ; \ cd $(SRC_DIR)/$(LALSIMULATION) && make -j$(CORES) && make install -j$(CORES) ; \ fi ; # lalmetaio $(LALMETAIO_TARGET) : $(LALFRAME_TARGET) @echo $(GREEN)lalmetaio$(WHITE) 1>&2 if [ "${LALSUITE_GIT}" = "1" ]; then \ cd $(LALSUITE_REPO)/lalmetaio && sed -i -e 's@AC_CHECK_LIB(\[gslcblas\]@#AC_CHECK_LIB(\[gslcblas\]@g' configure.ac ; \ cd $(LALSUITE_REPO)/lalmetaio && ./00boot ; \ cd $(LALSUITE_REPO)/lalmetaio && ./configure --enable-swig-python --without-doxygen --prefix=$(INSTALL_DIR) ; \ cd $(LALSUITE_REPO)/lalmetaio && make -j$(CORES) && make install -j$(CORES) ; \ else \ tar -xf $(TAR_DIR)/$(LALMETAIO).tar.xz -C $(SRC_DIR) ; \ cd $(SRC_DIR)/$(LALMETAIO) && sed -i -e 's@AC_CHECK_LIB(\[gslcblas\]@#AC_CHECK_LIB(\[gslcblas\]@g' configure.ac && autoreconf ; \ cd $(SRC_DIR)/$(LALMETAIO) && ./configure --enable-swig-python --without-doxygen --prefix=$(INSTALL_DIR) ; \ cd $(SRC_DIR)/$(LALMETAIO) && make -j$(CORES) && make install -j$(CORES) ; \ fi ; # lalframe $(LALFRAME_TARGET) : $(LAL_TARGET) @echo $(GREEN)lalframe$(WHITE) 1>&2 if [ "${LALSUITE_GIT}" = "1" ]; then \ cd $(LALSUITE_REPO)/lalframe && sed -i -e 's@AC_CHECK_LIB(\[gslcblas\]@#AC_CHECK_LIB(\[gslcblas\]@g' configure.ac ; \ cd $(LALSUITE_REPO)/lalframe && ./00boot ; \ cd $(LALSUITE_REPO)/lalframe && ./configure --enable-swig-python --without-doxygen --prefix=$(INSTALL_DIR) ; \ cd $(LALSUITE_REPO)/lalframe && make -j$(CORES) && make install -j$(CORES) ; \ else \ tar -xf $(TAR_DIR)/$(LALFRAME).tar.xz -C $(SRC_DIR) ; \ cd $(SRC_DIR)/$(LALFRAME) && sed -i -e 's@AC_CHECK_LIB(\[gslcblas\]@#AC_CHECK_LIB(\[gslcblas\]@g' configure.ac && autoreconf ; \ cd $(SRC_DIR)/$(LALFRAME) && ./configure --enable-swig-python --without-doxygen --prefix=$(INSTALL_DIR) ; \ cd $(SRC_DIR)/$(LALFRAME) && make -j$(CORES) && make install -j$(CORES) ; \ fi ; # lal $(LAL_TARGET) : $(LIBFRAME_TARGET) $(METAIO_TARGET) $(SWIG_TARGET) $(LDASTOOLSAL_TARGET) $(LDASTOOLSFRAMECPP_TARGET) $(GDS_TARGET) @echo $(GREEN)lal$(WHITE) 1>&2 if [ "${LALSUITE_GIT}" = "1" ]; then \ cd $(LALSUITE_REPO)/lal && sed -i -e 's@AC_CHECK_LIB(\[gslcblas\]@#AC_CHECK_LIB(\[gslcblas\]@g' configure.ac ; \ cd $(LALSUITE_REPO)/lal && ./00boot ; \ cd $(LALSUITE_REPO)/lal && ./configure --enable-swig-python --without-doxygen --prefix=$(INSTALL_DIR) ; \ cd $(LALSUITE_REPO)/lal && make -j$(CORES) && make install -j$(CORES) ; \ else \ tar -xf $(TAR_DIR)/$(LAL).tar.xz -C $(SRC_DIR) ; \ cd $(SRC_DIR)/$(LAL) && sed -i -e 's@AC_CHECK_LIB(\[gslcblas\]@#AC_CHECK_LIB(\[gslcblas\]@g' configure.ac && autoreconf ; \ cd $(SRC_DIR)/$(LAL) && ./configure --enable-swig-python --without-doxygen --prefix=$(INSTALL_DIR) ; \ cd $(SRC_DIR)/$(LAL) && make -j$(CORES) && make install -j$(CORES) ; \ fi ; # gds gds : $(LOGS_DIR)/gds.txt $(LOGS_DIR)/gds.txt : $(LOGS_DIR)/ldas-tools-framecpp.txt $(GDS_TARGET) @echo $^ | sed -e "s@ @\n@g" > $@ $(GDS_TARGET) : $(LDASTOOLSFRAMECPP_TARGET) @echo $(GREEN)gds$(WHITE) 1>&2 tar -xzf $(TAR_DIR)/$(GDS).tar.gz -C $(SRC_DIR) cd $(SRC_DIR)/$(GDS) && ./configure --enable-online --prefix=$(INSTALL_DIR) CC="gcc" CXX="g++" CFLAGS="$(GCCFLAGS) -lfftw3_threads -lfftw3f_threads" cd $(SRC_DIR)/$(GDS) && make -j$(CORES) && make install -j$(CORES) # ldas-tools-framecpp ldas-tools-framecpp : $(LOGS_DIR)/ldas-tools-framecpp.txt $(LOGS_DIR)/ldas-tools-framecpp.txt : $(LOGS_DIR)/ldas-tools-al.txt $(LDASTOOLSFRAMECPP_TARGET) @echo $^ | sed -e "s@ @\n@g" > $@ $(LDASTOOLSFRAMECPP_TARGET) : $(LDASTOOLSAL_TARGET) @echo $(GREEN)ldas-tools-frmecpp$(WHITE) 1>&2 tar -xf $(TAR_DIR)/$(LDASTOOLSFRAMECPP).tar.gz -C $(SRC_DIR) cd $(SRC_DIR)/$(LDASTOOLSFRAMECPP) && ./configure --prefix=$(INSTALL_DIR) --without-doxygen CC="gcc" CXX="g++" CFLAGS="$(GCCFLAGS)" cd $(SRC_DIR)/$(LDASTOOLSFRAMECPP) && make DESTDIR=/ -j$(CORES) && make install DESTDIR=/ -j$(CORES) # ldas-tools-al ldas-tools-al : $(LOGS_DIR)/ldas-tools-al.txt $(LOGS_DIR)/ldas-tools-al.txt : $(LOGS_DIR)/swig.txt $(LDASTOOLSAL_TARGET) @echo $^ | sed -e "s@ @\n@g" > $@ $(LDASTOOLSAL_TARGET) : $(SWIG_TARGET) @echo $(GREEN)ldas-tools-al$(WHITE) 1>&2 tar -xf $(TAR_DIR)/$(LDASTOOLSAL).tar.gz -C $(SRC_DIR) cd $(SRC_DIR)/$(LDASTOOLSAL) && ./configure --prefix=$(INSTALL_DIR) --without-doxygen CC="gcc" CXX="g++" CFLAGS="$(GCCFLAGS)" cd $(SRC_DIR)/$(LDASTOOLSAL) && make -j$(CORES) && make install -j$(CORES) # swig swig : $(LOGS_DIR)/swig.txt $(LOGS_DIR)/swig.txt : $(LOGS_DIR)/metaio.txt $(SWIG_TARGET) @echo $^ | sed -e "s@ @\n@g" > $@ $(SWIG_TARGET) : $(METAIO_TARGET) @echo $(GREEN)swig$(WHITE) 1>&2 tar -xf $(TAR_DIR)/$(SWIG).tar.gz -C $(SRC_DIR) cd $(SRC_DIR)/$(SWIG) && ./configure --prefix=$(INSTALL_DIR) cd $(SRC_DIR)/$(SWIG) && make -j$(CORES) && make install -j$(CORES) # metaio metaio : $(LOGS_DIR)/metaio.txt $(LOGS_DIR)/metaio.txt : $(LOGS_DIR)/libframe.txt $(METAIO_TARGET) @echo $^ | sed -e "s@ @\n@g" > $@ $(METAIO_TARGET) : $(LIBFRAME_TARGET) @echo $(GREEN)metaio$(WHITE) 1>&2 tar -xf $(TAR_DIR)/$(METAIO).tar.gz -C $(SRC_DIR) cd $(SRC_DIR)/$(METAIO) && ./configure --prefix=$(INSTALL_DIR) --with-matlab=no cd $(SRC_DIR)/$(METAIO) && make -j$(CORES) && make install -j$(CORES) # Needed with-matlab option for intel_haswell test # libframe libframe : $(LOGS_DIR)/libframe.txt $(LOGS_DIR)/libframe.txt : $(LOGS_DIR)/gstreamer.txt $(LIBFRAME_TARGET) @echo $^ | sed -e "s@ @\n@g" > $@ $(LIBFRAME_TARGET) : $(GSTPYTHON_TARGET) @echo $(GREEN)libframe$(WHITE) 1>&2 tar -xf $(TAR_DIR)/$(LIBFRAME).tar.gz -C $(SRC_DIR) cd $(SRC_DIR)/$(LIBFRAME) && ./configure --prefix=$(INSTALL_DIR) cd $(SRC_DIR)/$(LIBFRAME) && make -j$(CORES) && make install -j$(CORES) # gstreamer (all) gstreamer : $(LOGS_DIR)/gstreamer.txt $(LOGS_DIR)/gstreamer.txt : $(LOGS_DIR)/gsl.txt $(GSTREAMER_TARGET) $(GSTBASE_TARGET) $(GSTGOOD_TARGET) $(GSTPYTHON_TARGET) @echo $^ | sed -e "s@ @\n@g" > $@ # gstreamer plugin python $(GSTPYTHON_TARGET) : $(GSTGOOD_TARGET) @echo $(GREEN)gst-python$(WHITE) 1>&2 mkdir -p $(INSTALL_DIR)/lib/python2.7/site-packages/gi/overrides tar -xf $(TAR_DIR)/$(GSTPYTHON).tar.xz -C $(SRC_DIR) cd $(SRC_DIR)/$(GSTPYTHON) && ./configure --prefix=$(INSTALL_DIR) --exec-prefix=$(INSTALL_DIR) --with-libpython-dir=$(PYTHON_LIB_DIR) --with-pygi-overrides-dir=$(INSTALL_DIR)/lib/python2.7/site-packages/gi/overrides cd $(SRC_DIR)/$(GSTPYTHON) && make -j$(CORES) && make install -j$(CORES) # gstreamer plugin good $(GSTGOOD_TARGET) : $(GSTBASE_TARGET) @echo $(GREEN)gst-good$(WHITE) 1>&2 tar -xf $(TAR_DIR)/$(GSTPLUGINSGOOD).tar.xz -C $(SRC_DIR) cd $(SRC_DIR)/$(GSTPLUGINSGOOD) && ./configure --disable-gst_v4l2 --prefix=$(INSTALL_DIR) cd $(SRC_DIR)/$(GSTPLUGINSGOOD) && make -j$(CORES) && make install -j$(CORES) # gstreamer plugin base $(GSTBASE_TARGET) : $(GSTREAMER_TARGET) @echo $(GREEN)gst-base$(WHITE) 1>&2 tar -xf $(TAR_DIR)/$(GSTPLUGINSBASE).tar.xz -C $(SRC_DIR) cd $(SRC_DIR)/$(GSTPLUGINSBASE) && ./configure --prefix=$(INSTALL_DIR) cd $(SRC_DIR)/$(GSTPLUGINSBASE) && make -j$(CORES) && make install -j$(CORES) # gstreamer $(GSTREAMER_TARGET) : $(GSL_2_TARGET) @echo $(GREEN)gstreamer$(WHITE) 1>&2 tar -xf $(TAR_DIR)/$(GSTREAMER).tar.xz -C $(SRC_DIR) cd $(SRC_DIR)/$(GSTREAMER) && ./configure --prefix=$(INSTALL_DIR) cd $(SRC_DIR)/$(GSTREAMER) && make -j$(CORES) && make install -j$(CORES) # GSL gsl : $(LOGS_DIR)/gsl.txt $(LOGS_DIR)/gsl.txt : $(LOGS_DIR)/orc.txt $(GSL_1_TARGET) $(GSL_2_TARGET) @echo $^ | sed -e "s@ @\n@g" > $@ ## FIXME Hack to make gsl default to atlas for blas $(GSL_2_TARGET) : $(GSL_1_TARGET) cp $(INSTALL_DIR)/lib/pkgconfig/gsl.pc $@ sed 's/-lgslcblas/ -lmkl_intel_ilp64 -lmkl_core -lmkl_sequential -lpthread -lm/' $@ > $(INSTALL_DIR)/lib/pkgconfig/gsl.pc $(GSL_1_TARGET) : $(ORC_TARGET) @echo $(GREEN)gsl$(WHITE) 1>&2 tar -xf $(TAR_DIR)/$(GSL).tar.gz -C $(SRC_DIR) cd $(SRC_DIR)/$(GSL) && ./configure --prefix=$(INSTALL_DIR) CFLAGS="${CFLAGS}" CC="icc" CXX="icpc" GSL_CBLAS_LIB='-lmkl_intel_ilp64 -lmkl_core -lmkl_sequential' cd $(SRC_DIR)/$(GSL) && make -j$(CORES) && make install -j$(CORES) # ORC orc : $(LOGS_DIR)/orc.txt $(LOGS_DIR)/orc.txt : $(LOGS_DIR)/fftw.txt $(ORC_TARGET) @echo $^ | sed -e "s@ @\n@g" > $@ $(ORC_TARGET) : $(FFTW_TARGET) @echo $(GREEN)orc$(WHITE) 1>&2 tar -xf $(TAR_DIR)/$(ORC).tar.xz -C $(SRC_DIR) cd $(SRC_DIR)/$(ORC) && ./configure --prefix=$(INSTALL_DIR) cd $(SRC_DIR)/$(ORC) && make -j$(CORES) && make install -j$(CORES) # fftw fftw : $(LOGS_DIR)/fftw.txt $(LOGS_DIR)/fftw.txt : $(LOGS_DIR)/patch.txt $(FFTW_TARGET) @echo $^ | sed -e "s@ @\n@g" > $@ # ./configure, make, make install run thrice to install single and double precision, and long double libs $(FFTW_TARGET) : $(LOGS_DIR)/patch.txt @echo $(GREEN)fftw$(WHITE) 1>&2 tar -xzf $(TAR_DIR)/$(FFTW).tar.gz -C $(SRC_DIR) cd $(SRC_DIR)/$(FFTW) && \ ./configure CFLAGS="-O3 -march=native -lmkl_core -lmkl_intel_lp64 -lmkl_sequential -lm -lpthread -Wno-write-strings -lirc -limf -Wl,-rpath,${PWD}/opt/lib" LDFLAGS="${LDFLAGS_INTEL}" --enable-shared --enable-sse --enable-sse2 --enable-avx --enable-float --enable-fma --enable-avx2 --enable-threads --prefix=$(INSTALL_DIR) && \ make -j$(CORES) && make install -j$(CORES) && make clean && \ ./configure CFLAGS="-O3 -march=native -lmkl_core -lmkl_intel_lp64 -lmkl_sequential -lm -lpthread -Wno-write-strings -lirc -limf -Wl,-rpath,${PWD}/opt/lib" LDFLAGS="${LDFLAGS_INTEL}" --enable-shared --enable-sse2 --enable-avx --enable-avx --enable-fma --enable-avx2 --enable-threads --prefix=$(INSTALL_DIR) && \ make -j$(CORES) && make install -j$(CORES) && make clean && \ ./configure CFLAGS="-O3 -march=native -lmkl_core -lmkl_intel_lp64 -lmkl_sequential -lm -lpthread -Wno-write-strings -lirc -limf -Wl,-rpath,${PWD}/opt/lib" LDFLAGS="${LDFLAGS_INTEL}" --enable-shared --enable-fma --enable-threads --enable-long-double --prefix=$(INSTALL_DIR) && \ make -j$(CORES) && make install -j$(CORES) ######################### # Download the software # ######################### # patches patch : $(LOGS_DIR)/patch.txt $(LOGS_DIR)/patch.txt : $(LOGS_DIR)/tar.txt echo $^ | sed -e "s@ @\n@g" > $@ #tarballs $(LOGS_DIR)/tar.txt : $(FFTW_TAR_TARGET) $(ORC_TAR_TARGET) $(GSL_TAR_TARGET) $(GSTREAMER_TAR_TARGET) $(GSTBASE_TAR_TARGET) $(GSTGOOD_TAR_TARGET) $(GSTPYTHON_TAR_TARGET) $(LIBFRAME_TAR_TARGET) $(METAIO_TAR_TARGET) $(SWIG_TAR_TARGET) $(LDASTOOLSAL_TAR_TARGET) $(LDASTOOLSFRAMECPP_TAR_TARGET) $(GDS_TAR_TARGET) $(LIBRDKAFKA_TAR_TARGET) $(KAFKA_PYTHON_TAR_TARGET) echo $^ | sed -e "s@ @\n@g" > $@ $(KAFKA_PYTHON_TAR_TARGET) : $(LIBRDKAFKA_TAR_TARGET) wget --no-check-certificate https://github.com/confluentinc/confluent-kafka-python/archive/v$(KAFKA_PYTHON).tar.gz --directory-prefix=$(TAR_DIR) -O $(TAR_DIR)/confluent-kafka-python-$(KAFKA_PYTHON).tar.gz -nc $(LIBRDKAFKA_TAR_TARGET) : $(GDS_TAR_TARGET) wget --no-check-certificate https://github.com/edenhill/librdkafka/archive/v$(LIBRDKAFKA).tar.gz --directory-prefix=$(TAR_DIR) -O $(TAR_DIR)/librdkafka-$(LIBRDKAFKA).tar.gz -nc $(GDS_TAR_TARGET) : $(LDASTOOLSFRAMECPP_TAR_TARGET) wget --no-check-certificate http://software.ligo.org/lscsoft/source/$(GDS).tar.gz --directory-prefix=$(TAR_DIR) -nc $(LDASTOOLSFRAMECPP_TAR_TARGET) : $(LDASTOOLSAL_TAR_TARGET) wget --no-check-certificate http://software.ligo.org/lscsoft/source/$(LDASTOOLSFRAMECPP).tar.gz --directory-prefix=$(TAR_DIR) -nc $(LDASTOOLSAL_TAR_TARGET) : $(SWIG_TAR_TARGET) wget --no-check-certificate http://software.ligo.org/lscsoft/source/$(LDASTOOLSAL).tar.gz --directory-prefix=$(TAR_DIR) -nc $(SWIG_TAR_TARGET) : $(METAIO_TAR_TARGET) wget --no-check-certificate http://downloads.sourceforge.net/project/swig/swig/$(SWIG)/$(SWIG).tar.gz --directory-prefix=$(TAR_DIR) -nc $(METAIO_TAR_TARGET) : $(LIBFRAME_TAR_TARGET) wget --no-check-certificate http://software.ligo.org/lscsoft/source/$(METAIO).tar.gz --directory-prefix=$(TAR_DIR) -nc $(LIBFRAME_TAR_TARGET) : $(GSTPYTHON_TAR_TARGET) wget --no-check-certificate http://lappweb.in2p3.fr/virgo/FrameL/$(LIBFRAME).tar.gz --directory-prefix=$(TAR_DIR) -nc $(GSTPYTHON_TAR_TARGET) : $(GSTGOOD_TAR_TARGET) wget --no-check-certificate http://gstreamer.freedesktop.org/src/gst-python/$(GSTPYTHON).tar.xz --directory-prefix=$(TAR_DIR) -nc $(GSTGOOD_TAR_TARGET) : $(GSTBASE_TAR_TARGET) wget --no-check-certificate http://gstreamer.freedesktop.org/src/gst-plugins-good/$(GSTPLUGINSGOOD).tar.xz --directory-prefix=$(TAR_DIR) -nc $(GSTBASE_TAR_TARGET) : $(GSTREAMER_TAR_TARGET) wget --no-check-certificate http://gstreamer.freedesktop.org/src/gst-plugins-base/$(GSTPLUGINSBASE).tar.xz --directory-prefix=$(TAR_DIR) -nc $(GSTREAMER_TAR_TARGET) : $(GSL_TAR_TARGET) wget --no-check-certificate http://gstreamer.freedesktop.org/src/gstreamer/$(GSTREAMER).tar.xz --directory-prefix=$(TAR_DIR) -nc $(GSL_TAR_TARGET) : $(ORC_TAR_TARGET) wget --no-check-certificate http://ftp.gnu.org/gnu/gsl/$(GSL).tar.gz --directory-prefix=$(TAR_DIR) -nc $(ORC_TAR_TARGET) : $(FFTW_TAR_TARGET) wget --no-check-certificate http://gstreamer.freedesktop.org/src/orc/$(ORC).tar.xz --directory-prefix=$(TAR_DIR) -nc $(FFTW_TAR_TARGET) : $(LOGS_DIR) wget --no-check-certificate http://www.fftw.org/$(FFTW).tar.gz --directory-prefix=$(TAR_DIR) -nc # git repos $(LOGS_DIR) : mkdir -p $(SRC_DIR) $(INSTALL_DIR) $(PATCH_DIR) $(TAR_DIR) $(PYTHON_DIR) if [ "${LALSUITE_GIT}" = "1" ]; then \ if [ -f $@ ] ; then \ echo "Lalsuite git repo exists" ; \ else \ mkdir -p $(LALSUITE_REPO) ; \ git clone -b $(LALSUITE_GIT_BRANCH) https://git.ligo.org/lscsoft/lalsuite.git $(LALSUITE_REPO) ; \ fi ; \ else \ wget --no-check-certificate http://software.ligo.org/lscsoft/source/lalsuite/$(LAL).tar.xz --directory-prefix=$(TAR_DIR) -nc ; \ wget --no-check-certificate http://software.ligo.org/lscsoft/source/lalsuite/$(LALFRAME).tar.xz --directory-prefix=$(TAR_DIR) -nc ; \ wget --no-check-certificate http://software.ligo.org/lscsoft/source/lalsuite/$(LALMETAIO).tar.xz --directory-prefix=$(TAR_DIR) -nc ; \ wget --no-check-certificate http://software.ligo.org/lscsoft/source/lalsuite/$(LALSIMULATION).tar.xz --directory-prefix=$(TAR_DIR) -nc ; \ wget --no-check-certificate http://software.ligo.org/lscsoft/source/lalsuite/$(LALBURST).tar.xz --directory-prefix=$(TAR_DIR) -nc ; \ wget --no-check-certificate http://software.ligo.org/lscsoft/source/lalsuite/$(LALINSPIRAL).tar.xz --directory-prefix=$(TAR_DIR) -nc ; \ wget --no-check-certificate http://software.ligo.org/lscsoft/source/lalsuite/$(LALPULSAR).tar.xz --directory-prefix=$(TAR_DIR) -nc ; \ wget --no-check-certificate http://software.ligo.org/lscsoft/source/lalsuite/$(LALINFERENCE).tar.xz --directory-prefix=$(TAR_DIR) -nc ; \ wget --no-check-certificate http://software.ligo.org/lscsoft/source/lalsuite/$(LALAPPS).tar.xz --directory-prefix=$(TAR_DIR) -nc ; \ fi ; if [ "${LIGOSCALD_GIT}" = "1" ]; then \ if [ -f $@ ] ; then \ echo "ligo-scald git repo exists" ; \ else \ mkdir -p $(LIGOSCALD_REPO) ; \ git clone -b $(LIGOSCALD_GIT_BRANCH) https://git.ligo.org/gstlal-visualisation/ligo-scald.git $(LIGOSCALD_REPO) ; \ fi ; \ else \ wget --no-check-certificate http://software.ligo.org/lscsoft/source/$(LIGOSCALD).tar.gz --directory-prefix=$(TAR_DIR) -nc ; \ fi ; if [ "${GSTLAL_GIT}" = "1" ]; then \ if [ -f $@ ] ; then \ echo "Gstlal git repo exists" ; \ else \ mkdir -p $(GSTLAL_REPO) ; \ git clone -b $(GSTLAL_GIT_BRANCH) https://git.ligo.org/lscsoft/gstlal.git $(GSTLAL_REPO) ; \ fi ; \ else \ wget --no-check-certificate http://software.ligo.org/lscsoft/source/$(GSTLAL).tar.gz --directory-prefix=$(TAR_DIR) -nc ; \ wget --no-check-certificate http://software.ligo.org/lscsoft/source/$(GSTLALUGLY).tar.gz --directory-prefix=$(TAR_DIR) -nc ; \ wget --no-check-certificate http://software.ligo.org/lscsoft/source/$(GSTLALBURST).tar.gz --directory-prefix=$(TAR_DIR) -nc ; \ wget --no-check-certificate http://software.ligo.org/lscsoft/source/$(GSTLALCALIBRATION).tar.gz --directory-prefix=$(TAR_DIR) -nc ; \ wget --no-check-certificate http://software.ligo.org/lscsoft/source/$(GSTLALINSPIRAL).tar.gz --directory-prefix=$(TAR_DIR) -nc ; \ fi ; mkdir -p $(LOGS_DIR) ############ # Clean up # ############ clean-all : rm -rvf $(SRC_DIR) $(INSTALL_DIR) $(PATCH_DIR) $(TAR_DIR) $(LOGS_DIR) rm -rvf opt git rm -rf *.txt clean-install : rm -rf opt/* $(LOGS_DIR)/* src/* clean-gstlal : rm -rf $(LOGS_DIR)/gstlal.txt $(GSTLAL_TARGET) $(GSTLALUGLY_TARGET) $(GSTLALBURST_TARGET) $(GSTLALCALIB_TARGET) $(GSTLALINSPIRAL_TARGET) clean-kafka-python : rm -rf $(LOGS_DIR)/kafka-python.txt $(KAFKA_PYTHON_TARGET) clean-librdkafka : rm -rf $(LOGS_DIR)/librdkafka.txt $(LIBRDKAFKA_TARGET) clean-lalsuite : rm -rf $(LOGS_DIR)/lalsuite.txt $(LAL_TARGET) $(LALFRAME_TARGET) $(LALMETAIO_TARGET) $(LALSIM_TARGET) $(LALBURST_TARGET) $(LALINSPIRAL_TARGET) $(LALPULSAR_TARGET) $(LALINFER_TARGET) $(LALAPPS_TARGET) $(GLUE_TARGET) clean-gds : rm -rf $(LOGS_DIR)/gds.txt $(GDS_TARGET) clean-ldas-tools-framecpp : rm -rf $(LOGS_DIR)/ldas-tools-framecpp.txt $(LDASTOOLSFRAMECPP_TARGET) clean-ldas-tools-al : rm -rf $(LOGS_DIR)/ldas-tools-al.txt $(LDASTOOLSAL_TARGET) clean-swig : rm -rf $(LOGS_DIR)/swig.txt $(SWIG_TARGET) clean-metaio : rm -rf $(LOGS_DIR)/metaio.txt $(METAIO_TARGET) clean-libframe : rm -rf $(LOGS_DIR)/libframe.txt $(LIBFRAME_TARGET) clean-gstreamer : rm -rf $(LOGS_DIR)/gstreamer.txt $(GSTREAMER_TARGET) $(GSTBASE_TARGET) $(GSTGOOD_TARGET) $(GSTPYTHON_TARGET) clean-gsl : rm -rf $(LOGS_DIR)/gsl.txt $(GSL_1_TARGET) $(GSL_2_TARGET) clean-orc : rm -rf $(LOGS_DIR)/orc.txt $(ORC_TARGET) clean-fftw : rm -rf $(LOGS_DIR)/fftw.txt $(FFTW_TARGET)