vcpkg/ports/joltphysics/fix-export.diff
Lily Wang 294c7e2240
[joltphysics] Update to 4.0.0 (#34975)
* [joltphysics] Update to latest commit

* update version

* update to 4.0.0

* update version

* Update joltphysics.json
2023-11-10 11:25:49 -08:00

78 lines
3.6 KiB
Diff

diff --git a/Build/CMakeLists.txt b/Build/CMakeLists.txt
index cc4cf1d..330b987 100644
--- a/Build/CMakeLists.txt
+++ b/Build/CMakeLists.txt
@@ -100,8 +100,8 @@ if (("${CMAKE_SYSTEM_NAME}" STREQUAL "Windows" OR "${CMAKE_SYSTEM_NAME}" STREQUA
endif()
# Set compiler flags for various configurations
- set(CMAKE_CXX_FLAGS_DEBUG "/GS /Od /Ob0 /RTC1")
- set(CMAKE_CXX_FLAGS_RELEASE "/GS- /Gy /O2 /Oi /Ot")
+ set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /GS /Od /Ob0 /RTC1")
+ set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /GS- /Gy /O2 /Oi /Ot")
set(CMAKE_CXX_FLAGS_DISTRIBUTION "/GS- /Gy /O2 /Oi /Ot")
set(CMAKE_CXX_FLAGS_RELEASEASAN "-fsanitize=address /Od")
set(CMAKE_CXX_FLAGS_RELEASEUBSAN "-fsanitize=undefined,implicit-conversion,float-divide-by-zero,local-bounds -fno-sanitize-recover=all")
@@ -160,8 +160,8 @@ elseif ("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux" OR "${CMAKE_SYSTEM_NAME}" STREQU
endif()
# Set compiler flags for various configurations
- set(CMAKE_CXX_FLAGS_DEBUG "")
- set(CMAKE_CXX_FLAGS_RELEASE "-O3")
+ set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG}")
+ set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O3")
set(CMAKE_CXX_FLAGS_DISTRIBUTION "-O3")
set(CMAKE_CXX_FLAGS_RELEASEASAN "-fsanitize=address")
set(CMAKE_CXX_FLAGS_RELEASEUBSAN "-fsanitize=undefined,implicit-conversion,float-divide-by-zero,local-bounds -fno-sanitize-recover=all")
@@ -205,7 +205,11 @@ if (XCODE)
endif()
# Install Jolt library and includes
-install(TARGETS Jolt DESTINATION lib)
+install(TARGETS Jolt
+ EXPORT unofficial-joltphysics-targets
+ ARCHIVE DESTINATION lib
+ LIBRARY DESTINATION lib
+ RUNTIME DESTINATION bin)
foreach(SRC_FILE ${JOLT_PHYSICS_SRC_FILES})
string(REPLACE ${PHYSICS_REPO_ROOT} "" RELATIVE_SRC_FILE ${SRC_FILE})
get_filename_component(DESTINATION_PATH ${RELATIVE_SRC_FILE} DIRECTORY)
@@ -214,6 +218,17 @@ foreach(SRC_FILE ${JOLT_PHYSICS_SRC_FILES})
endif()
endforeach()
+install(EXPORT unofficial-joltphysics-targets
+ NAMESPACE unofficial::joltphysics::
+ FILE unofficial-joltphysics-targets.cmake
+ DESTINATION share/unofficial-joltphysics
+)
+
+install(FILES
+ unofficial-joltphysics-config.cmake
+ DESTINATION share/unofficial-joltphysics
+)
+
# Check if we're the root CMakeLists.txt, if not we are included by another CMake file and we should disable everything except for the main library
if (CMAKE_CURRENT_SOURCE_DIR STREQUAL CMAKE_SOURCE_DIR)
# Ability to turn ON/OFF individual applications
diff --git a/Jolt/Jolt.cmake b/Jolt/Jolt.cmake
index c0f7099..d447a3f 100644
--- a/Jolt/Jolt.cmake
+++ b/Jolt/Jolt.cmake
@@ -474,10 +474,13 @@ if (BUILD_SHARED_LIBS)
target_compile_definitions(Jolt PRIVATE JPH_BUILD_SHARED_LIBRARY)
endif()
-target_include_directories(Jolt PUBLIC ${PHYSICS_REPO_ROOT})
+target_include_directories(Jolt PUBLIC
+ $<BUILD_INTERFACE:${PHYSICS_REPO_ROOT}>
+ $<INSTALL_INTERFACE:include>
+)
target_precompile_headers(Jolt PRIVATE ${JOLT_PHYSICS_ROOT}/Jolt.h)
target_compile_definitions(Jolt PUBLIC "$<$<CONFIG:Debug>:_DEBUG;JPH_PROFILE_ENABLED;JPH_DEBUG_RENDERER>")
-target_compile_definitions(Jolt PUBLIC "$<$<CONFIG:Release>:NDEBUG;JPH_PROFILE_ENABLED;JPH_DEBUG_RENDERER>")
+target_compile_definitions(Jolt PUBLIC "$<$<CONFIG:Release>:NDEBUG>")
target_compile_definitions(Jolt PUBLIC "$<$<CONFIG:Distribution>:NDEBUG>")
target_compile_definitions(Jolt PUBLIC "$<$<CONFIG:ReleaseASAN>:NDEBUG;JPH_PROFILE_ENABLED;JPH_DISABLE_TEMP_ALLOCATOR;JPH_DISABLE_CUSTOM_ALLOCATOR;JPH_DEBUG_RENDERER>")
target_compile_definitions(Jolt PUBLIC "$<$<CONFIG:ReleaseUBSAN>:NDEBUG;JPH_PROFILE_ENABLED;JPH_DEBUG_RENDERER>")