62 lines
1.7 KiB
Plaintext
Executable File
62 lines
1.7 KiB
Plaintext
Executable File
#!/usr/bin/env modbuild
|
|
|
|
SOURCE_URL="https://root.cern.ch/download/root_v${V_MAJOR}.${V_MINOR}.${V_PATCHLVL}.source.tar.gz"
|
|
|
|
declare -a EXTRA_LIBS=()
|
|
config_args=()
|
|
|
|
case ${OS} in
|
|
Darwin )
|
|
# cocoa doesn't work with GCC!?
|
|
config_args+=( '-Dcocoa=OFF' )
|
|
config_args+=( '-Dx11=ON' )
|
|
config_args+=( '-DCMAKE_OSX_SYSROOT=/' )
|
|
config_args+=( "-DCMAKE_OSX_DEPLOYMENT_TARGET=''" )
|
|
;;
|
|
Linux )
|
|
INSTANTCLIENT_INCLUDE_DIR='/usr/lib/oracle/12.1/client64/include'
|
|
INSTANTCLIENT_LIBRARY_DIR='/usr/lib/oracle/12.1/client64/lib'
|
|
C_INCLUDE_PATH+=":${INSTANTCLIENT_INCLUDE_DIR}"
|
|
CXX_INCLUDE_PATH+=":${INSTANTCLIENT_INCLUDE_DIR}"
|
|
CPLUS_INCLUDE_PATH+=":${INSTANTCLIENT_INCLUDE_DIR}"
|
|
LIBRARY_DIR+=":${INSTANTCLIENT_LIBRARY_DIR}"
|
|
config_args+=( "-Doracle=ON" )
|
|
config_args+=( "-DORACLE_PATH_INCLUDES=${INSTANTCLIENT_INCLUDE_DIR}" )
|
|
config_args+=( "-DORACLE_PATH_LIB=${INSTANTCLIENT_LIBRARY_DIR}" )
|
|
config_args+=( "-DORACLE_OCI_VERSION=10G_R2" )
|
|
;;
|
|
*)
|
|
std:die 1 "${OS} is not supported"
|
|
;;
|
|
esac
|
|
|
|
pbuild::patch_sources_Linux() {
|
|
if (( V_MAJOR == 6 && V_MINOR < 12)); then
|
|
patch -p1 < "${BUILD_BLOCK_DIR}/${V_MAJOR}/cmake_oracle12.patch"
|
|
fi
|
|
}
|
|
|
|
pbuild::configure() {
|
|
cmake "${MODULE_SRCDIR}" \
|
|
"${config_args[@]}" \
|
|
-DCMAKE_INSTALL_PREFIX="${PREFIX}" \
|
|
|| exit 1
|
|
sed -i.bak "s:${MODULE_SRCDIR//\/\///}/root.exe:${MODULE_BUILDDIR//\/\///}/bin/root.exe:" CMakeFiles/hsimple.dir/build.make
|
|
}
|
|
|
|
pbuild::build() {
|
|
cmake --build . -- -j6 VERBOSE=1
|
|
}
|
|
|
|
pbuild::install() {
|
|
cmake --build . --target install
|
|
}
|
|
|
|
pbuild::post_install_Linux() {
|
|
install -m 0644 "${INSTANTCLIENT_LIBRARY_DIR}"/* "${PREFIX}"/lib
|
|
install -m 0644 "${INSTANTCLIENT_INCLUDE_DIR}"/* "${PREFIX}"/include
|
|
}
|
|
|
|
pbuild::add_to_group 'Compiler'
|
|
pbuild::make_all
|