For developers
Please read the license information before copying the source code. The GNU v2 license requires, among others, any derivative work to be distributed as open-source.
Repository location
The actual source code, along with resources and build tools, is stored in these repositories:
Molflow-specific code (includes build instructions in the readme file)
Shared code embedded as a Git submodule in the above repos
All operating systems should allow CMake building, as decribed in https://gitlab.cern.ch/molflow_synrad/molflow/-/blob/master/README.md:
- Clone the repo to a local directory:
git clone https://gitlab.cern.ch/molflow_synrad/molflow.git
- Init shared code git submodule:
git submodule init
thengit submodule update
- Make a
build
subdirectory in the repo and cd into it:mkdir build
thencd build
- Configure the repo with CMake:
cmake ..
- Build it:
make
(ormake -j8
for parallel compiling) - The binaries will be written in
bin
subfolder
Build example on Mac
1) We install Homebrew and dependencies:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew install cmake libpng gsl sdl2 p7zip libomp
2) then we clone and build the repo:
git checkout https://gitlab.cern.ch/molflow_synrad/molflow.git
cd molflow
git submodule init
git submodule update
mkdir build
cd build
cmake ..
make -j8
On Linux, the dependency part is different (using apt
or yum
), but the second part is the same.
Branches
- For MolFlow,
master
is the 2.9 beta, andmaster_2.8
is the 2.8 public - For SynRad,
master_cli
is the 1.5 beta, andmaster
is the 1.4 public
Repo states to check out for guaranteed compile
On the Molflow repository, we use Git tags to mark commits that correspond to released versions. Check out these so they are guaranteed to build and run.
Tags for Molflow: https://gitlab.cern.ch/molflow_synrad/molflow/-/tags
Tags for Synrad: https://gitlab.cern.ch/molflow_synrad/synrad/-/tags