Hello community, here is the log from the commit of package trilinos for openSUSE:Factory checked in at 2020-09-15 16:15:57 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/trilinos (Old) and /work/SRC/openSUSE:Factory/.trilinos.new.4249 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "trilinos" Tue Sep 15 16:15:57 2020 rev:10 rq:834000 version:12.14.1 Changes: -------- --- /work/SRC/openSUSE:Factory/trilinos/trilinos.changes 2020-05-11 13:34:44.900286778 +0200 +++ /work/SRC/openSUSE:Factory/.trilinos.new.4249/trilinos.changes 2020-09-15 16:15:57.813894121 +0200 @@ -1,0 +2,22 @@ +Fri Sep 11 06:22:46 UTC 2020 - Egbert Eich <e...@suse.com> + +- Add build support for gcc10 to HPC build (bsc#1174439). +- Add openmpi4 flavors. +- Revert: Use memoryperjob constraint instead of %limit_build macro. + This would attempt to find a work whose memory matches the number + of jobs available * memoryperjob. Such workers may not exist. +- Use 'module load netcdf' - this is now the load command for + all variants of netcdf. + +------------------------------------------------------------------- +Thu Aug 20 09:08:15 UTC 2020 - Martin Liška <mli...@suse.cz> + +- Use memoryperjob constraint instead of %limit_build macro. + +------------------------------------------------------------------- +Tue Aug 11 18:16:44 UTC 2020 - Bernhard Wiedemann <bwiedem...@suse.com> + +- Add reproducible.patch to override build date (boo#1047218) +- Add reproducible-docs.patch to sort the file list (boo#1041090) + +------------------------------------------------------------------- New: ---- reproducible-docs.patch reproducible.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ trilinos.spec ++++++ --- /var/tmp/diff_new_pack.on4lEu/_old 2020-09-15 16:15:59.021895240 +0200 +++ /var/tmp/diff_new_pack.on4lEu/_new 2020-09-15 16:15:59.025895244 +0200 @@ -39,6 +39,9 @@ %if !%{?is_opensuse} && 0%{?sle_version:1} && 0%{?sle_version} < 150200 %define DisOMPI3 ExclusiveArch: do_not_build %endif +%if 0%{?sle_version:1} && 0%{?sle_version} < 150300 +%define DisOMPI4 ExclusiveArch: do_not_build +%endif %if "%flavor" == "" ExclusiveArch: do_not_build @@ -81,6 +84,14 @@ %{bcond_with hpc} %endif +%if "%{flavor}" == "openmpi4" +%{?DisOMPI4} +%undefine c_f_ver +%global mpi_family openmpi +%define mpi_ver 4 +%{bcond_with hpc} +%endif + %if "%{flavor}" == "gnu-mvapich2-hpc" %undefine c_f_ver %global mpi_family mvapich2 @@ -122,6 +133,15 @@ %{bcond_without hpc} %endif +%if "%{flavor}" == "gnu-openmpi4-hpc" +%{?DisOMPI4} +%undefine c_f_ver +%global mpi_family openmpi +%global compiler_family gnu +%define mpi_ver 4 +%{bcond_without hpc} +%endif + %if "%{flavor}" == "gnu7-mvapich2-hpc" %define c_f_ver 7 %global mpi_family mvapich2 @@ -163,6 +183,15 @@ %{bcond_without hpc} %endif +%if "%{flavor}" == "gnu7-openmpi4-hpc" +%{?DisOMPI4} +%define c_f_ver 7 +%global mpi_family openmpi +%global compiler_family gnu +%define mpi_ver 4 +%{bcond_without hpc} +%endif + %if "%{flavor}" == "gnu8-mvapich2-hpc" %define c_f_ver 8 %global mpi_family mvapich2 @@ -204,6 +233,15 @@ %{bcond_without hpc} %endif +%if "%{flavor}" == "gnu8-openmpi4-hpc" +%{?DisOMPI4} +%define c_f_ver 8 +%global mpi_family openmpi +%global compiler_family gnu +%define mpi_ver 4 +%{bcond_without hpc} +%endif + %if "%{flavor}" == "gnu9-mvapich2-hpc" %define c_f_ver 9 %global mpi_family mvapich2 @@ -245,6 +283,65 @@ %{bcond_without hpc} %endif +%if "%{flavor}" == "gnu9-openmpi4-hpc" +%{?DisOMPI4} +%define c_f_ver 9 +%global mpi_family openmpi +%global compiler_family gnu +%define mpi_ver 4 +%{bcond_without hpc} +%endif + +%if "%{flavor}" == "gnu10-mvapich2-hpc" +%define c_f_ver 10 +%global mpi_family mvapich2 +%global compiler_family gnu +%{bcond_without hpc} +%endif + +%if "%{flavor}" == "gnu10-mpich-hpc" +%define c_f_ver 10 +%global mpi_family mpich +%global compiler_family gnu +%{bcond_without hpc} +%endif + +%if "%{flavor}" == "gnu10-openmpi-hpc" +%{?DisOMPI1} +%define c_f_ver 10 +%global mpi_family openmpi +%global compiler_family gnu +%define mpi_ver 1 +%{bcond_without hpc} +%endif + +%if "%{flavor}" == "gnu10-openmpi2-hpc" +%{?DisOMPI2} +%define c_f_ver 10 +%global mpi_family openmpi +%global compiler_family gnu +%define mpi_ver 2 +%{bcond_without hpc} +%endif + +%if "%{flavor}" == "gnu10-openmpi3-hpc" +%{?DisOMPI3} +%define c_f_ver 10 +%global mpi_family openmpi +%global compiler_family gnu +%define mpi_ver 3 +%{bcond_without hpc} +%endif + +%if "%{flavor}" == "gnu10-openmpi4-hpc" +%{?DisOMPI4} +%define c_f_ver 10 +%global mpi_family openmpi +%global compiler_family gnu +%define mpi_ver 4 +%{bcond_without hpc} +%endif + %if "%{flavor}" == "documentation-hpc" %{bcond_without hpc} %{bcond_without doc} @@ -306,6 +403,10 @@ # PATCH-FIX-UPSTREAM trilinos-11.4.3-no-return-in-non-void.patch Patch0: trilinos-11.14.3-no-return-in-non-void.patch Patch1: Fix-Makefiles-for-gmake-4.3.patch +# PATCH-FIX-UPSTREAM +Patch2: reproducible.patch +# PATCH-FIX-UPSTREAM +Patch3: reproducible-docs.patch BuildRequires: cmake >= 2.8 BuildRequires: fdupes BuildRequires: hwloc-devel @@ -474,12 +575,16 @@ %setup -q -n Trilinos-trilinos-release-%{ver_exp} %patch0 -p1 %patch1 -p1 +%patch2 -p1 %build # https://en.opensuse.org/openSUSE:Build_system_recipes#cmake %if 0%{?sle_version} > 150100 || 0%{?suse_version} > 1500 %define __builder ninja %endif +# Do *not* replace by memoryperjob constraint!!! The latter +# attempts to find a work whose memory matches the number of +# jobs available * memoryperjob. Such workers may not exist! %limit_build -m 4000 # Fix this once boost is available as a HPC version # move this to the non-hpc section @@ -491,7 +596,7 @@ %hpc_setup_mpi # Fix this once boost is available as a HPC version #module load boost -module load %{?with_mpi:p}netcdf +module load netcdf module load %{?with_mpi:p}hdf5 module load openblas %endif @@ -725,6 +830,7 @@ %prep %setup -q -n Trilinos-trilinos-release-%{ver_exp} +%patch3 -p1 %build # Build the doc ++++++ _constraints ++++++ --- /var/tmp/diff_new_pack.on4lEu/_old 2020-09-15 16:15:59.053895270 +0200 +++ /var/tmp/diff_new_pack.on4lEu/_new 2020-09-15 16:15:59.053895270 +0200 @@ -1,3 +1,4 @@ +<?xml version="1.0" encoding="UTF-8"?> <constraints> <hardware> <disk> ++++++ _multibuild ++++++ --- /var/tmp/diff_new_pack.on4lEu/_old 2020-09-15 16:15:59.073895288 +0200 +++ /var/tmp/diff_new_pack.on4lEu/_new 2020-09-15 16:15:59.077895292 +0200 @@ -5,6 +5,7 @@ <package>openmpi2</package> <package>gnu-openmpi2-hpc</package> <package>gnu-openmpi3-hpc</package> + <package>gnu-openmpi4-hpc</package> <package>gnu-mvapich2-hpc</package> <package>gnu-mpich-hpc</package> </multibuild> ++++++ reproducible-docs.patch ++++++ https://github.com/trilinos/Trilinos/pull/5559 commit 26e978bbeb86cee8e83cf80610ed2fadecc7b6c0 Author: Bernhard M. Wiedemann <bwiedem...@suse.de> Date: Mon Jul 22 13:00:24 2019 +0200 Sort input file list so that variables_f.js builds in a reproducible way in spite of indeterministic filesystem readdir order. See https://reproducible-builds.org/ for why this is good. diff --git a/doc/build_docs.pl b/doc/build_docs.pl index 967ec8ac04..3efb64e550 100755 --- a/doc/build_docs.pl +++ b/doc/build_docs.pl @@ -37,7 +37,7 @@ use File::Basename; print "\n"; if(!$skipBuild) { print "\nGenerating package documentation ...\n"; - find (\&buildDocs, $trilinosDir); + find ({wanted=>\&buildDocs, preprocess => sub {sort {$a cmp $b} @_}}, $trilinosDir); if($build_dir) { find (\©XML, $trilinosDir); } ++++++ reproducible.patch ++++++ https://github.com/trilinos/Trilinos/pull/7814 commit 8012a23c0bbc10d585a978159c952066ce5d485f Author: Bernhard M. Wiedemann <bwiedem...@suse.de> Date: Sun Aug 9 21:24:11 2020 +0200 Allow to override build date with SOURCE_DATE_EPOCH in order to make builds reproducible. See https://reproducible-builds.org/ for why this is good and https://reproducible-builds.org/specs/source-date-epoch/ for the definition of this variable. This date call is designed to work with all variants of date. Also use UTC to be independent of timezone. As an alternative, the date could be dropped to reduce complexity. This PR was done while working on reproducible builds for openSUSE. diff --git a/packages/kokkos/Makefile.kokkos b/packages/kokkos/Makefile.kokkos index 5c0e91f1..3b7d3cf6 100644 --- a/packages/kokkos/Makefile.kokkos +++ b/packages/kokkos/Makefile.kokkos @@ -364,7 +364,12 @@ KOKKOSHASH=\# # Do not append first line tmp := $(shell echo "/* ---------------------------------------------" > KokkosCore_config.tmp) tmp := $(call kokkos_append_header,"Makefile constructed configuration:") -tmp := $(call kokkos_append_header,"$(shell date)") +ifdef SOURCE_DATE_EPOCH + BUILD_DATE ?= $(shell date -u -d "@$(SOURCE_DATE_EPOCH)" 2>/dev/null || date -u -r "$(SOURCE_DATE_EPOCH)" 2>/dev/null || date -u) +else + BUILD_DATE ?= $(shell date) +endif +tmp := $(call kokkos_append_header,"$(BUILD_DATE)") tmp := $(call kokkos_append_header,"----------------------------------------------*/") tmp := $(call kokkos_append_header,'$(KOKKOSHASH)if !defined(KOKKOS_MACROS_HPP) || defined(KOKKOS_CORE_CONFIG_H)')