mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-12-06 02:49:08 +08:00
ed863b163c
* [EAThread][EASTL] Added EAThread and modified EASTL EABase has now also been seperated from EASTL. EASTL now copies CommonCppFlags.cmake as it is used by EAThread. * Fix EABase * Fix EABASE include for EASTL * Improve EASTL Still need to fix The /debug/lib/cmake folder should be merged with /lib/cmake into /share/eastl Found 3 error(s). Please correct the portfile: E:\vcpkg\ports\eastl\portfile.cmake -- Performing post-build validation done Error: Building package eastl:x64-windows-static failed with: POST_BUILD_CHECKS_FAILED Please ensure you're using the latest portfiles with `.\vcpkg update`, then submit an issue at https://github.com/Microsoft/vcpkg/issues including: Package: eastl:x64-windows-static Vcpkg version: 2019.09.12-nohash * Base pass one Thread * Fix config errors and add `vcpkg_fixup_cmake_targets` * Add required changes for fails * x86-windows should also fail * Revert adding `vcpkg_fail_port_install(ON_TARGET "Windows" ...)` * Remove `eastl:arm64-windows=fail` from ci.baseline.txt * Merge CONTROL descriptions into one line
76 lines
3.0 KiB
Diff
76 lines
3.0 KiB
Diff
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
|
index 34fc37a..60d201a 100644
|
|
--- a/CMakeLists.txt
|
|
+++ b/CMakeLists.txt
|
|
@@ -4,15 +4,21 @@
|
|
cmake_minimum_required(VERSION 3.1)
|
|
project(EAThread CXX)
|
|
|
|
+include(GNUInstallDirs)
|
|
+include(CMakePackageConfigHelpers)
|
|
+
|
|
#-------------------------------------------------------------------------------------------
|
|
# Options
|
|
#-------------------------------------------------------------------------------------------
|
|
option(EATHREAD_BUILD_TESTS "Enable generation of build files for tests" OFF)
|
|
|
|
+find_package(EABase CONFIG REQUIRED)
|
|
+find_package(EASTL CONFIG REQUIRED)
|
|
+
|
|
#-------------------------------------------------------------------------------------------
|
|
# Compiler Flags
|
|
#-------------------------------------------------------------------------------------------
|
|
-set (CMAKE_MODULE_PATH "${CMAKE_MODULE_PATH};${CMAKE_CURRENT_SOURCE_DIR}/test/packages/EASTL/scripts/CMake")
|
|
+set (CMAKE_MODULE_PATH "${CMAKE_MODULE_PATH};${_VCPKG_ROOT_DIR}/installed/${VCPKG_TARGET_TRIPLET}/share/eastl")
|
|
include(CommonCppFlags)
|
|
|
|
#-------------------------------------------------------------------------------------------
|
|
@@ -34,10 +40,45 @@ add_definitions(-D_CRT_SECURE_NO_WARNINGS)
|
|
#-------------------------------------------------------------------------------------------
|
|
# Export Include Directories
|
|
#-------------------------------------------------------------------------------------------
|
|
-target_include_directories(EAThread PUBLIC include)
|
|
+target_include_directories(EAThread PUBLIC
|
|
+ $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/include>
|
|
+ $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
|
|
+ )
|
|
|
|
#-------------------------------------------------------------------------------------------
|
|
# Package Dependencies
|
|
#-------------------------------------------------------------------------------------------
|
|
-target_link_libraries(EAThread EABase)
|
|
+target_link_libraries(EAThread PUBLIC EABase)
|
|
+
|
|
+# create and install an export set for eabase target as EABase::EABase
|
|
+set(EAThread_CMAKE_CONFIG_DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/EAThread")
|
|
+
|
|
+configure_package_config_file(
|
|
+ EAThreadConfig.cmake.in
|
|
+ ${CMAKE_CURRENT_BINARY_DIR}/EAThreadConfig.cmake
|
|
+ INSTALL_DESTINATION ${EAThread_CMAKE_CONFIG_DESTINATION}
|
|
+)
|
|
+
|
|
+# create and install an export set for Terra target as Terra
|
|
+install(
|
|
+ TARGETS EAThread EXPORT EAThreadTargets
|
|
+ DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
|
+)
|
|
+
|
|
+install(EXPORT EAThreadTargets DESTINATION ${EAThread_CMAKE_CONFIG_DESTINATION})
|
|
+
|
|
+write_basic_package_version_file(
|
|
+ "${CMAKE_CURRENT_BINARY_DIR}/EAThreadConfigVersion.cmake"
|
|
+ VERSION 3.16.01
|
|
+ COMPATIBILITY SameMajorVersion
|
|
+)
|
|
+
|
|
+install(TARGETS EAThread LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}")
|
|
+install(DIRECTORY "include/" DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}")
|
|
|
|
+install(
|
|
+ FILES
|
|
+ "${CMAKE_CURRENT_BINARY_DIR}/EAThreadConfig.cmake"
|
|
+ "${CMAKE_CURRENT_BINARY_DIR}/EAThreadConfigVersion.cmake"
|
|
+ DESTINATION ${EAThread_CMAKE_CONFIG_DESTINATION}
|
|
+)
|