diff options
author | Carlos Aznarán | 2024-03-15 08:45:01 -0500 |
---|---|---|
committer | Carlos Aznarán | 2024-03-15 08:45:01 -0500 |
commit | a1e537cf59c90f56508d36c95c512e3563bb9996 (patch) | |
tree | 3293406facade94439154ea07473f670aa784935 | |
parent | 1a40f7af77309f71677e57150f10fb77e753099a (diff) | |
download | aur-a1e537cf59c90f56508d36c95c512e3563bb9996.tar.gz |
Overhaul: move optional dependencies available in official repositories as dependencies
-rw-r--r-- | .SRCINFO | 42 | ||||
-rw-r--r-- | .nvchecker.toml | 5 | ||||
-rw-r--r-- | PKGBUILD | 53 | ||||
-rw-r--r-- | test_optdepends.sh | 32 |
4 files changed, 62 insertions, 70 deletions
@@ -1,42 +1,46 @@ pkgbase = petsc-complex pkgdesc = Portable, extensible toolkit for scientific computation (complex scalars) pkgver = 3.20.5 - pkgrel = 1 + pkgrel = 2 url = https://petsc.org install = petsc.install arch = i686 arch = x86_64 - license = custom:BSD-2-clause - checkdepends = openssh - makedepends = gcc - makedepends = gcc-fortran + license = BSD-2-Clause makedepends = cmake makedepends = cython - depends = python-numpy - depends = openmpi - depends = boost + makedepends = gcc + makedepends = gcc-fortran + depends = hdf5-openmpi + depends = fftw-openmpi + depends = gsl depends = lapack - optdepends = trilinos: support for zoltan - optdepends = ptscotch: support for ptscotch sequential and parallel graph partitioning library - optdepends = parmetis: support for parmetis parallel graph partitioning library + depends = libjpeg-turbo + depends = libyaml + depends = netcdf-openmpi + depends = python-numpy + depends = python-mpi4py + depends = superlu + depends = suitesparse + depends = zlib + optdepends = hypre: support for the hypre sparse system solver + optdepends = kokkos: support for Kokkos optdepends = metis: support for metis graph partitioning library + optdepends = mumps: support for the mumps sparse solver + optdepends = parmetis: support for parmetis parallel graph partitioning library optdepends = pastix: support for the pastix solver - optdepends = superlu: support for the superlu sparse solver + optdepends = scalapack: support for ScaLAPACK + optdepends = scotch: support for Scotch optdepends = superlu_dist: support for the superlu_dist sparse solver - optdepends = hypre: support for the hypre sparse system solver - optdepends = hdf5-openmpi: support for the parallel version of HDF5 - optdepends = mumps: support for the mumps sparse solver - optdepends = fftw: support for the FFTW fast Fourier transform optdepends = triangle: support for the two-dimensional quality mesh generator and Delaunay triangulator - optdepends = suitesparse: support for the suitesparse sparse matrix libraries optdepends = valgrind: support for valgrind to help find memory-management problems in programs - optdepends = libyaml: support for YAML-formatted file + optdepends = zoltan: support for zoltan provides = petsc=3.20.5 conflicts = petsc options = staticlibs source = https://web.cels.anl.gov/projects/petsc/download/release-snapshots/petsc-lite-3.20.5.tar.gz source = test_optdepends.sh sha512sums = 1e0ebdacbcc9db22dbe3803cbc13f5e0138d0412c328ff49cab024c839527c73b28983717104daf0858d482a8804b931c5c2bf20363c6b801d2be7d27219692f - sha512sums = 68bed9f836bf362b5d528af040afc2c572e87c43fac716d257862bcba06401a212adeec1fb84080a352831c22b968c9da65aa3eb5ef9e44be38ee0c0897c4b8d + sha512sums = 1a790c36b1bb6b6604b4fe35f3c7fba2d8f972e7fd3c6ac1273716bee490f4dded18990b9f4aedecbe609aa6ec3d2469d44c013e18ed5cf9a43f5703f2b59db8 pkgname = petsc-complex diff --git a/.nvchecker.toml b/.nvchecker.toml new file mode 100644 index 000000000000..dad409f85bca --- /dev/null +++ b/.nvchecker.toml @@ -0,0 +1,5 @@ +[petsc-complex] +source = "gitlab" +gitlab = "petsc/petsc" +use_max_tag = true +prefix = "v"
\ No newline at end of file @@ -10,41 +10,39 @@ _base=petsc pkgname=${_base}-complex pkgver=3.20.5 -pkgrel=1 +pkgrel=2 _config=linux-c-opt # if --with-debugging=yes is set then PETSC_ARCH is automatically set to #"linux-c-debug" for some things, so the _config should be changed too #_config=linux-c-debug pkgdesc="Portable, extensible toolkit for scientific computation (complex scalars)" -arch=('i686' 'x86_64') +arch=(i686 x86_64) url="https://${_base}.org" -license=('custom:BSD-2-clause') +license=(BSD-2-Clause) options=(staticlibs) -conflicts=("${_base}") +conflicts=(${_base}) provides=("${_base}=${pkgver}") -depends=('python-numpy' 'openmpi' 'boost' 'lapack') -makedepends=('gcc' 'gcc-fortran' 'cmake' 'cython') -checkdepends=('openssh') -optdepends=('trilinos: support for zoltan' - 'ptscotch: support for ptscotch sequential and parallel graph partitioning library' - 'parmetis: support for parmetis parallel graph partitioning library' +depends=(hdf5-openmpi fftw-openmpi gsl lapack libjpeg-turbo libyaml netcdf-openmpi + python-numpy python-mpi4py superlu suitesparse zlib) +makedepends=(cmake cython gcc gcc-fortran) +checkdepends=() +optdepends=('hypre: support for the hypre sparse system solver' + 'kokkos: support for Kokkos' 'metis: support for metis graph partitioning library' + 'mumps: support for the mumps sparse solver' + 'parmetis: support for parmetis parallel graph partitioning library' 'pastix: support for the pastix solver' - 'superlu: support for the superlu sparse solver' + 'scalapack: support for ScaLAPACK' + 'scotch: support for Scotch' 'superlu_dist: support for the superlu_dist sparse solver' - 'hypre: support for the hypre sparse system solver' - 'hdf5-openmpi: support for the parallel version of HDF5' - 'mumps: support for the mumps sparse solver' - 'fftw: support for the FFTW fast Fourier transform' 'triangle: support for the two-dimensional quality mesh generator and Delaunay triangulator' - 'suitesparse: support for the suitesparse sparse matrix libraries' 'valgrind: support for valgrind to help find memory-management problems in programs' - 'libyaml: support for YAML-formatted file') + 'zoltan: support for zoltan') install=${_base}.install source=(https://web.cels.anl.gov/projects/${_base}/download/release-snapshots/${_base}-lite-${pkgver}.tar.gz test_optdepends.sh) sha512sums=('1e0ebdacbcc9db22dbe3803cbc13f5e0138d0412c328ff49cab024c839527c73b28983717104daf0858d482a8804b931c5c2bf20363c6b801d2be7d27219692f' - '68bed9f836bf362b5d528af040afc2c572e87c43fac716d257862bcba06401a212adeec1fb84080a352831c22b968c9da65aa3eb5ef9e44be38ee0c0897c4b8d') + '1a790c36b1bb6b6604b4fe35f3c7fba2d8f972e7fd3c6ac1273716bee490f4dded18990b9f4aedecbe609aa6ec3d2469d44c013e18ed5cf9a43f5703f2b59db8') _install_dir=/opt/${_base}/${_config} _petsc_arch=arch-${_config} @@ -58,9 +56,20 @@ build() { OPTFLAGS='-O3 -march=native' CONFOPTS="--with-shared-libraries=1 \ - --with-petsc4py=1 \ --with-mpi-f90module-visibility=0 \ - --with-cc=$(which mpicc) --with-cxx=$(which mpicxx) --with-fc=$(which mpifort) \ + --with-petsc4py=1 \ + --with-mpi-dir=/usr \ + --with-zfp=0 \ + --with-netcdf=1 \ + --with-libjpeg=1 \ + --with-yaml=1 \ + --with-fftw=1 \ + --with-gsl=1 \ + --with-zlib=1 \ + --with-superlu-lib=-lsuperlu --with-superlu-include=/usr/include/superlu \ + --with-suitesparse-include=/usr/include/suitesparse \ + --with-suitesparse-lib=[libamd.so,libbtf.so,libcamd.so,libccolamd.so,libcholmod.so,libcolamd.so,libcxsparse.so,libgraphblas.so,libklu.so,libklu_cholmod.so,liblagraph.so,liblagraphx.so,libldl.so,libparu.so,librbio.so,libspex.so,libspqr.so,libsuitesparse_mongoose.so,libsuitesparseconfig.so,libumfpack.so] \ + --with-hdf5=1 --with-hdf5-fortran-bindings=1 \ --with-scalar-type=complex \ $(sh ${srcdir}/test_optdepends.sh)" @@ -74,10 +83,6 @@ build() { check() { cd ${srcdir}/${_base}-${pkgver} - - if [ -z "$(ldconfig -p | grep libcuda.so.1)" ]; then - export OMPI_MCA_opal_warn_on_missing_libcuda=0 - fi PYTHONPATH=${srcdir}/tmp/${_install_dir}/lib:${PYTHONPATH} make check } diff --git a/test_optdepends.sh b/test_optdepends.sh index af84472d206a..11a0d3be9b6a 100644 --- a/test_optdepends.sh +++ b/test_optdepends.sh @@ -9,6 +9,11 @@ CONFOPTS="" #CONFOPTS="${CONFOPTS} --download-${external_pkg}=1" #done +# Kokkos +if [ -f "/usr/lib/libkokkoscore.so" ]; then + CONFOPTS="${CONFOPTS} --with-kokkos=1" +fi + # Add hypre support if [ -f "/usr/lib/libHYPRE.so" ]; then VERSION_MIN=2.14.0 @@ -27,32 +32,16 @@ if [ -f "/usr/lib/libmumps_common.so" ]; then CONFOPTS="${CONFOPTS} --with-mumps=1" fi -# Add fftw support -if [ -f "/usr/lib/libfftw3_mpi.so" ]; then - CONFOPTS="${CONFOPTS} --with-fftw=1" -fi - # Add triangle support if [ -f "/usr/lib/libtriangle.so" ]; then CONFOPTS="${CONFOPTS} --with-triangle=1" fi -# Add hdf5-openmpi support -if [ -f "/usr/bin/h5pcc" ]; then - CONFOPTS="${CONFOPTS} --with-hdf5=1" -fi - # Add scalapack support if [ -f "/usr/lib/pkgconfig/scalapack.pc" ]; then CONFOPTS="${CONFOPTS} --with-scalapack=1" fi -# Add suitesparse support -SUITESPARSE_DIR="/usr/include/suitesparse" -if [ -f "/usr/include/suitesparse/umfpack.h" ]; then - CONFOPTS="${CONFOPTS} --with-suitesparse=1 --with-suitesparse-lib=[libamd.so,libbtf.so,libcamd.so,libccolamd.so,libcholmod.so,libcolamd.so,libcxsparse.so,libgraphblas.so,libklu.so,libklu_cholmod.so,liblagraph.so,liblagraphx.so,libldl.so,libparu.so,librbio.so,libspex.so,libspqr.so,libsuitesparse_mongoose.so,libsuitesparseconfig.so,libumfpack.so] --with-suitesparse-include=${SUITESPARSE_DIR}" -fi - # Add metis support if [ -f "/usr/include/metis.h" ]; then CONFOPTS="${CONFOPTS} --with-metis=1" @@ -74,12 +63,6 @@ if [ -f "/usr/include/scotch.h" ]; then CONFOPTS="${CONFOPTS} --with-ptscotch=1 --with-ptscotch-lib=${SCOTCH_LIBS} --with-ptscotch-include=${SCOTCH_DIR}" fi -# Add superlu support -SUPERLU_DIR="/usr/include/superlu" -if [ -d "${SUPERLU_DIR}" ]; then - CONFOPTS="${CONFOPTS} --with-superlu=1 --with-superlu-lib=-lsuperlu --with-superlu-include=${SUPERLU_DIR}" -fi - # Add superlu_dist support SUPERLU_DIST_DIR="/usr/include/superlu_dist" if [ -d "${SUPERLU_DIST_DIR}" ]; then @@ -115,9 +98,4 @@ if [ -f "/usr/lib/pkgconfig/valgrind.pc" ]; then CONFOPTS="${CONFOPTS} --with-valgrind=1" fi -# Add yaml support -if [ -f "/usr/lib/libyaml.so" ]; then - CONFOPTS="${CONFOPTS} --with-yaml=1" -fi - echo "${CONFOPTS}" |