From 36ae2b1fd077a378afa084686d013b7928adb620 Mon Sep 17 00:00:00 2001 From: Damillora Date: Sat, 16 Dec 2017 02:55:53 +0700 Subject: [PATCH] hwloc: new recipe (#1828) --- sys-libs/hwloc/hwloc-1.11.8.recipe | 138 +++++++++++++++++++ sys-libs/hwloc/patches/hwloc-1.11.8.patchset | 56 ++++++++ 2 files changed, 194 insertions(+) create mode 100644 sys-libs/hwloc/hwloc-1.11.8.recipe create mode 100644 sys-libs/hwloc/patches/hwloc-1.11.8.patchset diff --git a/sys-libs/hwloc/hwloc-1.11.8.recipe b/sys-libs/hwloc/hwloc-1.11.8.recipe new file mode 100644 index 000000000..5b0d1b606 --- /dev/null +++ b/sys-libs/hwloc/hwloc-1.11.8.recipe @@ -0,0 +1,138 @@ +SUMMARY="The Hardware Locality library" +DESCRIPTION="The Hardware Locality (hwloc) software project aims at easing the \ +process of discovering hardware resources in parallel architectures. It offers \ +command-line tools and a C API for consulting these resources, their locality, \ +attributes, and interconnection. hwloc primarily aims at helping \ +high-performance computing (HPC) applications, but is also applicable to any \ +project seeking to exploit code and/or data locality on modern computing \ +platforms." +HOMEPAGE="https://www.open-mpi.org/projects/hwloc/" +COPYRIGHT="2004-2006 The Trustees of Indiana University and Indiana University \ +Research and Technology Corporation + 2004-2005 The University of Tennessee and The University of Tennessee \ +Research Foundation + 2004-2005 High Performance Computing Center Stuttgart, University of \ +Stuttgart + 2004-2005 The Regents of the University of California + 2009 CNRS + 2009-2017 Inria + 2009-2015 University of Bordeaux + 2009-2015 Cisco Systems, Inc. + 2009-2012 Oracle and/or its affiliates + 2010 IBM + 2010 Jirka Hladky + 2012 Aleksej Saushev, The NetBSD Foundation + 2012 Blue Brain Project, EPFL + 2015 Research Organization for Information Science and Technology \ +(RIST) + 2015-2016 Intel, Inc." +LICENSE="BSD (3-clause)" +REVISION="1" +SOURCE_URI="https://www.open-mpi.org/software/hwloc/v1.11/downloads/hwloc-$portVersion.tar.bz2" +CHECKSUM_SHA256="ecef10265084d9123dc0b03d82ff5ee06fbf5ba755a912e7511ae590c9ee594d" +PATCHES="hwloc-$portVersion.patchset" + +ARCHITECTURES="?x86_gcc2 x86 x86_64" +SECONDARY_ARCHITECTURES="x86" + +libVersion=5.7.5 +libVersionCompat="$libVersion compat >= 5" + +PROVIDES=" + hwloc$secondaryArchSuffix = $portVersion + lib:libhwloc$secondaryArchSuffix = $libVersionCompat + cmd:hwloc_annotate$secondaryArchSuffix = $portVersion + cmd:hwloc_assembler$secondaryArchSuffix = $portVersion + cmd:hwloc_assembler_remote$secondaryArchSuffix = $portVersion + cmd:hwloc_bind$secondaryArchSuffix = $portVersion + cmd:hwloc_calc$secondaryArchSuffix = $portVersion + cmd:hwloc_compress_dir$secondaryArchSuffix = $portVersion + cmd:hwloc_diff$secondaryArchSuffix = $portVersion + cmd:hwloc_distances$secondaryArchSuffix = $portVersion + cmd:hwloc_distrib$secondaryArchSuffix = $portVersion +# cmd:hwloc_dump_hwdata$secondaryArchSuffix = $portVersion +# cmd:hwloc_gather_topology$secondaryArchSuffix = $portVersion + cmd:hwloc_info$secondaryArchSuffix = $portVersion + cmd:hwloc_ls$secondaryArchSuffix = $portVersion + cmd:hwloc_patch$secondaryArchSuffix = $portVersion + cmd:hwloc_ps$secondaryArchSuffix = $portVersion + cmd:lstopo$secondaryArchSuffix = $portVersion + cmd:lstopo_no_graphics$secondaryArchSuffix = $portVersion + " +REQUIRES=" + haiku$secondaryArchSuffix + lib:libxml2$secondaryArchSuffix + lib:libltdl$secondaryArchSuffix + " + +PROVIDES_devel=" + hwloc${secondaryArchSuffix}_devel = $portVersion + devel:libhwloc$secondaryArchSuffix = $libVersion + " +REQUIRES_devel=" + hwloc$secondaryArchSuffix == $portVersion base + " + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel + devel:libxml2$secondaryArchSuffix + " +BUILD_PREREQUIRES=" + cmd:aclocal + cmd:autoconf + cmd:autom4te + cmd:automake + cmd:gcc$secondaryArchSuffix + cmd:grep + cmd:ld$secondaryArchSuffix + cmd:libtoolize$secondaryArchSuffix + cmd:make + cmd:pkg_config$secondaryArchSuffix + cmd:sed + " + +defineDebugInfoPackage hwloc$secondaryArchSuffix \ + $libDir/hwloc/hwloc_xml_libxml.so \ + $libDir/libhwloc.so.$libVersion \ + $binDir/lstopo-no-graphics \ + $binDir/hwloc-annotate \ + $binDir/hwloc-assembler \ + $binDir/hwloc-bind \ + $binDir/hwloc-calc \ + $binDir/hwloc-diff \ + $binDir/hwloc-distances \ + $binDir/hwloc-distrib \ + $binDir/hwloc-info \ + $binDir/hwloc-patch \ + $binDir/hwloc-ps + +BUILD() +{ + autoreconf -fi + runConfigure ./configure --enable-plugins + make +} + +INSTALL() +{ + install -d $docDir + + make install + rm -f $libDir/hwloc/*.la + rm -f $libDir/libhwloc.la + + prepareInstalledDevelLib libhwloc + fixPkgconfig + + packageEntries devel \ + $developDir \ + $docDir/hwloc-*.pdf \ + $manDir/man3 + + install -t $docDir AUTHORS COPYING README +} + +TEST() +{ + make check +} diff --git a/sys-libs/hwloc/patches/hwloc-1.11.8.patchset b/sys-libs/hwloc/patches/hwloc-1.11.8.patchset new file mode 100644 index 000000000..f4058028b --- /dev/null +++ b/sys-libs/hwloc/patches/hwloc-1.11.8.patchset @@ -0,0 +1,56 @@ +From 2832c559d41e30aefae58cdcae1fcde2ebd63bea Mon Sep 17 00:00:00 2001 +From: Damillora +Date: Sun, 3 Dec 2017 11:14:55 +0000 +Subject: Remove unknown compiler parameter (gcc2) + + +diff --git a/config/hwloc_internal.m4 b/config/hwloc_internal.m4 +index 0c54667..6ba7bf4 100644 +--- a/config/hwloc_internal.m4 ++++ b/config/hwloc_internal.m4 +@@ -219,7 +219,6 @@ EOF + fi + fi + if test "$hwloc_want_picky" = 1; then +- add="-Wall -Wunused-parameter -Wundef -Wno-long-long -Wsign-compare" + add="$add -Wmissing-prototypes -Wstrict-prototypes" + add="$add -Wcomment -pedantic -Wshadow" + +diff --git a/configure b/configure +index cef42d0..e5e1a43 100755 +--- a/configure ++++ b/configure +@@ -16373,7 +16373,6 @@ $as_echo "no (default)" >&6; } + fi + fi + if test "$hwloc_want_picky" = 1; then +- add="-Wall -Wunused-parameter -Wundef -Wno-long-long -Wsign-compare" + add="$add -Wmissing-prototypes -Wstrict-prototypes" + add="$add -Wcomment -pedantic -Wshadow" + +-- +2.15.0 + + +From 7481700c79f7b0d59d805a000aa68c10750616ee Mon Sep 17 00:00:00 2001 +From: Damillora +Date: Sun, 3 Dec 2017 11:19:42 +0000 +Subject: Fix asm error + + +diff --git a/include/private/cpuid-x86.h b/include/private/cpuid-x86.h +index 9a5f544..2500b66 100644 +--- a/include/private/cpuid-x86.h ++++ b/include/private/cpuid-x86.h +@@ -76,7 +76,7 @@ static __hwloc_inline void hwloc_x86_cpuid(unsigned *eax, unsigned *ebx, unsigne + "mov %%ebx,%1\n\t" + "cpuid\n\t" + "xchg %%ebx,%1\n\t" +- : "+a" (*eax), "=SD" (*ebx), "+c" (*ecx), "=d" (*edx)); ++ : "+a" (*eax), "=b" (*ebx), "+c" (*ecx), "=d" (*edx)); + #else + #error unknown architecture + #endif +-- +2.15.0 +