mirror of https://github.com/microsoft/vcpkg.git
72 lines
2.6 KiB
Diff
72 lines
2.6 KiB
Diff
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
|
index e0d87f8..ae08c37 100644
|
|
--- a/CMakeLists.txt
|
|
+++ b/CMakeLists.txt
|
|
@@ -3,7 +3,7 @@ CMAKE_MINIMUM_REQUIRED(VERSION 2.8.12 FATAL_ERROR)
|
|
INCLUDE(GNUInstallDirs)
|
|
|
|
# ---[ Project
|
|
-PROJECT(FP16 C CXX)
|
|
+PROJECT(fp16 C CXX)
|
|
|
|
# ---[ Options.
|
|
OPTION(FP16_BUILD_TESTS "Build FP16 unit tests" ON)
|
|
@@ -33,7 +33,10 @@ SET(CONFU_DEPENDENCIES_SOURCE_DIR ${CMAKE_SOURCE_DIR}/deps
|
|
SET(CONFU_DEPENDENCIES_BINARY_DIR ${CMAKE_BINARY_DIR}/deps
|
|
CACHE PATH "Confu-style dependencies binary directory")
|
|
|
|
-IF(NOT DEFINED PSIMD_SOURCE_DIR)
|
|
+find_package(unofficial-psimd CONFIG REQUIRED)
|
|
+add_library(psimd ALIAS unofficial::psimd::psimd)
|
|
+
|
|
+IF(FALSE)
|
|
MESSAGE(STATUS "Downloading PSimd to ${CONFU_DEPENDENCIES_SOURCE_DIR}/psimd (define PSIMD_SOURCE_DIR to avoid it)")
|
|
CONFIGURE_FILE(cmake/DownloadPSimd.cmake "${CONFU_DEPENDENCIES_BINARY_DIR}/psimd-download/CMakeLists.txt")
|
|
EXECUTE_PROCESS(COMMAND "${CMAKE_COMMAND}" -G "${CMAKE_GENERATOR}" .
|
|
@@ -77,7 +80,7 @@ ENDIF()
|
|
TARGET_INCLUDE_DIRECTORIES(fp16 INTERFACE
|
|
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
|
|
$<INSTALL_INTERFACE:include>)
|
|
-
|
|
+TARGET_LINK_LIBRARIES(fp16 INTERFACE psimd)
|
|
INSTALL(FILES include/fp16.h
|
|
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
|
INSTALL(FILES
|
|
@@ -89,6 +92,23 @@ INSTALL(FILES
|
|
include/fp16/avx2.py
|
|
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/fp16)
|
|
|
|
+
|
|
+INSTALL(TARGETS fp16
|
|
+ EXPORT unofficial-fp16-config-targets
|
|
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
|
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
|
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
|
+ PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
|
+ INSTALL(EXPORT unofficial-fp16-config-targets NAMESPACE unofficial::fp16::
|
|
+ FILE unofficial-fp16-config-targets.cmake
|
|
+ DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/unofficial-fp16) # share/fp16
|
|
+
|
|
+include(CMakePackageConfigHelpers)
|
|
+configure_package_config_file(${CMAKE_CURRENT_SOURCE_DIR}/Config.cmake.in "${CMAKE_CURRENT_BINARY_DIR}/unofficial-fp16-config.cmake" INSTALL_DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/unofficial-fp16)
|
|
+install(FILES ${CMAKE_CURRENT_BINARY_DIR}/unofficial-fp16-config.cmake DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/unofficial-fp16)
|
|
+
|
|
+
|
|
+
|
|
# ---[ Configure psimd
|
|
IF(NOT TARGET psimd)
|
|
ADD_SUBDIRECTORY(
|
|
diff --git a/Config.cmake.in b/Config.cmake.in
|
|
new file mode 100644
|
|
index 0000000..4523150
|
|
--- /dev/null
|
|
+++ b/Config.cmake.in
|
|
@@ -0,0 +1,7 @@
|
|
+@PACKAGE_INIT@
|
|
+
|
|
+include(CMakeFindDependencyMacro)
|
|
+find_dependency(unofficial-psimd)
|
|
+
|
|
+
|
|
+include ( "${CMAKE_CURRENT_LIST_DIR}/unofficial-fp16-config-targets.cmake" )
|