diff --git a/.gitignore b/.gitignore index 8ae641d..4642b65 100644 --- a/.gitignore +++ b/.gitignore @@ -30,3 +30,5 @@ /petsc-3.14.4.tar.gz /petsc-3.14.5.tar.gz /petsc-3.14.6.tar.gz +/petsc-with-docs-3.15.0.tar.gz +/petsc4py-3.15.0.tar.gz diff --git a/petsc-3.13.0-fix_sundials_version.patch b/petsc-3.13.0-fix_sundials_version.patch deleted file mode 100644 index 82b0d0d..0000000 --- a/petsc-3.13.0-fix_sundials_version.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- a/config/BuildSystem/config/packages/sundials.orig.py 2019-09-30 01:36:08.000000000 +0200 -+++ b/config/BuildSystem/config/packages/sundials.py 2020-04-04 16:15:52.074244560 +0200 -@@ -3,8 +3,8 @@ - class Configure(config.package.GNUPackage): - def __init__(self, framework): - config.package.GNUPackage.__init__(self, framework) -- self.version = '2.5.0' -- self.maxversion = '2.5.100000' -+ self.version = '5.2.0' -+ self.maxversion = '5.2.000000' - self.versionname = 'SUNDIALS_PACKAGE_VERSION' - self.download = ['http://ftp.mcs.anl.gov/pub/petsc/externalpackages/sundials-'+self.version+'p1.tar.gz'] - self.functions = ['CVSpgmr'] diff --git a/petsc-3.15.0-fix_sundials_version.patch b/petsc-3.15.0-fix_sundials_version.patch new file mode 100644 index 0000000..43feb40 --- /dev/null +++ b/petsc-3.15.0-fix_sundials_version.patch @@ -0,0 +1,13 @@ +--- a/config/BuildSystem/config/packages/sundials2.orig.py 2019-09-30 01:36:08.000000000 +0200 ++++ b/config/BuildSystem/config/packages/sundials2.py 2020-04-04 16:15:52.074244560 +0200 +@@ -3,8 +3,8 @@ + class Configure(config.package.GNUPackage): + def __init__(self, framework): + config.package.GNUPackage.__init__(self, framework) +- self.version = '2.5.0' +- self.maxversion = '2.5.100000' ++ self.version = '5.2.0' ++ self.maxversion = '5.7.000000' + self.versionname = 'SUNDIALS_PACKAGE_VERSION' + self.download = ['http://ftp.mcs.anl.gov/pub/petsc/externalpackages/sundials-'+self.version+'p1.tar.gz'] + self.downloaddirnames = ['sundials'] diff --git a/petsc.spec b/petsc.spec index b4e49bb..ca72474 100644 --- a/petsc.spec +++ b/petsc.spec @@ -8,7 +8,7 @@ %bcond_without pycheck %endif %global pymodule_name petsc4py -%global pymodule_version 3.14.1 +%global pymodule_version 3.15.0 # ## Debug builds ? @@ -33,13 +33,8 @@ %bcond_without blas64 %endif -%if 0%{?fedora} >= 33 %global blaslib flexiblas %global blasvar %{nil} -%else -%global blaslib openblas -%global blasvar p -%endif # ## PETSC looks incompatible with serial MUMPS @@ -52,11 +47,9 @@ # ## Suitesparse -## Currently, suitesparse-5.4.0 is available on Fedora 32+, but this version of PETSc needs the 5.6.0 at least +## This version of PETSc needs the 5.6.0 at least %bcond_with suitesparse -%if 0%{?fedora} && 0%{?fedora} >= 32 %bcond_with suitesparse64 -%endif # ## SuperLUDIST needs parmetis @@ -208,7 +201,8 @@ %if %{with python} \ --with-python=1 \\\ --with-python-exec=%{__python3} \\\ - --download-petsc4py=1 \\\ + --with-petsc4py=1 \\\ + --with-petsc4py-test-np="`/usr/bin/getconf _NPROCESSORS_ONLN`" \\\ %endif \ %if 0%{?fedora} \ --with-cxxlib-autodetect=0 \\\ @@ -276,15 +270,16 @@ %global mpichversion %(rpm -qi mpich | awk -F': ' '/Version/ {print $2}') %global openmpiversion %(rpm -qi openmpi | awk -F': ' '/Version/ {print $2}') -%global releasever 3.14 +%global releasever 3.15 Name: petsc Summary: Portable Extensible Toolkit for Scientific Computation -Version: %{releasever}.6 +Version: %{releasever}.0 Release: 1%{?dist} License: BSD URL: https://www.mcs.anl.gov/petsc -Source0: https://www.mcs.anl.gov/petsc/mirror/release-snapshots/petsc-%{version}.tar.gz +Source0: https://ftp.mcs.anl.gov/pub/petsc/release-snapshots/petsc-with-docs-%{version}.tar.gz +Source1: https://ftp.mcs.anl.gov/pub/petsc/release-snapshots/petsc4py-%{version}.tar.gz ## Remove rpath flags Patch0: %{name}-3.11-no-rpath.patch @@ -297,7 +292,7 @@ Patch2: %{name}-3.14-hypre_2.11.2_reverting.patch Patch3: %{name}-3.13-fix_mumps_includes.patch Patch4: %{name}-3.13.0-fix_metis64.patch -Patch5: %{name}-3.13.0-fix_sundials_version.patch +Patch5: %{name}-3.15.0-fix_sundials_version.patch Patch6: %{name}-3.14.1-fix_pkgconfig_file.patch Patch7: %{name}-3.4.1-avoid_fake_MKL_detection.patch @@ -568,6 +563,12 @@ Portable Extensible Toolkit for Scientific Computation (developer files). %prep %setup -qc +%if %{with python} +%setup -q -T -D -a 1 +cp -a petsc4py-%{version}/* %{name}-%{version}/ +rm -rf %{name}-%{version}/*.egg-info +rm -rf petsc4py-%{version} +%endif pushd %{name}-%{version} @@ -697,15 +698,13 @@ pushd buildopenmpi_dir RPM_BUILD_NCPUS="`%{_bindir}/getconf _NPROCESSORS_ONLN`" make \ V=1 MAKE_NP=$RPM_BUILD_NCPUS PETSC_DIR=%{_builddir}/%{name}-%{version}/buildopenmpi_dir PETSC_ARCH=%{_arch} all - + %if %{with python} -cd %{_arch}/externalpackages/petsc4py export PETSC_ARCH=%{_arch} -export PETSC_DIR=../../../ +export PETSC_DIR=./ %py3_build unset PETSC_ARCH unset PETSC_DIR -cd ../../.. %endif %{_openmpi_unload} @@ -737,17 +736,15 @@ pushd buildmpich_dir RPM_BUILD_NCPUS="`%{_bindir}/getconf _NPROCESSORS_ONLN`" make \ V=1 MAKE_NP=$RPM_BUILD_NCPUS PETSC_DIR=%{_builddir}/%{name}-%{version}/buildmpich_dir PETSC_ARCH=%{_arch} all - + %if %{with python} -cd %{_arch}/externalpackages/petsc4py export PETSC_ARCH=%{_arch} -export PETSC_DIR=../../../ +export PETSC_DIR=./ %py3_build unset PETSC_ARCH unset PETSC_DIR -cd ../../.. %endif - + %{_mpich_unload} popd %endif @@ -843,11 +840,9 @@ sed -e 's|${PETSC_DIR}/${PETSC_ARCH}/lib|${PETSC_DIR}/%{_lib}/openmpi/lib|g' -i sed -e 's|${PETSC_DIR}/${PETSC_ARCH}/lib|${PETSC_DIR}/%{_lib}/openmpi/lib|g' -i %{buildroot}$MPI_LIB/%{name}/conf/rules %if %{with python} -pushd %{_arch}/externalpackages/petsc4py export PETSC_ARCH=%{_arch} -export PETSC_DIR=../../../ +export PETSC_DIR=./ %py3_install -popd # Install petsc4py files into MPI directories %if 0%{?rhel} @@ -899,11 +894,10 @@ sed -e 's|${PETSC_DIR}/${PETSC_ARCH}/lib|${PETSC_DIR}/%{_lib}/mpich/lib|g' -i %{ sed -e 's|${PETSC_DIR}/${PETSC_ARCH}/lib|${PETSC_DIR}/%{_lib}/mpich/lib|g' -i %{buildroot}$MPI_LIB/%{name}/conf/rules %if %{with python} -pushd %{_arch}/externalpackages/petsc4py export PETSC_ARCH=%{_arch} -export PETSC_DIR=../../../ +export PETSC_DIR=./ %py3_install -popd + # Install petsc4py files into MPI directories %if 0%{?rhel} MPI_PYTHON3_SITEARCH=%{python3_sitearch}/mpich @@ -933,12 +927,6 @@ popd cp -a %{name}-%{version}/docs/* %{buildroot}%{_pkgdocdir} # -%ldconfig_scriptlets - -%if %{with arch64} -%ldconfig_scriptlets -n petsc64 -%endif - %check %if %{with openmpi} @@ -962,9 +950,9 @@ xvfb-run -a make all test -C buildopenmpi_dir V=1 %if %{with python} %if %{with pycheck} -pushd buildopenmpi_dir/%{_arch}/externalpackages/petsc4py +pushd buildopenmpi_dir export PETSC_ARCH=%{_arch} -export PETSC_DIR=../../../ +export PETSC_DIR=./ %if 0%{?rhel} MPI_PYTHON3_SITEARCH=%{python3_sitearch}/openmpi %endif @@ -999,9 +987,9 @@ xvfb-run -a make all test -C buildmpich_dir V=1 %if %{with python} %if %{with pycheck} -pushd buildmpich_dir/%{_arch}/externalpackages/petsc4py +pushd buildmpich_dir export PETSC_ARCH=%{_arch} -export PETSC_DIR=../../../ +export PETSC_DIR=./ %if 0%{?rhel} MPI_PYTHON3_SITEARCH=%{python3_sitearch}/mpich %endif @@ -1130,6 +1118,10 @@ xvfb-run -a make all test -C build64 V=1 MPIEXEC='%{_builddir}/%{name}-%{version %endif %changelog +* Fri Apr 02 2021 Antonio Trande - 3.15.0-1 +- Release 3.15.0 +- PETSc4py 3.15.0 + * Fri Apr 02 2021 Antonio Trande - 3.14.6-1 - Release 3.14.6 @@ -1138,7 +1130,7 @@ xvfb-run -a make all test -C build64 V=1 MPIEXEC='%{_builddir}/%{name}-%{version * Sun Feb 07 2021 Antonio Trande - 3.14.4-1 - Release 3.14.4 -- Release petsc4py-3.14.1 +- Release PETSc4py-3.14.1 * Tue Feb 02 2021 Antonio Trande - 3.14.2-5 - Rebuild for OpenMPI-4.1.0 and MPICH-3.4.1 @@ -1148,11 +1140,11 @@ xvfb-run -a make all test -C build64 V=1 MPIEXEC='%{_builddir}/%{name}-%{version - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild * Sun Dec 13 2020 Antonio Trande - 3.14.2-3 -- Obsolete the stand-alone petsc4py packages -- This package now provides petsc4py/python-petsc rpms +- Obsolete the stand-alone PETSc4py packages +- This package now provides PETSc4py/python-petsc rpms * Wed Dec 09 2020 Antonio Trande - 3.14.2-2 -- Compile petsc4py code inside +- Compile PETSc4py code inside * Sat Dec 05 2020 Antonio Trande - 3.14.2-1 - Release 3.14.2 diff --git a/sources b/sources index e3a87b4..d13c2b9 100644 --- a/sources +++ b/sources @@ -1 +1,2 @@ -SHA512 (petsc-3.14.6.tar.gz) = 9766e164446ac5a69b8bf761a0e8a235b1a2b85ed9c96a7fd59e668ae4cceb9d9559a38b175b4aa9747e78d7b44d0018a3c02748dcd3d783d28f861f8382d44c +SHA512 (petsc-with-docs-3.15.0.tar.gz) = d141f98742b3a831d2efede7cf3c6ed12380a052c4243dcad2a770455c15b1fbd0ecc3191368ffd110491f3b239af140f7a0ebab87ceb439eb497336e0cf6f2c +SHA512 (petsc4py-3.15.0.tar.gz) = a5200967b39637171fa9426a639b37c474ee893450da53c882648d85c5d79f694def505a3dec5dca094629eda1ff7ba5572121d61372b1d74e52f277f007ff7f