aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com>2020-04-25 05:10:39 +0800
committerGitHub <noreply@github.com>2020-04-24 14:10:39 -0700
commita048cffdf3c7ae52253fb14ca10a47647d4eb90b (patch)
tree436c73ddf5821828743e497bb3bf44f54fce81a4
parent56738de192e3a5155d384c0c16edb1c8b057c682 (diff)
downloadvcpkg-a048cffdf3c7ae52253fb14ca10a47647d4eb90b.tar.gz
vcpkg-a048cffdf3c7ae52253fb14ca10a47647d4eb90b.zip
[hwloc] Support UNIX (#10615)
* [hwloc] Support UNIX * update baseline * update baseline * update baseline
-rw-r--r--ports/hwloc/CONTROL2
-rw-r--r--ports/hwloc/portfile.cmake64
-rw-r--r--scripts/ci.baseline.txt3
3 files changed, 42 insertions, 27 deletions
diff --git a/ports/hwloc/CONTROL b/ports/hwloc/CONTROL
index eeb7421f3..f2bf754b7 100644
--- a/ports/hwloc/CONTROL
+++ b/ports/hwloc/CONTROL
@@ -1,5 +1,5 @@
Source: hwloc
-Version: 1.11.7-3
+Version: 1.11.7-4
Homepage: https://github.com/open-mpi/hwloc
Description: Portable Hardware Locality (hwloc)
The Portable Hardware Locality (hwloc) software package provides a portable abstraction (across OS, versions, architectures, ...) of the hierarchical topology of modern architectures, including NUMA memory nodes, sockets, shared caches, cores and simultaneous multithreading. It also gathers various system attributes such as cache and memory information as well as the locality of I/O devices such as network interfaces, InfiniBand HCAs or GPUs.
diff --git a/ports/hwloc/portfile.cmake b/ports/hwloc/portfile.cmake
index 64a18ddc7..540255222 100644
--- a/ports/hwloc/portfile.cmake
+++ b/ports/hwloc/portfile.cmake
@@ -1,35 +1,51 @@
-if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
- message(FATAL_ERROR "UWP builds not supported")
-endif()
+vcpkg_fail_port_install(ON_TARGET "UWP")
-include(vcpkg_common_functions)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO open-mpi/hwloc
REF hwloc-1.11.7
- SHA512 bc3a74c60bfbed1e860c2fe2b5b49956eca5cfd9c00a262f6cd3026a42ae8b5411fa296e471a95cba657d943b8853675442e796e648034398af3015e5f59476e)
-
-file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH})
+ SHA512 bc3a74c60bfbed1e860c2fe2b5b49956eca5cfd9c00a262f6cd3026a42ae8b5411fa296e471a95cba657d943b8853675442e796e648034398af3015e5f59476e
+)
-vcpkg_configure_cmake(
- SOURCE_PATH ${SOURCE_PATH}
- PREFER_NINJA
- OPTIONS_DEBUG
- -DHWLOC_SKIP_INCLUDES=ON)
+if (VCPKG_TARGET_IS_WINDOWS)
+ file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH})
+ vcpkg_configure_cmake(
+ SOURCE_PATH ${SOURCE_PATH}
+ PREFER_NINJA
+ )
+
+ vcpkg_install_cmake()
+
+ file(READ ${CURRENT_PACKAGES_DIR}/include/hwloc/autogen/config.h PUBLIC_CONFIG_H)
+ string(REPLACE "defined( DECLSPEC_EXPORTS )" "0" PUBLIC_CONFIG_H "${PUBLIC_CONFIG_H}")
+ if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
+ string(REPLACE "defined( _USRDLL )" "0" PUBLIC_CONFIG_H "${PUBLIC_CONFIG_H}")
+ else()
+ string(REPLACE "defined( _USRDLL )" "1" PUBLIC_CONFIG_H "${PUBLIC_CONFIG_H}")
+ endif()
+ file(WRITE ${CURRENT_PACKAGES_DIR}/include/hwloc/autogen/config.h "${PUBLIC_CONFIG_H}")
+
+ file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/tools)
+else()
+ message(WARNING "${PORT} currently requires the following tool from the system package manager:\n libtool")
-vcpkg_install_cmake()
+ vcpkg_configure_make(
+ SOURCE_PATH ${SOURCE_PATH}
+ AUTOCONFIG
+ )
+
+ vcpkg_install_make()
+
+ file(GLOB HWLOC_EXEC ${CURRENT_PACKAGES_DIR}/bin)
+ message("HWLOC_EXEC: ${HWLOC_EXEC}")
+ if (HWLOC_EXEC)
+ file(COPY ${HWLOC_EXEC} DESTINATION ${CURRENT_PACKAGES_DIR}/tools)
+ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin)
+ endif()
+ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
-file(READ ${CURRENT_PACKAGES_DIR}/include/hwloc/autogen/config.h PUBLIC_CONFIG_H)
-string(REPLACE "defined( DECLSPEC_EXPORTS )" "0" PUBLIC_CONFIG_H "${PUBLIC_CONFIG_H}")
-if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
- string(REPLACE "defined( _USRDLL )" "0" PUBLIC_CONFIG_H "${PUBLIC_CONFIG_H}")
-else()
- string(REPLACE "defined( _USRDLL )" "1" PUBLIC_CONFIG_H "${PUBLIC_CONFIG_H}")
endif()
-file(WRITE ${CURRENT_PACKAGES_DIR}/include/hwloc/autogen/config.h "${PUBLIC_CONFIG_H}")
-
-file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/tools)
+file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
# Handle copyright
-file(COPY ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/hwloc)
-file(RENAME ${CURRENT_PACKAGES_DIR}/share/hwloc/COPYING ${CURRENT_PACKAGES_DIR}/share/hwloc/copyright)
+file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
diff --git a/scripts/ci.baseline.txt b/scripts/ci.baseline.txt
index d1a8ffa8d..6b5088409 100644
--- a/scripts/ci.baseline.txt
+++ b/scripts/ci.baseline.txt
@@ -597,10 +597,9 @@ hidapi:x64-uwp=fail
hiredis:arm-uwp=fail
hiredis:x64-uwp=fail
hpx:x64-windows-static=fail
+hpx:x64-linux=fail
hwloc:arm64-windows=fail
hwloc:arm-uwp=fail
-hwloc:x64-linux=fail
-hwloc:x64-osx=fail
hwloc:x64-uwp=fail
hyperscan:x64-linux=ignore
# hypre has a conflict with 'superlu' port