alisw / alidist

Recipes to build ALICE software
30 stars 164 forks source link
alice-experiment cern hep physics

alidist

Recipes to build ALICE SW

Guidelines for commit messages

Example:

Fix issue in Geant4

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod
tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim
veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea
commodo consequat.

Guidelines for contributing recipes

rsync -a $SOURCEDIR ./
case $ARCHITECTURE in
  osx)
[ ! $BOOST_ROOT ] || BOOST_ROOT=$(brew --prefix boost)
  ;;
esac

Then use such a variable to pass the information optionally to, e.g., CMake.

cmake ...                                   \
  ${BOOST_ROOT:+-DBOOST_ROOT=$BOOST_ROOT}

This will make sure that if a package was selected to be picked up by the system (i.e. BOOST_ROOT is not set), we will look it up in the package specific folder when using homebrew.

You should never set any SOMETHING_ROOT variable to /usr/local because that is a global folder and it will make it have precendence in the lookup, therefore potentially implicitly bringing in incompatible versions of external packages.

- Python:slc.*
- Python-system:(osx.*)

in your requires section. Alternatively, if you also require Python-modules simply depend on it, without an explicit dependency on Python, which will be handled internally.

Guidelines for handling externals sources

Whenever you need to build a new external, you should consider the following:

Moreover try to keep the package name (as specified inside the recipe in the package field of the header) and the repository name the same, including capitalization.

Request a new package

Please open a JIRA issue with your request at:

https://alice.its.cern.ch/jira/secure/CreateIssue!default.jspa

Make sure you select "Dependencies" as component.

Private packages

Private packages are highly discouraged and must be avoided as much as possible. Private packages MUST still comply to GLPv3 which basically means:

In order to have a private package please open a JIRA ticket and we will create one / mirror in the https://gitlab.cern.ch/AlicePrivateExternals, which is the only place where you are allowed to have a private external.