mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-11-28 04:09:00 +08:00
[cpu-features] Fixed and updated cpu-features. (#18101)
* Fixed and updated cpu-features. * Update ports/cpu-features/portfile.cmake Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com> * Updated versioning. Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com>
This commit is contained in:
parent
e4e4ee9c9f
commit
b2dd1261bf
70
ports/cpu-features/make_list_cpu_features_optional.patch
Normal file
70
ports/cpu-features/make_list_cpu_features_optional.patch
Normal file
@ -0,0 +1,70 @@
|
||||
From 68ece3bba0d79ab721a0c50ee1e6014a37f759dc Mon Sep 17 00:00:00 2001
|
||||
From: Wei Dai <wei.dai@microsoft.com>
|
||||
Date: Mon, 24 May 2021 10:02:07 -0700
|
||||
Subject: [PATCH] Added an option to disable the executable target
|
||||
list_cpu_feature.
|
||||
|
||||
---
|
||||
CMakeLists.txt | 23 ++++++++++++++++++-----
|
||||
1 file changed, 18 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index f9daeac..48eea0e 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -17,6 +17,8 @@ if(NOT CMAKE_BUILD_TYPE)
|
||||
FORCE)
|
||||
endif(NOT CMAKE_BUILD_TYPE)
|
||||
|
||||
+# An option to disable the executable target list_cpu_features.
|
||||
+option(BUILD_EXECUTABLE "Build list_cpu_features executable." ON)
|
||||
# BUILD_TESTING is a standard CMake variable, but we declare it here to make it
|
||||
# prominent in the GUI.
|
||||
option(BUILD_TESTING "Enable test (depends on googletest)." OFF)
|
||||
@@ -157,9 +159,11 @@ add_library(CpuFeature::cpu_features ALIAS cpu_features)
|
||||
# program : list_cpu_features
|
||||
#
|
||||
|
||||
-add_executable(list_cpu_features ${PROJECT_SOURCE_DIR}/src/utils/list_cpu_features.c)
|
||||
-target_link_libraries(list_cpu_features PRIVATE cpu_features)
|
||||
-add_executable(CpuFeature::list_cpu_features ALIAS list_cpu_features)
|
||||
+if(BUILD_EXECUTABLE)
|
||||
+ add_executable(list_cpu_features ${PROJECT_SOURCE_DIR}/src/utils/list_cpu_features.c)
|
||||
+ target_link_libraries(list_cpu_features PRIVATE cpu_features)
|
||||
+ add_executable(CpuFeature::list_cpu_features ALIAS list_cpu_features)
|
||||
+endif()
|
||||
|
||||
#
|
||||
# ndk_compat
|
||||
@@ -223,17 +227,26 @@ if(BUILD_TESTING)
|
||||
endif()
|
||||
|
||||
#
|
||||
-# Install cpu_features and list_cpu_features
|
||||
+# Install cpu_features and optionally list_cpu_features
|
||||
#
|
||||
|
||||
include(GNUInstallDirs)
|
||||
-install(TARGETS cpu_features list_cpu_features
|
||||
+install(TARGETS cpu_features
|
||||
EXPORT CpuFeaturesTargets
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/cpu_features
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
)
|
||||
+if(BUILD_EXECUTABLE)
|
||||
+ install(TARGETS list_cpu_features
|
||||
+ EXPORT CpuFeaturesTargets
|
||||
+ PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/cpu_features
|
||||
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
+ )
|
||||
+endif()
|
||||
install(EXPORT CpuFeaturesTargets
|
||||
NAMESPACE CpuFeatures::
|
||||
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/CpuFeatures
|
||||
--
|
||||
2.25.1
|
||||
|
@ -5,26 +5,33 @@ vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO google/cpu_features
|
||||
REF b9593c8b395318bb2bc42683a94f962564cc4664 # 0.4.1
|
||||
SHA512 8c12b50741e2979a32b69c788934bee0d00811b7662006c8b493e98d5efeada67ed59460be40c234b2d3bafd85671cb1a1d7c1a6ee535a7fc1cc6ac56a754576
|
||||
REF a8397ba4591237c17d18e4acc091f5f3ebe7391e # 0.6.0
|
||||
SHA512 71a583e8190699d6df3dfa2857886089265cdfbcb916d9828a3611a1d6d23487464d6448b900b49637f015dd7d4e18bb206e0249af0932928f8ced13a081d42b
|
||||
HEAD_REF master
|
||||
PATCHES make_list_cpu_features_optional.patch
|
||||
)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
# If feature "tools" is not specified, disable building/exporting executable targets.
|
||||
# This is necessary so that downstream find_package(CpuFeatures) does not fail.
|
||||
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
|
||||
FEATURES
|
||||
tools BUILD_EXECUTABLE
|
||||
)
|
||||
|
||||
vcpkg_cmake_configure(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PREFER_NINJA
|
||||
OPTIONS
|
||||
${FEATURE_OPTIONS}
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
vcpkg_cmake_install()
|
||||
|
||||
vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/CpuFeatures TARGET_PATH share/CpuFeatures)
|
||||
vcpkg_cmake_config_fixup(PACKAGE_NAME "CpuFeatures" CONFIG_PATH "lib/cmake/CpuFeatures")
|
||||
|
||||
if("tools" IN_LIST FEATURES)
|
||||
vcpkg_copy_tools(TOOL_NAMES list_cpu_features)
|
||||
vcpkg_copy_tools(TOOL_NAMES "list_cpu_features" AUTO_CLEAN)
|
||||
endif()
|
||||
vcpkg_clean_executables_in_bin(FILE_NAMES list_cpu_features)
|
||||
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
|
||||
|
||||
file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
|
||||
file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
|
||||
|
@ -1,10 +1,20 @@
|
||||
{
|
||||
"name": "cpu-features",
|
||||
"version-string": "0.4.1",
|
||||
"version": "0.6.0",
|
||||
"description": "A cross-platform C library to retrieve CPU features (such as available instructions) at runtime",
|
||||
"homepage": "https://github.com/google/cpu_features",
|
||||
"license": "Apache-2.0",
|
||||
"supports": "!(arm | uwp)",
|
||||
"dependencies": [
|
||||
{
|
||||
"name": "vcpkg-cmake",
|
||||
"host": true
|
||||
},
|
||||
{
|
||||
"name": "vcpkg-cmake-config",
|
||||
"host": true
|
||||
}
|
||||
],
|
||||
"features": {
|
||||
"tools": {
|
||||
"description": "list_cpu_features command line tool"
|
||||
|
@ -1461,7 +1461,7 @@
|
||||
"port-version": 0
|
||||
},
|
||||
"cpu-features": {
|
||||
"baseline": "0.4.1",
|
||||
"baseline": "0.6.0",
|
||||
"port-version": 0
|
||||
},
|
||||
"cpuid": {
|
||||
|
@ -1,5 +1,10 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"git-tree": "1e64c7ac2673d19f18e8bc447b14e3ae7f842c81",
|
||||
"version": "0.6.0",
|
||||
"port-version": 0
|
||||
},
|
||||
{
|
||||
"git-tree": "e622c89147a667757495a82dfd7e4239b2782bd7",
|
||||
"version-string": "0.4.1",
|
||||
|
Loading…
Reference in New Issue
Block a user