Commit b37a7903 authored by David Blyth's avatar David Blyth

Updated base image, G4, ROOT, and moved to clang as main compiler

parent 8c384cee
# Author: David Blyth
# Description: Docker build for producing a base for ANL EIC software efforts
FROM dbcooper/arch:2017-05-02
FROM dbcooper/arch:2018-02-16
ARG BUILD_THREADS=5
......@@ -20,14 +20,16 @@ WORKDIR /home/eicuser
CMD /bin/bash
# ROOT
ENV ROOT_RELEASE=v6-10-06
ENV ROOT_RELEASE=v6-12-06 \
CC=/usr/bin/clang \
CXX=/usr/bin/clang++
RUN sudo pacman -S --noconfirm \
awk \
binutils \
clang \
cmake \
fftw \
gcc \
git \
glew \
glu \
......@@ -41,7 +43,7 @@ RUN sudo pacman -S --noconfirm \
python2 \
&& sudo rm -rf /var/cache/pacman/pkg
RUN git clone https://github.com/root-project/root.git \
RUN git clone http://root.cern.ch/git/root.git \
&& cd root \
&& git checkout tags/$ROOT_RELEASE \
&& cd .. \
......@@ -51,7 +53,6 @@ RUN git clone https://github.com/root-project/root.git \
-DCMAKE_INSTALL_PREFIX=/usr/local \
-DCMAKE_BUILD_TYPE=Release \
-Dbuiltin_glew=OFF \
-Dcxx14=ON \
-Dgdml=ON \
-Dgsl_shared=ON \
-Dmathmore=ON \
......@@ -77,7 +78,7 @@ RUN git clone https://gitlab.cern.ch/CLHEP/CLHEP.git \
&& git checkout tags/$CLHEP_RELEASE \
&& mkdir build \
&& cd build \
&& CXXFLAGS=-std=c++14 cmake \
&& cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/ \
-DCMAKE_BUILD_TYPE=Release \
../ \
......@@ -87,7 +88,7 @@ RUN git clone https://gitlab.cern.ch/CLHEP/CLHEP.git \
&& rm -rf CLHEP
# GEANT4
ENV GEANT4_RELEASE=v10.3.3
ENV GEANT4_VERSION=10.4.0
RUN sudo pacman -S --noconfirm \
xerces-c \
......@@ -95,13 +96,13 @@ RUN sudo pacman -S --noconfirm \
RUN git clone https://github.com/Geant4/geant4.git \
&& cd geant4 \
&& git checkout tags/$GEANT4_RELEASE \
&& git checkout tags/v$GEANT4_VERSION \
&& mkdir build \
&& cd build \
&& cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/ \
-DCMAKE_BUILD_TYPE=Release \
-DGEANT4_BUILD_CXXSTD=14 \
-DGEANT4_BUILD_MULTITHREADED=ON \
-DGEANT4_INSTALL_DATA=ON \
-DGEANT4_USE_GDML=ON \
-DGEANT4_USE_SYSTEM_CLHEP=ON \
......@@ -112,17 +113,17 @@ RUN git clone https://github.com/Geant4/geant4.git \
&& rm -rf geant4
ENV LD_LIBRARY_PATH=/usr/local/lib64:${LD_LIBRARY_PATH} \
GEANT4_DATA_DIRECTORY=/usr/local/share/Geant4-10.3.3/data
GEANT4_DATA_DIRECTORY=/usr/local/share/Geant4-${GEANT4_VERSION}/data
ENV G4NEUTRONHPDATA=${GEANT4_DATA_DIRECTORY}/G4NDL4.5 \
G4LEDATA=${GEANT4_DATA_DIRECTORY}/G4EMLOW6.50 \
G4LEVELGAMMADATA=${GEANT4_DATA_DIRECTORY}/PhotonEvaporation4.3.2 \
G4RADIOACTIVEDATA=${GEANT4_DATA_DIRECTORY}/RadioactiveDecay5.1.1 \
G4LEDATA=${GEANT4_DATA_DIRECTORY}/G4EMLOW7.3 \
G4LEVELGAMMADATA=${GEANT4_DATA_DIRECTORY}/PhotonEvaporation5.2 \
G4RADIOACTIVEDATA=${GEANT4_DATA_DIRECTORY}/RadioactiveDecay5.2 \
G4NEUTRONXSDATA=${GEANT4_DATA_DIRECTORY}/G4NEUTRONXS1.4 \
G4PIIDATA=${GEANT4_DATA_DIRECTORY}/G4PII1.3 \
G4REALSURFACEDATA=${GEANT4_DATA_DIRECTORY}/RealSurface1.0 \
G4REALSURFACEDATA=${GEANT4_DATA_DIRECTORY}/RealSurface2.1 \
G4SAIDXSDATA=${GEANT4_DATA_DIRECTORY}/G4SAIDDATA1.1 \
G4ABLADATA=${GEANT4_DATA_DIRECTORY}/G4ABLA3.0 \
G4ENSDFSTATEDATA=${GEANT4_DATA_DIRECTORY}/G4ENSDFSTATE2.1
G4ABLADATA=${GEANT4_DATA_DIRECTORY}/G4ABLA3.1 \
G4ENSDFSTATEDATA=${GEANT4_DATA_DIRECTORY}/G4ENSDFSTATE2.2
# LCIO
ENV LCIO_RELEASE=v02-08
......@@ -133,7 +134,7 @@ RUN git clone https://github.com/iLCSoft/LCIO.git \
&& cd ../ \
&& mkdir build \
&& cd build \
&& CXXFLAGS=-std=c++14 cmake \
&& cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local \
-DCMAKE_BUILD_TYPE=Release \
-DBUILD_ROOTDICT=ON \
......@@ -147,7 +148,7 @@ ENV ROOT_INCLUDE_PATH=/usr/local:/usr/local/include
# DD4hep
ENV DD4HEP_CHECKOUT=0d8ae7116527b336222550031de05634a4982d3b \
DD4HEP_REPO=https://github.com/decibelcooper/DD4hep.git
DD4HEP_REPO=https://github.com/AIDASoft/DD4hep.git
RUN sudo pacman -S --noconfirm \
boost \
......@@ -160,9 +161,7 @@ RUN git clone $DD4HEP_REPO \
&& mkdir build \
&& cd build \
&& cmake \
-DBUILD_TESTING=ON \
-DCMAKE_INSTALL_PREFIX=/usr/local \
-DCMAKE_CXX_STANDARD=14 \
-DDD4HEP_USE_GEANT4=ON \
-DDD4HEP_USE_LCIO=ON \
-DDD4HEP_USE_XERCESC=ON \
......@@ -269,7 +268,6 @@ RUN sudo pacman -S --noconfirm \
RUN git clone https://github.com/GenFit/GenFit.git $GENFIT_PATH \
&& cd $GENFIT_PATH \
&& git checkout $GENFIT_CHECKOUT \
&& sed -i.bak 's/\(CPP_STANDARD\) c++11/\1 c++14/' CMakeLists.txt \
&& mkdir build \
&& cd build \
&& cmake \
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment