Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package mpich for openSUSE:Factory checked in at 2021-04-06 17:30:06 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/mpich (Old) and /work/SRC/openSUSE:Factory/.mpich.new.2401 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "mpich" Tue Apr 6 17:30:06 2021 rev:22 rq:882725 version:3.4.1 Changes: -------- --- /work/SRC/openSUSE:Factory/mpich/mpich.changes 2020-11-30 09:54:05.317792052 +0100 +++ /work/SRC/openSUSE:Factory/.mpich.new.2401/mpich.changes 2021-04-06 17:31:31.527242107 +0200 @@ -1,0 +2,26 @@ +Tue Mar 30 13:16:18 UTC 2021 - Nicolas Morey-Chaisemartin <[email protected]> + +- Update to mpich 3.4.1 + - ch4 replaces ch3 as the default device configuration. If no network + module is specified at configuration-time, MPICH will search the + user environment in order to select one to build. The user will be + prompted to choose if no preferred network library is dectected. + - Add support for XPMEM. + - Add support for multiple virtual communication interfaces for more + efficient MPI_THREAD_MULTIPLE (experimental). + - Add support for Arm compiler toolchain + - Add support for flang/f18 Fortran compiler + - See CHANGES for the complete list of CHANGES +- Changed MPI interface in mpich package + - 64bit archs use ch4:ucx + - 32bit archs use ch3:nemesis (verbs) +- Drop patches merged upstream: + - ch3-fix-improper-error-handling-from-MPL_get_sockaddr.patch + - opmi-fix-a-wrong-condition-checking-return-of-MPL_get_sockaddr.patch +- Add patches to make sure built is used with the proper system libraries + and not the embedded ones: + - autogen-only-deal-with-json-yaksa-if-enabled.patch + - autoconf-pull-dynamic-and-not-static-libs-from-pkg-config.patch +- Refresh 0001-Drop-real128.patch against latest sources + +------------------------------------------------------------------- Old: ---- ch3-fix-improper-error-handling-from-MPL_get_sockaddr.patch mpich-3.3.2.tar.gz pmi-fix-a-wrong-condition-checking-return-of-MPL_get_sockaddr.patch New: ---- autoconf-pull-dynamic-and-not-static-libs-from-pkg-config.patch autogen-only-deal-with-json-yaksa-if-enabled.patch mpich-3.4.1.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ mpich.spec ++++++ --- /var/tmp/diff_new_pack.UQTRLk/_old 2021-04-06 17:31:32.079242731 +0200 +++ /var/tmp/diff_new_pack.UQTRLk/_new 2021-04-06 17:31:32.083242736 +0200 @@ -1,7 +1,7 @@ # -# spec file for package mpich +# spec file for package %{package_name}%{?testsuite:-testsuite} # -# Copyright (c) 2020 SUSE LLC +# Copyright (c) 2021 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -24,8 +24,8 @@ # % define build_static_devel 1 %define pname mpich -%define vers 3.3.2 -%define _vers 3_3_2 +%define vers 3.4.1 +%define _vers 3_4_1 %if "%{flavor}" == "" ExclusiveArch: do_not_build @@ -33,11 +33,11 @@ %endif %if "%{flavor}" == "standard" -%define build_flavor verbs +%define build_flavor ucx %{bcond_with hpc} %endif %if "%{flavor}" == "testsuite" -%define build_flavor verbs +%define build_flavor ucx %define testsuite 1 %{bcond_with hpc} %endif @@ -55,7 +55,7 @@ %if "%flavor" == "gnu-hpc" %define compiler_family gnu %undefine c_f_ver -%define build_flavor verbs +%define build_flavor ucx %define build_static_devel 1 %{bcond_without hpc} %endif @@ -63,7 +63,7 @@ %define compiler_family gnu %undefine c_f_ver %define testsuite 1 -%define build_flavor verbs +%define build_flavor ucx %{bcond_without hpc} %endif @@ -85,7 +85,7 @@ %if "%flavor" == "gnu7-hpc" %define compiler_family gnu %define c_f_ver 7 -%define build_flavor verbs +%define build_flavor ucx %define build_static_devel 1 %{bcond_without hpc} %endif @@ -94,7 +94,7 @@ %define compiler_family gnu %define c_f_ver 7 %define testsuite 1 -%define build_flavor verbs +%define build_flavor ucx %{bcond_without hpc} %endif @@ -116,7 +116,7 @@ %if "%flavor" == "gnu8-hpc" %define compiler_family gnu %define c_f_ver 8 -%define build_flavor verbs +%define build_flavor ucx %define build_static_devel 1 %{bcond_without hpc} %endif @@ -124,7 +124,7 @@ %define compiler_family gnu %define c_f_ver 8 %define testsuite 1 -%define build_flavor verbs +%define build_flavor ucx %{bcond_without hpc} %endif @@ -147,7 +147,7 @@ %if "%flavor" == "gnu9-hpc" %define compiler_family gnu %define c_f_ver 9 -%define build_flavor verbs +%define build_flavor ucx %define build_static_devel 1 %{bcond_without hpc} %endif @@ -155,7 +155,7 @@ %define compiler_family gnu %define c_f_ver 9 %define testsuite 1 -%define build_flavor verbs +%define build_flavor ucx %{bcond_without hpc} %endif @@ -177,7 +177,7 @@ %if "%flavor" == "gnu10-hpc" %define compiler_family gnu %define c_f_ver 10 -%define build_flavor verbs +%define build_flavor ucx %define build_static_devel 1 %{bcond_without hpc} %endif @@ -186,7 +186,7 @@ %define compiler_family gnu %define c_f_ver 10 %define testsuite 1 -%define build_flavor verbs +%define build_flavor ucx %{bcond_without hpc} %endif @@ -205,10 +205,18 @@ %{bcond_without hpc} %endif -%if "%{build_flavor}" != "verbs" +%if "%{build_flavor}" != "ucx" %define pack_suff %{?build_flavor:-%{build_flavor}} %endif +%if "%{build_flavor}" == "ucx" +%ifarch %ix86 %arm +# UCX is not available on 32b system so silently fallback +# on ch3:nemesis which works with verbs +%define build_flavor verbs +%endif +%endif + %if %{without hpc} %define module_name mpich%{?pack_suff} %define p_prefix /usr/%_lib/mpi/gcc/%{module_name} @@ -250,34 +258,43 @@ Source100: _multibuild # PATCH-FIX-UPSTREAM 0001-Drop-real128.patch (https://github.com/pmodels/mpich/issues/4005) Patch0: 0001-Drop-real128.patch -Patch1: ch3-fix-improper-error-handling-from-MPL_get_sockaddr.patch -Patch2: pmi-fix-a-wrong-condition-checking-return-of-MPL_get_sockaddr.patch +Patch1: autogen-only-deal-with-json-yaksa-if-enabled.patch +Patch2: autoconf-pull-dynamic-and-not-static-libs-from-pkg-config.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: fdupes BuildRequires: hwloc-devel >= 1.6 +BuildRequires: libjson-c-devel BuildRequires: libtool BuildRequires: pkg-config -BuildRequires: python-devel + %ifnarch s390 s390x %{arm} BuildRequires: valgrind-devel %endif -BuildRequires: infiniband-diags-devel -BuildRequires: libibumad-devel -BuildRequires: libibverbs-devel -BuildRequires: librdmacm-devel %ifnarch s390 s390x armv7hl BuildRequires: libnuma-devel %endif BuildRequires: libtool BuildRequires: libtool BuildRequires: mpi-selector -BuildRequires: python-devel +BuildRequires: python3-devel BuildRequires: sysfsutils -%if "%{flavor}" == "ofi" + +%if "%{build_flavor}" == "ofi" BuildRequires: libfabric-devel %endif +%if "%{build_flavor}" == "ucx" +BuildRequires: libucp-devel +BuildRequires: libucs-devel +# UCX is only available for 64b archs +ExcludeArch: %ix86 %arm +%endif +%if "%{build_flavor}" == "verbs" +BuildRequires: libibverbs-devel +BuildRequires: librdmacm-devel +%endif + Provides: mpi %if %{without hpc} BuildRequires: Modules @@ -285,7 +302,7 @@ BuildRequires: gcc-fortran BuildRequires: mpi-selector Requires: mpi-selector -Requires(preun): mpi-selector +Requires(preun):mpi-selector %else BuildRequires: %{compiler_family}%{?c_f_ver}-compilers-hpc-macros-devel BuildRequires: lua-lmod @@ -379,10 +396,12 @@ %setup -q -n mpich-%{version}%{?rc_ver} # Only apply this patch on Armv7 %ifarch armv7hl -%patch0 -p1 +%patch0 +%endif %patch1 %patch2 -%endif +# Make sure prebuilt dependencies are used and not mpich submodules +rm -R modules/{ucx,libfabric,json-c} %build %global _lto_cflags %{_lto_cflags} -ffat-lto-objects @@ -392,7 +411,7 @@ export FFLAGS="-fallow-argument-mismatch $FFLAGS" %endif -./autogen.sh +./autogen.sh --without-ucx --without-ofi --without-json %{?with_hpc:%hpc_debug} %if %{with hpc} %{hpc_setup} @@ -411,8 +430,14 @@ --docdir=%{_datadir}/doc/%{name} \ --disable-rpath \ --disable-wrapper-rpath \ -%if "%{flavor}" == "ofi" - --with-device=ch3:nemesis:ofi \ +%if "%{build_flavor}" == "ofi" + --with-device=ch4:ofi \ +%endif +%if "%{build_flavor}" == "ucx" + --with-device=ch4:ucx \ +%endif +%if "%{build_flavor}" == "verbs" + --with-device=ch3:nemesis \ %endif CFLAGS="%optflags -fPIC" \ CXXLAGS="%optflags -fPIC" \ @@ -597,7 +622,7 @@ %{p_includedir} %{p_libdir}/*.so %{p_libdir}/pkgconfig/mpich.pc -%{p_libdir}/pkgconfig/openpa.pc +%{p_libdir}/pkgconfig/yaksa.pc %if 0%{?build_static_devel} %files devel-static ++++++ 0001-Drop-real128.patch ++++++ --- /var/tmp/diff_new_pack.UQTRLk/_old 2021-04-06 17:31:32.103242758 +0200 +++ /var/tmp/diff_new_pack.UQTRLk/_new 2021-04-06 17:31:32.103242758 +0200 @@ -1,18 +1,18 @@ -From 8f0c71281b5dccd70a3f1d4204e3cc6bc7201ceb Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= - <[email protected]> -Date: Wed, 28 Aug 2019 10:57:55 +0000 -Subject: [PATCH] Drop real128 +commit 7a6039f46cf1d5c26484757f48ef7b38a098ba39 +Author: Nicolas Morey-Chaisemartin <[email protected]> +Date: Tue Apr 14 09:21:03 2020 +0200 -https://github.com/pmodels/mpich/issues/4005 ---- - .../fortran/use_mpi_f08/mpi_f08_types.f90 | 24 ------------------- - 1 file changed, 24 deletions(-) + Drop real128 + + Fixe a fortran compilation failure on ARM + https://github.com/pmodels/mpich/issues/4005 + + Signed-off-by: Nicolas Morey-Chaisemartin <[email protected]> -diff --git a/src/binding/fortran/use_mpi_f08/mpi_f08_types.f90 b/src/binding/fortran/use_mpi_f08/mpi_f08_types.f90 -index f8b0fa811..46bdf6972 100644 ---- a/src/binding/fortran/use_mpi_f08/mpi_f08_types.f90 -+++ b/src/binding/fortran/use_mpi_f08/mpi_f08_types.f90 +diff --git src/binding/fortran/use_mpi_f08/mpi_f08_types.f90 src/binding/fortran/use_mpi_f08/mpi_f08_types.f90 +index 60811d723d82..e611e6370017 100644 +--- src/binding/fortran/use_mpi_f08/mpi_f08_types.f90 ++++ src/binding/fortran/use_mpi_f08/mpi_f08_types.f90 @@ -248,10 +248,8 @@ interface MPI_Sizeof module procedure MPI_Sizeof_xint64 module procedure MPI_Sizeof_xreal32 @@ -69,6 +69,3 @@ subroutine MPI_Status_f2f08(f_status, f08_status, ierror) integer, intent(in) :: f_status(MPI_STATUS_SIZE) type(MPI_Status), intent(out) :: f08_status --- -2.21.0 - ++++++ autoconf-pull-dynamic-and-not-static-libs-from-pkg-config.patch ++++++ commit d0a81cafec8aa4fa668417cb641626a7c3f61c10 Author: Nicolas Morey-Chaisemartin <[email protected]> Date: Thu Apr 1 10:11:45 2021 +0200 autoconf: pull dynamic and not static libs from pkg-config Signed-off-by: Nicolas Morey-Chaisemartin <[email protected]> diff --git confdb/aclocal_libs.m4 confdb/aclocal_libs.m4 index 50d6a8b4cbce..9b769d0fc401 100644 --- confdb/aclocal_libs.m4 +++ confdb/aclocal_libs.m4 @@ -108,12 +108,12 @@ dnl PAC_LIB_DEPS(library_name, library_pc_path) dnl library_pc_path is the path to the library pkg-config directory AC_DEFUN([PAC_LIB_DEPS],[ if test "x$2" != "x"; then - ac_lib$1_deps=`pkg-config --static --libs $2/lib$1.pc 2>/dev/null` + ac_lib$1_deps=`pkg-config --libs $2/lib$1.pc 2>/dev/null` # remove the library itself in case it is embedded ac_lib$1_deps=`echo $ac_lib$1_deps | sed 's/-l$1//'` else # use system default - ac_lib$1_deps=`pkg-config --static --libs lib$1 2>/dev/null` + ac_lib$1_deps=`pkg-config --libs lib$1 2>/dev/null` fi ]) ++++++ autogen-only-deal-with-json-yaksa-if-enabled.patch ++++++ commit 031bb25502d5ad35cf50419f153cd976fff82b5a Author: Nicolas Morey-Chaisemartin <[email protected]> Date: Thu Apr 1 09:06:56 2021 +0200 autogen: only deal with json/yaksa if enabled --without-(json|yaksa) is partially ignored as submodule is not checked but still configured Signed-off-by: Nicolas Morey-Chaisemartin <[email protected]> diff --git autogen.sh autogen.sh index ed20d4b90187..f096c14ef5fb 100755 --- autogen.sh +++ autogen.sh @@ -603,7 +603,7 @@ echo check_submodule_presence modules/hwloc # external packages that require autogen.sh to be run for each of them -externals="src/pm/hydra src/pm/hydra2 src/mpi/romio modules/hwloc test/mpi modules/json-c modules/yaksa" +externals="src/pm/hydra src/pm/hydra2 src/mpi/romio modules/hwloc test/mpi" if [ "yes" = "$do_izem" ] ; then check_submodule_presence modules/izem @@ -622,10 +622,12 @@ fi if [ "yes" = "$do_json" ] ; then check_submodule_presence "modules/json-c" + externals="${externals} modules/json-c" fi if [ "yes" = "$do_yaksa" ] ; then check_submodule_presence "modules/yaksa" + externals="${externals} modules/yaksa" fi ######################################################################## diff --git configure.ac configure.ac index dd7b4d7c6425..fa8c8b16c81a 100644 --- configure.ac +++ configure.ac @@ -1189,14 +1189,23 @@ AC_SUBST([jsonsrcdir]) jsonlib="" AC_SUBST([jsonlib]) -PAC_PUSH_ALL_FLAGS() -PAC_RESET_ALL_FLAGS() -PAC_CONFIG_SUBDIR_ARGS([modules/json-c],[--enable-embedded --disable-werror],[],[AC_MSG_ERROR(json-c configure failed)]) -PAC_POP_ALL_FLAGS() -jsonsrcdir="${main_top_builddir}/modules/json-c" -jsonlib="${main_top_builddir}/modules/json-c/libjson-c.la" -PAC_APPEND_FLAG([-I${use_top_srcdir}/modules/json-c],[CPPFLAGS]) -PAC_APPEND_FLAG([-I${main_top_builddir}/modules/json-c],[CPPFLAGS]) +PAC_CHECK_HEADER_LIB([json-c/json.h], [json-c], [json_object_get], [have_json=yes], [have_json=no]) + +if test "${have_json}" = "no" ; then + AC_MSG_NOTICE([Using an embedded libjson-c]) + PAC_PUSH_ALL_FLAGS() + PAC_RESET_ALL_FLAGS() + PAC_CONFIG_SUBDIR_ARGS([modules/json-c],[--enable-embedded --disable-werror],[],[AC_MSG_ERROR(json-c configure failed)]) + PAC_POP_ALL_FLAGS() + jsonsrcdir="${main_top_builddir}/modules/json-c" + jsonlib="${main_top_builddir}/modules/json-c/libjson-c.la" + PAC_APPEND_FLAG([-I${use_top_srcdir}/modules/json-c],[CPPFLAGS]) + PAC_APPEND_FLAG([-I${main_top_builddir}/modules/json-c],[CPPFLAGS]) +else + AC_MSG_NOTICE([Using an external libjson-c]) + PAC_APPEND_FLAG([-I/usr/include/json-c],[CPPFLAGS]) + PAC_APPEND_FLAG([-ljson-c],[WRAPPER_LIBS]) +fi # ---------------------------------------------------------------------------- # HWLOC ++++++ mpich-3.3.2.tar.gz -> mpich-3.4.1.tar.gz ++++++ /work/SRC/openSUSE:Factory/mpich/mpich-3.3.2.tar.gz /work/SRC/openSUSE:Factory/.mpich.new.2401/mpich-3.4.1.tar.gz differ: char 5, line 1
