Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package gromacs for openSUSE:Factory checked in at 2022-11-09 12:56:57 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/gromacs (Old) and /work/SRC/openSUSE:Factory/.gromacs.new.1597 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gromacs" Wed Nov 9 12:56:57 2022 rev:54 rq:1034513 version:2022.3 Changes: -------- --- /work/SRC/openSUSE:Factory/gromacs/gromacs.changes 2022-05-05 23:07:04.953608917 +0200 +++ /work/SRC/openSUSE:Factory/.gromacs.new.1597/gromacs.changes 2022-11-09 12:57:21.972324500 +0100 @@ -1,0 +2,44 @@ +Wed Nov 2 02:30:21 UTC 2022 - Stefan Br??ns <[email protected]> + +- Use system muparser package, drop libmuparser2 subpackage +- Use system zlib +- Remove bogus/broken library package obsoletes and provides +- Build openmpi version in separate _multibuild + +------------------------------------------------------------------- +Fri Oct 14 14:20:13 UTC 2022 - Klaus K??mpf <[email protected]> + +- Update to 2022.3 + * Bugfix release, see + https://manual.gromacs.org/current/release-notes/2022/2022.3.html + +- Update to 2022.2 + * Bugfix release, see + https://manual.gromacs.org/current/release-notes/2022/2022.2.html + +- Update to 2022.1 + * Highlights: + - Free-energy kernels are accelerated using SIMD, which make + free-energy calculations up to three times as fast when using GPUs + - A new formulation of the soft-cored non-bonded interactions for + free-energy calculations allows for a finer control of the alchemical + transformation pathways + - New transformation pull coordinate allows arbitrary mathematical + transformations of one of more other pull coordinates + - New interface for multi-scale Quantum Mechanics / Molecular + Mechanics (QM/MM) simulations with the CP2K quantum chemistry package, + supporting periodic boundary conditions. + - grompp performance improvements + - Cool quotes music playlist + - Additional features were ported to modular simulator + - Added AMD GPU support with SYCL via hipSYCL + - More GPU offload features supported with SYCL (PME, GPU update). + - Improved parallelization with GPU-accelerated runs using CUDA and + extended GPU direct communication to support multi-node simulation + using CUDA-aware MPI. + + * See https://manual.gromacs.org/current/release-notes/2022/2022.1.html + +- split off libmuparser2 into separate package + +------------------------------------------------------------------- Old: ---- gromacs-2021.2.tar.gz manual-2021.2.pdf regressiontests-2021.2.tar.gz New: ---- _multibuild gromacs-2022.3.tar.gz manual-2022.3.pdf regressiontests-2022.3.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ gromacs.spec ++++++ --- /var/tmp/diff_new_pack.DF3zim/_old 2022-11-09 12:57:24.816340532 +0100 +++ /var/tmp/diff_new_pack.DF3zim/_new 2022-11-09 12:57:24.824340578 +0100 @@ -1,5 +1,5 @@ # -# spec file for package gromacs +# spec file # # Copyright (c) 2022 SUSE LLC # Copyright (c) 2015-2019 Christoph Junghans <[email protected]> @@ -17,14 +17,42 @@ # -Name: gromacs -Version: 2021.2 +%global flavor @BUILD_FLAVOR@%{nil} + +%if "%flavor" == "" +ExclusiveArch: do_not_build +%endif + +%if "%flavor" == "openmpi" +%{bcond_without mpi} +%else +%{bcond_with mpi} +%endif + +%if %{with mpi} +%define libname_gromacs libgromacs_mpi7 +%define libname_gmxapi libgmxapi_mpi0 +%else +%define libname_gromacs libgromacs7 +%define libname_gmxapi libgmxapi0 +%endif +%define libname_nblib_gmx libnblib_gmx0 + +%ifarch x86_64 +%bcond_without opencl +%else +%bcond_with opencl +%endif +%bcond_with tinyxml2 + +Name: gromacs%{?with_mpi:-openmpi} +Version: 2022.3 Release: 0 %define uversion %{version} Summary: Molecular Dynamics Package License: Apache-2.0 AND LGPL-2.1-or-later AND BSD-3-Clause Group: Productivity/Scientific/Chemistry -URL: http://www.gromacs.org +URL: https://www.gromacs.org Source0: ftp://ftp.gromacs.org/pub/gromacs/gromacs-%{uversion}.tar.gz Source1: ftp://ftp.gromacs.org/pub/manual/manual-%{uversion}.pdf Source2: ftp://ftp.gromacs.org/regressiontests/regressiontests-%{uversion}.tar.gz @@ -33,11 +61,22 @@ BuildRequires: fdupes BuildRequires: gcc-c++ BuildRequires: lapack-devel +%if %{with opencl} BuildRequires: ocl-icd-devel BuildRequires: opencl-headers +%endif +%if %{with mpi} +BuildRequires: openmpi-devel BuildRequires: openmpi-macros-devel +%endif BuildRequires: pkg-config BuildRequires: pkgconfig(fftw3) +BuildRequires: pkgconfig(muparser) +BuildRequires: pkgconfig(zlib) +%if %{with tinyxml2} +BuildRequires: (pkgconfig(tinyxml2) > 3.0 with pkgconfig(tinyxml2) < 7) +%endif +Requires: gromacs-data = %{version} %description GROMACS is a package to perform molecular dynamics computer @@ -48,11 +87,11 @@ %package devel Summary: Molecular dynamics package Group: Development/Libraries/C and C++ -Requires: libgmxapi0 = %{version}-%{release} -Requires: libgromacs6 = %{version}-%{release} +Requires: %{libname_gmxapi} = %{version}-%{release} +Requires: %{libname_gromacs} = %{version}-%{release} +Requires: %{libname_nblib_gmx} = %{version}-%{release} # cmake files refer to /usr/bin/gmx, too Requires: %{name} = %{version}-%{release} -Requires: libnblib0 = %{version}-%{release} %description devel GROMACS is a package to perform molecular dynamics computer @@ -60,34 +99,31 @@ This package contains development libraries and header for GROMACS -%package -n libgromacs6 +%package -n %{libname_gromacs} Summary: Libraries for Gromacs Group: System/Libraries -Conflicts: libgromacs4 -%description -n libgromacs6 +%description -n %{libname_gromacs} GROMACS is a package to perform molecular dynamics computer simulations. This package contains libraries for Gromacs -%package -n libgmxapi0 +%package -n %{libname_gmxapi} Summary: Libraries for Gromacs Group: System/Libraries -Conflicts: libgromacs4 -%description -n libgmxapi0 +%description -n %{libname_gmxapi} GROMACS is a package to perform molecular dynamics computer simulations. This package contains libraries for Gromacs. -%package -n libnblib0 +%package -n %{libname_nblib_gmx} Summary: Libraries for Gromacs Group: System/Libraries -Conflicts: libgromacs4 -%description -n libnblib0 +%description -n %{libname_nblib_gmx} GROMACS is a package to perform molecular dynamics computer simulations. @@ -96,7 +132,8 @@ %package bash-completion Summary: Bash completion for Gromacs Group: Productivity/Other -Supplements: (bash-completion and %{name}) +Supplements: (bash-completion and gromacs) +Supplements: (bash-completion and gromacs-openmpi) BuildArch: noarch Provides: %{name}-bash = %{version} Obsoletes: %{name}-bash < %{version} @@ -118,40 +155,35 @@ This package contains documentation for gromacs. -%package openmpi -Summary: Molecular dynamics package +%package data +Summary: Data files for Gromacs Group: Productivity/Scientific/Chemistry -Requires: %{name} = %{version} -%openmpi_requires +# Package split +Provides: gromacs:%{_datadir}/gromacs/README.tutor +Conflicts: gromacs < %{version}-%{release} +BuildArch: noarch -%description openmpi +%description data GROMACS is a package to perform molecular dynamics computer -simulations and subsequent trajectory analysis. It is developed for -biomolecules like proteins, but it can be used in several other field -like polymer chemistry and solid state physics. +simulations. -This package contains the openmpi version of GROMACS. +This package contains data files for gromacs. %prep -%autosetup -n %{name}-%{uversion} +%autosetup -n gromacs-%{uversion} tar -xzf %{S:2} %build +%if %{with mpi} %setup_openmpi - -# save some memory -%ifarch ppc64le -%global _smp_mflags -j1 %endif %ifarch %x86 x86_64 -#increse to SSE4.1, AVX_128_FMA, AVX_256 when possible +#increase to SSE4.1, AVX_128_FMA, AVX_256 when possible %define acce SSE2 %else %define acce None %endif -mkdir nompi -cd nompi # regression are currently broken on i686, https://redmine.gromacs.org/issues/2584 # and cannot be used with GMX_BUILD_MDRUN_ONLY=ON @@ -164,105 +196,108 @@ -DCMAKE_CXX_FLAGS_RELEASE:STRING="%{optflags}" \ -DCMAKE_SKIP_RPATH=OFF \ -DCMAKE_SKIP_INSTALL_RPATH=ON \ + -DGMX_BUILD_UNITTESTS:BOOL=ON \ + -DGMX_EXTERNAL_TINYXML2:BOOL=OFF \ + -DGMX_EXTERNAL_ZLIB:BOOL=ON \ + -DGMX_USE_MUPARSER=EXTERNAL \ -DGMX_SIMD=%{acce} \ +%if %{with mpi} + -DGMX_MPI=ON \ +%else -DGMX_MPI=OFF \ -DGMX_THREAD_MPI=ON \ -%ifarch x86_64 - -DGMX_GPU=OpenCL \ %endif - -DGMX_OPENMP=ON \ - -DGMX_INSTALL_LEGACY_API=ON \ -%ifnarch i586 %arm # regressiontest are not support on 32-bit archs: http://redmine.gromacs.org/issues/2584#note-35 - -DREGRESSIONTEST_PATH="$PWD/../../regressiontests-%{uversion}" \ -%endif - ../../ -%cmake_build - -cd ../.. -mkdir openmpi -cd openmpi -%{cmake} \ - -DGMX_VERSION_STRING_OF_FORK=openSUSE \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_VERBOSE_MAKEFILE=TRUE \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_C_FLAGS_RELEASE:STRING="%{optflags} -fno-strict-aliasing" \ - -DCMAKE_CXX_FLAGS_RELEASE:STRING="%{optflags}" \ - -DCMAKE_SKIP_RPATH=OFF \ - -DCMAKE_SKIP_INSTALL_RPATH=ON \ - -DGMX_SIMD=%{acce} \ - -DGMX_BUILD_MDRUN_ONLY=ON \ - -DBUILD_SHARED_LIBS=OFF \ - -DGMX_MPI=ON \ -%ifarch x86_64 +%if %{with opencl} -DGMX_GPU=OpenCL \ %endif -DGMX_OPENMP=ON \ -DGMX_INSTALL_LEGACY_API=ON \ - ../../ +%ifnarch %{ix86} %{arm} + -DREGRESSIONTEST_PATH="%{_builddir}/gromacs-%{uversion}/regressiontests-%{uversion}" \ + -DGMX_TEST_NUMBER_PROCS=$(( %_smp_build_ncpus / 2 )) \ +%endif + %{nil} %cmake_build +%cmake_build tests %install -cd nompi %cmake_install -cd ../openmpi -%cmake_install -cd .. #no need when installed in /usr rm -f %{buildroot}%{_bindir}/GMXRC* + +%if %{without mpi} # Move bash completion file to correct location mkdir -p %{buildroot}%{_datadir}/bash_completion.d #concatenate all gmx-completion*, starting with gmx-completion.bash (fct defs) cat %{buildroot}%{_bindir}/gmx-completion{,?*}.bash > %{buildroot}%{_datadir}/bash_completion.d/gromacs -rm -f %{buildroot}%{_bindir}/gmx-completion* cp %{S:1} %{buildroot}%{_datadir}/gromacs +%else +rm -f %{buildroot}%{_bindir}/*.pl +rm -Rf %{buildroot}%{_datadir}/gromacs/* +# nblib_gmx is the same for MPI and non-MPI builds +rm -f %{buildroot}%{_libdir}/libnblib_gmx* +rm -f %{buildroot}%{_mandir}/man1/* +# TODO: Some parts of the devel files are MPI dependent +rm -Rf %{buildroot}%{_datadir}/cmake +rm -Rf %{buildroot}%{_includedir}/* +rm -f %{buildroot}%{_libdir}/*.so +rm -Rf %{buildroot}%{_libdir}/pkgconfig/* +rm -Rf %{buildroot}%{_datadir}/gromacs/opencl +%endif + +rm -f %{buildroot}%{_bindir}/gmx-completion* + %fdupes -s %{buildroot} %check #s390x is too slow for tests # gmock based tests don't work on i586 -%ifnarch s390x i586 -%make_build -C nompi/build check -%make_build -C openmpi/build check +%ifnarch s390x %{ix86} +%ctest --exclude-regex 'physicalvalidationtests|regression|2Rank|TwoRanks' %{?with_mpi:--parallel 1} +# Each OneRank/TwoRanks test pair uses the same temporary files, run separately +%ctest --tests-regex '2Rank|TwoRanks' %{?with_mpi:--parallel 1} +%ctest --tests-regex regression --parallel 1 %endif -%post -n libgromacs6 -p /sbin/ldconfig -%postun -n libgromacs6 -p /sbin/ldconfig -%post -n libgmxapi0 -p /sbin/ldconfig -%postun -n libgmxapi0 -p /sbin/ldconfig +%post -n %{libname_gromacs} -p /sbin/ldconfig +%postun -n %{libname_gromacs} -p /sbin/ldconfig +%post -n %{libname_gmxapi} -p /sbin/ldconfig +%postun -n %{libname_gmxapi} -p /sbin/ldconfig +%post -n %{libname_nblib_gmx} -p /sbin/ldconfig +%postun -n %{libname_nblib_gmx} -p /sbin/ldconfig %files +%if %{without mpi} %{_bindir}/gmx %{_bindir}/*.pl -%dir %{_datadir}/gromacs -%{_datadir}/gromacs/top -%ifarch x86_64 -%{_datadir}/gromacs/opencl -%exclude %{_datadir}/gromacs/opencl/gromacs/*/*.h -%exclude %{_datadir}/gromacs/opencl/gromacs/*/*/*.h +%else +%{_bindir}/gmx_mpi %endif -%{_mandir}/man1/* -%files -n libgromacs6 -%{_libdir}/libgromacs.so.* +%files -n %{libname_gromacs} +%{_libdir}/libgromacs*.so.* -%files -n libgmxapi0 -%{_libdir}/libgmxapi.so.* +%files -n %{libname_gmxapi} +%{_libdir}/libgmxapi*.so.* -%files -n libnblib0 -%{_libdir}/libnblib.so.* +%if %{without mpi} +%files -n %{libname_nblib_gmx} +%{_libdir}/libnblib_gmx.so.* + +%files data +%dir %{_datadir}/gromacs +%{_datadir}/gromacs/top +%doc %{_mandir}/man1/* %files doc +%dir %{_datadir}/gromacs %doc %{_datadir}/gromacs/*.pdf %doc %{_datadir}/gromacs/README* %doc %{_datadir}/gromacs/COPYING -%files openmpi -%{_bindir}/*_mpi - %files devel %{_datadir}/gromacs/template %{_datadir}/cmake @@ -271,14 +306,14 @@ %{_includedir}/nblib/ %{_libdir}/*.so %{_libdir}/pkgconfig/* -%ifarch x86_64 +%if %{with opencl} %dir %{_datadir}/gromacs/opencl -%{_datadir}/gromacs/opencl/gromacs/*/*.h -%{_datadir}/gromacs/opencl/gromacs/*/*/*.h +%{_datadir}/gromacs/opencl/gromacs %endif %files bash-completion %dir %{_datadir}/bash_completion.d %{_datadir}/bash_completion.d/gromacs +%endif %changelog ++++++ _constraints ++++++ --- /var/tmp/diff_new_pack.DF3zim/_old 2022-11-09 12:57:24.856340758 +0100 +++ /var/tmp/diff_new_pack.DF3zim/_new 2022-11-09 12:57:24.856340758 +0100 @@ -2,10 +2,10 @@ <constraints> <hardware> <physicalmemory> - <size unit="G">2</size> + <size unit="G">8</size> </physicalmemory> <disk> - <size unit="G">6</size> + <size unit="G">20</size> </disk> </hardware> <sandbox>kvm</sandbox> ++++++ _multibuild ++++++ <multibuild> <package>serial</package> <package>openmpi</package> </multibuild> ++++++ gromacs-2021.2.tar.gz -> gromacs-2022.3.tar.gz ++++++ /work/SRC/openSUSE:Factory/gromacs/gromacs-2021.2.tar.gz /work/SRC/openSUSE:Factory/.gromacs.new.1597/gromacs-2022.3.tar.gz differ: char 5, line 1 ++++++ manual-2021.2.pdf -> manual-2022.3.pdf ++++++ (binary differes) ++++++ regressiontests-2021.2.tar.gz -> regressiontests-2022.3.tar.gz ++++++ /work/SRC/openSUSE:Factory/gromacs/regressiontests-2021.2.tar.gz /work/SRC/openSUSE:Factory/.gromacs.new.1597/regressiontests-2022.3.tar.gz differ: char 12, line 1
