diff --git a/cmssw-patch-tool-conf.spec b/cmssw-patch-tool-conf.spec index b9f8de03083..dccd6a77801 100644 --- a/cmssw-patch-tool-conf.spec +++ b/cmssw-patch-tool-conf.spec @@ -10,4 +10,4 @@ Requires: cmssw-toolfile # still need this (from the non-patch tool-conf spec ... %define skipreqtools jcompiler -## IMPORT scramv1-tool-conf +## INCLUDE scramv1-tool-conf diff --git a/cmssw-tool-conf.spec b/cmssw-tool-conf.spec index ae77bd0e288..7a947e6242d 100644 --- a/cmssw-tool-conf.spec +++ b/cmssw-tool-conf.spec @@ -1,194 +1,195 @@ -### RPM cms cmssw-tool-conf 46.0 +### RPM cms cmssw-tool-conf 50.0 # With cmsBuild, change the above version only when a new tool is added ## NOCOMPILER ## INSTALL_DEPENDENCIES cmsLHEtoEOSManager gcc-fixincludes cmssw-osenv cms-git-tools ## UPLOAD_DEPENDENCIES dqmgui +BuildRequires: scram-tools Requires: crab Requires: cmssw-wm-tools -Requires: google-benchmark-toolfile -Requires: catch2-toolfile -Requires: starlight-toolfile -Requires: alpgen-toolfile -Requires: boost-toolfile -Requires: bz2lib-toolfile -Requires: charybdis-toolfile -Requires: classlib-toolfile -Requires: clhep-toolfile -Requires: coral-toolfile -Requires: cppunit-toolfile -Requires: curl-toolfile -Requires: das_client-toolfile -Requires: db6-toolfile -Requires: davix-toolfile -Requires: evtgen-toolfile -Requires: expat-toolfile +Requires: google-benchmark +Requires: catch2 +Requires: starlight +Requires: alpgen +Requires: boost +Requires: bz2lib +Requires: charybdis +Requires: classlib +Requires: clhep +Requires: coral +Requires: cppunit +Requires: curl +Requires: das_client +Requires: db6 +Requires: davix +Requires: evtgen +Requires: expat Requires: fakesystem -Requires: fastjet-toolfile -Requires: flatbuffers-toolfile -Requires: fmt-toolfile -Requires: gbl-toolfile -Requires: gcc-toolfile -Requires: gdbm-toolfile -Requires: geant4-toolfile -Requires: geant4data-toolfile -Requires: vecgeom-toolfile -Requires: glimpse-toolfile -Requires: gmake-toolfile -Requires: gsl-toolfile -Requires: highfive-toolfile -Requires: hector-toolfile -Requires: hepmc-toolfile -Requires: heppdt-toolfile -Requires: herwig-toolfile -Requires: herwig7-toolfile -Requires: hydjet-toolfile -Requires: ittnotify-toolfile -Requires: jemalloc-toolfile -Requires: jemalloc-debug-toolfile -Requires: jimmy-toolfile -Requires: json-toolfile -Requires: ktjet-toolfile -Requires: lhapdf-toolfile -Requires: libjpeg-turbo-toolfile -Requires: libpng-toolfile -Requires: libtiff-toolfile -Requires: libungif-toolfile -Requires: libxml2-toolfile -Requires: lwtnn-toolfile -Requires: meschach-toolfile -Requires: pcre-toolfile -Requires: photos-toolfile -Requires: photospp-toolfile -Requires: pyquen-toolfile -Requires: pythia6-toolfile -Requires: pythia8-toolfile -Requires: python-toolfile -Requires: python3-toolfile -Requires: root-toolfile -Requires: sherpa-toolfile -Requires: libpciaccess-toolfile -Requires: numactl-toolfile -Requires: hwloc-toolfile +Requires: fastjet +Requires: flatbuffers +Requires: fmt +Requires: gbl +Requires: gcc +Requires: gdbm +Requires: geant4 +Requires: geant4data +Requires: vecgeom +Requires: glimpse +Requires: gmake +Requires: gsl +Requires: highfive +Requires: hector +Requires: hepmc +Requires: heppdt +Requires: herwig +Requires: herwig7 +Requires: hydjet +Requires: ittnotify +Requires: jemalloc +Requires: jemalloc-debug +Requires: jimmy +Requires: json +Requires: ktjet +Requires: lhapdf +Requires: libjpeg-turbo +Requires: libpng +Requires: libtiff +Requires: libungif +Requires: libxml2 +Requires: lwtnn +Requires: meschach +Requires: pcre +Requires: photos +Requires: photospp +Requires: pyquen +Requires: pythia6 +Requires: pythia8 +Requires: python +Requires: python3 +Requires: root +Requires: sherpa +Requires: libpciaccess +Requires: numactl +Requires: hwloc %ifnarch aarch64 -Requires: gdrcopy-toolfile +Requires: gdrcopy %endif -Requires: ucx-toolfile -Requires: openmpi-toolfile -Requires: sigcpp-toolfile -Requires: sqlite-toolfile +Requires: ucx +Requires: openmpi +Requires: sigcpp +Requires: sqlite Requires: systemtools -Requires: tauola-toolfile -Requires: tauolapp-toolfile -Requires: thepeg-toolfile -Requires: toprex-toolfile -Requires: libuuid-toolfile -Requires: xerces-c-toolfile -Requires: zlib-toolfile -Requires: dcap-toolfile -Requires: frontier_client-toolfile -Requires: xrootd-toolfile -Requires: dd4hep-toolfile -Requires: graphviz-toolfile -Requires: valgrind-toolfile -Requires: cmsswdata-toolfile -Requires: zstd-toolfile -Requires: hls-toolfile -Requires: opencv-toolfile -Requires: grpc-toolfile -Requires: onnxruntime-toolfile -Requires: triton-inference-server-toolfile -Requires: hdf5-toolfile -Requires: rivet-toolfile -Requires: cascade-toolfile -Requires: yoda-toolfile -Requires: fftw3-toolfile -Requires: fftjet-toolfile -Requires: professor2-toolfile -Requires: xz-toolfile -Requires: lz4-toolfile -Requires: protobuf-toolfile -Requires: lcov-toolfile -Requires: llvm-gcc-toolfile -Requires: tbb-toolfile -Requires: mctester-toolfile -Requires: vdt-toolfile -Requires: icc-gcc-toolfile -Requires: gnuplot-toolfile -Requires: sloccount-toolfile -Requires: millepede-toolfile -Requires: pacparser-toolfile -Requires: git-toolfile -Requires: cgal-toolfile -Requires: doxygen-toolfile -Requires: yaml-cpp-toolfile -Requires: gmp-static-toolfile -Requires: mpfr-static-toolfile -Requires: fastjet-contrib-toolfile -Requires: opencl-toolfile -Requires: opencl-cpp-toolfile -Requires: qd-toolfile -Requires: blackhat-toolfile -Requires: sherpa-toolfile -Requires: geant4-parfullcms-toolfile +Requires: tauola +Requires: tauolapp +Requires: thepeg +Requires: toprex +Requires: libuuid +Requires: xerces-c +Requires: zlib +Requires: dcap +Requires: frontier_client +Requires: xrootd +Requires: dd4hep +Requires: graphviz +Requires: valgrind +Requires: cmsswdata +Requires: zstd +Requires: hls +Requires: opencv +Requires: grpc +Requires: onnxruntime +Requires: triton-inference-server +Requires: hdf5 +Requires: rivet +Requires: cascade +Requires: yoda +Requires: fftw3 +Requires: fftjet +Requires: professor2 +Requires: xz +Requires: lz4 +Requires: protobuf +Requires: lcov +Requires: llvm +Requires: tbb +Requires: mctester +Requires: vdt +Requires: icc +Requires: gnuplot +Requires: sloccount +Requires: millepede +Requires: pacparser +Requires: git +Requires: cgal +Requires: doxygen +Requires: yaml-cpp +Requires: gmp-static +Requires: mpfr-static +Requires: fastjet-contrib +Requires: opencl +Requires: opencl-cpp +Requires: qd +Requires: blackhat +Requires: sherpa +Requires: geant4-parfullcms Requires: fasthadd -Requires: eigen-toolfile -Requires: gdb-toolfile -Requires: libxslt-toolfile -Requires: giflib-toolfile -Requires: freetype-toolfile -Requires: utm-toolfile -Requires: libffi-toolfile -Requires: CSCTrackFinderEmulation-toolfile -Requires: tinyxml2-toolfile -Requires: md5-toolfile -Requires: gosamcontrib-toolfile -Requires: gosam-toolfile -Requires: madgraph5amcatnlo-toolfile +Requires: eigen +Requires: gdb +Requires: libxslt +Requires: giflib +Requires: freetype +Requires: utm +Requires: libffi +Requires: CSCTrackFinderEmulation +Requires: tinyxml2 +Requires: md5 +Requires: gosamcontrib +Requires: gosam +Requires: madgraph5amcatnlo Requires: python_tools Requires: dasgoclient -Requires: OpenBLAS-toolfile -Requires: mxnet-predict-toolfile -Requires: mkfit-toolfile -Requires: dablooms-toolfile +Requires: OpenBLAS +Requires: mxnet-predict +Requires: mkfit +Requires: dablooms # Only for Linux platform. %ifos linux -Requires: openldap-toolfile -Requires: gperftools-toolfile -Requires: cuda-toolfile -Requires: alpaka-toolfile -Requires: cupla-toolfile +Requires: openldap +Requires: gperftools +Requires: cuda +Requires: alpaka +Requires: cupla %if "%{cmsos}" != "slc7_aarch64" -Requires: cudnn-toolfile +Requires: cudnn %endif -Requires: libunwind-toolfile +Requires: libunwind %ifnarch ppc64le -Requires: igprof-toolfile -Requires: openloops-toolfile +Requires: igprof +Requires: openloops %endif %ifarch x86_64 -Requires: dmtcp-toolfile -Requires: tkonlinesw-toolfile -Requires: oracle-toolfile +Requires: dmtcp +Requires: tkonlinesw +Requires: oracle Requires: intel-vtune Requires: cmsmon-tools -Requires: dip-toolfile +Requires: dip %else -Requires: tkonlinesw-fake-toolfile -Requires: oracle-fake-toolfile +Requires: tkonlinesw-fake +Requires: oracle-fake %endif %endif -Requires: tensorflow-toolfile -Requires: xtensor-toolfile -Requires: xtl-toolfile -Requires: xgboost-toolfile +Requires: tensorflow +Requires: xtensor +Requires: xtl +Requires: xgboost %define skipreqtools jcompiler icc-cxxcompiler icc-ccompiler icc-f77compiler rivet2 opencl opencl-cpp nvidia-drivers intel-vtune jemalloc-debug -## IMPORT scramv1-tool-conf +## INCLUDE scramv1-tool-conf diff --git a/cmsswdata.spec b/cmsswdata.spec index 15bff051bb2..80ee1a13056 100644 --- a/cmsswdata.spec +++ b/cmsswdata.spec @@ -90,9 +90,35 @@ Requires: data-GeneratorInterface-ReggeGribovPartonMCInterface %install +mkdir -p %i/etc/scram.d +cat << \EOF_TOOLFILE >%i/etc/scram.d/cmsswdata.xml + + + + +EOF_TOOLFILE + +cat << \EOF_TOOLFILE > %i/searchpath.xml + + +EOF_TOOLFILE + +for toolbase in `echo %pkgreqs | tr ' ' '\n' | grep 'cms/data-'` ; do + toolver=`basename $toolbase` + pack=`echo $toolbase | cut -d/ -f2 | sed 's|data-||;s|-|/|'` + echo " " >> %i/etc/scram.d/cmsswdata.xml + echo " " >> %i/searchpath.xml +done + +cat %i/searchpath.xml >> %i/etc/scram.d/cmsswdata.xml +echo " " >> %i/etc/scram.d/cmsswdata.xml +rm -f %i/searchpath.xml + %post echo "%{BaseTool}_ROOT='$CMS_INSTALL_PREFIX/%{pkgrel}'" > $RPM_INSTALL_PREFIX/%{pkgrel}/etc/profile.d/init.sh echo "set %{BaseTool}_ROOT='$CMS_INSTALL_PREFIX/%{pkgrel}'" > $RPM_INSTALL_PREFIX/%{pkgrel}/etc/profile.d/init.csh +echo "%{BaseTool}_PKGREQUIRED='%pkgreqs'" >> $RPM_INSTALL_PREFIX/%{pkgrel}/etc/profile.d/init.sh +echo "set %{BaseTool}_PKGREQUIRED='%pkgreqs'" >> $RPM_INSTALL_PREFIX/%{pkgrel}/etc/profile.d/init.csh for DATA_PATH in %directpkgreqs; do PKG_DIR=$(echo $DATA_PATH | cut -d/ -f2) @@ -113,4 +139,5 @@ for DATA_PATH in %directpkgreqs; do if [ ! -L $SOURCE/$PKG_DATA ] ; then rm -rf $SOURCE/$PKG_DATA && ln -fs ../../../../share/$DATA_PATH/$PKG_DATA $SOURCE/$PKG_DATA fi -done \ No newline at end of file +done + diff --git a/coral-tool-conf.spec b/coral-tool-conf.spec index 3aac1c35c68..e8d67a7b378 100644 --- a/coral-tool-conf.spec +++ b/coral-tool-conf.spec @@ -1,24 +1,24 @@ -### RPM cms coral-tool-conf 2.1 +### RPM cms coral-tool-conf 10.0 ## NOCOMPILER -Requires: pcre-toolfile -Requires: python3-toolfile -Requires: expat-toolfile -Requires: boost-toolfile -Requires: frontier_client-toolfile -Requires: gcc-toolfile - -Requires: sqlite-toolfile -Requires: libuuid-toolfile -Requires: zlib-toolfile -Requires: bz2lib-toolfile -Requires: cppunit-toolfile -Requires: xerces-c-toolfile +BuildRequires: scram-tools +Requires: pcre +Requires: python +Requires: expat +Requires: boost +Requires: frontier_client +Requires: gcc +Requires: sqlite +Requires: libuuid +Requires: zlib +Requires: bz2lib +Requires: cppunit +Requires: xerces-c Requires: systemtools %ifarch x86_64 -Requires: oracle-toolfile +Requires: oracle %endif %define skipreqtools jcompiler -## IMPORT scramv1-tool-conf +## INCLUDE scramv1-tool-conf diff --git a/fwlite-tool-conf.spec b/fwlite-tool-conf.spec index 14c579b6435..e29603e4e50 100644 --- a/fwlite-tool-conf.spec +++ b/fwlite-tool-conf.spec @@ -1,59 +1,60 @@ -### RPM cms fwlite-tool-conf 11.0 +### RPM cms fwlite-tool-conf 20.0 ## NOCOMPILER # with cmsBuild, change the above version only when a new # tool is added ## INITENV SET CMSSW_TOOL_CONF_ROOT $FWLITE_TOOL_CONF_ROOT -Requires: eigen-toolfile -Requires: fmt-toolfile -Requires: tbb-toolfile -Requires: boost-toolfile -Requires: bz2lib-toolfile -Requires: clhep-toolfile -Requires: db6-toolfile -Requires: dcap-toolfile -Requires: expat-toolfile +BuildRequires: scram-tools +Requires: eigen +Requires: fmt +Requires: tbb +Requires: boost +Requires: bz2lib +Requires: clhep +Requires: db6 +Requires: dcap +Requires: expat Requires: fakesystem -Requires: fftw3-toolfile -Requires: fwlitedata-toolfile -Requires: gcc-toolfile -Requires: gdbm-toolfile -Requires: gmake-toolfile -Requires: gsl-toolfile -Requires: hepmc-toolfile -Requires: libjpeg-turbo-toolfile -Requires: libpng-toolfile -Requires: libtiff-toolfile -Requires: libungif-toolfile -Requires: pcre-toolfile -Requires: python-toolfile -Requires: python3-toolfile -Requires: root-toolfile -Requires: sigcpp-toolfile -Requires: sqlite-toolfile +Requires: fftw3 +Requires: fwlitedata +Requires: gcc +Requires: gdbm +Requires: gmake +Requires: gsl +Requires: hepmc +Requires: libjpeg-turbo +Requires: libpng +Requires: libtiff +Requires: libungif +Requires: pcre +Requires: python +Requires: python3 +Requires: root +Requires: sigcpp +Requires: sqlite Requires: systemtools -Requires: libuuid-toolfile -Requires: xerces-c-toolfile -Requires: xrootd-toolfile -Requires: xz-toolfile -Requires: zlib-toolfile -Requires: libxml2-toolfile -Requires: llvm-gcc-toolfile -Requires: vdt-toolfile -Requires: tinyxml2-toolfile -Requires: md5-toolfile -Requires: davix-toolfile -Requires: py3-numpy-toolfile -Requires: OpenBLAS-toolfile -Requires: py3-pybind11-toolfile +Requires: libuuid +Requires: xerces-c +Requires: xrootd +Requires: xz +Requires: zlib +Requires: libxml2 +Requires: llvm +Requires: vdt +Requires: tinyxml2 +Requires: md5 +Requires: davix +Requires: py3-numpy +Requires: OpenBLAS +Requires: py3-pybind11 Requires: fwlite_python_tools -Requires: zstd-toolfile +Requires: zstd # Only for Darwin platform. %ifarch darwin -Requires: freetype-toolfile +Requires: freetype %endif %define skipreqtools jcompiler db6 expat fftw3 sqlite -## IMPORT scramv1-tool-conf +## INCLUDE scramv1-tool-conf diff --git a/geant4data.spec b/geant4data.spec index f5e179abed9..74c5d0c680e 100644 --- a/geant4data.spec +++ b/geant4data.spec @@ -15,9 +15,31 @@ Requires: geant4-G4INCL %prep %build %install + +mkdir -p %i/etc/scram.d +cat << \EOF_TOOLFILE >%i/etc/scram.d/geant4data.xml + + + + +EOF_TOOLFILE + +for tool in `echo %requiredtools | tr ' ' '\n' | grep 'geant4-'` ; do + uctool=`echo $tool | tr '-' '_' | tr '[a-z]' '[A-Z]'` + toolbase=`eval echo \\$${uctool}_ROOT` + toolenv=`eval echo \\$${uctool}_RUNTIME` + echo "$uctool = $toolbase, $toolenv" + if [ "X$toolbase" = X -o "X$toolenv" = X -o ! -d $toolbase/data ] ; then continue ; fi + tooldata=`ls -d $toolbase/data/* | tail -1` + if [ "X$tooldata" = X ] ; then continue ; fi + echo " " >> %i/etc/scram.d/geant4data.xml +done +echo "" >> %i/etc/scram.d/geant4data.xml + %post if [ "X$CMS_INSTALL_PREFIX" = "X" ] ; then CMS_INSTALL_PREFIX=$RPM_INSTALL_PREFIX; export CMS_INSTALL_PREFIX; fi echo "GEANT4DATA_ROOT='$CMS_INSTALL_PREFIX/%{pkgrel}'" > $RPM_INSTALL_PREFIX/%{pkgrel}/etc/profile.d/init.sh echo "set GEANT4DATA_ROOT='$CMS_INSTALL_PREFIX/%{pkgrel}'" > $RPM_INSTALL_PREFIX/%{pkgrel}/etc/profile.d/init.csh echo "GEANT4DATA_VERSION='%v'" >> $RPM_INSTALL_PREFIX/%{pkgrel}/etc/profile.d/init.sh echo "set GEANT4DATA_VERSION='%v'" >> $RPM_INSTALL_PREFIX/%{pkgrel}/etc/profile.d/init.csh + diff --git a/python_tools.spec b/python_tools.spec index 5fc0bf3a27e..f8f68c71d5e 100644 --- a/python_tools.spec +++ b/python_tools.spec @@ -123,10 +123,10 @@ Requires: py3-python-ldap Requires: py3-plac Requires: py3-matplotlib -Requires: py3-numpy-toolfile +Requires: py3-numpy Requires: py3-sqlalchemy Requires: py3-pygithub -Requires: py3-dxr-toolfile +Requires: py3-dxr Requires: py3-PyYAML Requires: py3-pylint Requires: py3-pip @@ -134,7 +134,7 @@ Requires: py3-pip Requires: py3-cx-Oracle %endif Requires: py3-cython -Requires: py3-pybind11-toolfile +Requires: py3-pybind11 Requires: py3-histbook Requires: py3-flake8 Requires: py3-autopep8 @@ -217,9 +217,4 @@ Requires: py3-correctionlib %build %install -mkdir -p %{i}/etc/scram.d -cat << \EOF_TOOLFILE >%i/etc/scram.d/python_tools.xml - - -EOF_TOOLFILE diff --git a/scram-tools.spec b/scram-tools.spec new file mode 100644 index 00000000000..e1c117f2afc --- /dev/null +++ b/scram-tools.spec @@ -0,0 +1,17 @@ +### RPM cms scram-tools 1.0 +## NOCOMPILER + +%define branch main +%define tag c29ad2e62574733b9bb9bf7d5b995b9a4df2dbe8 +%define github_user cms-sw +%define github_repo %{n} + +Source: git+https://github.com/%{github_user}/%{github_repo}.git?obj=%{branch}/%{tag}&export=%{n}-%{realversion}&output=/%{n}-%{realversion}-%{tag}.tgz + +%prep +%setup -n %{n}-%{realversion} + +%build + +%install +cp -r %{_builddir}/%{n}-%{realversion} %{i}/%{n} diff --git a/scramv1-tool-conf.file b/scramv1-tool-conf.file index a8bf551476a..b2fea382231 100644 --- a/scramv1-tool-conf.file +++ b/scramv1-tool-conf.file @@ -1,24 +1,20 @@ ### FILE scramv1-tool-conf ## NOCOMPILER ## BUILDREQUIRE-TOOLFILE -Requires: gmake-toolfile +Requires: gmake BuildRequires: SCRAMV1 +## INCLUDE compilation_flags Source: none %define online %(case %cmsplatf in (*onl_*_*) echo true;; (*) echo false;; esac) %define CheckScramTools \ uctool=`echo $tool | tr '[a-z-]' '[A-Z_]'` \ toolbase=`eval echo \\\\$${uctool}_ROOT` \ - [ -d $toolbase/etc/scram.d ] || continue + [ -d ${SCRAM_TOOLS_ROOT}/scram-tools/tools/$tool ] || continue %define CopyScramTools \ echo ">> Copying tool files from: $tool" \ - for xml in $(find $toolbase/etc/scram.d -type f) ; do \ - bxml=$(basename $xml | tr '[A-Z]' '[a-z]') \ - [ -f %i/tools/selected/$bxml ] && continue \ - [ -f %i/tools/available/$bxml ] && continue \ - cp $xml %i/tools/selected/${bxml} \ - echo " Copied $bxml" \ - done + T_VERSION=`eval echo \\\\$${uctool}_VERSION` \ + ${SCRAM_TOOLS_ROOT}/scram-tools/bin/get_tools "$toolbase" "$T_VERSION" %i "${tool}" %prep %build @@ -42,6 +38,24 @@ mkdir -p %i/tools/selected %i/tools/available %define skipreqtools %{nil} %endif +%if "%{?package_vectorization}" != "" +export PKG_VECTORIZATION=`echo %package_vectorization` +%endif +export CMSDIST_DIR=%cmsdist_directory + +COMP_ARCH_SPECIFIC_FLAGS="" +%ifarch x86_64 +COMP_ARCH_SPECIFIC_FLAGS=$(%{cmsdist_directory}/vectorization/cmsdist_packages.py) +%endif +%ifarch aarch64 +COMP_ARCH_SPECIFIC_FLAGS="-fsigned-char -fsigned-bitfields" +%endif +%ifarch ppc64le +COMP_ARCH_SPECIFIC_FLAGS="-fsigned-char -fsigned-bitfields %ppc64le_build_flags" +%endif +export COMP_ARCH_SPECIFIC_FLAGS +export ORACLE_ENV_ROOT + DoneTools=" " SkipTools= for tool in %requiredtools; do @@ -69,23 +83,11 @@ for tool in $SkipTools ; do %{CopyScramTools} done -# Fixes logic in above loop in case of online release: -# the descriptions of explicitly defined systemtools should -# take precedence over those from cms-rebuilt rpms -%if "%online" == "true" -for tool in %systemtools ${PKGTOOLS_SYSTEM_TOOLS} ; do - lc_tool=$(echo $tool | tr '[A-Z]' '[a-z]') - rm -f %i/tools/selected/${lc_tool} %i/tools/selected/${lc_tool}.xml - cp -rf %{onlinesystemtoolsroot}/etc/scram.d/${tool}.xml %i/tools/selected/${lc_tool}.xml -done -# For now copy all systemtools files. If needed, this can be done more selectively. -%endif - for stool in $(echo %skipreqtools | tr '[A-Z]' '[a-z]') ; do [ -f %i/tools/selected/${stool}.xml ] || continue mv %i/tools/selected/${stool}.xml %i/tools/available done - + if [ -e $SCRAMV1_ROOT/bin/chktool ] ; then find %i/tools -name '*.xml' -type f | (xargs $SCRAMV1_ROOT/bin/chktool > %i/errors.log 2>&1 || true) ToolErrors=`cat %i/errors.log | wc -l | awk '{print $1}'` @@ -141,6 +143,7 @@ for pkg in $(echo %{allpkgreqs} | tr ' ' '\n' | grep -v '\-toolfile/' | grep '/ echo "" >> %{i}/tools/selected/${pk_name}.xml done DUP_BIN=$(echo "${ALL_PY_BIN}" | tr ' ' '\n' | sort | uniq -c | sed 's|^\s*||' | grep -v '^1 ' | sed 's|^.* ||') + set +x if [ "${DUP_BIN}" != "" ] ; then for p in ${DUP_BIN} ; do @@ -150,7 +153,26 @@ if [ "${DUP_BIN}" != "" ] ; then exit 1 fi set -x + +#vectorized packages +%if "%{?vectorized_packages}" != "" +for vect_package in %vectorized_packages; do + echo $vect_package + package_uc=$(echo $vect_package | tr '[a-z-]' '[A-Z_]') + r="" + #echo $package_uc + for v in $(echo %{package_vectorization} | tr '[a-z-]' '[A-Z_]'); do + r=$r" \n" + #echo $v + done + r=$r'' + perl -p -i -e "s||${r}|g" %i/tools/selected/$(echo $vect_package | tr '[A-Z]' '[a-z]').xml +done +%endif + %post + %{relocateCmsFiles} $(find $RPM_INSTALL_PREFIX/%{pkgrel}/tools -type f) %{relocateCmsFiles} $(find $RPM_INSTALL_PREFIX/%{pkgrel}/lib -type f) - diff --git a/systemtools.spec b/systemtools.spec index a213d6ddcb8..d43d22aac1f 100644 --- a/systemtools.spec +++ b/systemtools.spec @@ -2,7 +2,6 @@ ## NOCOMPILER Source: none - %if "%{?use_system_gcc:set}" == "set" %define compilertools ccompiler cxxcompiler f77compiler %else @@ -22,82 +21,4 @@ Source: none %prep %build %install -# SCRAM ToolBox toolfile -mkdir -p %i/etc/scram.d -#OpenSSL -cat << \EOF_TOOLFILE >%i/etc/scram.d/openssl.xml - - - - -EOF_TOOLFILE - -# Sockets -cat << \EOF_TOOLFILE >%i/etc/scram.d/sockets.xml - -EOF_TOOLFILE -%ifos linux -cat << \EOF_TOOLFILE >>%i/etc/scram.d/sockets.xml - - - - -EOF_TOOLFILE -%endif -%ifarch darwin -cat << \EOF_TOOLFILE >>%i/etc/scram.d/sockets.xml - -EOF_TOOLFILE -%endif -echo " " >>%i/etc/scram.d/sockets.xml - -# OpenGL -cat << \EOF_TOOLFILE >%i/etc/scram.d/opengl.xml - - - - - -EOF_TOOLFILE -%ifarch darwin -cat << \EOF_TOOLFILE >>%i/etc/scram.d/opengl.xml - - - - - -EOF_TOOLFILE -%endif -echo " " >>%i/etc/scram.d/opengl.xml - -# X11 -cat << \EOF_TOOLFILE >%i/etc/scram.d/x11.xml - -EOF_TOOLFILE -%ifarch darwin -cat << \EOF_TOOLFILE >>%i/etc/scram.d/x11.xml - - - - - - - - - - - - - -EOF_TOOLFILE -%endif -cat << \EOF_TOOLFILE >>%i/etc/scram.d/x11.xml - - -EOF_TOOLFILE - -export ORACLE_ENV_ROOT -perl -p -i -e 's|\@([^@]*)\@|$ENV{$1}|g' %i/etc/scram.d/*.xml -%post -%{relocateConfig}etc/scram.d/*.xml