update asmjit, fbgemm, polyhook2, start asmtk (#27683)

* update asmjit, fbgemm, polyhook2, start asmtk

* fix error LNK2019 and update version

* update version

* version

* NEW SHA

* revert fbgemm

* format

* v db

* new function

* v db

* update fbgemm version to 0.4.1 to fix asmjit

* v db

---------

Co-authored-by: FrankXie <v-frankxie@microsoft.com>
This commit is contained in:
Stephen Eckels 2023-04-10 22:27:41 -04:00 committed by GitHub
parent 774469f31a
commit 229c0c7ef4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
15 changed files with 262 additions and 191 deletions

View File

@ -1,9 +1,9 @@
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO asmjit/asmjit
REF d0d14ac774977d0060a351f66e35cb57ba0bf59c # accessed on 2021-10-26
SHA512 2822763fcb3c18f6699119c1773404667d81f8afb86f8f2e8dbe627526a2877b049d16505557e680e4e310f0e0667263dc4ac442f682e95f2568bf0bf8b61b4b
HEAD_REF master
OUT_SOURCE_PATH SOURCE_PATH
REPO asmjit/asmjit
REF ae63ced6dd3bc281a959edd32704b27778622be0 # accessed on 2022-11-06
SHA512 cc074a17524c610183bcf3af49f387fb46a9f32b625351e8727554ed14d92def0fc12bf751f18e2eb5f623c1619e70f32bad6b3d2126485fdd4d0227ecefd6e4
HEAD_REF master
)
string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" ASMJIT_STATIC)
@ -28,4 +28,4 @@ if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
)
endif()
file(INSTALL "${SOURCE_PATH}/LICENSE.md" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE.md")

View File

@ -1,7 +1,6 @@
{
"name": "asmjit",
"version-date": "2021-10-26",
"port-version": 1,
"version-date": "2022-11-06",
"description": "Complete x86/x64 JIT and Remote Assembler for C++",
"homepage": "https://github.com/asmjit/asmjit",
"supports": "!arm",

View File

@ -0,0 +1,13 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index d348072..d5b6be9 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -172,7 +172,7 @@ if (NOT ASMTK_EMBED)
$<$<NOT:$<CONFIG:Debug>>:${ASMTK_PRIVATE_CFLAGS_REL}>)
if(ASMJIT_EXTERNAL)
- target_link_libraries(asmtk PUBLIC ${ASMJIT_LIBRARY})
+ target_link_libraries(asmtk PUBLIC asmjit::asmjit)
find_path(ASMJIT_INCLUDE_DIR NAMES asmjit/asmjit.h)
target_include_directories(asmtk PRIVATE ${ASMJIT_INCLUDE_DIR})
else()

View File

@ -0,0 +1,30 @@
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO asmjit/asmtk
REF 425b108d3afe510f8b94ca5523cd31ae29381422 # accessed on 2022-11-06
SHA512 d825f488c66dca9ca4c3279992e4ea36a4d1b7ad65fa3e0c70b151ce0d2b1f9b5ad053ff1d447da38475bf843fe3b130706e3c9916a64f76560add9c8d796a5b
HEAD_REF master
PATCHES
fix-link-amsjit.patch
)
set(ASMJIT_EXTERNAL ON)
set(ASMTK_EMBED OFF)
string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" ASMTK_STATIC)
vcpkg_cmake_configure(
SOURCE_PATH "${SOURCE_PATH}"
OPTIONS
-DASMTK_STATIC=${ASMTK_STATIC}
-DASMJIT_EXTERNAL=${ASMJIT_EXTERNAL}
-DASMTK_EMBED=${ASMTK_EMBED}
)
vcpkg_cmake_install()
vcpkg_copy_pdbs()
vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/asmtk)
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE.md")

18
ports/asmtk/vcpkg.json Normal file
View File

@ -0,0 +1,18 @@
{
"name": "asmtk",
"version-date": "2022-11-06",
"description": "Assembler toolkit based on AsmJit ",
"homepage": "https://github.com/asmjit/asmtk",
"supports": "!arm",
"dependencies": [
"asmjit",
{
"name": "vcpkg-cmake",
"host": true
},
{
"name": "vcpkg-cmake-config",
"host": true
}
]
}

View File

@ -1,146 +1,146 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 6f19a16..3c758d2 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -6,7 +6,6 @@ list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules")
include(GNUInstallDirs)
# function to extract filelists from defs.bzl file
-find_package(PythonInterp)
function(get_filelist name outputvar)
execute_process(
COMMAND "${PYTHON_EXECUTABLE}" -c
@@ -19,9 +18,6 @@ endfunction()
project(fbgemm VERSION 0.1 LANGUAGES CXX C)
-set(FBGEMM_LIBRARY_TYPE "default" CACHE STRING
- "Type of library (shared, static, or default) to build")
-set_property(CACHE FBGEMM_LIBRARY_TYPE PROPERTY STRINGS default static shared)
option(FBGEMM_BUILD_TESTS "Build fbgemm unit tests" ON)
option(FBGEMM_BUILD_BENCHMARKS "Build fbgemm benchmarks" ON)
option(FBGEMM_BUILD_DOCS "Build fbgemm documentation" OFF)
@@ -101,18 +97,11 @@ set_target_properties(fbgemm_generic fbgemm_avx2 fbgemm_avx512 PROPERTIES
#2) MSVC uses /MD in default cxx compiling flags,
#need to change it to /MT in static case
if(MSVC)
- set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /wd4244 /wd4267 /wd4305 /wd4309")
- if(FBGEMM_LIBRARY_TYPE STREQUAL "static")
+ set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /wd4244 /wd4267 /wd4305 /wd4309 /wd4703")
+ if(NOT BUILD_SHARED_LIBS)
target_compile_definitions(fbgemm_generic PRIVATE ASMJIT_STATIC)
target_compile_definitions(fbgemm_avx2 PRIVATE ASMJIT_STATIC)
target_compile_definitions(fbgemm_avx512 PRIVATE ASMJIT_STATIC)
- foreach(flag_var
- CMAKE_CXX_FLAGS CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_RELEASE
- CMAKE_CXX_FLAGS_MINSIZEREL CMAKE_CXX_FLAGS_RELWITHDEBINFO)
- if(${flag_var} MATCHES "/MD")
- string(REGEX REPLACE "/MD" "/MT" ${flag_var} "${${flag_var}}")
- endif(${flag_var} MATCHES "/MD")
- endforeach(flag_var)
endif()
target_compile_options(fbgemm_avx2 PRIVATE "/arch:AVX2")
target_compile_options(fbgemm_avx512 PRIVATE "/arch:AVX512")
@@ -145,7 +134,8 @@ message(WARNING "CMAKE_CXX_FLAGS_DEBUG is ${CMAKE_CXX_FLAGS_DEBUG}")
message(WARNING "CMAKE_CXX_FLAGS_RELEASE is ${CMAKE_CXX_FLAGS_RELEASE}")
message(WARNING "==========")
-if(NOT TARGET asmjit)
+find_package(asmjit CONFIG REQUIRED) # target 'asmjit::asmjit'
+if(FALSE)
#Download asmjit from github if ASMJIT_SRC_DIR is not specified.
if(NOT DEFINED ASMJIT_SRC_DIR)
set(ASMJIT_SRC_DIR "${FBGEMM_SOURCE_DIR}/third_party/asmjit"
@@ -164,7 +154,8 @@ if(NOT TARGET asmjit)
set_property(TARGET asmjit PROPERTY POSITION_INDEPENDENT_CODE ON)
endif()
-if(NOT TARGET cpuinfo)
+find_package(cpuinfo CONFIG REQUIRED) # target 'cpuinfo::cpuinfo'
+if(FALSE)
#Download cpuinfo from github if CPUINFO_SOURCE_DIR is not specified.
if(NOT DEFINED CPUINFO_SOURCE_DIR)
set(CPUINFO_SOURCE_DIR "${FBGEMM_SOURCE_DIR}/third_party/cpuinfo"
@@ -185,49 +176,38 @@ endif()
target_include_directories(fbgemm_generic BEFORE
PUBLIC $<BUILD_INTERFACE:${FBGEMM_SOURCE_DIR}>
PUBLIC $<BUILD_INTERFACE:${FBGEMM_SOURCE_DIR}/include>
- PRIVATE "${ASMJIT_SRC_DIR}/src"
- PRIVATE "${CPUINFO_SOURCE_DIR}/include")
+)
+target_link_libraries(fbgemm_generic PUBLIC asmjit::asmjit cpuinfo::cpuinfo)
target_include_directories(fbgemm_avx2 BEFORE
PUBLIC $<BUILD_INTERFACE:${FBGEMM_SOURCE_DIR}>
PUBLIC $<BUILD_INTERFACE:${FBGEMM_SOURCE_DIR}/include>
- PRIVATE "${ASMJIT_SRC_DIR}/src"
- PRIVATE "${CPUINFO_SOURCE_DIR}/include")
+)
+target_link_libraries(fbgemm_avx2 PUBLIC asmjit::asmjit cpuinfo::cpuinfo)
target_include_directories(fbgemm_avx512 BEFORE
PUBLIC $<BUILD_INTERFACE:${FBGEMM_SOURCE_DIR}>
PUBLIC $<BUILD_INTERFACE:${FBGEMM_SOURCE_DIR}/include>
- PRIVATE "${ASMJIT_SRC_DIR}/src"
- PRIVATE "${CPUINFO_SOURCE_DIR}/include")
-
-if(FBGEMM_LIBRARY_TYPE STREQUAL "default")
- add_library(fbgemm
- $<TARGET_OBJECTS:fbgemm_generic>
- $<TARGET_OBJECTS:fbgemm_avx2>
- $<TARGET_OBJECTS:fbgemm_avx512>)
-elseif(FBGEMM_LIBRARY_TYPE STREQUAL "shared")
- add_library(fbgemm SHARED
- $<TARGET_OBJECTS:fbgemm_generic>
- $<TARGET_OBJECTS:fbgemm_avx2>
- $<TARGET_OBJECTS:fbgemm_avx512>)
+)
+target_link_libraries(fbgemm_avx512 PUBLIC asmjit::asmjit cpuinfo::cpuinfo)
+
+add_library(fbgemm
+ $<TARGET_OBJECTS:fbgemm_generic>
+ $<TARGET_OBJECTS:fbgemm_avx2>
+ $<TARGET_OBJECTS:fbgemm_avx512>)
+if(BUILD_SHARED_LIBS)
set_property(TARGET fbgemm_generic PROPERTY POSITION_INDEPENDENT_CODE ON)
set_property(TARGET fbgemm_avx2 PROPERTY POSITION_INDEPENDENT_CODE ON)
set_property(TARGET fbgemm_avx512 PROPERTY POSITION_INDEPENDENT_CODE ON)
set_target_properties(fbgemm PROPERTIES
CXX_VISIBILITY_PRESET hidden)
-elseif(FBGEMM_LIBRARY_TYPE STREQUAL "static")
- add_library(fbgemm STATIC
- $<TARGET_OBJECTS:fbgemm_generic>
- $<TARGET_OBJECTS:fbgemm_avx2>
- $<TARGET_OBJECTS:fbgemm_avx512>)
+else()
#MSVC need to define FBGEMM_STATIC for fbgemm_generic also to
#avoid generating _dllimport functions.
target_compile_definitions(fbgemm_generic PRIVATE FBGEMM_STATIC)
target_compile_definitions(fbgemm_avx2 PRIVATE FBGEMM_STATIC)
target_compile_definitions(fbgemm_avx512 PRIVATE FBGEMM_STATIC)
target_compile_definitions(fbgemm PRIVATE FBGEMM_STATIC)
-else()
- message(FATAL_ERROR "Unsupported library type ${FBGEMM_LIBRARY_TYPE}")
endif()
if(USE_SANITIZER)
@@ -239,9 +219,7 @@ target_include_directories(fbgemm BEFORE
PUBLIC $<BUILD_INTERFACE:${FBGEMM_SOURCE_DIR}>
PUBLIC $<BUILD_INTERFACE:${FBGEMM_SOURCE_DIR}/include>)
-target_link_libraries(fbgemm $<BUILD_INTERFACE:asmjit>
- $<BUILD_INTERFACE:cpuinfo>)
-add_dependencies(fbgemm asmjit cpuinfo)
+target_link_libraries(fbgemm PUBLIC asmjit::asmjit cpuinfo::cpuinfo)
install(TARGETS fbgemm EXPORT fbgemmLibraryConfig
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
@@ -254,7 +232,7 @@ install(FILES ${FBGEMM_PUBLIC_HEADERS}
install(EXPORT fbgemmLibraryConfig DESTINATION share/cmake/fbgemm
FILE fbgemmLibraryConfig.cmake)
-if(MSVC)
+if(FALSE)
if(FBGEMM_LIBRARY_TYPE STREQUAL "shared")
install(
FILES $<TARGET_PDB_FILE:fbgemm> $<TARGET_PDB_FILE:asmjit>
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 58dcb9a..513a152 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -6,7 +6,6 @@ list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules")
include(GNUInstallDirs)
# function to extract filelists from defs.bzl file
-find_package(PythonInterp)
function(get_filelist name outputvar)
execute_process(
COMMAND "${PYTHON_EXECUTABLE}" -c
@@ -43,9 +42,6 @@ endfunction()
project(fbgemm VERSION 0.1 LANGUAGES CXX C)
-set(FBGEMM_LIBRARY_TYPE "default" CACHE STRING
- "Type of library (shared, static, or default) to build")
-set_property(CACHE FBGEMM_LIBRARY_TYPE PROPERTY STRINGS default static shared)
option(FBGEMM_BUILD_TESTS "Build fbgemm unit tests" ON)
option(FBGEMM_BUILD_BENCHMARKS "Build fbgemm benchmarks" ON)
option(FBGEMM_BUILD_DOCS "Build fbgemm documentation" OFF)
@@ -126,18 +122,11 @@ set_target_properties(fbgemm_generic fbgemm_avx2 fbgemm_avx512 PROPERTIES
#2) MSVC uses /MD in default cxx compiling flags,
#need to change it to /MT in static case
if(MSVC)
- set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /wd4244 /wd4267 /wd4305 /wd4309")
- if(FBGEMM_LIBRARY_TYPE STREQUAL "static")
+ set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /wd4244 /wd4267 /wd4305 /wd4309 /wd4703 /bigobj")
+ if(NOT BUILD_SHARED_LIBS)
target_compile_definitions(fbgemm_generic PRIVATE ASMJIT_STATIC)
target_compile_definitions(fbgemm_avx2 PRIVATE ASMJIT_STATIC)
target_compile_definitions(fbgemm_avx512 PRIVATE ASMJIT_STATIC)
- foreach(flag_var
- CMAKE_CXX_FLAGS CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_RELEASE
- CMAKE_CXX_FLAGS_MINSIZEREL CMAKE_CXX_FLAGS_RELWITHDEBINFO)
- if(${flag_var} MATCHES "/MD")
- string(REGEX REPLACE "/MD" "/MT" ${flag_var} "${${flag_var}}")
- endif(${flag_var} MATCHES "/MD")
- endforeach(flag_var)
endif()
target_compile_options(fbgemm_avx2 PRIVATE "/arch:AVX2")
target_compile_options(fbgemm_avx512 PRIVATE "/arch:AVX512")
@@ -189,7 +178,8 @@ message(WARNING "CMAKE_CXX_FLAGS_DEBUG is ${CMAKE_CXX_FLAGS_DEBUG}")
message(WARNING "CMAKE_CXX_FLAGS_RELEASE is ${CMAKE_CXX_FLAGS_RELEASE}")
message(WARNING "==========")
-if(NOT TARGET asmjit)
+find_package(asmjit CONFIG REQUIRED) # target 'asmjit::asmjit'
+if(FALSE)
#Download asmjit from github if ASMJIT_SRC_DIR is not specified.
if(NOT DEFINED ASMJIT_SRC_DIR)
set(ASMJIT_SRC_DIR "${FBGEMM_SOURCE_DIR}/third_party/asmjit"
@@ -218,7 +208,8 @@ if(NOT TARGET asmjit)
endif()
endif()
-if(NOT TARGET cpuinfo)
+find_package(cpuinfo CONFIG REQUIRED) # target 'cpuinfo::cpuinfo'
+if(FALSE)
#Download cpuinfo from github if CPUINFO_SOURCE_DIR is not specified.
if(NOT DEFINED CPUINFO_SOURCE_DIR)
set(CPUINFO_SOURCE_DIR "${FBGEMM_SOURCE_DIR}/third_party/cpuinfo"
@@ -239,49 +230,38 @@ endif()
target_include_directories(fbgemm_generic BEFORE
PUBLIC $<BUILD_INTERFACE:${FBGEMM_SOURCE_DIR}>
PUBLIC $<BUILD_INTERFACE:${FBGEMM_SOURCE_DIR}/include>
- PRIVATE "${ASMJIT_SRC_DIR}/src"
- PRIVATE "${CPUINFO_SOURCE_DIR}/include")
+)
+target_link_libraries(fbgemm_generic PUBLIC asmjit::asmjit cpuinfo::cpuinfo)
target_include_directories(fbgemm_avx2 BEFORE
PUBLIC $<BUILD_INTERFACE:${FBGEMM_SOURCE_DIR}>
PUBLIC $<BUILD_INTERFACE:${FBGEMM_SOURCE_DIR}/include>
- PRIVATE "${ASMJIT_SRC_DIR}/src"
- PRIVATE "${CPUINFO_SOURCE_DIR}/include")
+)
+target_link_libraries(fbgemm_avx2 PUBLIC asmjit::asmjit cpuinfo::cpuinfo)
target_include_directories(fbgemm_avx512 BEFORE
PUBLIC $<BUILD_INTERFACE:${FBGEMM_SOURCE_DIR}>
PUBLIC $<BUILD_INTERFACE:${FBGEMM_SOURCE_DIR}/include>
- PRIVATE "${ASMJIT_SRC_DIR}/src"
- PRIVATE "${CPUINFO_SOURCE_DIR}/include")
-
-if(FBGEMM_LIBRARY_TYPE STREQUAL "default")
- add_library(fbgemm
- $<TARGET_OBJECTS:fbgemm_generic>
- $<TARGET_OBJECTS:fbgemm_avx2>
- $<TARGET_OBJECTS:fbgemm_avx512>)
-elseif(FBGEMM_LIBRARY_TYPE STREQUAL "shared")
- add_library(fbgemm SHARED
- $<TARGET_OBJECTS:fbgemm_generic>
- $<TARGET_OBJECTS:fbgemm_avx2>
- $<TARGET_OBJECTS:fbgemm_avx512>)
+)
+target_link_libraries(fbgemm_avx512 PUBLIC asmjit::asmjit cpuinfo::cpuinfo)
+
+add_library(fbgemm
+ $<TARGET_OBJECTS:fbgemm_generic>
+ $<TARGET_OBJECTS:fbgemm_avx2>
+ $<TARGET_OBJECTS:fbgemm_avx512>)
+if(BUILD_SHARED_LIBS)
set_property(TARGET fbgemm_generic PROPERTY POSITION_INDEPENDENT_CODE ON)
set_property(TARGET fbgemm_avx2 PROPERTY POSITION_INDEPENDENT_CODE ON)
set_property(TARGET fbgemm_avx512 PROPERTY POSITION_INDEPENDENT_CODE ON)
set_target_properties(fbgemm PROPERTIES
CXX_VISIBILITY_PRESET hidden)
-elseif(FBGEMM_LIBRARY_TYPE STREQUAL "static")
- add_library(fbgemm STATIC
- $<TARGET_OBJECTS:fbgemm_generic>
- $<TARGET_OBJECTS:fbgemm_avx2>
- $<TARGET_OBJECTS:fbgemm_avx512>)
+else()
#MSVC need to define FBGEMM_STATIC for fbgemm_generic also to
#avoid generating _dllimport functions.
target_compile_definitions(fbgemm_generic PRIVATE FBGEMM_STATIC)
target_compile_definitions(fbgemm_avx2 PRIVATE FBGEMM_STATIC)
target_compile_definitions(fbgemm_avx512 PRIVATE FBGEMM_STATIC)
target_compile_definitions(fbgemm PRIVATE FBGEMM_STATIC)
-else()
- message(FATAL_ERROR "Unsupported library type ${FBGEMM_LIBRARY_TYPE}")
endif()
if(USE_SANITIZER)
@@ -293,9 +273,7 @@ target_include_directories(fbgemm BEFORE
PUBLIC $<BUILD_INTERFACE:${FBGEMM_SOURCE_DIR}>
PUBLIC $<BUILD_INTERFACE:${FBGEMM_SOURCE_DIR}/include>)
-target_link_libraries(fbgemm $<BUILD_INTERFACE:asmjit>
- $<BUILD_INTERFACE:cpuinfo>)
-add_dependencies(fbgemm asmjit cpuinfo)
+target_link_libraries(fbgemm PUBLIC asmjit::asmjit cpuinfo::cpuinfo)
install(TARGETS fbgemm EXPORT fbgemmLibraryConfig
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
@@ -308,7 +286,7 @@ install(FILES ${FBGEMM_PUBLIC_HEADERS}
install(EXPORT fbgemmLibraryConfig DESTINATION share/cmake/fbgemm
FILE fbgemmLibraryConfig.cmake)
-if(MSVC)
+if(FALSE)
if(FBGEMM_LIBRARY_TYPE STREQUAL "shared")
install(
FILES $<TARGET_PDB_FILE:fbgemm> $<TARGET_PDB_FILE:asmjit>

View File

@ -4,8 +4,8 @@ vcpkg_find_acquire_program(PYTHON3)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO pytorch/fbgemm
REF 51bc2ecc7086980fd9e6190163b04486cd37ac2a
SHA512 43e59ff25ec9365061be6a8db7ec592f096e74897e338dd3e17401f2188986cf3b7e26f82f7c1e2adf34496fb32cb4b50d40731bee3bf9fa5b1f2ac92a09e671
REF 64833b5185893cbc71ea80c9b01443f762b5cba4
SHA512 f256177f22d3a4abd9c861bafd96e12df33e7604416c26ac06c9e480fd5f1e0b4149132b3216790704ebf73d47a7277235f058d58f0ecafa8de23360022f202d
PATCHES
fix-cmakelists.patch
)

View File

@ -1,7 +1,6 @@
{
"name": "fbgemm",
"version-date": "2021-03-18",
"port-version": 4,
"version": "0.4.1",
"description": "FB (Facebook) + GEMM (General Matrix-Matrix Multiplication)",
"homepage": "https://code.fb.com/ml-applications/fbgemm/",
"license": "BSD-3-Clause",

View File

@ -1,15 +1,13 @@
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO stevemk14ebr/PolyHook_2_0
REF 750e78f8d7ebfc291e1c0dce3a0763c3a4b86737
SHA512 c542288cfde258bcb54960593f2b596b6a967cf128a691e4b8ad699127567c58dc55ce2bbf21f4d3ccbaa2d794bcacd3540503b039ee58c614a854f13d51d30e
REF 71d273463a3c4e30ec0a4031c4b477b85ea773fb
SHA512 5092453ee55d679bb88ac8d98bbfadbe2aca9eb211b8d7a5bce4e6bb377dd292518d4861fd5281c51915f9ba609b6f2b0c0e0271f92cc0da148ee8d3225d1081
HEAD_REF master
)
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
FEATURES
capstone POLYHOOK_DISASM_CAPSTONE
zydis POLYHOOK_DISASM_ZYDIS
exception POLYHOOK_FEATURE_EXCEPTION
detours POLYHOOK_FEATURE_DETOURS
inlinentd POLYHOOK_FEATURE_INLINENTD
@ -31,7 +29,7 @@ vcpkg_cmake_configure(
-DPOLYHOOK_BUILD_SHARED_LIB=${BUILD_SHARED_LIB}
-DPOLYHOOK_BUILD_STATIC_RUNTIME=${BUILD_STATIC_RUNTIME}
-DPOLYHOOK_USE_EXTERNAL_ASMJIT=ON
-DPOLYHOOK_USE_EXTERNAL_CAPSTONE=ON
-DPOLYHOOK_USE_EXTERNAL_ASMTK=ON
-DPOLYHOOK_USE_EXTERNAL_ZYDIS=ON
)
@ -43,4 +41,4 @@ vcpkg_copy_pdbs()
vcpkg_cmake_config_fixup(PACKAGE_NAME PolyHook_2 CONFIG_PATH lib/PolyHook_2)
# Handle copyright
file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE")

View File

@ -1,6 +1,6 @@
{
"name": "polyhook2",
"version-date": "2022-03-01",
"version-date": "2023-02-24",
"description": "C++17, x86/x64 Hooking Library v2.0",
"homepage": "https://github.com/stevemk14ebr/PolyHook_2_0",
"license": "MIT",
@ -16,28 +16,20 @@
}
],
"default-features": [
"capstone",
"detours",
"exception",
"inlinentd",
"pe",
"virtuals",
"zydis"
"virtuals"
],
"features": {
"capstone": {
"description": "Capstone disassembler integration.",
"dependencies": [
{
"name": "capstone",
"features": [
"x86"
]
}
]
},
"detours": {
"description": "Implement detour functionality"
"description": "Implement detour functionality",
"dependencies": [
"asmjit",
"asmtk",
"zydis"
]
},
"exception": {
"description": "Implement all exception hooking functionality"
@ -53,12 +45,6 @@
},
"virtuals": {
"description": "Implement all virtual table hooking functionality"
},
"zydis": {
"description": "Zydis disassembler integration.",
"dependencies": [
"zydis"
]
}
}
}

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "adc2ad6be145c9cbf66d606bddc56267b02e41bf",
"version-date": "2022-11-06",
"port-version": 0
},
{
"git-tree": "f67010904c0f2d7a1d79a647ea928aece3e66750",
"version-date": "2021-10-26",

9
versions/a-/asmtk.json Normal file
View File

@ -0,0 +1,9 @@
{
"versions": [
{
"git-tree": "9805dcacbdaa6f23d28fac07d973d22c2d00aec5",
"version-date": "2022-11-06",
"port-version": 0
}
]
}

View File

@ -245,8 +245,12 @@
"port-version": 5
},
"asmjit": {
"baseline": "2021-10-26",
"port-version": 1
"baseline": "2022-11-06",
"port-version": 0
},
"asmtk": {
"baseline": "2022-11-06",
"port-version": 0
},
"assimp": {
"baseline": "5.2.5",
@ -2429,8 +2433,8 @@
"port-version": 0
},
"fbgemm": {
"baseline": "2021-03-18",
"port-version": 4
"baseline": "0.4.1",
"port-version": 0
},
"fbthrift": {
"baseline": "2022.03.21.00",
@ -6217,7 +6221,7 @@
"port-version": 11
},
"polyhook2": {
"baseline": "2022-03-01",
"baseline": "2023-02-24",
"port-version": 0
},
"polymorphic-value": {

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "e19b797fb42fad6dae0f9aca0890ddc62535800f",
"version": "0.4.1",
"port-version": 0
},
{
"git-tree": "e3afaf099d4759d2d2a57caccb7d54ca2d5b2359",
"version-date": "2021-03-18",

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "61f26f962dfbb071aeb0f22c4cfe15e100c0524c",
"version-date": "2023-02-24",
"port-version": 0
},
{
"git-tree": "bd2324e09d967fab5a098f0c2d42682abf5b4113",
"version-date": "2022-03-01",