SHA256
1
0
forked from pool/patterns-hpc
patterns-hpc/patterns-hpc.spec

155 lines
5.0 KiB
RPMSpec

#
# 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: 20180226
Release: 0
Summary: Patterns for Installation (HPC patterns)
License: MIT
Group: Metapackages
Url: https://github.com/openSUSE/patterns
Source0: %{name}-rpmlintrc
Source1: library-inc.txt
Source2: devel-inc.txt
BuildRequires: patterns-rpm-macros
BuildRoot: %{_tmppath}/%{name}-%{version}-build
ExclusiveArch: x86_64 aarch64
%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: Metapackages
Provides: pattern() = hpc-compute_node
Provides: pattern-icon() = pattern-generic
Requires: nfs-client
Requires: openssh
Recommends: vim
Recommends: salt-minion
Recommends: rsync
Recommends: wget
Recommends: ntp
Recommends: less
Recommends: pdsh
Recommends: mrsh
%if 0%{?is_opensuse}
Recommends: nss_ldap
%endif
# python 2.7 deps
Recommends: ganglia-gmond
Recommends: genders
Recommends: perl-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 %{_defaultdocdir}/patterns
%{_defaultdocdir}/patterns/patterns-hpc-compute_node.txt
################################################################################
%package libraries
%pattern_serverfunctions
Summary: HPC modularized libraries
Group: Metapackages
Provides: pattern() = hpc-libraries
Provides: pattern-icon() = pattern-generic
Provides: pattern-order() = 2030
Provides: pattern-visible()
Requires: pattern() = hpc-compute_node
Requires: lua-lmod
%include %{SOURCE1}
%description libraries
This package provides all the modularized libraries 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 libraries
%dir %{_defaultdocdir}/patterns
%{_defaultdocdir}/patterns/patterns-hpc-libraries.txt
################################################################################
%package development_node
%pattern_serverfunctions
Summary: Packages needed to be able to develop HPC Apps
Group: Metapackages
Provides: pattern() = hpc-development_node
Provides: pattern-icon() = pattern-basis-devel
Provides: pattern-order() = 2040
Provides: pattern-visible()
Requires: pattern() = hpc-compute_node
Requires: pattern() = hpc-libraries
%if 0%{?is_opensuse}
Requires: pattern() = devel_C_C++
Requires: pattern() = devel_basis
Requires: pattern() = devel_perl
Requires: pattern() = devel_python3
%else
Requires: autoconf
Requires: automake
Requires: binutils
Requires: binutils
Requires: bison
Requires: cmake
Requires: flex
Requires: glibc-devel
Requires: glibc-info
Requires: libstdc++-devel
Requires: libtool
Requires: m4
Requires: make
Requires: patch
Requires: pkgconfig
Recommends: git
Recommends: python3
Recommends: python3-devel
%endif
Requires: gnu-compilers-hpc-devel
Requires: lua-lmod
%include %{SOURCE2}
%description 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 development_node
%dir %{_defaultdocdir}/patterns
%{_defaultdocdir}/patterns/patterns-hpc-development_node.txt
%prep
%build
%install
mkdir -p "%{buildroot}%{_defaultdocdir}/patterns"
for pack in patterns-hpc-compute_node patterns-hpc-libraries patterns-hpc-development_node; do
echo "This file marks the pattern $pack in version %{version} to be installed." \
>"%{buildroot}%{_defaultdocdir}/patterns/${pack}.txt"
done
%changelog