mirror of https://github.com/microsoft/vcpkg.git
[fbgemm] Update to 1.0.0 (#46622)
Co-authored-by: Steve <steve@imagus.au> Co-authored-by: Steve Brain <sbrain@vixvizion.com>
This commit is contained in:
parent
1441f2ae63
commit
0247d9414d
|
|
@ -1,57 +1,54 @@
|
|||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 58dcb9a..513a152 100644
|
||||
index 0243f68..ccf7331 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -6,7 +6,6 @@ list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules")
|
||||
@@ -94,13 +94,12 @@ project(fbgemm VERSION 0.1 LANGUAGES CXX C)
|
||||
include(GNUInstallDirs)
|
||||
|
||||
# function to extract filelists from defs.bzl file
|
||||
# Load Python
|
||||
-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
|
||||
-
|
||||
-set(FBGEMM_LIBRARY_TYPE "default"
|
||||
- CACHE STRING
|
||||
- "Type of library (shared, static, or default) to build")
|
||||
+if(BUILD_SHARED_LIBS)
|
||||
+set(FBGEMM_LIBRARY_TYPE "shared")
|
||||
+else()
|
||||
+set(FBGEMM_LIBRARY_TYPE "static")
|
||||
+endif()
|
||||
|
||||
-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
|
||||
@@ -178,7 +177,7 @@ add_dependencies(fbgemm_autovec defs.bzl)
|
||||
# 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)
|
||||
if(FBGEMM_LIBRARY_TYPE STREQUAL "static")
|
||||
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}")
|
||||
@@ -199,7 +198,6 @@ if(MSVC)
|
||||
else(MSVC)
|
||||
string(APPEND CMAKE_CXX_FLAGS " -Wall")
|
||||
string(APPEND CMAKE_CXX_FLAGS " -Wextra")
|
||||
- string(APPEND CMAKE_CXX_FLAGS " -Werror")
|
||||
string(APPEND CMAKE_CXX_FLAGS " -Wno-deprecated-declarations")
|
||||
string(APPEND CMAKE_CXX_FLAGS " -Wunknown-pragmas")
|
||||
string(APPEND CMAKE_CXX_FLAGS " -Wimplicit-fallthrough")
|
||||
@@ -247,7 +245,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.
|
||||
# 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)
|
||||
set(ASMJIT_SRC_DIR "${FBGEMM_SOURCE_DIR}/external/asmjit"
|
||||
@@ -280,7 +279,8 @@ if(NOT TARGET asmjit)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
|
|
@ -60,8 +57,8 @@ index 58dcb9a..513a152 100644
|
|||
+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()
|
||||
set(CPUINFO_SOURCE_DIR "${FBGEMM_SOURCE_DIR}/external/cpuinfo"
|
||||
@@ -301,26 +301,26 @@ endif()
|
||||
target_include_directories(fbgemm_generic BEFORE
|
||||
PUBLIC $<BUILD_INTERFACE:${FBGEMM_SOURCE_DIR}>
|
||||
PUBLIC $<BUILD_INTERFACE:${FBGEMM_SOURCE_DIR}/include>
|
||||
|
|
@ -83,60 +80,47 @@ index 58dcb9a..513a152 100644
|
|||
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)
|
||||
|
||||
target_include_directories(fbgemm_autovec 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_autovec PUBLIC asmjit::asmjit cpuinfo::cpuinfo)
|
||||
|
||||
if(FBGEMM_LIBRARY_TYPE STREQUAL "default")
|
||||
add_library(fbgemm
|
||||
@@ -338,6 +338,7 @@ elseif(FBGEMM_LIBRARY_TYPE STREQUAL "shared")
|
||||
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
|
||||
set_property(TARGET fbgemm_autovec 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>
|
||||
@@ -364,15 +365,10 @@ 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>
|
||||
-target_link_libraries(fbgemm
|
||||
- $<BUILD_INTERFACE:asmjit>
|
||||
- $<BUILD_INTERFACE:cpuinfo>)
|
||||
-add_dependencies(fbgemm asmjit 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
|
||||
if(OpenMP_FOUND)
|
||||
- target_link_libraries(fbgemm OpenMP::OpenMP_CXX)
|
||||
+ target_link_libraries(fbgemm PUBLIC OpenMP::OpenMP_CXX)
|
||||
endif()
|
||||
|
||||
install(
|
||||
@@ -391,7 +387,7 @@ install(
|
||||
DESTINATION share/cmake/fbgemm
|
||||
FILE fbgemmLibraryConfig.cmake)
|
||||
|
||||
-if(MSVC)
|
||||
|
|
|
|||
|
|
@ -4,8 +4,8 @@ vcpkg_find_acquire_program(PYTHON3)
|
|||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO pytorch/fbgemm
|
||||
REF 64833b5185893cbc71ea80c9b01443f762b5cba4
|
||||
SHA512 f256177f22d3a4abd9c861bafd96e12df33e7604416c26ac06c9e480fd5f1e0b4149132b3216790704ebf73d47a7277235f058d58f0ecafa8de23360022f202d
|
||||
REF 73a64e75ff31be7ece6f68929ee5682b0bf9eb10
|
||||
SHA512 2757d986a977d14bd32d482452627b55aae216f77a262b2b1b88a643a2977c6c27c5a99ee91b7a7bdbb66248239ecc1a57d1953251049d787317b6355369af26
|
||||
PATCHES
|
||||
fix-cmakelists.patch
|
||||
)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
{
|
||||
"name": "fbgemm",
|
||||
"version": "0.4.1",
|
||||
"port-version": 1,
|
||||
"version": "1.0.0",
|
||||
"description": "FB (Facebook) + GEMM (General Matrix-Matrix Multiplication)",
|
||||
"homepage": "https://code.fb.com/ml-applications/fbgemm/",
|
||||
"license": "BSD-3-Clause",
|
||||
|
|
|
|||
|
|
@ -291,8 +291,6 @@ elfio:arm-neon-android=fail
|
|||
elfio:arm64-android=fail
|
||||
elfio:x64-android=fail
|
||||
faker-cxx:x64-linux=fail # requires gcc13 or later
|
||||
# clang rejects variable length arrays
|
||||
fbgemm:x64-android=fail
|
||||
# variable length arrays in C++ are a Clang extension
|
||||
fbbgemmerror:arm-neon-android=fail
|
||||
fbbgemmerror:arm64-android=fail
|
||||
|
|
|
|||
|
|
@ -2845,8 +2845,8 @@
|
|||
"port-version": 0
|
||||
},
|
||||
"fbgemm": {
|
||||
"baseline": "0.4.1",
|
||||
"port-version": 1
|
||||
"baseline": "1.0.0",
|
||||
"port-version": 0
|
||||
},
|
||||
"fbthrift": {
|
||||
"baseline": "2025.05.19.00",
|
||||
|
|
|
|||
|
|
@ -1,5 +1,10 @@
|
|||
{
|
||||
"versions": [
|
||||
{
|
||||
"git-tree": "e055c95b9158e871ada9e49d4dfc92c618f995f2",
|
||||
"version": "1.0.0",
|
||||
"port-version": 0
|
||||
},
|
||||
{
|
||||
"git-tree": "27b4707b88bb2ed527d372438c406d1a97323229",
|
||||
"version": "0.4.1",
|
||||
|
|
|
|||
Loading…
Reference in New Issue