mirror of
https://github.com/yann64/haikuports.git
synced 2026-03-19 01:46:00 +01:00
x86_64 is used as a baseline: the "x86_64" entry, whatever status it has, is transformed into "all", and then the other entries in ARCHITECTURES either dropped or rearranged appropriately.
234 lines
7.8 KiB
Bash
234 lines
7.8 KiB
Bash
SUMMARY="A high-performance message passing library (MPI)"
|
|
DESCRIPTION="The Open MPI Project is an open source Message Passing \
|
|
Interface implementation that is developed and maintained by a consortium \
|
|
of academic, research, and industry partners. Open MPI is therefore able \
|
|
to combine the expertise, technologies, and resources from all across the \
|
|
High Performance Computing community in order to build the best MPI library \
|
|
available. Open MPI offers advantages for system and software vendors, \
|
|
application developers and computer science researchers."
|
|
HOMEPAGE="https://www.open-mpi.org/"
|
|
COPYRIGHT="2004-2010 The Trustees of Indiana University and Indiana \
|
|
University Research and Technology Corporation
|
|
2004-2017 The University of Tennessee and The University of Tennessee \
|
|
Research Foundation
|
|
2004-2010 High Performance Computing Center Stuttgart,University of \
|
|
Stuttgart
|
|
2004-2008 The Regents of the University of California
|
|
2006-2017 Los Alamos National Security, LLC.
|
|
2006-2017 Cisco Systems, Inc.
|
|
2006-2010 Voltaire, Inc.
|
|
2006-2017 Sandia National Laboratories
|
|
2006-2010 Sun Microsystems, Inc.
|
|
2006-2017 The University of Houston
|
|
2006-2009 Myricom, Inc.
|
|
2007-2017 UT-Battelle, LLC.
|
|
2007-2017 IBM Corporation
|
|
1998-2005 Forschungszentrum Juelich, Juelich Supercomputing Centre
|
|
2005-2008 ZIH, TU Dresden, Federal Republic of Germany
|
|
2007 Evergrid, Inc.
|
|
2008 Chelsio, Inc.
|
|
2008-2009 Institut National de Recherche en Informatique
|
|
2007 Lawrence Livermore National Security, LLC.
|
|
2007-2017 Mellanox Technologies
|
|
2006-2010 QLogic Corporation
|
|
2008-2017 Oak Ridge National Labs
|
|
2006-2012 Oracle and/or its affiliates
|
|
2009-2015 Bull SAS.
|
|
2010 ARM ltd.
|
|
2016 ARM, Inc.
|
|
2010-2011 Alex Brick
|
|
2012 The University of Wisconsin-La Crosse
|
|
2013-2016 Intel, Inc.
|
|
2011-2017 NVIDIA Corporation
|
|
2016 Broadcom Limited
|
|
2011-2017 Fujitsu Limited
|
|
2014-2015 Hewlett-Packard Development Company, LP.
|
|
2013-2017 Research Organization for Information Science (RIST)
|
|
2017 Amazon.com, Inc. or its affiliates"
|
|
LICENSE="BSD (3-clause)"
|
|
REVISION="1"
|
|
SOURCE_URI="https://download.open-mpi.org/release/open-mpi/v${portVersion%.*}/openmpi-$portVersion.tar.bz2"
|
|
CHECKSUM_SHA256="73866fb77090819b6a8c85cb8539638d37d6877455825b74e289d647a39fd5b5"
|
|
PATCHES="openmpi-$portVersion.patchset"
|
|
|
|
ARCHITECTURES="?all !x86_gcc2"
|
|
SECONDARY_ARCHITECTURES="?x86"
|
|
|
|
openmpiLibs="
|
|
libmca_common_dstore
|
|
libmca_common_monitoring
|
|
libmca_common_ompio
|
|
libmca_common_sm
|
|
libmpi_mpifh
|
|
libmpi_usempi_ignore_tkr
|
|
libmpi_usempif08
|
|
libmpi
|
|
libompitrace
|
|
libopen_pal
|
|
libopen_rte
|
|
"
|
|
libmca_common_dstoreVersion=1.0.2
|
|
libmca_common_monitoringVersion=50.20.0
|
|
libmca_common_ompioVersion=41.29.0
|
|
libmca_common_smVersion=40.30.0
|
|
libmpi_mpifhVersion=40.30.0
|
|
libmpi_usempi_ignore_tkrVersion=40.30.0
|
|
libmpi_usempif08Version=40.30.0
|
|
libmpiVersion=40.30.0
|
|
libompitraceVersion=40.30.0
|
|
libopen_palVersion=40.30.0
|
|
libopen_rteVersion=40.30.0
|
|
for i in $openmpiLibs; do
|
|
eval "${i}VersionCompat=\"\$${i}Version compat >= \${${i}Version%%.*}\""
|
|
done
|
|
|
|
GLOBAL_WRITABLE_FILES="
|
|
settings/openmpi-default-hostfile keep-old
|
|
settings/openmpi-mca-params.conf keep-old
|
|
settings/openmpi-totalview.tcl keep-old
|
|
settings/pmix-mca-params.conf keep-old
|
|
"
|
|
|
|
PROVIDES="
|
|
openmpi$secondaryArchSuffix = $portVersion
|
|
cmd:aggregate_profile.pl = $portVersion
|
|
cmd:mpicc = $portVersion
|
|
cmd:mpic++ = $portVersion
|
|
cmd:mpicc = $portVersion
|
|
cmd:mpicxx = $portVersion
|
|
cmd:mpiexec = $portVersion
|
|
cmd:mpif77 = $portVersion
|
|
cmd:mpif90 = $portVersion
|
|
cmd:mpifort = $portVersion
|
|
cmd:mpirun = $portVersion
|
|
cmd:ompi_clean = $portVersion
|
|
cmd:ompi_dvm = $portVersion
|
|
cmd:ompi_ps = $portVersion
|
|
cmd:ompi_server = $portVersion
|
|
cmd:ompi_top = $portVersion
|
|
cmd:ompi_info = $portVersion
|
|
cmd:opal_wrapper = $portVersion
|
|
cmd:orte_clean = $portVersion
|
|
cmd:orte_dvm = $portVersion
|
|
cmd:orte_info = $portVersion
|
|
cmd:orte_ps = $portVersion
|
|
cmd:orte_server = $portVersion
|
|
cmd:orte_top = $portVersion
|
|
cmd:ortecc = $portVersion
|
|
cmd:orted = $portVersion
|
|
cmd:orterun = $portVersion
|
|
cmd:profile2mat.pl = $portVersion
|
|
cmd:prun = $portVersion
|
|
lib:libmca_common_dstore$secondaryArchSuffix = $libmca_common_dstoreVersionCompat
|
|
lib:libmca_common_monitoring$secondaryArchSuffix = $libmca_common_monitoringVersionCompat
|
|
lib:libmca_common_ompio$secondaryArchSuffix = $libmca_common_ompioVersionCompat
|
|
lib:libmca_common_sm$secondaryArchSuffix = $libmca_common_smVersionCompat
|
|
lib:libmpi$secondaryArchSuffix = $libmpiVersionCompat
|
|
lib:libmpi_mpifh$secondaryArchSuffix = $libmpi_mpifhVersionCompat
|
|
lib:libmpi_usempi_ignore_tkr$secondaryArchSuffix = $libmpi_usempi_ignore_tkrVersionCompat
|
|
lib:libmpi_usempif08$secondaryArchSuffix = $libmpi_usempif08VersionCompat
|
|
lib:libompitrace$secondaryArchSuffix = $libompitraceVersionCompat
|
|
lib:libopen_pal$secondaryArchSuffix = $libopen_palVersionCompat
|
|
lib:libopen_rte$secondaryArchSuffix = $libopen_rteVersionCompat
|
|
lib:ompi_monitoring_prof$secondaryArchSuffix
|
|
"
|
|
REQUIRES="
|
|
haiku$secondaryArchSuffix
|
|
lib:libexecinfo$secondaryArchSuffix
|
|
lib:libevent_2.1$secondaryArchSuffix
|
|
lib:libevent_pthreads_2.1$secondaryArchSuffix
|
|
lib:libgfortran$secondaryArchSuffix
|
|
lib:libgomp$secondaryArchSuffix
|
|
lib:libhwloc$secondaryArchSuffix
|
|
lib:libz$secondaryArchSuffix
|
|
"
|
|
|
|
PROVIDES_devel="
|
|
openmpi${secondaryArchSuffix}_devel = $portVersion
|
|
devel:libmca_common_monitoring$secondaryArchSuffix = $libmca_common_monitoringVersionCompat
|
|
devel:libmca_common_ompio$secondaryArchSuffix = $libmca_common_ompioVersionCompat
|
|
devel:libmca_common_sm$secondaryArchSuffix = $libmca_common_smVersionCompat
|
|
devel:libmpi$secondaryArchSuffix = $libmpiVersionCompat
|
|
devel:libmpi_mpifh$secondaryArchSuffix = $libmpi_mpifhVersionCompat
|
|
devel:libmpi_usempi_ignore_tkr$secondaryArchSuffix = $libmpi_usempi_ignore_tkrVersionCompat
|
|
devel:libmpi_usempif08$secondaryArchSuffix = $libmpi_usempif08VersionCompat
|
|
devel:libompitrace$secondaryArchSuffix = $libompitraceVersionCompat
|
|
devel:libopen_pal$secondaryArchSuffix = $libopen_palVersionCompat
|
|
devel:libopen_rte$secondaryArchSuffix = $libopen_rteVersionCompat
|
|
devel:ompi_monitoring_prof$secondaryArchSuffix
|
|
"
|
|
REQUIRES_devel="
|
|
openmpi$secondaryArchSuffix == $portVersion base
|
|
"
|
|
|
|
BUILD_REQUIRES="
|
|
haiku${secondaryArchSuffix}_devel
|
|
devel:libevent_2.1$secondaryArchSuffix
|
|
devel:libevent_pthreads_2.1$secondaryArchSuffix
|
|
devel:libexecinfo$secondaryArchSuffix
|
|
devel:libhwloc$secondaryArchSuffix
|
|
devel:libz$secondaryArchSuffix
|
|
"
|
|
BUILD_PREREQUIRES="
|
|
cmd:awk
|
|
cmd:bison
|
|
cmd:flex
|
|
cmd:gfortran$secondaryArchSuffix
|
|
cmd:g++$secondaryArchSuffix
|
|
cmd:libtoolize$secondaryArchSuffix
|
|
cmd:make
|
|
cmd:perl
|
|
cmd:pkg_config$secondaryArchSuffix
|
|
"
|
|
|
|
defineDebugInfoPackage openmpi$secondaryArchSuffix \
|
|
"$libDir"/libmca_common_dstore.so.$libmca_common_dstoreVersion \
|
|
"$libDir"/libmca_common_monitoring.so.$libmca_common_monitoringVersion \
|
|
"$libDir"/libmca_common_ompio.so.$libmca_common_ompioVersion \
|
|
"$libDir"/libmca_common_sm.so.$libmca_common_smVersion \
|
|
"$libDir"/libmpi.so.$libmpiVersion \
|
|
"$libDir"/libmpi_mpifh.so.$libmpi_mpifhVersion \
|
|
"$libDir"/libmpi_usempi_ignore_tkr.so.$libmpi_usempi_ignore_tkrVersion \
|
|
"$libDir"/libmpi_usempif08.so.$libmpi_usempif08Version \
|
|
"$libDir"/libompitrace.so.$libompitraceVersion \
|
|
"$libDir"/libopen-pal.so.$libopen_palVersion \
|
|
"$libDir"/libopen-rte.so.$libopen_rteVersion \
|
|
"$libDir"/ompi_monitoring_prof.so
|
|
|
|
BUILD()
|
|
{
|
|
LDFLAGS="-lnetwork -lbsd" \
|
|
CFLAGS="-D_BSD_SOURCE" \
|
|
runConfigure --omit-dirs "libExecDir" ./configure \
|
|
--libexecdir="$libExecDir/openmpi" \
|
|
--with-libevent \
|
|
--with-hwloc=external \
|
|
--with-zlib
|
|
|
|
make $jobArgs
|
|
}
|
|
|
|
INSTALL()
|
|
{
|
|
make install $jobArgs
|
|
|
|
rm $libDir/*.la
|
|
rm $libDir/pmix/*.la
|
|
rm $libDir/openmpi/*.la
|
|
|
|
prepareInstalledDevelLibs \
|
|
libmpi \
|
|
libopen-pal \
|
|
libopen-rte
|
|
|
|
fixPkgconfig
|
|
|
|
packageEntries devel \
|
|
$developDir
|
|
}
|
|
|
|
TEST()
|
|
{
|
|
LIBRARY_PATH=$LIBRARY_PATH:$sourceDir/ompi/.libs:$sourceDir/opal/.libs:$sourceDir/orte/.libs make check
|
|
}
|