diff options
Diffstat (limited to 'vcpkg/ports/chipmunk')
| -rw-r--r-- | vcpkg/ports/chipmunk/export-targets.patch | 40 | ||||
| -rw-r--r-- | vcpkg/ports/chipmunk/portfile.cmake | 39 | ||||
| -rw-r--r-- | vcpkg/ports/chipmunk/vcpkg.json | 19 |
3 files changed, 98 insertions, 0 deletions
diff --git a/vcpkg/ports/chipmunk/export-targets.patch b/vcpkg/ports/chipmunk/export-targets.patch new file mode 100644 index 0000000..de88e49 --- /dev/null +++ b/vcpkg/ports/chipmunk/export-targets.patch @@ -0,0 +1,40 @@ +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index 34882d1..d47c303 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -31,7 +31,9 @@ if(BUILD_SHARED) + # need to explicitly link to the math library because the CMake/Android toolchains may not do it automatically + target_link_libraries(chipmunk m) + endif(ANDROID OR UNIX) +- install(TARGETS chipmunk RUNTIME DESTINATION ${BIN_INSTALL_DIR} ++ target_include_directories(chipmunk INTERFACE $<INSTALL_INTERFACE:include>) ++ install(TARGETS chipmunk EXPORT unofficial-chipmunk-config ++ RUNTIME DESTINATION ${BIN_INSTALL_DIR} + LIBRARY DESTINATION ${LIB_INSTALL_DIR} + ARCHIVE DESTINATION ${LIB_INSTALL_DIR}) + endif(BUILD_SHARED) +@@ -46,9 +48,12 @@ if(BUILD_STATIC) + set_target_properties(chipmunk_static PROPERTIES LINKER_LANGUAGE CXX) + endif(MSVC) + # Sets chipmunk_static to output "libchipmunk.a" not "libchipmunk_static.a" +- set_target_properties(chipmunk_static PROPERTIES OUTPUT_NAME chipmunk) ++ set_target_properties(chipmunk_static PROPERTIES OUTPUT_NAME chipmunk EXPORT_NAME chipmunk) ++ target_include_directories(chipmunk_static INTERFACE $<INSTALL_INTERFACE:include>) + if(INSTALL_STATIC) +- install(TARGETS chipmunk_static ARCHIVE DESTINATION ${LIB_INSTALL_DIR}) ++ install(TARGETS chipmunk_static EXPORT unofficial-chipmunk-config ++ LIBRARY DESTINATION ${LIB_INSTALL_DIR} ++ ARCHIVE DESTINATION ${LIB_INSTALL_DIR}) + endif(INSTALL_STATIC) + endif(BUILD_STATIC) + +@@ -57,3 +62,9 @@ if(BUILD_SHARED OR INSTALL_STATIC) + install(FILES ${chipmunk_public_header} DESTINATION include/chipmunk) + install(FILES ${chipmunk_constraint_header} DESTINATION include/chipmunk/constraints) + endif(BUILD_SHARED OR INSTALL_STATIC) ++ ++install(EXPORT unofficial-chipmunk-config ++ FILE unofficial-chipmunk-config.cmake ++ NAMESPACE unofficial::chipmunk:: ++ DESTINATION share/unofficial-chipmunk ++) diff --git a/vcpkg/ports/chipmunk/portfile.cmake b/vcpkg/ports/chipmunk/portfile.cmake new file mode 100644 index 0000000..727ad21 --- /dev/null +++ b/vcpkg/ports/chipmunk/portfile.cmake @@ -0,0 +1,39 @@ +vcpkg_download_distfile( + SYSCTL_REMOVED_PATCH + URLS https://github.com/slembcke/Chipmunk2D/commit/9a051e6fb970c7afe09ce2d564c163b81df050a8.patch?full_index=1 + SHA512 54ec8766529d301ea35e8e0e7f7e9803101454d0f3655f7be87b6c81414a71e6fd269c14cf1d89902eebea78bb20526b0e4da4c53cf660d169ebabe46dadd059 + FILENAME 9a051e6fb970c7afe09ce2d564c163b81df050a8.patch +) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO slembcke/Chipmunk2D + REF "Chipmunk-${VERSION}" + SHA512 edd16544a572c8f7654c99d6420aefe2f73ce2630f3e2e969f17b4980a8ea4044b5738f4a3cefbe0edd7bb4cd039a70748773b48cd59df12a09123eca9f451e4 + HEAD_REF master + PATCHES + "${SYSCTL_REMOVED_PATCH}" + export-targets.patch +) + +string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" KEYSTONE_BUILD_STATIC) +string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" KEYSTONE_BUILD_SHARED) + +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" + OPTIONS + -DBUILD_DEMOS=OFF + -DBUILD_SHARED=${KEYSTONE_BUILD_SHARED} + -DBUILD_STATIC=${KEYSTONE_BUILD_STATIC} + -DINSTALL_STATIC=${KEYSTONE_BUILD_STATIC} +) + +vcpkg_cmake_install() + +if (NOT VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL debug) + file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") +endif() + +vcpkg_cmake_config_fixup(PACKAGE_NAME unofficial-chipmunk) + +vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE.txt") diff --git a/vcpkg/ports/chipmunk/vcpkg.json b/vcpkg/ports/chipmunk/vcpkg.json new file mode 100644 index 0000000..5877bd2 --- /dev/null +++ b/vcpkg/ports/chipmunk/vcpkg.json @@ -0,0 +1,19 @@ +{ + "name": "chipmunk", + "version": "7.0.3", + "port-version": 7, + "description": "A fast and lightweight 2D game physics library.", + "homepage": "https://github.com/slembcke/Chipmunk2D", + "license": "MIT", + "supports": "!(arm & !arm64 & android)", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] +} |