From 5f80c00437f311ca9e6b54330eb43d7882d37c63 Mon Sep 17 00:00:00 2001 From: Mircho Rodozov Date: Tue, 5 May 2020 01:00:47 +0200 Subject: [PATCH 1/6] Updated root to tip of branch master --- root.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/root.spec b/root.spec index 6e879c4cc1e..9b62571fdd2 100644 --- a/root.spec +++ b/root.spec @@ -3,8 +3,8 @@ ## INITENV +PATH PYTHON3PATH %{i}/lib ## INITENV SET ROOTSYS %{i} -%define tag 384e06fed3d7305d8d438c34399d6e6e327256de -%define branch cms/master/73ae672 +%define tag 0aaa1c194ecb8e4b378597faa4809235b4c7b952 +%define branch cms/master/28b9732 %define github_user cms-sw Source: git+https://github.com/%{github_user}/root.git?obj=%{branch}/%{tag}&export=%{n}-%{realversion}&output=/%{n}-%{realversion}-%{tag}.tgz From 7b6fbf3e645ccb2ef33df878458d166df98558c4 Mon Sep 17 00:00:00 2001 From: Mircho Rodozov Date: Tue, 5 May 2020 18:58:05 +0300 Subject: [PATCH 2/6] copy GL manually fix the missing headers until cmake solution is provided or ROOT team suggestion --- root.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/root.spec b/root.spec index 9b62571fdd2..c6c4f45debc 100644 --- a/root.spec +++ b/root.spec @@ -175,6 +175,7 @@ ninja -v %{makeprocesses} -l $(getconf _NPROCESSORS_ONLN) install find %{i} -type f -name '*.py' | xargs chmod -x grep -R -l '#!.*python' %{i} | xargs chmod +x perl -p -i -e "s|#!/bin/perl|#!/usr/bin/env perl|" %{i}/bin/memprobe +rsync -a %{_builddir}/%{n}-%{realversion}/builtins/glew/inc/GL %{i}/include/ #Make sure root build directory is not available after the root install is done #This will catch errors if root remembers the build paths. From aa3ce24e804f2c799f03c6bbd245e508de098bcb Mon Sep 17 00:00:00 2001 From: Mircho Rodozov Date: Wed, 6 May 2020 18:50:09 +0200 Subject: [PATCH 3/6] add glew external and use it with ROOT, remove rootglew toolfile --- cmssw-tool-conf.spec | 1 + glew-toolfile.spec | 22 ++++++++++++++++++++++ glew.spec | 23 +++++++++++++++++++++++ root-toolfile.spec | 10 +--------- root.spec | 6 ++---- 5 files changed, 49 insertions(+), 13 deletions(-) create mode 100644 glew-toolfile.spec create mode 100644 glew.spec diff --git a/cmssw-tool-conf.spec b/cmssw-tool-conf.spec index 782e9b5154a..e22526a9faf 100644 --- a/cmssw-tool-conf.spec +++ b/cmssw-tool-conf.spec @@ -182,6 +182,7 @@ Requires: oracle-fake-toolfile Requires: tensorflow-toolfile Requires: xtensor-toolfile Requires: xtl-toolfile +Requires: glew-toolconf %define skipreqtools jcompiler icc-cxxcompiler icc-ccompiler icc-f77compiler rivet2 opencl opencl-cpp nvidia-drivers intel-vtune jemalloc-debug diff --git a/glew-toolfile.spec b/glew-toolfile.spec new file mode 100644 index 00000000000..504fedc88cd --- /dev/null +++ b/glew-toolfile.spec @@ -0,0 +1,22 @@ +### RPM external glew-toolfile 1.0 +Requires: glew +%prep + +%build + +%install + +mkdir -p %i/etc/scram.d +cat <%i/etc/scram.d/glew.xml + + + + + + + + +EOF_TOOLFILE + +## IMPORT scram-tools-post diff --git a/glew.spec b/glew.spec new file mode 100644 index 00000000000..8ef81279ab0 --- /dev/null +++ b/glew.spec @@ -0,0 +1,23 @@ +### RPM external glew 2.1.0 +## INITENV SETV GLEW_SOURCE %{source0} +## INITENV SETV GLEW_STRIP_PREFIX %{source_prefix} + +%define source0 https://github.com/nigels-com/glew/releases/download/%{n}-%{realversion}/%{n}-%{realversion}.tgz +%define source_prefix %{n}-%{realversion} +Source: %{source0} + +BuildRequires: gmake + +%prep +%setup -n %{source_prefix} +sed -i -e 's|GLEW_DEST)/lib64|GLEW_DEST)/lib|' ./config/Makefile.linux + +%build + +make -C auto +make %{makeprocesses} + +%install + +make install GLEW_DEST=%{i} + diff --git a/root-toolfile.spec b/root-toolfile.spec index 70636edd7d7..b333c7742e7 100644 --- a/root-toolfile.spec +++ b/root-toolfile.spec @@ -362,7 +362,7 @@ cat << \EOF_TOOLFILE >%i/etc/scram.d/rootrgl.xml - + @@ -461,14 +461,6 @@ cat << \EOF_TOOLFILE >%i/etc/scram.d/rootged.xml EOF_TOOLFILE -#Root GLEW -cat << \EOF_TOOLFILE >%i/etc/scram.d/rootglew.xml - - - - -EOF_TOOLFILE - #Root Gui cat << \EOF_TOOLFILE >%i/etc/scram.d/rootgui.xml diff --git a/root.spec b/root.spec index c6c4f45debc..c1e4fee5a9c 100644 --- a/root.spec +++ b/root.spec @@ -13,7 +13,7 @@ Source: git+https://github.com/%{github_user}/root.git?obj=%{branch}/%{tag}&expo BuildRequires: cmake ninja -Requires: gsl libjpeg-turbo libpng libtiff giflib pcre python python3 fftw3 xz xrootd libxml2 openssl zlib davix tbb OpenBLAS py2-numpy py3-numpy lz4 freetype zstd +Requires: gsl libjpeg-turbo libpng libtiff giflib pcre python python3 fftw3 xz xrootd libxml2 openssl zlib davix tbb OpenBLAS py2-numpy py3-numpy lz4 freetype zstd glew %if %islinux Requires: dcap @@ -79,7 +79,6 @@ cmake ../%{n}-%{realversion} \ -Dbuiltin_zlib=OFF \ -Dbuiltin_lzma=OFF \ -Dbuiltin_gsl=OFF \ - -Dbuiltin_glew=ON \ -Dbuiltin_ftgl=ON \ -Dbuiltin_gl2ps=ON \ -Dbuiltin_afterimage=ON \ @@ -141,7 +140,7 @@ cmake ../%{n}-%{realversion} \ -DZLIB_ROOT="${ZLIB_ROOT}" \ -DZLIB_INCLUDE_DIR="${ZLIB_ROOT}/include" \ -DZSTD_ROOT="${ZSTD_ROOT}" \ - -DCMAKE_PREFIX_PATH="${LZ4_ROOT};${GSL_ROOT};${XZ_ROOT};${OPENSSL_ROOT};${GIFLIB_ROOT};${FREETYPE_ROOT};${PYTHON_ROOT};${PYTHON3_ROOT};${LIBPNG_ROOT};${PCRE_ROOT};${TBB_ROOT};${OPENBLAS_ROOT};${DAVIX_ROOT};${LIBXML2_ROOT};${ZSTD_ROOT}" \ + -DCMAKE_PREFIX_PATH="${LZ4_ROOT};${GSL_ROOT};${XZ_ROOT};${OPENSSL_ROOT};${GIFLIB_ROOT};${FREETYPE_ROOT};${PYTHON_ROOT};${PYTHON3_ROOT};${LIBPNG_ROOT};${PCRE_ROOT};${TBB_ROOT};${OPENBLAS_ROOT};${DAVIX_ROOT};${LIBXML2_ROOT};${ZSTD_ROOT};${GLEW_ROOT}" \ -Dpyroot_experimental=ON # For CMake cache variables: http://www.cmake.org/cmake/help/v3.2/manual/cmake-language.7.html#lists @@ -175,7 +174,6 @@ ninja -v %{makeprocesses} -l $(getconf _NPROCESSORS_ONLN) install find %{i} -type f -name '*.py' | xargs chmod -x grep -R -l '#!.*python' %{i} | xargs chmod +x perl -p -i -e "s|#!/bin/perl|#!/usr/bin/env perl|" %{i}/bin/memprobe -rsync -a %{_builddir}/%{n}-%{realversion}/builtins/glew/inc/GL %{i}/include/ #Make sure root build directory is not available after the root install is done #This will catch errors if root remembers the build paths. From 31be2229184acb2545f16c1d3fb489889a982fc5 Mon Sep 17 00:00:00 2001 From: Mircho Rodozov Date: Wed, 6 May 2020 20:11:26 +0300 Subject: [PATCH 4/6] Update cmssw-tool-conf.spec --- cmssw-tool-conf.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmssw-tool-conf.spec b/cmssw-tool-conf.spec index e22526a9faf..4c487f45c33 100644 --- a/cmssw-tool-conf.spec +++ b/cmssw-tool-conf.spec @@ -182,7 +182,7 @@ Requires: oracle-fake-toolfile Requires: tensorflow-toolfile Requires: xtensor-toolfile Requires: xtl-toolfile -Requires: glew-toolconf +Requires: glew-toolfile %define skipreqtools jcompiler icc-cxxcompiler icc-ccompiler icc-f77compiler rivet2 opencl opencl-cpp nvidia-drivers intel-vtune jemalloc-debug From 08f8caa923c062aab79ed184974969e7ef7596dd Mon Sep 17 00:00:00 2001 From: Mircho Rodozov Date: Fri, 8 May 2020 02:09:35 +0300 Subject: [PATCH 5/6] get cmake fix --- root.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/root.spec b/root.spec index c1e4fee5a9c..e69b9980bb5 100644 --- a/root.spec +++ b/root.spec @@ -3,8 +3,8 @@ ## INITENV +PATH PYTHON3PATH %{i}/lib ## INITENV SET ROOTSYS %{i} -%define tag 0aaa1c194ecb8e4b378597faa4809235b4c7b952 -%define branch cms/master/28b9732 +%define tag 58a6628770ccf55e3d7df45ca0de67d6ee4dea4b +%define branch cms/master/020d9fb %define github_user cms-sw Source: git+https://github.com/%{github_user}/root.git?obj=%{branch}/%{tag}&export=%{n}-%{realversion}&output=/%{n}-%{realversion}-%{tag}.tgz From 8096f20637271f98a62a599fe6c2bfc52035cb18 Mon Sep 17 00:00:00 2001 From: Mircho Rodozov Date: Mon, 11 May 2020 16:54:20 +0200 Subject: [PATCH 6/6] get root commits, remove glew refs from toofiles and add explicit Provides: for glew lib --- cmssw-tool-conf.spec | 1 - glew-toolfile.spec | 22 ---------------------- glew.spec | 2 +- root-toolfile.spec | 1 - root.spec | 4 ++-- 5 files changed, 3 insertions(+), 27 deletions(-) delete mode 100644 glew-toolfile.spec diff --git a/cmssw-tool-conf.spec b/cmssw-tool-conf.spec index 4c487f45c33..782e9b5154a 100644 --- a/cmssw-tool-conf.spec +++ b/cmssw-tool-conf.spec @@ -182,7 +182,6 @@ Requires: oracle-fake-toolfile Requires: tensorflow-toolfile Requires: xtensor-toolfile Requires: xtl-toolfile -Requires: glew-toolfile %define skipreqtools jcompiler icc-cxxcompiler icc-ccompiler icc-f77compiler rivet2 opencl opencl-cpp nvidia-drivers intel-vtune jemalloc-debug diff --git a/glew-toolfile.spec b/glew-toolfile.spec deleted file mode 100644 index 504fedc88cd..00000000000 --- a/glew-toolfile.spec +++ /dev/null @@ -1,22 +0,0 @@ -### RPM external glew-toolfile 1.0 -Requires: glew -%prep - -%build - -%install - -mkdir -p %i/etc/scram.d -cat <%i/etc/scram.d/glew.xml - - - - - - - - -EOF_TOOLFILE - -## IMPORT scram-tools-post diff --git a/glew.spec b/glew.spec index 8ef81279ab0..9f7085c91e9 100644 --- a/glew.spec +++ b/glew.spec @@ -4,8 +4,8 @@ %define source0 https://github.com/nigels-com/glew/releases/download/%{n}-%{realversion}/%{n}-%{realversion}.tgz %define source_prefix %{n}-%{realversion} +Provides: libGLEW.so.2.1()(64bit) Source: %{source0} - BuildRequires: gmake %prep diff --git a/root-toolfile.spec b/root-toolfile.spec index b333c7742e7..35f111667f4 100644 --- a/root-toolfile.spec +++ b/root-toolfile.spec @@ -362,7 +362,6 @@ cat << \EOF_TOOLFILE >%i/etc/scram.d/rootrgl.xml - diff --git a/root.spec b/root.spec index e69b9980bb5..20260b2b34e 100644 --- a/root.spec +++ b/root.spec @@ -3,8 +3,8 @@ ## INITENV +PATH PYTHON3PATH %{i}/lib ## INITENV SET ROOTSYS %{i} -%define tag 58a6628770ccf55e3d7df45ca0de67d6ee4dea4b -%define branch cms/master/020d9fb +%define tag a2847019732b1b02e0cb1e437b4b9f4c913ddee1 +%define branch cms/master/e2c9e16 %define github_user cms-sw Source: git+https://github.com/%{github_user}/root.git?obj=%{branch}/%{tag}&export=%{n}-%{realversion}&output=/%{n}-%{realversion}-%{tag}.tgz