Date: Wednesday, May 17, 2023 @ 17:44:53 Author: kgizdov Revision: 1462978
archrelease: copy trunk to community-x86_64 Added: root/repos/community-x86_64/PKGBUILD (from rev 1462977, root/trunk/PKGBUILD) root/repos/community-x86_64/ROOFIT_LICENSE (from rev 1462977, root/trunk/ROOFIT_LICENSE) root/repos/community-x86_64/jupyter_notebook_config.py (from rev 1462977, root/trunk/jupyter_notebook_config.py) root/repos/community-x86_64/nbman-for-arch.patch (from rev 1462977, root/trunk/nbman-for-arch.patch) root/repos/community-x86_64/root.pc.tpl (from rev 1462977, root/trunk/root.pc.tpl) root/repos/community-x86_64/root.xml (from rev 1462977, root/trunk/root.xml) root/repos/community-x86_64/settings-cuda.cmake (from rev 1462977, root/trunk/settings-cuda.cmake) root/repos/community-x86_64/settings.cmake (from rev 1462977, root/trunk/settings.cmake) root/repos/community-x86_64/thisroot.fail (from rev 1462977, root/trunk/thisroot.fail) Deleted: root/repos/community-x86_64/PKGBUILD root/repos/community-x86_64/ROOFIT_LICENSE root/repos/community-x86_64/jupyter_notebook_config.py root/repos/community-x86_64/nbman-for-arch.patch root/repos/community-x86_64/root.pc.tpl root/repos/community-x86_64/root.xml root/repos/community-x86_64/settings-cuda.cmake root/repos/community-x86_64/settings.cmake root/repos/community-x86_64/thisroot.fail ----------------------------+ PKGBUILD | 592 +++++++++++++++++++++---------------------- ROOFIT_LICENSE | 44 +-- jupyter_notebook_config.py | 2 nbman-for-arch.patch | 360 +++++++++++++------------- root.pc.tpl | 24 - root.xml | 28 +- settings-cuda.cmake | 230 ++++++++-------- settings.cmake | 230 ++++++++-------- thisroot.fail | 98 +++---- 9 files changed, 804 insertions(+), 804 deletions(-) Deleted: PKGBUILD =================================================================== --- PKGBUILD 2023-05-17 17:44:36 UTC (rev 1462977) +++ PKGBUILD 2023-05-17 17:44:53 UTC (rev 1462978) @@ -1,296 +0,0 @@ -# Maintainer: Konstantin Gizdov < arch at kge dot pw > -# Contributor: Frank Siegert < frank.siegert at googlemail dot com > -# Contributor: Scott Lawrence < bytbox at gmail dot com > -# Contributor: Thomas Dziedzic < gostrc at gmail dot com > -# Contributor: Sebastian Voecking < voeck at web dot de > - -pkgbase=root -pkgname=('root' 'root-cuda') -pkgver=6.28.02 -pkgrel=5 -pkgdesc='C++ data analysis framework and interpreter from CERN' -arch=('x86_64') -url='https://root.cern' -license=('LGPL2.1' 'GPL' 'custom:University of California and Stanford University License') -options=(!lto) -makedepends=( - 'ccache' - 'cern-vdt' - 'chromium' - 'cfitsio' - 'cmake' - 'cuda' - 'cudnn' - 'gcc-fortran' - 'git' - 'go' - 'libxml2' - 'libmariadbclient' - 'ocaml' - 'ocaml-ctypes' - 'openmp' - 'openmpi' - 'openssl' - 'openui5' - 'postgresql-libs' - 'pythia8>=8.2.40-1' - 'python-pygments' - 'qt5-webengine' - 'sqlite' - 'unuran' - 'vc' - 'xrootd>5' - 'z3' -) -depends=( - 'blas' - 'desktop-file-utils' - 'fcgi' - 'fftw' - 'ftgl' - 'giflib' - 'gl2ps' - 'glew' - 'graphviz' - 'gsl' - 'hicolor-icon-theme' - 'libafterimage' - 'librsvg' - 'liburing' - 'libxpm' - 'nlohmann-json' - 'pcre' - 'python' - 'python-numpy' - 'tbb' - 'tex-gyre-fonts' - 'unixodbc' - 'xxhash>=0.6.5-1' - 'zstd' -) -optdepends=( - 'cern-vdt: Add a set of fast and vectorisable mathematical functions' - 'chromium: Support for WebGUI' - 'cfitsio: Read images and data from FITS files' - 'libmariadbclient: MySQL support' - 'libxml2: XML parser interface' - 'openmp: Support OpenMP extensions in Minuit2' - 'openmpi: Support OpenMPI extensions in Minuit2' - 'openssl: OpenSSL support' - 'openui5: JSROOT support' - 'postgresql-libs: PostgreSQL support' - 'pythia8>=8.2.40-1: Pythia8 EG support' - 'python-pygments: syntax highlighting in interactive console' - 'qt5-webengine: Support for WebGUI' - 'sqlite: SQLite support' - 'tcsh: Legacy CSH support' - 'unuran: Support non-uniform random numbers' - 'vc: Add types for portable and intuitive SIMD programming' - 'xrootd>5: Support remote file server and client' - 'z3: Suuport the Z3 theorem prover' -) -source=( - "https://root.cern.ch/download/root_v${pkgver}.source.tar.gz" - 'ROOFIT_LICENSE' - 'root.xml' - 'root.pc.tpl' - 'settings.cmake' - 'settings-cuda.cmake' - 'jupyter_notebook_config.py' - 'nbman-for-arch.patch' - 'thisroot.fail' -) -b2sums=('e35b925525bfaa1eb3ab61003a0f91377baf60da0fb0d46e542601757252ec99597391049a5d19bde060f6ce2be8d1c4c81116436591377840d0749755ff232a' - '5da6218a171ee0fbd7b03518dde22787bb0e478a18dcf227eea4e65598c0a0bb299747c6503ad3026804e1a4dbcf4d2b674b83e6ed6e482dd3d14ceb4646dee8' - 'b5defce795dbfeee75dab0cc4c20ac84fe55cb11e9acdd5e75831b6db98e6190621867a65427ab44d93b6fe30398db6fd191defb029a6dcd0af087c1e5115451' - '5e4c589fd9e226fcf7ff9ab880687c10ff0f7b7c03fdf12fc477622d6ec291e2dc62e7f5ce7b68856bccf37b64b2f4331f46788548d39fdca57fd832d1f3b437' - 'fb7879d5961a4714ef2cbd33a4872d88dc0938ee87935c39b89b5973b75847413d941cfcb1af1669cb62b262ba5ab54f233dc0afd3e35c85b958622edfacd114' - '36c3543d008eda4b0200b730d3ca795de5dca0fee0ba6f98f1e1edfc820a92dfd1352a558c1593f2f8590b3febabfb74857ca59211a71090106ce292e399dd09' - '47a7b4491f1455ddb02c3793c7fbaf05184dba9a5fc9d7378608727e69c778dd5832c49f11f4d2c8204dcffc86fc4786b5616fb381c4e3e629d78db9c86913c5' - 'ec89007c4441d0010c0bfa90ca81e78ceeeb97bacaae2cc4814bd9a781062add80eaa6e4b8cf59c1a61e89ca8a14f3af6f1163766550f6db4154f671e5176d39' - '3501c944e8cab13fe9f5c8ab75a7cdb4b59bc5b00df4bf45ad246ab8cd6cb1ebde19369bc688458c97ff5f5acd4e86fc19b4c8f57ab4cb422d0a5eacac081138') - -get_pyver () { - python -c 'import sys; print(str(sys.version_info[0]) + "." + str(sys.version_info[1]))' -} - -prepare() { - local src - for src in "${source[@]}"; do - src="${src%%::*}" - src="${src##*/}" - [[ $src = *.patch ]] || continue - echo " -> Applying patch $src..." - patch -Np1 -i "../$src" -d "${srcdir}/${pkgbase}-${pkgver}" - done - - # specify some custom flags - # needed by vc to link properly - CUSTOM_CMAKE_FLAGS="-DTARGET_ARCHITECTURE:STRING=generic" - # make sure it finds python - CUSTOM_CMAKE_FLAGS+=" -DPYTHON_EXECUTABLE:PATH=/usr/bin/python" - # need to set install prefix like so - CUSTOM_CMAKE_FLAGS+=" -DINSTALL_PREFIX=/usr" - export CUSTOM_CMAKE_FLAGS - - # update system flags - # don't let ROOT play around with lib paths - export CPPFLAGS="${CPPFLAGS} -DIS_RPATH_BUILD=1" - # make sure pthread gets detected - CUSTOM_COMPILER_FLAGS="${CPPFLAGS} -pthread" - export CFLAGS="${CFLAGS} ${CUSTOM_COMPILER_FLAGS}" - export CXXFLAGS="${CXXFLAGS} ${CUSTOM_COMPILER_FLAGS}" - export LDFLAGS="${LDFLAGS} ${CUSTOM_COMPILER_FLAGS}" - - # go flags for built-in clang - export CGO_LDFLAGS="${LDFLAGS}" - export GOFLAGS="-buildmode=pie -trimpath -modcacherw" - - # pass CUDA architectures to nvcc calls - # Not yet supported in root: TBD - local _cuda_arches=('52' '53' '60' '61' '62' '70' '72' '75' '80' '86' '87' '89' '90') - local _cuda_arch_vals='' - for _cuda_arch in "${_cuda_arches[@]}"; do - _cuda_arch_vals+="${_cuda_arch}-real;${_cuda_arch}-virtual;" - done - _cuda_arch_vals="${_cuda_arch_vals:0:-1}" - export CUSTOM_CUDA_ARCH='-DCMAKE_CUDA_ARCHITECTURES='"${_cuda_arch_vals}" - - cp -r "${pkgbase}-${pkgver}" "${pkgbase}-${pkgver}-cuda" -} - -build() { - ## ROOT - mkdir -p "${srcdir}/build" - cd "${srcdir}/build" - - cmake -C "${srcdir}/settings.cmake" \ - ${CUSTOM_CMAKE_FLAGS} \ - "${srcdir}/${pkgbase}-${pkgver}" - make - - ## ROOT with CUDA - mkdir -p "${srcdir}/build-cuda" - cd "${srcdir}/build-cuda" - - cmake -C "${srcdir}/settings-cuda.cmake" \ - ${CUSTOM_CMAKE_FLAGS} \ - ${CUSTOM_CUDA_ARCH} \ - "${srcdir}/${pkgbase}-${pkgver}-cuda" - make -} - -_package() { - local bld_dir="${srcdir}/${1}" - cd "${bld_dir}" - - make DESTDIR="${pkgdir}" install - - # fix missing hardlinks for genreflex and rootcint - cd "${pkgdir}"/usr/bin - ln -f rootcling rootcint - ln -f rootcling genreflex - cd "${bld_dir}" # go back - - # rename the modulemap - mv "${pkgdir}"/usr/include/module.modulemap "${pkgdir}"/usr/include/root.modulemap - - # fix python env call - sed -e 's/@python@/python/' -i "${pkgdir}/usr/lib/root/cmdLineUtils.py" - - # try to deal with weird PyROOT, PyMVA and JupyROOT stuff - rm -rf "${pkgdir}/usr/lib/root/__pycache__" - local _pyver=$(get_pyver) - local _pydir="${pkgdir}/usr/lib/python${_pyver}/site-packages" - install -d "${_pydir}" - find "${pkgdir}/usr/lib/root" -maxdepth 1 -mindepth 1 \( -iname '*py*' -or -name '*Js*' -or -name 'ROOT' -or -name 'DistRDF' \) \ - ! \( -name '*EGPythia8*' -or -iname '*.rootmap' -or -iname '*.pcm' \) -print0 | while read -rd $'\0' _lib; do - _base=$(basename "${_lib}") - ln -sf "/usr/lib/root/${_base}" "${pkgdir}/usr/lib/python${_pyver}/site-packages/${_base}" - done - - # recompile pycache to strip $pkgdir from embedded paths - python -m compileall -d "/usr/lib/python${_pyver}" \ - "${pkgdir}/usr/lib/python${_pyver}" - python -O -m compileall -d "/usr/lib/python${_pyver}" \ - "${pkgdir}/usr/lib/python${_pyver}" - - # icon, shortcut and mime - install -Dm644 "${srcdir}/${pkgbase}-${pkgver}/icons/Root6Icon.png" \ - "${pkgdir}/usr/share/icons/hicolor/48x48/apps/root.png" - install -Dm644 "${srcdir}/${pkgbase}-${pkgver}/etc/root.desktop" \ - "${pkgdir}/usr/share/applications/root.desktop" - echo 'Icon=root.png' >> "${pkgdir}/usr/share/applications/root.desktop" - install -Dm644 "${srcdir}/root.xml" \ - "${pkgdir}/usr/share/mime/packages/root.xml" - - # use a file that pacman can track instead of adding directly to ld.so.conf - install -d "${pkgdir}/etc/ld.so.conf.d" - echo '/usr/lib/root' > "${pkgdir}/etc/ld.so.conf.d/root.conf" - - # create pkg-config file - local _prefix _exec_prefix _bindir _libdir _incdir _pkg_ver _libs _cflags _requires - _prefix="$("${pkgdir}"/usr/bin/root-config --prefix)" - _exec_prefix="$("${pkgdir}"/usr/bin/root-config --exec-prefix)" - _bindir="$("${pkgdir}"/usr/bin/root-config --bindir)" - _libdir="$("${pkgdir}"/usr/bin/root-config --libdir)" - _incdir="$("${pkgdir}"/usr/bin/root-config --incdir)" - _pkg_ver="$(sed -n 's,.*ROOT_RELEASE *\"\(.*\)\".*,\1,p' < "${pkgdir}"/usr/include/RVersion.h)" - _libs="$("${pkgdir}"/usr/bin/root-config --libs)" - _cflags="$("${pkgdir}"/usr/bin/root-config --cflags)" - printf -v _requires '%s,' "${depends[@]}" - cp "${srcdir}/root.pc.tpl" "${bld_dir}"/ - sed -e "s@_PREFIX@${_prefix}@" -e "s@_EXECPREFIX@${_exec_prefix}@" \ - -e "s@_LIBDIR@${_libdir}@" -e "s@_INCDIR@${_incdir}@" \ - -e "s@_PKGVERSION@${_pkg_ver}@" -e "s@_LIBRARIES@${_libs}@" \ - -e "s@_CFLAGS@${_cflags}@" -e "s@_UPSTREAM_URL@${url}@" \ - -e "s@_REQUIRES@${_requires}@" \ - -i "${bld_dir}/root.pc.tpl" - install -Dm644 "${bld_dir}/root.pc.tpl" "${pkgdir}/usr/lib/pkgconfig/root.pc" - - # install all licenses & docs - install -d "${pkgdir}/usr/share/licenses/roofit" - install "${srcdir}/ROOFIT_LICENSE" "${pkgdir}/usr/share/licenses/roofit/LICENSE" - install -d "${pkgdir}/usr/share/licenses/${pkgname}" - ln -s '/usr/share/doc/root/LICENSE' "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" - for _fold in fonts js; do - install -d "${pkgdir}/usr/share/licenses/${pkgname}/${_fold}" - ln -s "/usr/share/root/${_fold}/LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}/${_fold}"/ - done - ln -s '/usr/share/licenses/roofit' "${pkgdir}/usr/share/licenses/${pkgname}/roofit" - if [ "${pkgname}" != "root" ]; then - ln -s "/usr/share/licenses/${pkgname}" "${pkgdir}/usr/share/licenses/root" - ln -s "/usr/share/doc/root" "${pkgdir}/usr/share/doc/${pkgname}" - fi - - # install jupyter kernels and `root --notebook` config - install -d "${pkgdir}/usr/share/jupyter/kernels" - ln -s '/etc/root/notebook/kernels/root' "${pkgdir}/usr/share/jupyter/kernels/root" - install "${srcdir}/jupyter_notebook_config.py" "${pkgdir}/etc/root/notebook"/ - - # drop thisroot.* shell files - rm -rf "${pkgdir}"/usr/bin/thisroot.* - install -Dm755 "${srcdir}/thisroot.fail" "${pkgdir}/usr/bin/thisroot.sh" - for suffix in csh fish; do - ln -s '/usr/bin/thisroot.sh' "${pkgdir}/usr/bin/thisroot.${suffix}" - done - - # set correct LD_LIBRARY_PATH at runtime - sed -i.orig \ - -e "s@#Unix.*.Root.DynamicPath:.*@Unix.*.Root.DynamicPath: .:${_libdir}:/usr/lib@" \ - "${pkgdir}/etc/root/system.rootrc" -} - -package_root() { - optdepends+=('gcc-fortran: Enable the Fortran components of ROOT') - _package build -} - -package_root-cuda() { - pkgdesc='C++ data analysis framework and interpreter from CERN with GPU (CUDA) features enabled' - provides=('root') - conflicts=('root') - depends+=('cuda' 'cudnn') - optdepends+=('gcc-fortran: Enable the Fortran components of ROOT') - _package build-cuda -} Copied: root/repos/community-x86_64/PKGBUILD (from rev 1462977, root/trunk/PKGBUILD) =================================================================== --- PKGBUILD (rev 0) +++ PKGBUILD 2023-05-17 17:44:53 UTC (rev 1462978) @@ -0,0 +1,296 @@ +# Maintainer: Konstantin Gizdov < arch at kge dot pw > +# Contributor: Frank Siegert < frank.siegert at googlemail dot com > +# Contributor: Scott Lawrence < bytbox at gmail dot com > +# Contributor: Thomas Dziedzic < gostrc at gmail dot com > +# Contributor: Sebastian Voecking < voeck at web dot de > + +pkgbase=root +pkgname=('root' 'root-cuda') +pkgver=6.28.04 +pkgrel=1 +pkgdesc='C++ data analysis framework and interpreter from CERN' +arch=('x86_64') +url='https://root.cern' +license=('LGPL2.1' 'GPL' 'custom:University of California and Stanford University License') +options=(!lto) +makedepends=( + 'ccache' + 'cern-vdt' + 'chromium' + 'cfitsio' + 'cmake' + 'cuda' + 'cudnn' + 'gcc-fortran' + 'git' + 'go' + 'libxml2' + 'libmariadbclient' + 'ocaml' + 'ocaml-ctypes' + 'openmp' + 'openmpi' + 'openssl' + 'openui5' + 'postgresql-libs' + 'pythia8>=8.2.40-1' + 'python-pygments' + 'qt5-webengine' + 'sqlite' + 'unuran' + 'vc' + 'xrootd>5' + 'z3' +) +depends=( + 'blas' + 'desktop-file-utils' + 'fcgi' + 'fftw' + 'ftgl' + 'giflib' + 'gl2ps' + 'glew' + 'graphviz' + 'gsl' + 'hicolor-icon-theme' + 'libafterimage' + 'librsvg' + 'liburing' + 'libxpm' + 'nlohmann-json' + 'pcre' + 'python' + 'python-numpy' + 'tbb' + 'tex-gyre-fonts' + 'unixodbc' + 'xxhash>=0.6.5-1' + 'zstd' +) +optdepends=( + 'cern-vdt: Add a set of fast and vectorisable mathematical functions' + 'chromium: Support for WebGUI' + 'cfitsio: Read images and data from FITS files' + 'libmariadbclient: MySQL support' + 'libxml2: XML parser interface' + 'openmp: Support OpenMP extensions in Minuit2' + 'openmpi: Support OpenMPI extensions in Minuit2' + 'openssl: OpenSSL support' + 'openui5: JSROOT support' + 'postgresql-libs: PostgreSQL support' + 'pythia8>=8.2.40-1: Pythia8 EG support' + 'python-pygments: syntax highlighting in interactive console' + 'qt5-webengine: Support for WebGUI' + 'sqlite: SQLite support' + 'tcsh: Legacy CSH support' + 'unuran: Support non-uniform random numbers' + 'vc: Add types for portable and intuitive SIMD programming' + 'xrootd>5: Support remote file server and client' + 'z3: Suuport the Z3 theorem prover' +) +source=( + "https://root.cern.ch/download/root_v${pkgver}.source.tar.gz" + 'ROOFIT_LICENSE' + 'root.xml' + 'root.pc.tpl' + 'settings.cmake' + 'settings-cuda.cmake' + 'jupyter_notebook_config.py' + 'nbman-for-arch.patch' + 'thisroot.fail' +) +b2sums=('17e5714216dfbfece0e901abf6ed4c986c9efb3e63a57dd214d04af3851b3af8b58a5dffa89320a9a1061c506c71ad1091f358d83c352585c0f48f33eb5613ec' + '5da6218a171ee0fbd7b03518dde22787bb0e478a18dcf227eea4e65598c0a0bb299747c6503ad3026804e1a4dbcf4d2b674b83e6ed6e482dd3d14ceb4646dee8' + 'b5defce795dbfeee75dab0cc4c20ac84fe55cb11e9acdd5e75831b6db98e6190621867a65427ab44d93b6fe30398db6fd191defb029a6dcd0af087c1e5115451' + '5e4c589fd9e226fcf7ff9ab880687c10ff0f7b7c03fdf12fc477622d6ec291e2dc62e7f5ce7b68856bccf37b64b2f4331f46788548d39fdca57fd832d1f3b437' + 'fb7879d5961a4714ef2cbd33a4872d88dc0938ee87935c39b89b5973b75847413d941cfcb1af1669cb62b262ba5ab54f233dc0afd3e35c85b958622edfacd114' + '36c3543d008eda4b0200b730d3ca795de5dca0fee0ba6f98f1e1edfc820a92dfd1352a558c1593f2f8590b3febabfb74857ca59211a71090106ce292e399dd09' + '47a7b4491f1455ddb02c3793c7fbaf05184dba9a5fc9d7378608727e69c778dd5832c49f11f4d2c8204dcffc86fc4786b5616fb381c4e3e629d78db9c86913c5' + 'ec89007c4441d0010c0bfa90ca81e78ceeeb97bacaae2cc4814bd9a781062add80eaa6e4b8cf59c1a61e89ca8a14f3af6f1163766550f6db4154f671e5176d39' + '3501c944e8cab13fe9f5c8ab75a7cdb4b59bc5b00df4bf45ad246ab8cd6cb1ebde19369bc688458c97ff5f5acd4e86fc19b4c8f57ab4cb422d0a5eacac081138') + +get_pyver () { + python -c 'import sys; print(str(sys.version_info[0]) + "." + str(sys.version_info[1]))' +} + +prepare() { + local src + for src in "${source[@]}"; do + src="${src%%::*}" + src="${src##*/}" + [[ $src = *.patch ]] || continue + echo " -> Applying patch $src..." + patch -Np1 -i "../$src" -d "${srcdir}/${pkgbase}-${pkgver}" + done + + # specify some custom flags + # needed by vc to link properly + CUSTOM_CMAKE_FLAGS="-DTARGET_ARCHITECTURE:STRING=generic" + # make sure it finds python + CUSTOM_CMAKE_FLAGS+=" -DPYTHON_EXECUTABLE:PATH=/usr/bin/python" + # need to set install prefix like so + CUSTOM_CMAKE_FLAGS+=" -DINSTALL_PREFIX=/usr" + export CUSTOM_CMAKE_FLAGS + + # update system flags + # don't let ROOT play around with lib paths + export CPPFLAGS="${CPPFLAGS} -DIS_RPATH_BUILD=1" + # make sure pthread gets detected + CUSTOM_COMPILER_FLAGS="${CPPFLAGS} -pthread" + export CFLAGS="${CFLAGS} ${CUSTOM_COMPILER_FLAGS}" + export CXXFLAGS="${CXXFLAGS} ${CUSTOM_COMPILER_FLAGS}" + export LDFLAGS="${LDFLAGS} ${CUSTOM_COMPILER_FLAGS}" + + # go flags for built-in clang + export CGO_LDFLAGS="${LDFLAGS}" + export GOFLAGS="-buildmode=pie -trimpath -modcacherw" + + # pass CUDA architectures to nvcc calls + # Not yet supported in root: TBD + local _cuda_arches=('52' '53' '60' '61' '62' '70' '72' '75' '80' '86' '87' '89' '90') + local _cuda_arch_vals='' + for _cuda_arch in "${_cuda_arches[@]}"; do + _cuda_arch_vals+="${_cuda_arch}-real;${_cuda_arch}-virtual;" + done + _cuda_arch_vals="${_cuda_arch_vals:0:-1}" + export CUSTOM_CUDA_ARCH='-DCMAKE_CUDA_ARCHITECTURES='"${_cuda_arch_vals}" + + cp -r "${pkgbase}-${pkgver}" "${pkgbase}-${pkgver}-cuda" +} + +build() { + ## ROOT + mkdir -p "${srcdir}/build" + cd "${srcdir}/build" + + cmake -C "${srcdir}/settings.cmake" \ + ${CUSTOM_CMAKE_FLAGS} \ + "${srcdir}/${pkgbase}-${pkgver}" + make + + ## ROOT with CUDA + mkdir -p "${srcdir}/build-cuda" + cd "${srcdir}/build-cuda" + + cmake -C "${srcdir}/settings-cuda.cmake" \ + ${CUSTOM_CMAKE_FLAGS} \ + ${CUSTOM_CUDA_ARCH} \ + "${srcdir}/${pkgbase}-${pkgver}-cuda" + make +} + +_package() { + local bld_dir="${srcdir}/${1}" + cd "${bld_dir}" + + make DESTDIR="${pkgdir}" install + + # fix missing hardlinks for genreflex and rootcint + cd "${pkgdir}"/usr/bin + ln -f rootcling rootcint + ln -f rootcling genreflex + cd "${bld_dir}" # go back + + # rename the modulemap + mv "${pkgdir}"/usr/include/module.modulemap "${pkgdir}"/usr/include/root.modulemap + + # fix python env call + sed -e 's/@python@/python/' -i "${pkgdir}/usr/lib/root/cmdLineUtils.py" + + # try to deal with weird PyROOT, PyMVA and JupyROOT stuff + rm -rf "${pkgdir}/usr/lib/root/__pycache__" + local _pyver=$(get_pyver) + local _pydir="${pkgdir}/usr/lib/python${_pyver}/site-packages" + install -d "${_pydir}" + find "${pkgdir}/usr/lib/root" -maxdepth 1 -mindepth 1 \( -iname '*py*' -or -name '*Js*' -or -name 'ROOT' -or -name 'DistRDF' \) \ + ! \( -name '*EGPythia8*' -or -iname '*.rootmap' -or -iname '*.pcm' \) -print0 | while read -rd $'\0' _lib; do + _base=$(basename "${_lib}") + ln -sf "/usr/lib/root/${_base}" "${pkgdir}/usr/lib/python${_pyver}/site-packages/${_base}" + done + + # recompile pycache to strip $pkgdir from embedded paths + python -m compileall -d "/usr/lib/python${_pyver}" \ + "${pkgdir}/usr/lib/python${_pyver}" + python -O -m compileall -d "/usr/lib/python${_pyver}" \ + "${pkgdir}/usr/lib/python${_pyver}" + + # icon, shortcut and mime + install -Dm644 "${srcdir}/${pkgbase}-${pkgver}/icons/Root6Icon.png" \ + "${pkgdir}/usr/share/icons/hicolor/48x48/apps/root.png" + install -Dm644 "${srcdir}/${pkgbase}-${pkgver}/etc/root.desktop" \ + "${pkgdir}/usr/share/applications/root.desktop" + echo 'Icon=root.png' >> "${pkgdir}/usr/share/applications/root.desktop" + install -Dm644 "${srcdir}/root.xml" \ + "${pkgdir}/usr/share/mime/packages/root.xml" + + # use a file that pacman can track instead of adding directly to ld.so.conf + install -d "${pkgdir}/etc/ld.so.conf.d" + echo '/usr/lib/root' > "${pkgdir}/etc/ld.so.conf.d/root.conf" + + # create pkg-config file + local _prefix _exec_prefix _bindir _libdir _incdir _pkg_ver _libs _cflags _requires + _prefix="$("${pkgdir}"/usr/bin/root-config --prefix)" + _exec_prefix="$("${pkgdir}"/usr/bin/root-config --exec-prefix)" + _bindir="$("${pkgdir}"/usr/bin/root-config --bindir)" + _libdir="$("${pkgdir}"/usr/bin/root-config --libdir)" + _incdir="$("${pkgdir}"/usr/bin/root-config --incdir)" + _pkg_ver="$(sed -n 's,.*ROOT_RELEASE *\"\(.*\)\".*,\1,p' < "${pkgdir}"/usr/include/RVersion.h)" + _libs="$("${pkgdir}"/usr/bin/root-config --libs)" + _cflags="$("${pkgdir}"/usr/bin/root-config --cflags)" + printf -v _requires '%s,' "${depends[@]}" + cp "${srcdir}/root.pc.tpl" "${bld_dir}"/ + sed -e "s@_PREFIX@${_prefix}@" -e "s@_EXECPREFIX@${_exec_prefix}@" \ + -e "s@_LIBDIR@${_libdir}@" -e "s@_INCDIR@${_incdir}@" \ + -e "s@_PKGVERSION@${_pkg_ver}@" -e "s@_LIBRARIES@${_libs}@" \ + -e "s@_CFLAGS@${_cflags}@" -e "s@_UPSTREAM_URL@${url}@" \ + -e "s@_REQUIRES@${_requires}@" \ + -i "${bld_dir}/root.pc.tpl" + install -Dm644 "${bld_dir}/root.pc.tpl" "${pkgdir}/usr/lib/pkgconfig/root.pc" + + # install all licenses & docs + install -d "${pkgdir}/usr/share/licenses/roofit" + install "${srcdir}/ROOFIT_LICENSE" "${pkgdir}/usr/share/licenses/roofit/LICENSE" + install -d "${pkgdir}/usr/share/licenses/${pkgname}" + ln -s '/usr/share/doc/root/LICENSE' "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" + for _fold in fonts js; do + install -d "${pkgdir}/usr/share/licenses/${pkgname}/${_fold}" + ln -s "/usr/share/root/${_fold}/LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}/${_fold}"/ + done + ln -s '/usr/share/licenses/roofit' "${pkgdir}/usr/share/licenses/${pkgname}/roofit" + if [ "${pkgname}" != "root" ]; then + ln -s "/usr/share/licenses/${pkgname}" "${pkgdir}/usr/share/licenses/root" + ln -s "/usr/share/doc/root" "${pkgdir}/usr/share/doc/${pkgname}" + fi + + # install jupyter kernels and `root --notebook` config + install -d "${pkgdir}/usr/share/jupyter/kernels" + ln -s '/etc/root/notebook/kernels/root' "${pkgdir}/usr/share/jupyter/kernels/root" + install "${srcdir}/jupyter_notebook_config.py" "${pkgdir}/etc/root/notebook"/ + + # drop thisroot.* shell files + rm -rf "${pkgdir}"/usr/bin/thisroot.* + install -Dm755 "${srcdir}/thisroot.fail" "${pkgdir}/usr/bin/thisroot.sh" + for suffix in csh fish; do + ln -s '/usr/bin/thisroot.sh' "${pkgdir}/usr/bin/thisroot.${suffix}" + done + + # set correct LD_LIBRARY_PATH at runtime + sed -i.orig \ + -e "s@#Unix.*.Root.DynamicPath:.*@Unix.*.Root.DynamicPath: .:${_libdir}:/usr/lib@" \ + "${pkgdir}/etc/root/system.rootrc" +} + +package_root() { + optdepends+=('gcc-fortran: Enable the Fortran components of ROOT') + _package build +} + +package_root-cuda() { + pkgdesc='C++ data analysis framework and interpreter from CERN with GPU (CUDA) features enabled' + provides=('root') + conflicts=('root') + depends+=('cuda' 'cudnn') + optdepends+=('gcc-fortran: Enable the Fortran components of ROOT') + _package build-cuda +} Deleted: ROOFIT_LICENSE =================================================================== --- ROOFIT_LICENSE 2023-05-17 17:44:36 UTC (rev 1462977) +++ ROOFIT_LICENSE 2023-05-17 17:44:53 UTC (rev 1462978) @@ -1,22 +0,0 @@ -RooFit --- Copyright (c) 2000-2005, Regents of the University of California and Stanford University -All rights reserved. - -Redistribution and use in source and binary forms, with or without modification, -are permitted provided that the following conditions are met: - - - Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - - Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS -OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE -COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER -CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN -IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Copied: root/repos/community-x86_64/ROOFIT_LICENSE (from rev 1462977, root/trunk/ROOFIT_LICENSE) =================================================================== --- ROOFIT_LICENSE (rev 0) +++ ROOFIT_LICENSE 2023-05-17 17:44:53 UTC (rev 1462978) @@ -0,0 +1,22 @@ +RooFit --- Copyright (c) 2000-2005, Regents of the University of California and Stanford University +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + - Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS +OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN +IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Deleted: jupyter_notebook_config.py =================================================================== --- jupyter_notebook_config.py 2023-05-17 17:44:36 UTC (rev 1462977) +++ jupyter_notebook_config.py 2023-05-17 17:44:53 UTC (rev 1462978) @@ -1 +0,0 @@ -c.NotebookApp.ip = '*' Copied: root/repos/community-x86_64/jupyter_notebook_config.py (from rev 1462977, root/trunk/jupyter_notebook_config.py) =================================================================== --- jupyter_notebook_config.py (rev 0) +++ jupyter_notebook_config.py 2023-05-17 17:44:53 UTC (rev 1462978) @@ -0,0 +1 @@ +c.NotebookApp.ip = '*' Deleted: nbman-for-arch.patch =================================================================== --- nbman-for-arch.patch 2023-05-17 17:44:36 UTC (rev 1462977) +++ nbman-for-arch.patch 2023-05-17 17:44:53 UTC (rev 1462978) @@ -1,180 +0,0 @@ -diff --color -aur --color root-6.26.00-old/main/src/nbmain.cxx root-6.26.00-new/main/src/nbmain.cxx ---- root-6.26.00-old/main/src/nbmain.cxx 2022-03-03 08:39:52.000000000 +0200 -+++ root-6.26.00-new/main/src/nbmain.cxx 2022-03-08 17:36:29.881271963 +0200 -@@ -34,10 +34,6 @@ - #define NB_OPT "notebook" - #define JUPYTER_CONF_DIR_V "JUPYTER_CONFIG_DIR" - #define JUPYTER_PATH_V "JUPYTER_PATH" --#define NB_CONF_DIR "notebook" --#define ROOTNB_DIR ".rootnb" --#define COMMIT_FILE ".rootcommit" --#define JUPYTER_CONFIG "jupyter_notebook_config.py" - - using namespace std; - -@@ -50,164 +46,12 @@ - #endif - - //////////////////////////////////////////////////////////////////////////////// --/// Checks whether ROOT notebook files are installed and they are --/// the current version. -- --static int CheckNbInstallation(string dir) --{ -- string commit(gROOT->GetGitCommit()); -- string inputfname(dir + pathsep + ROOTNB_DIR + pathsep + COMMIT_FILE); -- ifstream in(inputfname); -- if (in.is_open()) { -- string line; -- in >> line; -- in.close(); -- if (line.compare(commit) == 0) return 0; // already installed -- else return -1; // install, it's outdated -- } -- else if (gSystem->AccessPathName(inputfname.c_str())) { -- // There is no installation -- return -1; -- } -- else { -- fprintf(stderr, -- "Error checking notebook installation -- cannot open %s\n", -- inputfname.c_str()); -- return -2; -- } --} -- --//////////////////////////////////////////////////////////////////////////////// --/// Installs ROOT notebook files in the user's home directory. -- --static bool InstallNbFiles(string source, string dest) --{ -- // Create installation directory -- if (gSystem->AccessPathName(dest.c_str())) { -- if (gSystem->mkdir(dest.c_str())) { -- fprintf(stderr, -- "Error installing notebook configuration files -- cannot create directory %s\n", -- dest.c_str()); -- return false; -- } -- } -- -- // Copy files in source to dest -- TSystemDirectory dir(source.c_str(), source.c_str()); -- std::unique_ptr<TList> files; -- files.reset(dir.GetListOfFiles()); -- if (files) { -- TSystemFile *file; -- TListIter it(files.get()); -- while ((file = (TSystemFile*)it())) { -- TString s = file->GetName(); -- string fname(s.Data()); -- string sourcefile = source + pathsep + fname; -- string destfile = dest + pathsep + fname; -- if (!file->IsDirectory()) { -- if (gSystem->CopyFile(sourcefile.c_str(), destfile.c_str(), true)) { -- fprintf(stderr, -- "Error installing notebook configuration files -- cannot copy file %s to %s\n", -- sourcefile.c_str(), destfile.c_str()); -- return false; -- } -- } -- else if (fname.compare(".") && fname.compare("..") && fname.compare("html")) { -- if (!InstallNbFiles(sourcefile, destfile)) -- return false; -- } -- } -- } -- -- return true; --} -- --//////////////////////////////////////////////////////////////////////////////// --/// Creates the Jupyter notebook configuration file that sets the --/// necessary environment. -- --static bool CreateJupyterConfig(string dest, string rootbin, string rootlib, string rootdata) --{ -- string jupyconfig = dest + pathsep + JUPYTER_CONFIG; -- ofstream out(jupyconfig, ios::trunc); -- if (out.is_open()) { -- out << "import os" << endl; --#ifdef WIN32 -- std::replace( rootbin.begin(), rootbin.end(), '\\', '/'); -- std::replace( rootdata.begin(), rootdata.end(), '\\', '/'); -- out << "rootbin = '" << rootbin << "'" << endl; -- string jsrootsys = rootdata + "/js/"; -- out << "os.environ['PYTHONPATH'] = '%s' % rootbin + ';' + os.getenv('PYTHONPATH', '')" << endl; -- out << "os.environ['PATH'] = '%s;%s/bin' % (rootbin,rootbin) + ';' + os.getenv('PATH', '')" << endl; --#else -- out << "rootbin = '" << rootbin << "'" << endl; -- out << "rootlib = '" << rootlib << "'" << endl; -- string jsrootsys = rootdata + "/js/"; -- out << "os.environ['PYTHONPATH'] = '%s' % rootlib + ':' + os.getenv('PYTHONPATH', '')" << endl; -- out << "os.environ['PATH'] = '%s:%s/bin' % (rootbin,rootbin) + ':' + os.getenv('PATH', '')" << endl; -- out << "os.environ['LD_LIBRARY_PATH'] = '%s' % rootlib + ':' + os.getenv('LD_LIBRARY_PATH', '')" << endl; --#endif -- out << "c.NotebookApp.extra_static_paths = ['" << jsrootsys << "']" << endl; -- out.close(); -- return true; -- } -- else { -- fprintf(stderr, -- "Error installing notebook configuration files -- cannot create IPython config file at %s\n", -- jupyconfig.c_str()); -- return false; -- } --} -- --//////////////////////////////////////////////////////////////////////////////// --/// Creates a file that stores the current commit id in it. -- --static bool CreateStamp(string dest) --{ -- ofstream out(dest + pathsep + COMMIT_FILE, ios::trunc); -- if (out.is_open()) { -- out << gROOT->GetGitCommit(); -- out.close(); -- return true; -- } -- else { -- fprintf(stderr, -- "Error installing notebook configuration files -- cannot create %s\n", -- COMMIT_FILE); -- return false; -- } --} -- --//////////////////////////////////////////////////////////////////////////////// - /// Spawn a Jupyter notebook customised by ROOT. - - int main(int argc, char **argv) - { -- string rootbin(TROOT::GetBinDir().Data()); -- string rootlib(TROOT::GetLibDir().Data()); -- string rootetc(TROOT::GetEtcDir().Data()); -- string rootdata(TROOT::GetDataDir().Data()); -- -- // If needed, install ROOT notebook files in the user's home directory --#ifdef WIN32 -- string homedir(getenv("USERPROFILE")); --#else -- string homedir(getenv("HOME")); --#endif -- int inst = CheckNbInstallation(homedir); -- if (inst == -1) { -- // The etc directory contains the ROOT notebook files to install -- string source(rootetc + pathsep + NB_CONF_DIR); -- string dest(homedir + pathsep + ROOTNB_DIR); -- bool res = InstallNbFiles(source, dest) && -- CreateJupyterConfig(dest, rootbin, rootlib, rootdata) && -- CreateStamp(dest); -- if (!res) return 1; -- } -- else if (inst == -2) return 1; -- - // Set IPython directory for the ROOT notebook flavour -- string rootnbpath = homedir + pathsep + ROOTNB_DIR; -+ string rootnbpath = pathsep + string("etc") + pathsep + string("root") + pathsep + string("notebook"); - string jupyconfdir(JUPYTER_CONF_DIR_V + ("=" + rootnbpath)); - string jupypathdir(JUPYTER_PATH_V + ("=" + rootnbpath)); - putenv((char *)jupyconfdir.c_str()); Copied: root/repos/community-x86_64/nbman-for-arch.patch (from rev 1462977, root/trunk/nbman-for-arch.patch) =================================================================== --- nbman-for-arch.patch (rev 0) +++ nbman-for-arch.patch 2023-05-17 17:44:53 UTC (rev 1462978) @@ -0,0 +1,180 @@ +diff --color -aur --color root-6.26.00-old/main/src/nbmain.cxx root-6.26.00-new/main/src/nbmain.cxx +--- root-6.26.00-old/main/src/nbmain.cxx 2022-03-03 08:39:52.000000000 +0200 ++++ root-6.26.00-new/main/src/nbmain.cxx 2022-03-08 17:36:29.881271963 +0200 +@@ -34,10 +34,6 @@ + #define NB_OPT "notebook" + #define JUPYTER_CONF_DIR_V "JUPYTER_CONFIG_DIR" + #define JUPYTER_PATH_V "JUPYTER_PATH" +-#define NB_CONF_DIR "notebook" +-#define ROOTNB_DIR ".rootnb" +-#define COMMIT_FILE ".rootcommit" +-#define JUPYTER_CONFIG "jupyter_notebook_config.py" + + using namespace std; + +@@ -50,164 +46,12 @@ + #endif + + //////////////////////////////////////////////////////////////////////////////// +-/// Checks whether ROOT notebook files are installed and they are +-/// the current version. +- +-static int CheckNbInstallation(string dir) +-{ +- string commit(gROOT->GetGitCommit()); +- string inputfname(dir + pathsep + ROOTNB_DIR + pathsep + COMMIT_FILE); +- ifstream in(inputfname); +- if (in.is_open()) { +- string line; +- in >> line; +- in.close(); +- if (line.compare(commit) == 0) return 0; // already installed +- else return -1; // install, it's outdated +- } +- else if (gSystem->AccessPathName(inputfname.c_str())) { +- // There is no installation +- return -1; +- } +- else { +- fprintf(stderr, +- "Error checking notebook installation -- cannot open %s\n", +- inputfname.c_str()); +- return -2; +- } +-} +- +-//////////////////////////////////////////////////////////////////////////////// +-/// Installs ROOT notebook files in the user's home directory. +- +-static bool InstallNbFiles(string source, string dest) +-{ +- // Create installation directory +- if (gSystem->AccessPathName(dest.c_str())) { +- if (gSystem->mkdir(dest.c_str())) { +- fprintf(stderr, +- "Error installing notebook configuration files -- cannot create directory %s\n", +- dest.c_str()); +- return false; +- } +- } +- +- // Copy files in source to dest +- TSystemDirectory dir(source.c_str(), source.c_str()); +- std::unique_ptr<TList> files; +- files.reset(dir.GetListOfFiles()); +- if (files) { +- TSystemFile *file; +- TListIter it(files.get()); +- while ((file = (TSystemFile*)it())) { +- TString s = file->GetName(); +- string fname(s.Data()); +- string sourcefile = source + pathsep + fname; +- string destfile = dest + pathsep + fname; +- if (!file->IsDirectory()) { +- if (gSystem->CopyFile(sourcefile.c_str(), destfile.c_str(), true)) { +- fprintf(stderr, +- "Error installing notebook configuration files -- cannot copy file %s to %s\n", +- sourcefile.c_str(), destfile.c_str()); +- return false; +- } +- } +- else if (fname.compare(".") && fname.compare("..") && fname.compare("html")) { +- if (!InstallNbFiles(sourcefile, destfile)) +- return false; +- } +- } +- } +- +- return true; +-} +- +-//////////////////////////////////////////////////////////////////////////////// +-/// Creates the Jupyter notebook configuration file that sets the +-/// necessary environment. +- +-static bool CreateJupyterConfig(string dest, string rootbin, string rootlib, string rootdata) +-{ +- string jupyconfig = dest + pathsep + JUPYTER_CONFIG; +- ofstream out(jupyconfig, ios::trunc); +- if (out.is_open()) { +- out << "import os" << endl; +-#ifdef WIN32 +- std::replace( rootbin.begin(), rootbin.end(), '\\', '/'); +- std::replace( rootdata.begin(), rootdata.end(), '\\', '/'); +- out << "rootbin = '" << rootbin << "'" << endl; +- string jsrootsys = rootdata + "/js/"; +- out << "os.environ['PYTHONPATH'] = '%s' % rootbin + ';' + os.getenv('PYTHONPATH', '')" << endl; +- out << "os.environ['PATH'] = '%s;%s/bin' % (rootbin,rootbin) + ';' + os.getenv('PATH', '')" << endl; +-#else +- out << "rootbin = '" << rootbin << "'" << endl; +- out << "rootlib = '" << rootlib << "'" << endl; +- string jsrootsys = rootdata + "/js/"; +- out << "os.environ['PYTHONPATH'] = '%s' % rootlib + ':' + os.getenv('PYTHONPATH', '')" << endl; +- out << "os.environ['PATH'] = '%s:%s/bin' % (rootbin,rootbin) + ':' + os.getenv('PATH', '')" << endl; +- out << "os.environ['LD_LIBRARY_PATH'] = '%s' % rootlib + ':' + os.getenv('LD_LIBRARY_PATH', '')" << endl; +-#endif +- out << "c.NotebookApp.extra_static_paths = ['" << jsrootsys << "']" << endl; +- out.close(); +- return true; +- } +- else { +- fprintf(stderr, +- "Error installing notebook configuration files -- cannot create IPython config file at %s\n", +- jupyconfig.c_str()); +- return false; +- } +-} +- +-//////////////////////////////////////////////////////////////////////////////// +-/// Creates a file that stores the current commit id in it. +- +-static bool CreateStamp(string dest) +-{ +- ofstream out(dest + pathsep + COMMIT_FILE, ios::trunc); +- if (out.is_open()) { +- out << gROOT->GetGitCommit(); +- out.close(); +- return true; +- } +- else { +- fprintf(stderr, +- "Error installing notebook configuration files -- cannot create %s\n", +- COMMIT_FILE); +- return false; +- } +-} +- +-//////////////////////////////////////////////////////////////////////////////// + /// Spawn a Jupyter notebook customised by ROOT. + + int main(int argc, char **argv) + { +- string rootbin(TROOT::GetBinDir().Data()); +- string rootlib(TROOT::GetLibDir().Data()); +- string rootetc(TROOT::GetEtcDir().Data()); +- string rootdata(TROOT::GetDataDir().Data()); +- +- // If needed, install ROOT notebook files in the user's home directory +-#ifdef WIN32 +- string homedir(getenv("USERPROFILE")); +-#else +- string homedir(getenv("HOME")); +-#endif +- int inst = CheckNbInstallation(homedir); +- if (inst == -1) { +- // The etc directory contains the ROOT notebook files to install +- string source(rootetc + pathsep + NB_CONF_DIR); +- string dest(homedir + pathsep + ROOTNB_DIR); +- bool res = InstallNbFiles(source, dest) && +- CreateJupyterConfig(dest, rootbin, rootlib, rootdata) && +- CreateStamp(dest); +- if (!res) return 1; +- } +- else if (inst == -2) return 1; +- + // Set IPython directory for the ROOT notebook flavour +- string rootnbpath = homedir + pathsep + ROOTNB_DIR; ++ string rootnbpath = pathsep + string("etc") + pathsep + string("root") + pathsep + string("notebook"); + string jupyconfdir(JUPYTER_CONF_DIR_V + ("=" + rootnbpath)); + string jupypathdir(JUPYTER_PATH_V + ("=" + rootnbpath)); + putenv((char *)jupyconfdir.c_str()); Deleted: root.pc.tpl =================================================================== --- root.pc.tpl 2023-05-17 17:44:36 UTC (rev 1462977) +++ root.pc.tpl 2023-05-17 17:44:53 UTC (rev 1462978) @@ -1,12 +0,0 @@ -prefix=_PREFIX -exec_prefix=_EXECPREFIX -libdir=_LIBDIR -includedir=_INCDIR - -Name: ROOT -Description: C++ data analysis framework and interpreter from CERN -Version: _PKGVERSION -URL: _UPSTREAM_URL -Requires: _REQUIRES -Libs: _LIBRARIES -Cflags: _CFLAGS Copied: root/repos/community-x86_64/root.pc.tpl (from rev 1462977, root/trunk/root.pc.tpl) =================================================================== --- root.pc.tpl (rev 0) +++ root.pc.tpl 2023-05-17 17:44:53 UTC (rev 1462978) @@ -0,0 +1,12 @@ +prefix=_PREFIX +exec_prefix=_EXECPREFIX +libdir=_LIBDIR +includedir=_INCDIR + +Name: ROOT +Description: C++ data analysis framework and interpreter from CERN +Version: _PKGVERSION +URL: _UPSTREAM_URL +Requires: _REQUIRES +Libs: _LIBRARIES +Cflags: _CFLAGS Deleted: root.xml =================================================================== --- root.xml 2023-05-17 17:44:36 UTC (rev 1462977) +++ root.xml 2023-05-17 17:44:53 UTC (rev 1462978) @@ -1,14 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info"> - <mime-type type="application/x-root"> - <comment>ROOT file</comment> - <comment xml:lang="de">ROOT-Datei</comment> - <comment xml:lang="en">ROOT-File</comment> - <comment xml:lang="fr">ROOT-Fichier</comment> - <comment xml:lang="it">ROOT-File</comment> - <glob pattern="*.root"/> - <magic priority="80"> - <match value="root" type="string" offset="0:64"/> - </magic> - </mime-type> -</mime-info> Copied: root/repos/community-x86_64/root.xml (from rev 1462977, root/trunk/root.xml) =================================================================== --- root.xml (rev 0) +++ root.xml 2023-05-17 17:44:53 UTC (rev 1462978) @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info"> + <mime-type type="application/x-root"> + <comment>ROOT file</comment> + <comment xml:lang="de">ROOT-Datei</comment> + <comment xml:lang="en">ROOT-File</comment> + <comment xml:lang="fr">ROOT-Fichier</comment> + <comment xml:lang="it">ROOT-File</comment> + <glob pattern="*.root"/> + <magic priority="80"> + <match value="root" type="string" offset="0:64"/> + </magic> + </mime-type> +</mime-info> Deleted: settings-cuda.cmake =================================================================== --- settings-cuda.cmake 2023-05-17 17:44:36 UTC (rev 1462977) +++ settings-cuda.cmake 2023-05-17 17:44:53 UTC (rev 1462978) @@ -1,115 +0,0 @@ -set (CMAKE_BUILD_TYPE Release CACHE STRING "" FORCE) -set (BUILD_SHARED_LIBS ON CACHE BOOL "" FORCE) -set (CMAKE_INSTALL_PREFIX /usr CACHE PATH "" FORCE) -set (CMAKE_INSTALL_CMAKEDIR /usr/lib/cmake/ROOT CACHE PATH "" FORCE) -set (CMAKE_INSTALL_BINDIR /usr/bin CACHE PATH "" FORCE) -set (CMAKE_INSTALL_LIBDIR /usr/lib/root CACHE PATH "" FORCE) -set (CMAKE_INSTALL_INCLUDEDIR /usr/include CACHE PATH "" FORCE) -set (CMAKE_INSTALL_SYSCONFDIR /etc/root CACHE PATH "" FORCE) -set (CMAKE_INSTALL_DATAROOTDIR /usr/share CACHE PATH "" FORCE) -set (CMAKE_CXX_STANDARD 17 CACHE STRING "" FORCE) -set (CMAKE_CUDA_STANDARD 17 CACHE STRING "" FORCE) -set (LLVM_CXX_STD c++17 CACHE STRING "" FORCE) -set (LLVM_BUILD_TYPE Release CACHE STRING "" FORCE) -set (PYTHIA8_DATA /usr/share/pythia8/xmldoc CACHE PATH "" FORCE) # sync with pythia8 package -set (GLEW_DIR /usr/include/GL CACHE PATH "" FORCE) # need to set manually -set (alien OFF CACHE BOOL "" FORCE) -set (all OFF CACHE BOOL "" FORCE) -set (asimage ON CACHE BOOL "" FORCE) -set (builtin_afterimage OFF CACHE BOOL "" FORCE) -set (builtin_clang ON CACHE BOOL "" FORCE) -set (CLANG_ENABLE_STATIC_ANALYZER ON CACHE BOOL "" FORCE) -set (CLANG_ANALYZER_BUILD_Z3 ON CACHE BOOL "" FORCE) -set (builtin_cfitsio OFF CACHE BOOL "" FORCE) -set (builtin_davix OFF CACHE BOOL "" FORCE) -set (builtin_fftw3 OFF CACHE BOOL "" FORCE) -set (builtin_ftgl OFF CACHE BOOL "" FORCE) -set (builtin_freetype OFF CACHE BOOL "" FORCE) -set (builtin_gl2ps OFF CACHE BOOL "" FORCE) -set (builtin_glew OFF CACHE BOOL "" FORCE) -set (builtin_gsl OFF CACHE BOOL "" FORCE) -set (builtin_lzma OFF CACHE BOOL "" FORCE) -set (builtin_nlohmannjson OFF CACHE BOOL "" FORCE) -set (builtin_openui5 OFF CACHE BOOL "" FORCE) -set (builtin_llvm ON CACHE BOOL "" FORCE) -set (builtin_openssl OFF CACHE BOOL "" FORCE) -set (builtin_pcre OFF CACHE BOOL "" FORCE) -set (builtin_tbb OFF CACHE BOOL "" FORCE) -set (builtin_unuran OFF CACHE BOOL "" FORCE) -set (builtin_vc OFF CACHE BOOL "" FORCE) -set (builtin_xxhash OFF CACHE BOOL "" FORCE) -set (builtin_xrootd OFF CACHE BOOL "" FORCE) -set (builtin_zlib OFF CACHE BOOL "" FORCE) -set (ccache ON CACHE BOOL "" FORCE) -set (clad ON CACHE BOOL "" FORCE) -set (cocoa OFF CACHE BOOL "" FORCE) # MacOS only -set (cuda ON CACHE BOOL "" FORCE) -set (cudnn ON CACHE BOOL "" FORCE) -set (dataframe ON CACHE BOOL "" FORCE) -set (davix OFF CACHE BOOL "" FORCE) -set (dcache OFF CACHE BOOL "" FORCE) -set (exceptions ON CACHE BOOL "" FORCE) -set (fail-on-missing ON CACHE BOOL "" FORCE) -set (fcgi ON CACHE BOOL "" FORCE) -set (fftw3 ON CACHE BOOL "" FORCE) -set (fitsio ON CACHE BOOL "" FORCE) -set (fortran ON CACHE BOOL "" FORCE) -set (gdml ON CACHE BOOL "" FORCE) -set (genvector ON CACHE BOOL "" FORCE) -set (gfal OFF CACHE BOOL "" FORCE) -set (gl2ps ON CACHE BOOL "" FORCE) -set (gminimal OFF CACHE BOOL "" FORCE) -set (gnuinstall ON CACHE BOOL "" FORCE) -set (gsl_shared ON CACHE BOOL "" FORCE) -set (gviz ON CACHE BOOL "" FORCE) -set (http ON CACHE BOOL "" FORCE) -set (imt ON CACHE BOOL "" FORCE) -set (jemalloc OFF CACHE BOOL "" FORCE) -set (mathmore ON CACHE BOOL "" FORCE) -set (minimal OFF CACHE BOOL "" FORCE) -set (minuit2 ON CACHE BOOL "" FORCE) -set (minuit2_mpi ON CACHE BOOL "" FORCE) -set (minuit2_omp ON CACHE BOOL "" FORCE) -set (mlp ON CACHE BOOL "" FORCE) -set (monalisa OFF CACHE BOOL "" FORCE) -set (mpi ON CACHE BOOL "" FORCE) -set (mt ON CACHE BOOL "" FORCE) -set (mysql ON CACHE BOOL "" FORCE) -set (odbc ON CACHE BOOL "" FORCE) -set (opengl ON CACHE BOOL "" FORCE) -set (OpenGL_GL_PREFERENCE GLVND CACHE STRING "" FORCE) # use new policy since 3.11 -set (oracle OFF CACHE BOOL "" FORCE) -set (pgsql ON CACHE BOOL "" FORCE) -set (pythia6 OFF CACHE BOOL "" FORCE) -set (pythia6_nolink OFF CACHE BOOL "" FORCE) -set (pythia8 ON CACHE BOOL "" FORCE) -set (pyroot ON CACHE BOOL "" FORCE) -set (qt5web ON CACHE BOOL "" FORCE) -set (roofit ON CACHE BOOL "" FORCE) -set (root7 ON CACHE BOOL "" FORCE) -set (roottest OFF CACHE BOOL "" FORCE) -set (rpath OFF CACHE BOOL "" FORCE) -set (runtime_cxxmodules OFF CACHE BOOL "" FORCE) # breaks python -set (r OFF CACHE BOOL "" FORCE) # requires r-rcpp -set (shadowpw ON CACHE BOOL "" FORCE) -set (shared ON CACHE BOOL "" FORCE) -set (soversion OFF CACHE BOOL "" FORCE) -set (spectrum ON CACHE BOOL "" FORCE) -set (sqlite ON CACHE BOOL "" FORCE) -set (ssl ON CACHE BOOL "" FORCE) -set (tbb ON CACHE BOOL "" FORCE) -set (tcmalloc OFF CACHE BOOL "" FORCE) -set (testing OFF CACHE BOOL "" FORCE) -set (tmva ON CACHE BOOL "" FORCE) -set (tmva-cpu OFF CACHE BOOL "" FORCE) -set (tmva-gpu ON CACHE BOOL "" FORCE) -set (tmva-pymva ON CACHE BOOL "" FORCE) -set (unuran ON CACHE BOOL "" FORCE) -set (uring ON CACHE BOOL "" FORCE) -set (vc ON CACHE BOOL "" FORCE) -set (vdt ON CACHE BOOL "" FORCE) -set (winrtdebug OFF CACHE BOOL "" FORCE) # windows only -set (webgui ON CACHE BOOL "" FORCE) -set (x11 ON CACHE BOOL "" FORCE) -set (xml ON CACHE BOOL "" FORCE) -set (xrootd ON CACHE BOOL "" FORCE) Copied: root/repos/community-x86_64/settings-cuda.cmake (from rev 1462977, root/trunk/settings-cuda.cmake) =================================================================== --- settings-cuda.cmake (rev 0) +++ settings-cuda.cmake 2023-05-17 17:44:53 UTC (rev 1462978) @@ -0,0 +1,115 @@ +set (CMAKE_BUILD_TYPE Release CACHE STRING "" FORCE) +set (BUILD_SHARED_LIBS ON CACHE BOOL "" FORCE) +set (CMAKE_INSTALL_PREFIX /usr CACHE PATH "" FORCE) +set (CMAKE_INSTALL_CMAKEDIR /usr/lib/cmake/ROOT CACHE PATH "" FORCE) +set (CMAKE_INSTALL_BINDIR /usr/bin CACHE PATH "" FORCE) +set (CMAKE_INSTALL_LIBDIR /usr/lib/root CACHE PATH "" FORCE) +set (CMAKE_INSTALL_INCLUDEDIR /usr/include CACHE PATH "" FORCE) +set (CMAKE_INSTALL_SYSCONFDIR /etc/root CACHE PATH "" FORCE) +set (CMAKE_INSTALL_DATAROOTDIR /usr/share CACHE PATH "" FORCE) +set (CMAKE_CXX_STANDARD 17 CACHE STRING "" FORCE) +set (CMAKE_CUDA_STANDARD 17 CACHE STRING "" FORCE) +set (LLVM_CXX_STD c++17 CACHE STRING "" FORCE) +set (LLVM_BUILD_TYPE Release CACHE STRING "" FORCE) +set (PYTHIA8_DATA /usr/share/pythia8/xmldoc CACHE PATH "" FORCE) # sync with pythia8 package +set (GLEW_DIR /usr/include/GL CACHE PATH "" FORCE) # need to set manually +set (alien OFF CACHE BOOL "" FORCE) +set (all OFF CACHE BOOL "" FORCE) +set (asimage ON CACHE BOOL "" FORCE) +set (builtin_afterimage OFF CACHE BOOL "" FORCE) +set (builtin_clang ON CACHE BOOL "" FORCE) +set (CLANG_ENABLE_STATIC_ANALYZER ON CACHE BOOL "" FORCE) +set (CLANG_ANALYZER_BUILD_Z3 ON CACHE BOOL "" FORCE) +set (builtin_cfitsio OFF CACHE BOOL "" FORCE) +set (builtin_davix OFF CACHE BOOL "" FORCE) +set (builtin_fftw3 OFF CACHE BOOL "" FORCE) +set (builtin_ftgl OFF CACHE BOOL "" FORCE) +set (builtin_freetype OFF CACHE BOOL "" FORCE) +set (builtin_gl2ps OFF CACHE BOOL "" FORCE) +set (builtin_glew OFF CACHE BOOL "" FORCE) +set (builtin_gsl OFF CACHE BOOL "" FORCE) +set (builtin_lzma OFF CACHE BOOL "" FORCE) +set (builtin_nlohmannjson OFF CACHE BOOL "" FORCE) +set (builtin_openui5 OFF CACHE BOOL "" FORCE) +set (builtin_llvm ON CACHE BOOL "" FORCE) +set (builtin_openssl OFF CACHE BOOL "" FORCE) +set (builtin_pcre OFF CACHE BOOL "" FORCE) +set (builtin_tbb OFF CACHE BOOL "" FORCE) +set (builtin_unuran OFF CACHE BOOL "" FORCE) +set (builtin_vc OFF CACHE BOOL "" FORCE) +set (builtin_xxhash OFF CACHE BOOL "" FORCE) +set (builtin_xrootd OFF CACHE BOOL "" FORCE) +set (builtin_zlib OFF CACHE BOOL "" FORCE) +set (ccache ON CACHE BOOL "" FORCE) +set (clad ON CACHE BOOL "" FORCE) +set (cocoa OFF CACHE BOOL "" FORCE) # MacOS only +set (cuda ON CACHE BOOL "" FORCE) +set (cudnn ON CACHE BOOL "" FORCE) +set (dataframe ON CACHE BOOL "" FORCE) +set (davix OFF CACHE BOOL "" FORCE) +set (dcache OFF CACHE BOOL "" FORCE) +set (exceptions ON CACHE BOOL "" FORCE) +set (fail-on-missing ON CACHE BOOL "" FORCE) +set (fcgi ON CACHE BOOL "" FORCE) +set (fftw3 ON CACHE BOOL "" FORCE) +set (fitsio ON CACHE BOOL "" FORCE) +set (fortran ON CACHE BOOL "" FORCE) +set (gdml ON CACHE BOOL "" FORCE) +set (genvector ON CACHE BOOL "" FORCE) +set (gfal OFF CACHE BOOL "" FORCE) +set (gl2ps ON CACHE BOOL "" FORCE) +set (gminimal OFF CACHE BOOL "" FORCE) +set (gnuinstall ON CACHE BOOL "" FORCE) +set (gsl_shared ON CACHE BOOL "" FORCE) +set (gviz ON CACHE BOOL "" FORCE) +set (http ON CACHE BOOL "" FORCE) +set (imt ON CACHE BOOL "" FORCE) +set (jemalloc OFF CACHE BOOL "" FORCE) +set (mathmore ON CACHE BOOL "" FORCE) +set (minimal OFF CACHE BOOL "" FORCE) +set (minuit2 ON CACHE BOOL "" FORCE) +set (minuit2_mpi ON CACHE BOOL "" FORCE) +set (minuit2_omp ON CACHE BOOL "" FORCE) +set (mlp ON CACHE BOOL "" FORCE) +set (monalisa OFF CACHE BOOL "" FORCE) +set (mpi ON CACHE BOOL "" FORCE) +set (mt ON CACHE BOOL "" FORCE) +set (mysql ON CACHE BOOL "" FORCE) +set (odbc ON CACHE BOOL "" FORCE) +set (opengl ON CACHE BOOL "" FORCE) +set (OpenGL_GL_PREFERENCE GLVND CACHE STRING "" FORCE) # use new policy since 3.11 +set (oracle OFF CACHE BOOL "" FORCE) +set (pgsql ON CACHE BOOL "" FORCE) +set (pythia6 OFF CACHE BOOL "" FORCE) +set (pythia6_nolink OFF CACHE BOOL "" FORCE) +set (pythia8 ON CACHE BOOL "" FORCE) +set (pyroot ON CACHE BOOL "" FORCE) +set (qt5web ON CACHE BOOL "" FORCE) +set (roofit ON CACHE BOOL "" FORCE) +set (root7 ON CACHE BOOL "" FORCE) +set (roottest OFF CACHE BOOL "" FORCE) +set (rpath OFF CACHE BOOL "" FORCE) +set (runtime_cxxmodules OFF CACHE BOOL "" FORCE) # breaks python +set (r OFF CACHE BOOL "" FORCE) # requires r-rcpp +set (shadowpw ON CACHE BOOL "" FORCE) +set (shared ON CACHE BOOL "" FORCE) +set (soversion OFF CACHE BOOL "" FORCE) +set (spectrum ON CACHE BOOL "" FORCE) +set (sqlite ON CACHE BOOL "" FORCE) +set (ssl ON CACHE BOOL "" FORCE) +set (tbb ON CACHE BOOL "" FORCE) +set (tcmalloc OFF CACHE BOOL "" FORCE) +set (testing OFF CACHE BOOL "" FORCE) +set (tmva ON CACHE BOOL "" FORCE) +set (tmva-cpu OFF CACHE BOOL "" FORCE) +set (tmva-gpu ON CACHE BOOL "" FORCE) +set (tmva-pymva ON CACHE BOOL "" FORCE) +set (unuran ON CACHE BOOL "" FORCE) +set (uring ON CACHE BOOL "" FORCE) +set (vc ON CACHE BOOL "" FORCE) +set (vdt ON CACHE BOOL "" FORCE) +set (winrtdebug OFF CACHE BOOL "" FORCE) # windows only +set (webgui ON CACHE BOOL "" FORCE) +set (x11 ON CACHE BOOL "" FORCE) +set (xml ON CACHE BOOL "" FORCE) +set (xrootd ON CACHE BOOL "" FORCE) Deleted: settings.cmake =================================================================== --- settings.cmake 2023-05-17 17:44:36 UTC (rev 1462977) +++ settings.cmake 2023-05-17 17:44:53 UTC (rev 1462978) @@ -1,115 +0,0 @@ -set (CMAKE_BUILD_TYPE Release CACHE STRING "" FORCE) -set (BUILD_SHARED_LIBS ON CACHE BOOL "" FORCE) -set (CMAKE_INSTALL_PREFIX /usr CACHE PATH "" FORCE) -set (CMAKE_INSTALL_CMAKEDIR /usr/lib/cmake/ROOT CACHE PATH "" FORCE) -set (CMAKE_INSTALL_BINDIR /usr/bin CACHE PATH "" FORCE) -set (CMAKE_INSTALL_LIBDIR /usr/lib/root CACHE PATH "" FORCE) -set (CMAKE_INSTALL_INCLUDEDIR /usr/include CACHE PATH "" FORCE) -set (CMAKE_INSTALL_SYSCONFDIR /etc/root CACHE PATH "" FORCE) -set (CMAKE_INSTALL_DATAROOTDIR /usr/share CACHE PATH "" FORCE) -set (CMAKE_CXX_STANDARD 17 CACHE STRING "" FORCE) -set (CMAKE_CUDA_STANDARD 17 CACHE STRING "" FORCE) -set (LLVM_CXX_STD c++17 CACHE STRING "" FORCE) -set (LLVM_BUILD_TYPE Release CACHE STRING "" FORCE) -set (PYTHIA8_DATA /usr/share/pythia8/xmldoc CACHE PATH "" FORCE) # sync with pythia8 package -set (GLEW_DIR /usr/include/GL CACHE PATH "" FORCE) # need to set manually -set (alien OFF CACHE BOOL "" FORCE) -set (all OFF CACHE BOOL "" FORCE) -set (asimage ON CACHE BOOL "" FORCE) -set (builtin_afterimage OFF CACHE BOOL "" FORCE) -set (builtin_clang ON CACHE BOOL "" FORCE) -set (CLANG_ENABLE_STATIC_ANALYZER ON CACHE BOOL "" FORCE) -set (CLANG_ANALYZER_BUILD_Z3 ON CACHE BOOL "" FORCE) -set (builtin_cfitsio OFF CACHE BOOL "" FORCE) -set (builtin_davix OFF CACHE BOOL "" FORCE) -set (builtin_fftw3 OFF CACHE BOOL "" FORCE) -set (builtin_ftgl OFF CACHE BOOL "" FORCE) -set (builtin_freetype OFF CACHE BOOL "" FORCE) -set (builtin_gl2ps OFF CACHE BOOL "" FORCE) -set (builtin_glew OFF CACHE BOOL "" FORCE) -set (builtin_gsl OFF CACHE BOOL "" FORCE) -set (builtin_lzma OFF CACHE BOOL "" FORCE) -set (builtin_nlohmannjson OFF CACHE BOOL "" FORCE) -set (builtin_openui5 OFF CACHE BOOL "" FORCE) -set (builtin_llvm ON CACHE BOOL "" FORCE) -set (builtin_openssl OFF CACHE BOOL "" FORCE) -set (builtin_pcre OFF CACHE BOOL "" FORCE) -set (builtin_tbb OFF CACHE BOOL "" FORCE) -set (builtin_unuran OFF CACHE BOOL "" FORCE) -set (builtin_vc OFF CACHE BOOL "" FORCE) -set (builtin_xxhash OFF CACHE BOOL "" FORCE) -set (builtin_xrootd OFF CACHE BOOL "" FORCE) -set (builtin_zlib OFF CACHE BOOL "" FORCE) -set (ccache ON CACHE BOOL "" FORCE) -set (clad ON CACHE BOOL "" FORCE) -set (cocoa OFF CACHE BOOL "" FORCE) # MacOS only -set (cuda OFF CACHE BOOL "" FORCE) -set (cudnn OFF CACHE BOOL "" FORCE) -set (dataframe ON CACHE BOOL "" FORCE) -set (davix OFF CACHE BOOL "" FORCE) -set (dcache OFF CACHE BOOL "" FORCE) -set (exceptions ON CACHE BOOL "" FORCE) -set (fail-on-missing ON CACHE BOOL "" FORCE) -set (fcgi ON CACHE BOOL "" FORCE) -set (fftw3 ON CACHE BOOL "" FORCE) -set (fitsio ON CACHE BOOL "" FORCE) -set (fortran ON CACHE BOOL "" FORCE) -set (gdml ON CACHE BOOL "" FORCE) -set (genvector ON CACHE BOOL "" FORCE) -set (gfal OFF CACHE BOOL "" FORCE) -set (gl2ps ON CACHE BOOL "" FORCE) -set (gminimal OFF CACHE BOOL "" FORCE) -set (gnuinstall ON CACHE BOOL "" FORCE) -set (gsl_shared ON CACHE BOOL "" FORCE) -set (gviz ON CACHE BOOL "" FORCE) -set (http ON CACHE BOOL "" FORCE) -set (imt ON CACHE BOOL "" FORCE) -set (jemalloc OFF CACHE BOOL "" FORCE) -set (mathmore ON CACHE BOOL "" FORCE) -set (minimal OFF CACHE BOOL "" FORCE) -set (minuit2 ON CACHE BOOL "" FORCE) -set (minuit2_mpi ON CACHE BOOL "" FORCE) -set (minuit2_omp ON CACHE BOOL "" FORCE) -set (mlp ON CACHE BOOL "" FORCE) -set (monalisa OFF CACHE BOOL "" FORCE) -set (mpi ON CACHE BOOL "" FORCE) -set (mt ON CACHE BOOL "" FORCE) -set (mysql ON CACHE BOOL "" FORCE) -set (odbc ON CACHE BOOL "" FORCE) -set (opengl ON CACHE BOOL "" FORCE) -set (OpenGL_GL_PREFERENCE GLVND CACHE STRING "" FORCE) # use new policy since 3.11 -set (oracle OFF CACHE BOOL "" FORCE) -set (pgsql ON CACHE BOOL "" FORCE) -set (pythia6 OFF CACHE BOOL "" FORCE) -set (pythia6_nolink OFF CACHE BOOL "" FORCE) -set (pythia8 ON CACHE BOOL "" FORCE) -set (pyroot ON CACHE BOOL "" FORCE) -set (qt5web ON CACHE BOOL "" FORCE) -set (roofit ON CACHE BOOL "" FORCE) -set (root7 ON CACHE BOOL "" FORCE) -set (roottest OFF CACHE BOOL "" FORCE) -set (rpath OFF CACHE BOOL "" FORCE) -set (runtime_cxxmodules OFF CACHE BOOL "" FORCE) # breaks python -set (r OFF CACHE BOOL "" FORCE) # requires r-rcpp -set (shadowpw ON CACHE BOOL "" FORCE) -set (shared ON CACHE BOOL "" FORCE) -set (soversion OFF CACHE BOOL "" FORCE) -set (spectrum ON CACHE BOOL "" FORCE) -set (sqlite ON CACHE BOOL "" FORCE) -set (ssl ON CACHE BOOL "" FORCE) -set (tbb ON CACHE BOOL "" FORCE) -set (tcmalloc OFF CACHE BOOL "" FORCE) -set (testing OFF CACHE BOOL "" FORCE) -set (tmva ON CACHE BOOL "" FORCE) -set (tmva-cpu ON CACHE BOOL "" FORCE) -set (tmva-gpu OFF CACHE BOOL "" FORCE) -set (tmva-pymva ON CACHE BOOL "" FORCE) -set (unuran ON CACHE BOOL "" FORCE) -set (uring ON CACHE BOOL "" FORCE) -set (vc ON CACHE BOOL "" FORCE) -set (vdt ON CACHE BOOL "" FORCE) -set (winrtdebug OFF CACHE BOOL "" FORCE) # windows only -set (webgui ON CACHE BOOL "" FORCE) -set (x11 ON CACHE BOOL "" FORCE) -set (xml ON CACHE BOOL "" FORCE) -set (xrootd ON CACHE BOOL "" FORCE) Copied: root/repos/community-x86_64/settings.cmake (from rev 1462977, root/trunk/settings.cmake) =================================================================== --- settings.cmake (rev 0) +++ settings.cmake 2023-05-17 17:44:53 UTC (rev 1462978) @@ -0,0 +1,115 @@ +set (CMAKE_BUILD_TYPE Release CACHE STRING "" FORCE) +set (BUILD_SHARED_LIBS ON CACHE BOOL "" FORCE) +set (CMAKE_INSTALL_PREFIX /usr CACHE PATH "" FORCE) +set (CMAKE_INSTALL_CMAKEDIR /usr/lib/cmake/ROOT CACHE PATH "" FORCE) +set (CMAKE_INSTALL_BINDIR /usr/bin CACHE PATH "" FORCE) +set (CMAKE_INSTALL_LIBDIR /usr/lib/root CACHE PATH "" FORCE) +set (CMAKE_INSTALL_INCLUDEDIR /usr/include CACHE PATH "" FORCE) +set (CMAKE_INSTALL_SYSCONFDIR /etc/root CACHE PATH "" FORCE) +set (CMAKE_INSTALL_DATAROOTDIR /usr/share CACHE PATH "" FORCE) +set (CMAKE_CXX_STANDARD 17 CACHE STRING "" FORCE) +set (CMAKE_CUDA_STANDARD 17 CACHE STRING "" FORCE) +set (LLVM_CXX_STD c++17 CACHE STRING "" FORCE) +set (LLVM_BUILD_TYPE Release CACHE STRING "" FORCE) +set (PYTHIA8_DATA /usr/share/pythia8/xmldoc CACHE PATH "" FORCE) # sync with pythia8 package +set (GLEW_DIR /usr/include/GL CACHE PATH "" FORCE) # need to set manually +set (alien OFF CACHE BOOL "" FORCE) +set (all OFF CACHE BOOL "" FORCE) +set (asimage ON CACHE BOOL "" FORCE) +set (builtin_afterimage OFF CACHE BOOL "" FORCE) +set (builtin_clang ON CACHE BOOL "" FORCE) +set (CLANG_ENABLE_STATIC_ANALYZER ON CACHE BOOL "" FORCE) +set (CLANG_ANALYZER_BUILD_Z3 ON CACHE BOOL "" FORCE) +set (builtin_cfitsio OFF CACHE BOOL "" FORCE) +set (builtin_davix OFF CACHE BOOL "" FORCE) +set (builtin_fftw3 OFF CACHE BOOL "" FORCE) +set (builtin_ftgl OFF CACHE BOOL "" FORCE) +set (builtin_freetype OFF CACHE BOOL "" FORCE) +set (builtin_gl2ps OFF CACHE BOOL "" FORCE) +set (builtin_glew OFF CACHE BOOL "" FORCE) +set (builtin_gsl OFF CACHE BOOL "" FORCE) +set (builtin_lzma OFF CACHE BOOL "" FORCE) +set (builtin_nlohmannjson OFF CACHE BOOL "" FORCE) +set (builtin_openui5 OFF CACHE BOOL "" FORCE) +set (builtin_llvm ON CACHE BOOL "" FORCE) +set (builtin_openssl OFF CACHE BOOL "" FORCE) +set (builtin_pcre OFF CACHE BOOL "" FORCE) +set (builtin_tbb OFF CACHE BOOL "" FORCE) +set (builtin_unuran OFF CACHE BOOL "" FORCE) +set (builtin_vc OFF CACHE BOOL "" FORCE) +set (builtin_xxhash OFF CACHE BOOL "" FORCE) +set (builtin_xrootd OFF CACHE BOOL "" FORCE) +set (builtin_zlib OFF CACHE BOOL "" FORCE) +set (ccache ON CACHE BOOL "" FORCE) +set (clad ON CACHE BOOL "" FORCE) +set (cocoa OFF CACHE BOOL "" FORCE) # MacOS only +set (cuda OFF CACHE BOOL "" FORCE) +set (cudnn OFF CACHE BOOL "" FORCE) +set (dataframe ON CACHE BOOL "" FORCE) +set (davix OFF CACHE BOOL "" FORCE) +set (dcache OFF CACHE BOOL "" FORCE) +set (exceptions ON CACHE BOOL "" FORCE) +set (fail-on-missing ON CACHE BOOL "" FORCE) +set (fcgi ON CACHE BOOL "" FORCE) +set (fftw3 ON CACHE BOOL "" FORCE) +set (fitsio ON CACHE BOOL "" FORCE) +set (fortran ON CACHE BOOL "" FORCE) +set (gdml ON CACHE BOOL "" FORCE) +set (genvector ON CACHE BOOL "" FORCE) +set (gfal OFF CACHE BOOL "" FORCE) +set (gl2ps ON CACHE BOOL "" FORCE) +set (gminimal OFF CACHE BOOL "" FORCE) +set (gnuinstall ON CACHE BOOL "" FORCE) +set (gsl_shared ON CACHE BOOL "" FORCE) +set (gviz ON CACHE BOOL "" FORCE) +set (http ON CACHE BOOL "" FORCE) +set (imt ON CACHE BOOL "" FORCE) +set (jemalloc OFF CACHE BOOL "" FORCE) +set (mathmore ON CACHE BOOL "" FORCE) +set (minimal OFF CACHE BOOL "" FORCE) +set (minuit2 ON CACHE BOOL "" FORCE) +set (minuit2_mpi ON CACHE BOOL "" FORCE) +set (minuit2_omp ON CACHE BOOL "" FORCE) +set (mlp ON CACHE BOOL "" FORCE) +set (monalisa OFF CACHE BOOL "" FORCE) +set (mpi ON CACHE BOOL "" FORCE) +set (mt ON CACHE BOOL "" FORCE) +set (mysql ON CACHE BOOL "" FORCE) +set (odbc ON CACHE BOOL "" FORCE) +set (opengl ON CACHE BOOL "" FORCE) +set (OpenGL_GL_PREFERENCE GLVND CACHE STRING "" FORCE) # use new policy since 3.11 +set (oracle OFF CACHE BOOL "" FORCE) +set (pgsql ON CACHE BOOL "" FORCE) +set (pythia6 OFF CACHE BOOL "" FORCE) +set (pythia6_nolink OFF CACHE BOOL "" FORCE) +set (pythia8 ON CACHE BOOL "" FORCE) +set (pyroot ON CACHE BOOL "" FORCE) +set (qt5web ON CACHE BOOL "" FORCE) +set (roofit ON CACHE BOOL "" FORCE) +set (root7 ON CACHE BOOL "" FORCE) +set (roottest OFF CACHE BOOL "" FORCE) +set (rpath OFF CACHE BOOL "" FORCE) +set (runtime_cxxmodules OFF CACHE BOOL "" FORCE) # breaks python +set (r OFF CACHE BOOL "" FORCE) # requires r-rcpp +set (shadowpw ON CACHE BOOL "" FORCE) +set (shared ON CACHE BOOL "" FORCE) +set (soversion OFF CACHE BOOL "" FORCE) +set (spectrum ON CACHE BOOL "" FORCE) +set (sqlite ON CACHE BOOL "" FORCE) +set (ssl ON CACHE BOOL "" FORCE) +set (tbb ON CACHE BOOL "" FORCE) +set (tcmalloc OFF CACHE BOOL "" FORCE) +set (testing OFF CACHE BOOL "" FORCE) +set (tmva ON CACHE BOOL "" FORCE) +set (tmva-cpu ON CACHE BOOL "" FORCE) +set (tmva-gpu OFF CACHE BOOL "" FORCE) +set (tmva-pymva ON CACHE BOOL "" FORCE) +set (unuran ON CACHE BOOL "" FORCE) +set (uring ON CACHE BOOL "" FORCE) +set (vc ON CACHE BOOL "" FORCE) +set (vdt ON CACHE BOOL "" FORCE) +set (winrtdebug OFF CACHE BOOL "" FORCE) # windows only +set (webgui ON CACHE BOOL "" FORCE) +set (x11 ON CACHE BOOL "" FORCE) +set (xml ON CACHE BOOL "" FORCE) +set (xrootd ON CACHE BOOL "" FORCE) Deleted: thisroot.fail =================================================================== --- thisroot.fail 2023-05-17 17:44:36 UTC (rev 1462977) +++ thisroot.fail 2023-05-17 17:44:53 UTC (rev 1462978) @@ -1,49 +0,0 @@ -#!/bin/bash - -# thisroot.* scripts should not be used to -# configure ROOT on Arch. Notify user and -# return an error - -# default behaviour -__THIS_ROOT_ERROR_AS_WARNING__=0 -__THIS_ROOT_RETURNCODE__=1 -__THIS_ROOT_MESSAGE__='ERROR' -__THIS_ROOT_REGEX_TEST__='^(no|n|0|off)$' - - -function fail { - printf '%s\n' "$1" >&2 - return "${2:-$1}" -} - -# [FS#71639](https://bugs.archlinux.org/task/71639) -if [[ ! -z "${THIS_ROOT_ERROR_AS_WARNING}" ]]; then - THIS_ROOT_ERROR_AS_WARNING=$(echo "${THIS_ROOT_ERROR_AS_WARNING}" | tr '[:upper:]' '[:lower:]') - if [[ ! ${THIS_ROOT_ERROR_AS_WARNING} =~ ${__THIS_ROOT_REGEX_TEST__} ]]; then - __THIS_ROOT_ERROR_AS_WARNING__=1 - fi -fi - -if [[ ${__THIS_ROOT_ERROR_AS_WARNING__} -eq 1 ]]; then - __THIS_ROOT_RETURNCODE__=0 - __THIS_ROOT_MESSAGE__='WARNING' -fi - -__THIS_ROOT_CORE_MESSAGE__="""${__THIS_ROOT_MESSAGE__}: thisroot.sh type scripts are no longer supported. -They should never be used! This includes their other forms: thisroot.csh, thisroot.fish, etc.""" - -__THIS_ROOT_ERROR_EXTRA_MESSAGE__="""If you would prefer to see this error as a warning, please use the -environment variable 'THIS_ROOT_ERROR_AS_WARNING'. -For example, you may run your original command like so: - THIS_ROOT_ERROR_AS_WARNING=1 mycommand -or even: - THIS_ROOT_ERROR_AS_WARNING=ON mycommand""" - -if [[ ${__THIS_ROOT_ERROR_AS_WARNING__} -eq 1 ]]; then - __THIS_ROOT_FINAL_MESSAGE__="${__THIS_ROOT_CORE_MESSAGE__}" -else - __THIS_ROOT_FINAL_MESSAGE__="""${__THIS_ROOT_CORE_MESSAGE__} -${__THIS_ROOT_ERROR_EXTRA_MESSAGE__=}""" -fi - -fail "${__THIS_ROOT_FINAL_MESSAGE__}" ${__THIS_ROOT_RETURNCODE__} Copied: root/repos/community-x86_64/thisroot.fail (from rev 1462977, root/trunk/thisroot.fail) =================================================================== --- thisroot.fail (rev 0) +++ thisroot.fail 2023-05-17 17:44:53 UTC (rev 1462978) @@ -0,0 +1,49 @@ +#!/bin/bash + +# thisroot.* scripts should not be used to +# configure ROOT on Arch. Notify user and +# return an error + +# default behaviour +__THIS_ROOT_ERROR_AS_WARNING__=0 +__THIS_ROOT_RETURNCODE__=1 +__THIS_ROOT_MESSAGE__='ERROR' +__THIS_ROOT_REGEX_TEST__='^(no|n|0|off)$' + + +function fail { + printf '%s\n' "$1" >&2 + return "${2:-$1}" +} + +# [FS#71639](https://bugs.archlinux.org/task/71639) +if [[ ! -z "${THIS_ROOT_ERROR_AS_WARNING}" ]]; then + THIS_ROOT_ERROR_AS_WARNING=$(echo "${THIS_ROOT_ERROR_AS_WARNING}" | tr '[:upper:]' '[:lower:]') + if [[ ! ${THIS_ROOT_ERROR_AS_WARNING} =~ ${__THIS_ROOT_REGEX_TEST__} ]]; then + __THIS_ROOT_ERROR_AS_WARNING__=1 + fi +fi + +if [[ ${__THIS_ROOT_ERROR_AS_WARNING__} -eq 1 ]]; then + __THIS_ROOT_RETURNCODE__=0 + __THIS_ROOT_MESSAGE__='WARNING' +fi + +__THIS_ROOT_CORE_MESSAGE__="""${__THIS_ROOT_MESSAGE__}: thisroot.sh type scripts are no longer supported. +They should never be used! This includes their other forms: thisroot.csh, thisroot.fish, etc.""" + +__THIS_ROOT_ERROR_EXTRA_MESSAGE__="""If you would prefer to see this error as a warning, please use the +environment variable 'THIS_ROOT_ERROR_AS_WARNING'. +For example, you may run your original command like so: + THIS_ROOT_ERROR_AS_WARNING=1 mycommand +or even: + THIS_ROOT_ERROR_AS_WARNING=ON mycommand""" + +if [[ ${__THIS_ROOT_ERROR_AS_WARNING__} -eq 1 ]]; then + __THIS_ROOT_FINAL_MESSAGE__="${__THIS_ROOT_CORE_MESSAGE__}" +else + __THIS_ROOT_FINAL_MESSAGE__="""${__THIS_ROOT_CORE_MESSAGE__} +${__THIS_ROOT_ERROR_EXTRA_MESSAGE__=}""" +fi + +fail "${__THIS_ROOT_FINAL_MESSAGE__}" ${__THIS_ROOT_RETURNCODE__}