## START: Set by rpmautospec ## (rpmautospec version 0.8.1) ## RPMAUTOSPEC: autorelease, autochangelog %define autorelease(e:s:pb:n) %{?-p:0.}%{lua: release_number = 1; base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}")); print(release_number + base_release_number - 1); }%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}} ## END: Set by rpmautospec Name: gasnet Version: 2025.8.0 Release: %{autorelease} Summary: A language-independent, networking middleware layer License: BSD-3-Clause URL: https://gasnet.lbl.gov/ VCS: https://bitbucket.org/berkeleylab/gasnet.git Source: %{url}/EX/GASNet-%{version}.tar.gz BuildRequires: autoconf BuildRequires: automake BuildRequires: gcc BuildRequires: gcc-c++ BuildRequires: hwloc-devel BuildRequires: make BuildRequires: perl-devel BuildRequires: rdma-core-devel Requires: %{name}-common%{?_isa} = %{version}-%{release} %global _description %{expand: GASNet is a language-independent, low-level networking layer that provides network-independent, high-performance communication primitives tailored for implementing parallel global address space SPMD languages and libraries such as UPC, UPC++, Co-Array Fortran, Legion, Chapel, and many others. The interface is primarily intended as a compilation target and for use by runtime library writers (as opposed to end users), and the primary goals are high performance, interface portability, and expressiveness. GASNet stands for "Global-Address Space Networking".} %description %{_description} %package common Summary: GASNet shared binaries and libraries Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version)) %description common %{_description} GASNet files shared between serial and parallel versions %package openmpi Summary: GASNet Open MPI binaries and libraries Requires: %{name}-common%{?_isa} = %{version}-%{release} BuildRequires: openmpi-devel %description openmpi %{_description} GASNet compiled with Open MPI, package incl. binaries and libraries %package mpich Summary: GASNet MPICH binaries and libraries Requires: %{name}-common%{?_isa} = %{version}-%{release} BuildRequires: mpich-devel %description mpich %{_description} GASNet compiled with MPICH, package incl. binaries and libraries %package devel Summary: Development header files and libraries Requires: %{name}%{?_isa} = %{version}-%{release} Provides: gasnet-static = %{version}-%{release} %description devel %{_description} Files used to build applications that use GASNet. %package doc Summary: Documentation package for GASNet BuildArch: noarch %description doc %{_description} Documentation package for GASNet. %prep %autosetup -n GASNet-%{version} %build mkdir ibv openmpi mpich %global _configure ../configure ./Bootstrap -y pushd ibv %configure --enable-hwloc --disable-mpi --enable-smp --enable-udp --enable-ibv %make_build %popd pushd openmpi %{_openmpi_load} %configure --enable-udp --enable-mpi --enable-smp --enable-hwloc --disable-ibv \ --bindir="${MPI_BIN}" --includedir="${MPI_INCLUDE}" --libdir="${MPI_LIB}" %make_build %{_openmpi_unload} popd pushd mpich %{_mpich_load} %configure --enable-udp --enable-mpi --enable-smp --enable-hwloc --disable-ibv \ --bindir="${MPI_BIN}" --includedir="${MPI_INCLUDE}" --libdir="${MPI_LIB}" %make_build %{_mpich_unload} popd %install pushd ibv %make_install popd pushd mpich %make_install popd pushd openmpi %make_install popd %check pushd ibv make check popd pushd mpich %{_mpich_load} make check %{_mpich_unload} popd pushd openmpi %{_openmpi_load} make check %{_openmpi_unload} popd %files %{_bindir}/amudprun %{_bindir}/ident %files common %license license.txt %doc README %doc ChangeLog %{_bindir}/gasnet_trace %{_bindir}/gasnet_trace.pl %{_bindir}/gasnetrun_ibv %{_bindir}/gasnetrun_ibv.pl %{_bindir}/gasnetrun_smp %{_bindir}/gasnetrun_smp.pl %files devel %{_includedir}/gasnet.h %{_includedir}/gasnet_ammacros.h %{_includedir}/gasnet_arch_arm.h %{_includedir}/gasnet_asm.h %{_includedir}/gasnet_atomic_bits.h %{_includedir}/gasnet_atomic_fwd.h %{_includedir}/gasnet_atomicops.h %{_includedir}/gasnet_basic.h %{_includedir}/gasnet_coll.h %{_includedir}/gasnet_config.h %{_includedir}/gasnet_fwd.h %{_includedir}/gasnet_help.h %{_includedir}/gasnet_membar.h %{_includedir}/gasnet_mk.h %{_includedir}/gasnet_portable_platform.h %{_includedir}/gasnet_ratomic.h %{_includedir}/gasnet_timer.h %{_includedir}/gasnet_toolhelp.h %{_includedir}/gasnet_tools-par.mak %{_includedir}/gasnet_tools-seq.mak %{_includedir}/gasnet_tools.h %{_includedir}/gasnet_trace.h %{_includedir}/gasnet_vis.h %{_includedir}/gasnetex.h %{_includedir}/portable_inttypes.h %{_includedir}/portable_platform.h %{_includedir}/ibv-conduit/ %{_includedir}/smp-conduit %{_includedir}/udp-conduit %{_libdir}/libamudp.a %{_libdir}/libgasnet-ibv-par.a %{_libdir}/libgasnet-ibv-parsync.a %{_libdir}/libgasnet-ibv-seq.a %{_libdir}/libgasnet-smp-par.a %{_libdir}/libgasnet-smp-parsync.a %{_libdir}/libgasnet-smp-seq.a %{_libdir}/libgasnet-udp-par.a %{_libdir}/libgasnet-udp-parsync.a %{_libdir}/libgasnet-udp-seq.a %{_libdir}/libgasnet_tools-par.a %{_libdir}/libgasnet_tools-seq.a %{_libdir}/pkgconfig/gasnet-ibv-par.pc %{_libdir}/pkgconfig/gasnet-ibv-parsync.pc %{_libdir}/pkgconfig/gasnet-ibv-seq.pc %{_libdir}/pkgconfig/gasnet-smp-par.pc %{_libdir}/pkgconfig/gasnet-smp-parsync.pc %{_libdir}/pkgconfig/gasnet-smp-seq.pc %{_libdir}/pkgconfig/gasnet-udp-par.pc %{_libdir}/pkgconfig/gasnet-udp-parsync.pc %{_libdir}/pkgconfig/gasnet-udp-seq.pc %{_libdir}/pkgconfig/gasnet_tools-par.pc %{_libdir}/pkgconfig/gasnet_tools-seq.pc %{_includedir}/openmpi-*/* %{_libdir}/openmpi*/lib/lib*.a %{_libdir}/openmpi*/lib/pkgconfig/*.pc %{_includedir}/mpich-*/* %{_libdir}/mpich*/lib/lib*.a %{_libdir}/mpich*/lib/pkgconfig/*.pc %files openmpi %{_libdir}/openmpi*/bin/* %files mpich %{_libdir}/mpich*/bin/* %files doc %license license.txt %doc README %doc ChangeLog %doc docs/*.md %doc docs/*.txt %{_docdir}/GASNet %changelog ## START: Generated by rpmautospec * Wed Oct 08 2025 John Doe - 2025.8.0-1 - Uncommitted changes ## END: Generated by rpmautospec