Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 30 additions & 0 deletions coin3d.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
package: Coin3D
version: "%(tag_basename)s"
tag: "v4.0.7"
source: https://github.com/coin3d/coin.git
requires:
- "GCC-Toolchain:(?!osx)"
build_requires:
- CMake
- alibuild-recipe-tools
env:
COIN3D_ROOT: "$COIN3D_ROOT"
prepend_path:
LD_LIBRARY_PATH: "$COIN3D_ROOT/lib"
---
#!/bin/bash -e

cmake "$SOURCEDIR" \
-DCMAKE_INSTALL_PREFIX="$INSTALLROOT" \
-DCMAKE_BUILD_TYPE="$CMAKE_BUILD_TYPE" \
-DCMAKE_INSTALL_LIBDIR=lib \
${CMAKE_PREFIX_PATH:+-DCMAKE_PREFIX_PATH="$CMAKE_PREFIX_PATH"} \
-DCOIN_BUILD_DOCUMENTATION=OFF \
-DCOIN_BUILD_EXAMPLES=OFF \
-DCOIN_BUILD_TESTS=OFF

cmake --build . -- ${JOBS:+-j$JOBS} install

MODULEDIR="$INSTALLROOT/etc/modulefiles"
mkdir -p "$MODULEDIR"
alibuild-generate-module --lib > "$MODULEDIR/$PKGNAME"
16 changes: 16 additions & 0 deletions defaults-lcg.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
package: defaults-lcg
version: v1
env:
CXXFLAGS: "-fPIC -g -O2 -std=c++20"
CFLAGS: "-fPIC -g -O2"
CMAKE_BUILD_TYPE: "RELEASE"
CMAKE_CXX_STANDARD: "20"
CMAKE_PREFIX_PATH: "/cvmfs/sft.cern.ch/lcg/views/LCG_109/x86_64-el9-gcc15-opt"
XERCESC_ROOT: "/cvmfs/sft.cern.ch/lcg/views/LCG_109/x86_64-el9-gcc15-opt"
EIGEN3_ROOT: "/cvmfs/sft.cern.ch/lcg/views/LCG_109/x86_64-el9-gcc15-opt"
NLOHMANN_JSON_ROOT: "/cvmfs/sft.cern.ch/lcg/views/LCG_109/x86_64-el9-gcc15-opt"
BOOST_ROOT: "/cvmfs/sft.cern.ch/lcg/views/LCG_109/x86_64-el9-gcc15-opt"
GEANT4_ROOT: "/cvmfs/sft.cern.ch/lcg/views/LCG_109/x86_64-el9-gcc15-opt"
---
# Before running aliBuild with --defaults lcg, source the LCG environment:
# source /cvmfs/sft.cern.ch/lcg/views/LCG_109/x86_64-el9-gcc15-opt/setup.sh
7 changes: 7 additions & 0 deletions eigen3.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,13 @@
package: Eigen3
version: 3.4.0
source: https://gitlab.com/libeigen/eigen.git
prefer_system: .*
prefer_system_check: |
EIGEN3_ROOT_EFF=${EIGEN3_ROOT:-${CMAKE_PREFIX_PATH%%:*}}

Check notice on line 6 in eigen3.sh

View workflow job for this annotation

GitHub Actions / alidistlint

Missing script shebang. Use exactly "#!/bin/bash -e" to match aliBuild environment. You may see spurious errors until you fix the shebang. [ali:bad-shebang]
printf '#include <Eigen/Dense>\nint main(){}\n' | \
c++ -std=c++20 -xc++ - \
${EIGEN3_ROOT_EFF:+-I"$EIGEN3_ROOT_EFF/include/eigen3"} \
-o /dev/null
build_requires:
- "GCC-Toolchain:(?!osx)"
- CMake
Expand Down
16 changes: 9 additions & 7 deletions geant4.sh
Original file line number Diff line number Diff line change
Expand Up @@ -24,15 +24,17 @@ env:
G4RADIOACTIVEDATA: "`find ${G4INSTALL} $G4DATASEARCHOPT '*data*RadioactiveDecay*'`"
G4REALSURFACEDATA: "`find ${G4INSTALL} $G4DATASEARCHOPT '*data*RealSurface*'`"
G4SAIDXSDATA: "`find ${G4INSTALL} $G4DATASEARCHOPT '*data*G4SAIDDATA*'`"
prefer_system: .*
prefer_system_check: |
#!/bin/bash -e
ls $GEANT4_ROOT/bin > /dev/null && \
ls $GEANT4_ROOT/bin/geant4-config > /dev/null && \
ls $GEANT4_ROOT/bin/geant4.csh > /dev/null && \
ls $GEANT4_ROOT/bin/geant4.sh > /dev/null && \
ls $GEANT4_ROOT/include > /dev/null && \
ls $GEANT4_ROOT/include/Geant4 > /dev/null && \
ls $GEANT4_ROOT/lib/ > /dev/null && \
GEANT4_ROOT_EFF=${GEANT4_ROOT:-${CMAKE_PREFIX_PATH%%:*}}
ls $GEANT4_ROOT_EFF/bin > /dev/null && \
ls $GEANT4_ROOT_EFF/bin/geant4-config > /dev/null && \
ls $GEANT4_ROOT_EFF/bin/geant4.csh > /dev/null && \
ls $GEANT4_ROOT_EFF/bin/geant4.sh > /dev/null && \
ls $GEANT4_ROOT_EFF/include > /dev/null && \
ls $GEANT4_ROOT_EFF/include/Geant4 > /dev/null && \
ls $GEANT4_ROOT_EFF/lib/ > /dev/null && \
true
---
#!/bin/bash -e
Expand Down
77 changes: 77 additions & 0 deletions geomodel.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
package: GeoModel
version: "%(tag_basename)s"
tag: "6.24.0"
source: https://gitlab.cern.ch/GeoModelDev/GeoModel.git
requires:
- sqlite
- XercesC
- nlohmann_json
- Eigen3
- GEANT4
- opengl
- Coin3D
- SoQt
build_requires:
- CMake
- "GCC-Toolchain:(?!osx)"
- alibuild-recipe-tools
env:
GEOMODEL_ROOT: "$GEOMODEL_ROOT"
prepend_path:
ROOT_INCLUDE_PATH: "$GEOMODEL_ROOT/include"
LD_LIBRARY_PATH: "$GEOMODEL_ROOT/lib"
---
#!/bin/bash -e

# Resolve Qt6 cmake config to its real path so _IMPORT_PREFIX does not follow
# LCG view symlinks back to the Qt5 include dir.
if [ -n "${CMAKE_PREFIX_PATH}" ]; then
_qt6conf="${CMAKE_PREFIX_PATH}/lib/cmake/Qt6/Qt6Config.cmake"
if [ -e "$_qt6conf" ]; then
QT6_DIR=$(dirname "$(readlink -f "$_qt6conf")")
fi
fi

# Derive Qt6 platform-plugin path from the resolved install tree so that
# gmex can find the xcb plugin at runtime without QT_QPA_PLATFORM_PLUGIN_PATH
# being set manually.
if [ -n "${QT6_DIR}" ]; then
_qt6root="$(dirname "$(dirname "$(dirname "$QT6_DIR")")")"
if [ -d "$_qt6root/plugins/platforms" ]; then
QT6_PLATFORM_PLUGIN_PATH="$_qt6root/plugins/platforms"
fi
fi

cmake "$SOURCEDIR" \
-DCMAKE_INSTALL_PREFIX="$INSTALLROOT" \
-DCMAKE_BUILD_TYPE="$CMAKE_BUILD_TYPE" \
-DCMAKE_CXX_STANDARD="${CMAKE_CXX_STANDARD:-20}" \
-DCMAKE_INSTALL_LIBDIR=lib \
${CMAKE_PREFIX_PATH:+-DCMAKE_PREFIX_PATH="$CMAKE_PREFIX_PATH"} \
${QT6_DIR:+-DQt6_DIR="$QT6_DIR"} \
-DGEOMODEL_USE_BUILTIN_JSON=OFF \
-DGEOMODEL_USE_BUILTIN_XERCESC=OFF \
-DGEOMODEL_USE_BUILTIN_EIGEN3=OFF \
-DGEOMODEL_BUILD_VISUALIZATION=ON \
-DGEOMODEL_USE_BUILTIN_COIN3D=OFF \
-DGEOMODEL_BUILD_GEOMODELG4=ON \
-DGEOMODEL_BUILD_TOOLS=ON \
-DGEOMODEL_BUILD_FULLSIMLIGHT=OFF \
-DGEOMODEL_BUILD_TESTING=OFF

cmake --build . -- ${JOBS:+-j$JOBS} install

MODULEDIR="$INSTALLROOT/etc/modulefiles"
MODULEFILE="$MODULEDIR/$PKGNAME"
mkdir -p "$MODULEDIR"
alibuild-generate-module --bin --lib > "$MODULEFILE"
cat >> "$MODULEFILE" <<EoF
# Our environment
set GEOMODEL_ROOT \$::env(BASEDIR)/$PKGNAME/\$version
prepend-path ROOT_INCLUDE_PATH \$GEOMODEL_ROOT/include
EoF
if [ -n "${QT6_PLATFORM_PLUGIN_PATH}" ]; then
cat >> "$MODULEFILE" <<EoF
prepend-path QT_QPA_PLATFORM_PLUGIN_PATH ${QT6_PLATFORM_PLUGIN_PATH}
EoF
fi
33 changes: 33 additions & 0 deletions nlohmann_json.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
package: nlohmann_json
version: "%(tag_basename)s"
source: https://github.com/nlohmann/json.git
tag: v3.11.3

Check warning on line 4 in nlohmann_json.sh

View workflow job for this annotation

GitHub Actions / alidistlint

tag: must be the third key in the file (after version) [ali:key-order]
prefer_system: .*
prefer_system_check: |
#!/bin/bash -e
printf '#include <nlohmann/json.hpp>\nint main(){}\n' | \
c++ -std=c++20 -xc++ - \
${NLOHMANN_JSON_ROOT:+-I"$NLOHMANN_JSON_ROOT/include"} \
-o /dev/null
build_requires:
- "GCC-Toolchain:(?!osx)"
- CMake
- alibuild-recipe-tools
---
#!/bin/bash -e

cmake "$SOURCEDIR" \
-DCMAKE_INSTALL_PREFIX="$INSTALLROOT" \
-DCMAKE_BUILD_TYPE="$CMAKE_BUILD_TYPE" \
-DJSON_BuildTests=OFF
cmake --build . -- ${JOBS:+-j$JOBS} install

MODULEDIR="$INSTALLROOT/etc/modulefiles"
MODULEFILE="$MODULEDIR/$PKGNAME"
mkdir -p "$MODULEDIR"
alibuild-generate-module > "$MODULEFILE"
cat >> "$MODULEFILE" <<EoF
# Our environment
set NLOHMANN_JSON_ROOT \$::env(BASEDIR)/$PKGNAME/\$version
prepend-path ROOT_INCLUDE_PATH \$NLOHMANN_JSON_ROOT/include
EoF
44 changes: 44 additions & 0 deletions soqt.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
package: SoQt
version: "%(tag_basename)s"
tag: "v1.6.4"
source: https://github.com/coin3d/soqt.git
requires:
- Coin3D
- "GCC-Toolchain:(?!osx)"
build_requires:
- CMake
- alibuild-recipe-tools
env:
SOQT_ROOT: "$SOQT_ROOT"
prepend_path:
LD_LIBRARY_PATH: "$SOQT_ROOT/lib"
---
#!/bin/bash -e

git -C "$SOURCEDIR" submodule update --init --recursive

# Resolve Qt6 cmake config to its real path so _IMPORT_PREFIX does not follow
# LCG view symlinks back to the Qt5 include dir.
if [ -n "${CMAKE_PREFIX_PATH}" ]; then
_qt6conf="${CMAKE_PREFIX_PATH}/lib/cmake/Qt6/Qt6Config.cmake"
if [ -e "$_qt6conf" ]; then
QT6_DIR=$(dirname "$(readlink -f "$_qt6conf")")
fi
fi

cmake "$SOURCEDIR" \
-DCMAKE_INSTALL_PREFIX="$INSTALLROOT" \
-DCMAKE_BUILD_TYPE="$CMAKE_BUILD_TYPE" \
-DCMAKE_INSTALL_LIBDIR=lib \
${CMAKE_PREFIX_PATH:+-DCMAKE_PREFIX_PATH="$CMAKE_PREFIX_PATH"} \
${QT6_DIR:+-DQt6_DIR="$QT6_DIR"} \
-DSOQT_USE_QT6=ON \
-DSOQT_BUILD_DOCUMENTATION=OFF \
-DSOQT_BUILD_EXAMPLES=OFF \
-DSOQT_BUILD_TESTS=OFF

cmake --build . -- ${JOBS:+-j$JOBS} install

MODULEDIR="$INSTALLROOT/etc/modulefiles"
mkdir -p "$MODULEDIR"
alibuild-generate-module --lib > "$MODULEDIR/$PKGNAME"
14 changes: 5 additions & 9 deletions xercesc.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,17 +7,13 @@ env:
XERCESC_INST_DIR: "$XERCESC_ROOT"
XERCESCINST: "$XERCESC_ROOT"
XERCESCROOT: "$XERCESC_ROOT"
prefer_system: .*
prefer_system_check: |
#!/bin/bash -e
ls $XERCESC_ROOT/ > /dev/null && \
ls $XERCESC_ROOT/bin > /dev/null && \
ls $XERCESC_ROOT/include > /dev/null && \
ls $XERCESC_ROOT/include/xercesc/ > /dev/null && \
ls $XERCESC_ROOT/lib > /dev/null && \
ls $XERCESC_ROOT/lib/libxerces-c-3.1.so > /dev/null && \
ls $XERCESC_ROOT/lib/libxerces-c.a > /dev/null && \
ls $XERCESC_ROOT/lib/libxerces-c.la > /dev/null && \
ls $XERCESC_ROOT/lib/libxerces-c.so > /dev/null
XERCESC_ROOT_EFF=${XERCESC_ROOT:-${CMAKE_PREFIX_PATH%%:*}}
ls $XERCESC_ROOT_EFF/bin > /dev/null && \
ls $XERCESC_ROOT_EFF/include/xercesc/ > /dev/null && \
ls $XERCESC_ROOT_EFF/lib/libxerces-c.so > /dev/null
---
#!/bin/sh
cd $SOURCEDIR
Expand Down
Loading