SHA256
1
0
forked from pool/patterns-hpc

Accepting request 579684 from home:eeich:hpc_alt

New package:
- Initial package version of patterns for HPC (FATE#323494).

OBS-URL: https://build.opensuse.org/request/show/579684
OBS-URL: https://build.opensuse.org/package/show/science:HPC/patterns-hpc?expand=0&rev=1
This commit is contained in:
Egbert Eich 2018-02-24 01:57:57 +00:00 committed by Git OBS Bridge
commit 95b8ccbfc8
7 changed files with 308 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
.osc

61
devel-inc.txt Normal file
View File

@ -0,0 +1,61 @@
Recommends: adios-devel
Recommends: gsl_serial-devel
Recommends: metis_serial-devel
Recommends: python-numpy-devel
Recommends: superlu-gnu-devel
Recommends: libfftw3-gnu-hpc-devel
Recommends: libhdf5-gnu-hpc-devel
Recommends: libhdf5hl_fortran100-hpc-devel
Recommends: libhdf5_cpp-gnu-hpc-devel
Recommends: libhdf5_fortran-gnu-hpc-devel
Recommends: libhdf5_hl-gnu-hpc-devel
Recommends: libhdf5_hl_cpp-gnu-hpc-devel
Recommends: libnetcdf-gnu-hpc-devel
Recommends: libopenblas-gnu-hpc-devel
Recommends: libopenblas-pthreads-gnu-hpc-devel
Requires: mpich-gnu-hpc-devel
Requires: mpich-ofi-gnu-hpc-devel
Requires: mvapich2-gnu-hpc-devel
Requires: mvapich2-psm-gnu-hpc-devel
Requires: mvapich2-psm2-gnu-hpc-devel
Requires: openmpi1-gnu-hpc-devel
Requires: openmpi3-gnu-hpc-devel
Recommends: libblacs2-gnu-mpich-hpc-devel
Recommends: libblacs2-gnu-mvapich2-hpc-devel
Recommends: libfftw3-gnu-mpich-hpc-devel
Recommends: libfftw3-gnu-mvapich2-hpc-devel
Recommends: libfftw3-gnu-openmpi1-hpc-devel
Recommends: libfftw3-gnu-openmpi3-hpc-devel
Recommends: libhdf5-gnu-mpich-hpc-devel
Recommends: libhdf5-gnu-mvapich2-hpc-devel
Recommends: libhdf5-gnu-openmpi1-hpc-devel
Recommends: libhdf5-gnu-openmpi3-hpc-devel
Recommends: libhdf5_fortran-gnu-mpich-hpc-devel
Recommends: libhdf5_fortran-gnu-mvapich2-hpc-devel
Recommends: libhdf5_fortran-gnu-openmpi1-hpc-devel
Recommends: libhdf5_fortran-gnu-openmpi3-hpc-devel
Recommends: libhdf5_hl-gnu-mpich-hpc-devel
Recommends: libhdf5_hl-gnu-mvapich2-hpc-devel
Recommends: libhdf5_hl-gnu-openmpi1-hpc-devel
Recommends: libhdf5_hl-gnu-openmpi3-hpc-devel
Recommends: libhdf5_hl_fortran-gnu-mpich-hpc-devel
Recommends: libhdf5_hl_fortran-gnu-mvapich2-hpc-devel
Recommends: libhdf5_hl_fortran-gnu-openmpi1-hpc-devel
Recommends: libhdf5_hl_fortran-gnu-openmpi3-hpc-devel
Recommends: libnetcdf-fortran-gnu-mpich-hpc-devel
Recommends: libnetcdf-fortran-gnu-openmpi1-hpc-devel
Recommends: libnetcdf-fortran-gnu-openmpi3-hpc-devel
Recommends: libnetcdf-gnu-mpich-hpc-devel
Recommends: libnetcdf-gnu-mvapich2-hpc-devel
Recommends: libnetcdf-gnu-openmpi1-hpc-devel
Recommends: libnetcdf-gnu-openmpi3-hpc-devel
Recommends: libpetsc-gnu-mpich-hpc-devel
Recommends: libpetsc-gnu-mvapich2-hpc-devel
Recommends: libpetsc-gnu-openmpi1-hpc-devel
Recommends: libpetsc-gnu-openmpi3-hpc-devel
Recommends: libscalapack2-gnu-mpich-hpc-devel
Recommends: libscalapack2-gnu-mvapich2-hpc-devel
Recommends: libscalapack2-gnu-openmpi1-hpc-devel
Recommends: libscalapack2-gnu-openmpi3-hpc-devel
Recommends: tau-gnu-mvapich2-hpc-devel
Recommends: tau-gnu-openmpi-hpc-devel

6
get-devel.sh Normal file
View File

@ -0,0 +1,6 @@
#!/bin/bash
awk 'BEGIN {pln=0;} \
/start_non_devel/ {pln=1;}\
/stop_non_devel/ {pln=0;}\
/^[^#]/{ if(pln) {printf("%s-devel\n",$0);} }' hpc-patterns.spec \
> devel-inc.txt

3
patterns-hpc-rpmlintrc Normal file
View File

@ -0,0 +1,3 @@
addFilter("W: no-binary");

4
patterns-hpc.changes Normal file
View File

@ -0,0 +1,4 @@
-------------------------------------------------------------------
Fri Feb 23 13:07:44 UTC 2018 - eich@suse.com
- Initial package version of patterns for HPC (FATE#323494).

210
patterns-hpc.spec Normal file
View File

@ -0,0 +1,210 @@
#
# spec file for package patterns-hpc
#
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
Name: patterns-hpc
Version: 20180124
Release: 0
Summary: Patterns for Installation (HPC patterns)
License: MIT
Group: Metapackage
Url: https://github.com/openSUSE/patterns
Source0: %{name}-rpmlintrc
Source1: devel-inc.txt
BuildRequires: patterns-rpm-macros
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
This is an internal package that is used to create the patterns as part
of the installation source setup. Installation of this package does
not make sense.
This particular package contains all the hpc related patterns
################################################################################
%package compute-node
%pattern_serverfunctions
Summary: HPC compute node
Group: Metapackage
Provides: compute-node
Provides: pattern() = compute-node
Provides: pattern-icon() = yast-uml
Provides: pattern-order() = 2010
Provides: pattern-visible()
%if 0%{?is_opensuse}
Provides: patterns-openSUSE-compute-node = %{version}
Obsoletes: patterns-openSUSE-compute-node < %{version}
%else
Provides: patterns-sles-compute-node = %{version}
Obsoletes: patterns-sles-compute-node < %{version}
%endif
Requires: pattern() = base
Requires: nfs-client
Requires: openssh
Requires: salt-minion
Recommends: ntp
Recommends: nss_ldap
Recommends: ganglia-gmond
Recommends: genders
%description compute-node
A compute node has a minmal software image and mainly runs simultion programs. Services on this node should be reduced to a bare minimum and the node *must* be installed in a automatic manner. A basset of numerical libraries should also be installed.
%files compute-node
%dir /usr/share/doc/packages/patterns
/usr/share/doc/packages/patterns/compute-node.txt
################################################################################
%package hpc-libraries
%pattern_serverfunctions
Summary: HPC modularized libraries
Group: Metapackage
Provides: hpc-libraries
Provides: pattern() = hpc-libraries
Provides: pattern-icon() = yast-uml
Provides: pattern-order() = 2030
Provides: pattern-visible()
%if 0%{?is_opensuse}
Provides: patterns-openSUSE-hpc-libraries = %{version}
Obsoletes: patterns-openSUSE-hpc-libraries < %{version}
%else
Provides: patterns-sles-hpc-libraries = %{version}
Obsoletes: patterns-sles-hpc-libraries < %{version}
%endif
Requires: pattern() = compute-node
Requires: lua-lmod
### start_non_devel libs
# Recommend libraries which are in hpc
Recommends: adios
Recommends: gsl_serial
Recommends: metis_serial
Recommends: python-numpy
Recommends: superlu-gnu
Recommends: libfftw3-gnu-hpc
Recommends: libhdf5-gnu-hpc
Recommends: libhdf5hl_fortran100-hpc
Recommends: libhdf5_cpp-gnu-hpc
Recommends: libhdf5_fortran-gnu-hpc
Recommends: libhdf5_hl-gnu-hpc
Recommends: libhdf5_hl_cpp-gnu-hpc
Recommends: libnetcdf-gnu-hpc
Recommends: libopenblas-gnu-hpc
Recommends: libopenblas-pthreads-gnu-hpc
# We require the mpi module and recommend the rest
Requires: mpich-gnu-hpc
Requires: mpich-ofi-gnu-hpc
Requires: mvapich2-gnu-hpc
Requires: mvapich2-psm-gnu-hpc
Requires: mvapich2-psm2-gnu-hpc
Requires: openmpi1-gnu-hpc
Requires: openmpi3-gnu-hpc
# Now the mpi dependend recommends
Recommends: libblacs2-gnu-mpich-hpc
Recommends: libblacs2-gnu-mvapich2-hpc
Recommends: libfftw3-gnu-mpich-hpc
Recommends: libfftw3-gnu-mvapich2-hpc
Recommends: libfftw3-gnu-openmpi1-hpc
Recommends: libfftw3-gnu-openmpi3-hpc
Recommends: libhdf5-gnu-mpich-hpc
Recommends: libhdf5-gnu-mvapich2-hpc
Recommends: libhdf5-gnu-openmpi1-hpc
Recommends: libhdf5-gnu-openmpi3-hpc
Recommends: libhdf5_fortran-gnu-mpich-hpc
Recommends: libhdf5_fortran-gnu-mvapich2-hpc
Recommends: libhdf5_fortran-gnu-openmpi1-hpc
Recommends: libhdf5_fortran-gnu-openmpi3-hpc
Recommends: libhdf5_hl-gnu-mpich-hpc
Recommends: libhdf5_hl-gnu-mvapich2-hpc
Recommends: libhdf5_hl-gnu-openmpi1-hpc
Recommends: libhdf5_hl-gnu-openmpi3-hpc
Recommends: libhdf5_hl_fortran-gnu-mpich-hpc
Recommends: libhdf5_hl_fortran-gnu-mvapich2-hpc
Recommends: libhdf5_hl_fortran-gnu-openmpi1-hpc
Recommends: libhdf5_hl_fortran-gnu-openmpi3-hpc
Recommends: libnetcdf-fortran-gnu-mpich-hpc
Recommends: libnetcdf-fortran-gnu-openmpi1-hpc
Recommends: libnetcdf-fortran-gnu-openmpi3-hpc
Recommends: libnetcdf-gnu-mpich-hpc
Recommends: libnetcdf-gnu-mvapich2-hpc
Recommends: libnetcdf-gnu-openmpi1-hpc
Recommends: libnetcdf-gnu-openmpi3-hpc
Recommends: libpetsc-gnu-mpich-hpc
Recommends: libpetsc-gnu-mvapich2-hpc
Recommends: libpetsc-gnu-openmpi1-hpc
Recommends: libpetsc-gnu-openmpi3-hpc
Recommends: libscalapack2-gnu-mpich-hpc
Recommends: libscalapack2-gnu-mvapich2-hpc
Recommends: libscalapack2-gnu-openmpi1-hpc
Recommends: libscalapack2-gnu-openmpi3-hpc
Recommends: tau-gnu-mvapich2-hpc
Recommends: tau-gnu-openmpi-hpc
### stop_non_devel libs
%description hpc-libraries
This package provides all the modularized libaries so that they can be used in a hpc environment. Especially these libariries allows you to install a mpi enabled libarary for different mpi libraries.
%files hpc-libraries
%dir /usr/share/doc/packages/patterns
/usr/share/doc/packages/patterns/hpc-libraries.txt
%package hpc-development-node
%pattern_serverfunctions
Summary: Packages needed to be able to develop HPC Apps
Group: Metapackage
Provides: hpc-development-node
Provides: pattern() = hpc-development-node
Provides: pattern-icon() = yast-uml
Provides: pattern-order() = 2040
Provides: pattern-visible()
%if 0%{?is_opensuse}
Provides: patterns-openSUSE-hpc-development-node = %{version}
Obsoletes: patterns-openSUSE-hpc-development-node < %{version}
%else
Provides: patterns-sles-hpc-development-node = %{version}
Obsoletes: patterns-sles-hpc-development-node < %{version}
%endif
Requires: pattern() = compute-node
Requires: pattern() = devel_C_C++
Requires: pattern() = devel_basic
Requires: pattern() = devel_perl
Requires: pattern() = devel_python3
%include %{SOURCE1}
%description hpc-development-node
This package provides all the relevant packages for developing HPC applications. It depends on the hpc-compute node and adds additionally the compilers and includes also the relevant managment packages.
%files hpc-development-node
%dir /usr/share/doc/packages/patterns
/usr/share/doc/packages/patterns/hpc-development-node.txt
%prep
%build
%install
mkdir -p "%{buildroot}/usr/share/doc/packages/patterns"
for pack in compute-node hpc-libraries hpc-development-node; do
echo "This file marks the pattern $pack in version %{version} to be installed." \
>"%{buildroot}/usr/share/doc/packages/patterns/${pack}.txt"
done
%post
%postun
%changelog