[sdl2pp] Update to 0.18.1 (#49288)

This commit is contained in:
SunBlack 2026-02-17 19:49:22 +01:00 committed by GitHub
parent 1004d5d0f8
commit 5d552d3062
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
8 changed files with 42 additions and 128 deletions

View File

@ -1,78 +1,31 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index cdfd2a6..dc08748 100644
index 5b9ecf5..4ffea49 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -23,10 +23,27 @@ ENDIF(CMAKE_SOURCE_DIR STREQUAL PROJECT_SOURCE_DIR)
@@ -39,7 +39,7 @@ endif()
# depends
FIND_PACKAGE(SDL2 REQUIRED)
-SET(SDL2_ALL_INCLUDE_DIRS ${SDL2_INCLUDE_DIR})
-SET(SDL2_ALL_LIBRARIES ${SDL2_LIBRARY})
+SET(SDL2_ALL_INCLUDE_DIRS "")
+IF(TARGET SDL2::SDL2)
+ SET(SDL2_ALL_LIBRARIES SDL2::SDL2)
+ELSE()
+ SET(SDL2_ALL_LIBRARIES SDL2::SDL2-static)
+ENDIF()
SET(SDL2_ALL_PKGCONFIG_MODULES sdl2)
-SET(SDL2PP_EXTRA_LIBRARIES ${SDL2MAIN_LIBRARY})
+if(TARGET SDL2::SDL2main)
+set(SDL2PP_EXTRA_LIBRARIES SDL2::SDL2main)
+get_target_property(SDL2_MAIN_LIBRARY_DEBUG SDL2::SDL2main IMPORTED_LOCATION_DEBUG)
+get_target_property(SDL2_MAIN_LIBRARY_RELEASE SDL2::SDL2main IMPORTED_LOCATION_RELEASE)
+get_target_property(SDL2_MAIN_LIBRARY_GENERAL SDL2::SDL2main IMPORTED_LOCATION)
+set(SDL2MAIN_LIBRARY "")
+if(CMAKE_BUILD_TYPE STREQUAL "Debug" AND SDL2_MAIN_LIBRARY_DEBUG)
+set(SDL2MAIN_LIBRARY "${SDL2_MAIN_LIBRARY_DEBUG}")
+elseif(SDL2_MAIN_LIBRARY_RELEASE)
+set(SDL2MAIN_LIBRARY "${SDL2_MAIN_LIBRARY_RELEASE}")
+elseif(SDL2_MAIN_LIBRARY_GENERAL)
+set(SDL2MAIN_LIBRARY "${SDL2_MAIN_LIBRARY_GENERAL}")
+endif()
+endif()
SET(SDL2PP_EXTRA_PKGCONFIG_LIBRARIES ${SDL2MAIN_LIBRARY})
if(SDL2PP_WITH_IMAGE)
find_package(SDL2_image REQUIRED)
- set(SDL2_ALL_LIBRARIES ${SDL2_ALL_LIBRARIES} SDL2_image::SDL2_image)
+ set(SDL2_ALL_LIBRARIES ${SDL2_ALL_LIBRARIES} $<IF:$<TARGET_EXISTS:SDL2_image::SDL2_image>,SDL2_image::SDL2_image,SDL2_image::SDL2_image-static>)
set(SDL2_ALL_PKGCONFIG_MODULES "${SDL2_ALL_PKGCONFIG_MODULES} SDL2_image")
else()
message(STATUS "SDL2_image support disabled")
@@ -47,7 +47,7 @@ endif()
IF(MINGW)
@@ -36,18 +40,16 @@ IF(MINGW)
ENDIF(MINGW)
if(SDL2PP_WITH_TTF)
find_package(SDL2_ttf REQUIRED)
- set(SDL2_ALL_LIBRARIES ${SDL2_ALL_LIBRARIES} SDL2_ttf::SDL2_ttf)
+ set(SDL2_ALL_LIBRARIES ${SDL2_ALL_LIBRARIES} $<IF:$<TARGET_EXISTS:SDL2_ttf::SDL2_ttf>,SDL2_ttf::SDL2_ttf,SDL2_ttf::SDL2_ttf-static>)
set(SDL2_ALL_PKGCONFIG_MODULES "${SDL2_ALL_PKGCONFIG_MODULES} SDL2_ttf")
else()
message(STATUS "SDL2_ttf support disabled")
@@ -55,7 +55,7 @@ endif()
IF(SDL2PP_WITH_IMAGE)
FIND_PACKAGE(SDL2_image REQUIRED)
- SET(SDL2_ALL_INCLUDE_DIRS ${SDL2_ALL_INCLUDE_DIRS} ${SDL2_IMAGE_INCLUDE_DIR})
- SET(SDL2_ALL_LIBRARIES ${SDL2_ALL_LIBRARIES} ${SDL2_IMAGE_LIBRARY})
+ SET(SDL2_ALL_LIBRARIES ${SDL2_ALL_LIBRARIES} $<IF:$<TARGET_EXISTS:SDL2_image::SDL2_image>,SDL2_image::SDL2_image,SDL2_image::SDL2_image-static>)
SET(SDL2_ALL_PKGCONFIG_MODULES "${SDL2_ALL_PKGCONFIG_MODULES} SDL2_image")
ELSE(SDL2PP_WITH_IMAGE)
MESSAGE(STATUS "SDL2_image support disabled")
ENDIF(SDL2PP_WITH_IMAGE)
IF(SDL2PP_WITH_TTF)
FIND_PACKAGE(SDL2_ttf REQUIRED)
- SET(SDL2_ALL_INCLUDE_DIRS ${SDL2_ALL_INCLUDE_DIRS} ${SDL2_TTF_INCLUDE_DIR})
- SET(SDL2_ALL_LIBRARIES ${SDL2_ALL_LIBRARIES} ${SDL2_TTF_LIBRARY})
+ SET(SDL2_ALL_LIBRARIES ${SDL2_ALL_LIBRARIES} $<IF:$<TARGET_EXISTS:SDL2_ttf::SDL2_ttf>,SDL2_ttf::SDL2_ttf,SDL2_ttf::SDL2_ttf-static>)
SET(SDL2_ALL_PKGCONFIG_MODULES "${SDL2_ALL_PKGCONFIG_MODULES} SDL2_ttf")
ELSE(SDL2PP_WITH_TTF)
MESSAGE(STATUS "SDL2_ttf support disabled")
@@ -56,7 +60,7 @@ ENDIF(SDL2PP_WITH_TTF)
IF(SDL2PP_WITH_MIXER)
FIND_PACKAGE(SDL2_mixer REQUIRED)
SET(SDL2_ALL_INCLUDE_DIRS ${SDL2_ALL_INCLUDE_DIRS} ${SDL2_MIXER_INCLUDE_DIR})
- SET(SDL2_ALL_LIBRARIES ${SDL2_ALL_LIBRARIES} ${SDL2_MIXER_LIBRARY})
+ SET(SDL2_ALL_LIBRARIES ${SDL2_ALL_LIBRARIES} $<IF:$<TARGET_EXISTS:SDL2_mixer::SDL2_mixer>,SDL2_mixer::SDL2_mixer,SDL2_mixer::SDL2_mixer-static>)
SET(SDL2_ALL_PKGCONFIG_MODULES "${SDL2_ALL_PKGCONFIG_MODULES} SDL2_mixer")
ELSE(SDL2PP_WITH_MIXER)
MESSAGE(STATUS "SDL2_mixer support disabled")
@@ -200,10 +203,10 @@ IF(CMAKE_SOURCE_DIR STREQUAL PROJECT_SOURCE_DIR)
OPTION(SDL2PP_STATIC "Build static library instead of shared one" OFF)
# library
- IF(SDL2PP_STATIC)
+ IF(0)
ADD_LIBRARY(SDL2pp STATIC ${LIBRARY_SOURCES} ${LIBRARY_HEADERS})
ELSE(SDL2PP_STATIC)
- ADD_LIBRARY(SDL2pp SHARED ${LIBRARY_SOURCES} ${LIBRARY_HEADERS})
+ ADD_LIBRARY(SDL2pp ${LIBRARY_SOURCES} ${LIBRARY_HEADERS})
TARGET_LINK_LIBRARIES(SDL2pp ${SDL2_ALL_LIBRARIES})
SET_TARGET_PROPERTIES(SDL2pp PROPERTIES VERSION 8.3.0 SOVERSION 8)
ENDIF(SDL2PP_STATIC)
if(SDL2PP_WITH_MIXER)
find_package(SDL2_mixer REQUIRED)
- set(SDL2_ALL_LIBRARIES ${SDL2_ALL_LIBRARIES} SDL2_mixer::SDL2_mixer)
+ set(SDL2_ALL_LIBRARIES ${SDL2_ALL_LIBRARIES} $<IF:$<TARGET_EXISTS:SDL2_mixer::SDL2_mixer>,SDL2_mixer::SDL2_mixer,SDL2_mixer::SDL2_mixer-static>)
set(SDL2_ALL_PKGCONFIG_MODULES "${SDL2_ALL_PKGCONFIG_MODULES} SDL2_mixer")
else()
message(STATUS "SDL2_mixer support disabled")

View File

@ -1,23 +0,0 @@
diff --git a/FindSDL2PP.cmake.in b/FindSDL2PP.cmake.in
index 344d2b2..06d6278 100644
--- a/FindSDL2PP.cmake.in
+++ b/FindSDL2PP.cmake.in
@@ -6,6 +6,18 @@
# SDL2PP_INCLUDE_DIRS
# SDL2PP_LIBRARIES
+include(CMakeFindDependencyMacro)
+find_dependency(SDL2 CONFIG)
+IF(@SDL2PP_WITH_IMAGE@)
+ find_dependency(SDL2_image CONFIG)
+ENDIF()
+IF(@SDL2PP_WITH_TTF@)
+ find_dependency(SDL2_ttf CONFIG)
+ENDIF()
+IF(@SDL2PP_WITH_MIXER@)
+ find_dependency(SDL2_mixer CONFIG)
+ENDIF()
+
IF(SDL2PP_INCLUDE_DIR AND SDL2PP_LIBRARY)
# in cache already
SET(SDL2PP_FIND_QUIETLY TRUE)

View File

@ -1,12 +1,11 @@
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO libSDL2pp/libSDL2pp
REF ${VERSION}
SHA512 3682281432ce9dec0dbc7c786496564c906db9933138e1f2b881f93b5602a7170e06e67e87d35a9e5944ef80f6e13b9835e33209c52869f0ea2bc224f639a749
REF "${VERSION}"
SHA512 655412c93df5e6207064a07328785add4e7700a656295f03f0f2df4898ce62bd259340de28bf2a79db4fce765d2000ce6a43312dbe524f2b2b909a2dbf324859
HEAD_REF master
PATCHES
fix-dependencies.patch
fix-usage.patch
)
vcpkg_check_features(
@ -17,34 +16,21 @@ vcpkg_check_features(
sdl2-ttf SDL2PP_WITH_TTF
)
file(REMOVE "${SOURCE_PATH}/cmake/FindSDL2.cmake"
"${SOURCE_PATH}/cmake/FindSDL2_image.cmake"
"${SOURCE_PATH}/cmake/FindSDL2_mixer.cmake"
"${SOURCE_PATH}/cmake/FindSDL2_ttf.cmake"
)
string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" SDL2PP_STATIC)
vcpkg_cmake_configure(
SOURCE_PATH "${SOURCE_PATH}"
OPTIONS
${FEATURE_OPTIONS}
-DCMAKEMODDIR=share/${PORT}
-DSDL2PP_WITH_EXAMPLES=OFF
-DSDL2PP_WITH_TESTS=OFF
-DSDL2PP_STATIC=${SDL2PP_STATIC}
${FEATURE_OPTIONS}
)
vcpkg_cmake_install()
vcpkg_cmake_config_fixup(CONFIG_PATH "lib/cmake")
vcpkg_fixup_pkgconfig()
vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/share/${PORT}/FindSDL2PP.cmake" "HINTS \"${CURRENT_PACKAGES_DIR}/include\"" "")
vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/share/${PORT}/FindSDL2PP.cmake" "HINTS \"${CURRENT_PACKAGES_DIR}/lib\"" "")
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share")
file(COPY "${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
file(COPY "${CMAKE_CURRENT_LIST_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
# Handle copyright
vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/COPYING.txt")

View File

@ -1,5 +0,0 @@
The package sdl2pp provides CMake variables:
find_package(SDL2PP REQUIRED)
target_include_directories(main PRIVATE ${SDL2PP_INCLUDE_DIRS})
target_link_libraries(main PRIVATE ${SDL2PP_LIBRARIES})

View File

@ -1,5 +0,0 @@
set(Z_VCPKG_SDL2PP_PREV_MODULE_PATH "${CMAKE_MODULE_PATH}")
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}")
_find_package(${ARGS})
set(CMAKE_MODULE_PATH "${Z_VCPKG_SDL2PP_PREV_MODULE_PATH}")
unset(Z_VCPKG_SDL2PP_PREV_MODULE_PATH)

View File

@ -1,9 +1,8 @@
{
"name": "sdl2pp",
"version": "0.16.1",
"port-version": 12,
"version": "0.18.1",
"description": "C++11 bindings/wrapper for SDL2",
"homepage": "https://sdl2pp.amdmi3.ru",
"homepage": "https://github.com/libSDL2pp/libSDL2pp",
"license": "Zlib",
"dependencies": [
{
@ -13,6 +12,10 @@
{
"name": "vcpkg-cmake",
"host": true
},
{
"name": "vcpkg-cmake-config",
"host": true
}
],
"features": {

View File

@ -8937,8 +8937,8 @@
"port-version": 0
},
"sdl2pp": {
"baseline": "0.16.1",
"port-version": 12
"baseline": "0.18.1",
"port-version": 0
},
"sdl3": {
"baseline": "3.4.0",

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "60f965a83899eb25c6416baccf409e7a4d02428a",
"version": "0.18.1",
"port-version": 0
},
{
"git-tree": "7d7a7ab49f374da1e64de4f3ce02611bcb598bdb",
"version": "0.16.1",