From de24042fede2b49d4e5f3882d751dc79bfc40778 Mon Sep 17 00:00:00 2001 From: Jonas Rembser Date: Mon, 18 Nov 2024 22:26:27 +0100 Subject: [PATCH] root: 6.32.08 -> 6.34.00 Also, remove many patches and workarounds that are not necessary anymore. --- pkgs/by-name/ro/root/package.nix | 59 ++++++++------------ pkgs/by-name/ro/root/setup-hook.sh | 8 --- pkgs/by-name/ro/root/sw_vers.patch | 86 ------------------------------ 3 files changed, 23 insertions(+), 130 deletions(-) delete mode 100644 pkgs/by-name/ro/root/sw_vers.patch diff --git a/pkgs/by-name/ro/root/package.nix b/pkgs/by-name/ro/root/package.nix index 6c0c9b9b5dd8..110c780497ad 100644 --- a/pkgs/by-name/ro/root/package.nix +++ b/pkgs/by-name/ro/root/package.nix @@ -27,7 +27,7 @@ libGL, libxcrypt, libxml2, - llvm_16, + llvm_18, lsof, lz4, xz, @@ -56,7 +56,7 @@ stdenv.mkDerivation rec { pname = "root"; - version = "6.32.08"; + version = "6.34.00"; passthru = { tests = import ./tests { inherit callPackage; }; @@ -64,7 +64,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "https://root.cern.ch/download/root_v${version}.source.tar.gz"; - hash = "sha256-Ka1JRact/xoAnDJqZbb6XuJHhJiCMlHTzvhqLL63eyc="; + hash = "sha256-87APPblTgpyEkCnDnXZgqVZGivJH79lG6JByEBeWqwM="; }; clad_src = fetchgit { @@ -81,37 +81,37 @@ stdenv.mkDerivation rec { pkg-config git ]; - propagatedBuildInputs = [ nlohmann_json ]; buildInputs = [ davix ftgl + giflib gl2ps glew - pcre - zlib - zstd - lapack - libxcrypt - libxml2 - llvm_16 - lz4 - xz gsl gtest + lapack + libjpeg + libpng + libtiff + libxcrypt + libxml2 + llvm_18 + lz4 + nlohmann_json openblas openssl - xxHash - giflib - libjpeg - libtiff - libpng patchRcPathCsh patchRcPathFish patchRcPathPosix + pcre python3.pkgs.numpy tbb xrootd + xxHash + xz + zlib + zstd ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ apple-sdk.privateFrameworksHook ] ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [ @@ -123,8 +123,6 @@ stdenv.mkDerivation rec { libGL ]; - patches = [ ./sw_vers.patch ]; - preConfigure = '' for path in builtins/*; do @@ -135,29 +133,17 @@ stdenv.mkDerivation rec { substituteInPlace cmake/modules/SearchInstalledSoftware.cmake \ --replace-fail 'set(lcgpackages ' '#set(lcgpackages ' - # We have to bypass the connection check, because it would disable clad. - # This should probably be fixed upstream with a flag to disable the - # connectivity check! - substituteInPlace CMakeLists.txt \ - --replace-fail 'if(clad AND NO_CONNECTION)' 'if(FALSE)' # Make sure that clad is not downloaded when building substituteInPlace interpreter/cling/tools/plugins/clad/CMakeLists.txt \ - --replace-fail 'UPDATE_COMMAND ""' 'SOURCE_DIR ${clad_src} DOWNLOAD_COMMAND "" UPDATE_COMMAND ""' + --replace-fail 'UPDATE_COMMAND ""' 'DOWNLOAD_COMMAND "" UPDATE_COMMAND ""' # Make sure that clad is finding the right llvm version substituteInPlace interpreter/cling/tools/plugins/clad/CMakeLists.txt \ - --replace-fail '-DLLVM_DIR=''${LLVM_BINARY_DIR}' '-DLLVM_DIR=${llvm_16.dev}/lib/cmake/llvm' + --replace-fail '-DLLVM_DIR=''${LLVM_BINARY_DIR}' '-DLLVM_DIR=''${LLVM_CMAKE_PATH}' substituteInPlace interpreter/llvm-project/clang/tools/driver/CMakeLists.txt \ --replace-fail 'add_clang_symlink(''${link} clang)' "" - # Don't require textutil on macOS - : > cmake/modules/RootCPack.cmake - - # Hardcode path to fix use with cmake - sed -i cmake/scripts/ROOTConfig.cmake.in \ - -e '1iset(nlohmann_json_DIR "${nlohmann_json}/lib/cmake/nlohmann_json/")' - - patchShebangs build/unix/ + patchShebangs cmake/unix/ '' + lib.optionalString stdenv.hostPlatform.isDarwin '' # Eliminate impure reference to /System/Library/PrivateFrameworks @@ -173,9 +159,10 @@ stdenv.mkDerivation rec { cmakeFlags = [ + "-DCLAD_SOURCE_DIR=${clad_src}" "-DCMAKE_INSTALL_BINDIR=bin" - "-DCMAKE_INSTALL_LIBDIR=lib" "-DCMAKE_INSTALL_INCLUDEDIR=include" + "-DCMAKE_INSTALL_LIBDIR=lib" "-Dbuiltin_llvm=OFF" "-Dfail-on-missing=ON" "-Dfitsio=OFF" diff --git a/pkgs/by-name/ro/root/setup-hook.sh b/pkgs/by-name/ro/root/setup-hook.sh index 7affd21012eb..e8af80d602b0 100644 --- a/pkgs/by-name/ro/root/setup-hook.sh +++ b/pkgs/by-name/ro/root/setup-hook.sh @@ -1,13 +1,5 @@ thisroot () { - # Workaround thisroot.sh dependency on man - if [ -z "${MANPATH-}" ]; then - MANPATH=: - fi - local oldOpts="-u" - shopt -qo nounset || oldOpts="+u" - set +u source @out@/bin/thisroot.sh - set "$oldOpts" } postHooks+=(thisroot) diff --git a/pkgs/by-name/ro/root/sw_vers.patch b/pkgs/by-name/ro/root/sw_vers.patch deleted file mode 100644 index 2a0fcd757719..000000000000 --- a/pkgs/by-name/ro/root/sw_vers.patch +++ /dev/null @@ -1,86 +0,0 @@ -diff a/cmake/modules/SetUpMacOS.cmake b/cmake/modules/SetUpMacOS.cmake ---- a/cmake/modules/SetUpMacOS.cmake -+++ b/cmake/modules/SetUpMacOS.cmake -@@ -8,17 +8,10 @@ - set(ROOT_PLATFORM macosx) - - if (CMAKE_SYSTEM_NAME MATCHES Darwin) -- EXECUTE_PROCESS(COMMAND sw_vers "-productVersion" -- COMMAND cut -d . -f 1-2 -- OUTPUT_VARIABLE MACOSX_VERSION OUTPUT_STRIP_TRAILING_WHITESPACE) -- - MESSAGE(STATUS "Found a macOS system ${MACOSX_VERSION}") - -- if(MACOSX_VERSION VERSION_GREATER 10.7 AND ${CMAKE_CXX_COMPILER_ID} MATCHES Clang) - set(libcxx ON CACHE BOOL "Build using libc++" FORCE) -- endif() - -- if(MACOSX_VERSION VERSION_GREATER 10.4) - #TODO: check haveconfig and rpath -> set rpath true - #TODO: check Thread, define link command - #TODO: more stuff check configure script -@@ -37,22 +30,7 @@ - SET(CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS "${CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS} -m64") - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -m64") - SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -m64") -- else() -- SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -m32") -- SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -m32") -- SET(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -m32") - endif() -- endif() -- -- if(MACOSX_VERSION VERSION_GREATER 10.6) -- set(MACOSX_SSL_DEPRECATED ON) -- endif() -- if(MACOSX_VERSION VERSION_GREATER 10.7) -- set(MACOSX_ODBC_DEPRECATED ON) -- endif() -- if(MACOSX_VERSION VERSION_GREATER 10.8) -- set(MACOSX_GLU_DEPRECATED ON) -- endif() - - if (CMAKE_COMPILER_IS_GNUCXX) - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pipe -W -Wshadow -Wall -Woverloaded-virtual -fsigned-char -fno-common") -@@ -96,7 +74,6 @@ - endif() - - #---Set Linker flags---------------------------------------------------------------------- -- set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -mmacosx-version-min=${MACOSX_VERSION}") - else (CMAKE_SYSTEM_NAME MATCHES Darwin) - MESSAGE(FATAL_ERROR "There is no setup for this this Apple system up to now. Don't know what to do. Stop cmake at this point.") - endif (CMAKE_SYSTEM_NAME MATCHES Darwin) -diff a/config/root-config.in b/config/root-config.in ---- a/config/root-config.in -+++ b/config/root-config.in -@@ -307,12 +307,6 @@ - ;; - macosx64|macosxarm64) - # MacOS X with gcc (GNU cc v4.x) in 64 bit mode -- macosx_major=`sw_vers | sed -n 's/ProductVersion://p' | cut -d . -f 1 | sed -e 's/^[[:space:]]*//'` -- macosx_minor=`sw_vers | sed -n 's/ProductVersion://p' | cut -d . -f 2` -- # cannot find the one linked to libGraf if relocated after built -- if [ $macosx_major -eq 10 -a $macosx_minor -le 4 ]; then -- rootlibs="$rootlibs -lfreetype" -- fi - auxcflags="${cxxversionflag} -m64" - auxldflags="-m64" - auxlibs="-lm -ldl" -@@ -387,17 +381,11 @@ - done - ;; - macosx*) -- if [ \( $macosx_major -eq 10 -a $macosx_minor -ge 5 \) -o $macosx_major -gt 10 ]; then - auxcflags="-pthread $auxcflags" - auxlibs="-lpthread $auxlibs" -- else -- auxlibs="-lpthread $auxlibs" -- fi - for f in $features ; do - if test "x$f" = "xrpath" ; then -- if [ \( $macosx_major -eq 10 -a $macosx_minor -ge 5 \) -o $macosx_major -gt 10 ]; then - auxlibs="-Wl,-rpath,$libdir $auxlibs" -- fi - fi - if test "x$f" = "xlibcxx" ; then - auxcflags="-stdlib=libc++ $auxcflags"