diff --git a/ports/sdl2-image/0001-sdl2-image-potentially-uninitialized_local-pointer-variable-start.patch b/ports/sdl2-image/0001-sdl2-image-potentially-uninitialized_local-pointer-variable-start.patch deleted file mode 100644 index 897c0aac7c8314..00000000000000 --- a/ports/sdl2-image/0001-sdl2-image-potentially-uninitialized_local-pointer-variable-start.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- a/nanosvg.h -+++ b/nanosvg.h -@@ -2778,7 +2778,7 @@ static void nsvg__content(void* ud, const char* s) - if (p->styleFlag) { - - int state = 0; -- const char* start; -+ const char* start = 0; - while (*s) { - char c = *s; - if (nsvg__isspace(c) || c == '{') { - diff --git a/ports/sdl2-image/CMakeLists.txt b/ports/sdl2-image/CMakeLists.txt deleted file mode 100644 index 70f2797542fd41..00000000000000 --- a/ports/sdl2-image/CMakeLists.txt +++ /dev/null @@ -1,137 +0,0 @@ -cmake_minimum_required(VERSION 2.6) -project(SDL2_image C) - -### configuration ### - -# enable all file formats which are supported natively -set(SUPPORTED_FORMATS BMP GIF LBM PCX PNM TGA XPM XCF XV SVG) - -# enable all file formats which are supported through external dependencies -option(USE_WEBP "Enable support for WebP format" OFF) -option(USE_PNG "Enable support for PNG format" OFF) -option(USE_JPEG "Enable support for JPEG format" OFF) -option(USE_TIFF "Enable support for TIFF format" OFF) - -### implementation ### - -add_library(SDL2_image - IMG.c - IMG_bmp.c - IMG_gif.c - IMG_jpg.c - IMG_lbm.c - IMG_pcx.c - IMG_png.c - IMG_pnm.c - IMG_svg.c - IMG_tga.c - IMG_tif.c - IMG_webp.c - IMG_xcf.c - IMG_xpm.c - IMG_xv.c - IMG_xxx.c - IMG_WIC.c - version.rc - ) - -if (APPLE) - target_sources(SDL2_image PRIVATE - IMG_ImageIO.m - ) - target_compile_options(SDL2_image BEFORE PRIVATE - "-x" "objective-c" - ) - target_link_libraries(SDL2_image PRIVATE - "-framework CoreFoundation" - "-framework CoreGraphics" - "-framework CoreServices" - "-framework Foundation" - "-framework ImageIO" - ) -endif() - -set_target_properties(SDL2_image PROPERTIES DEFINE_SYMBOL DLL_EXPORT) - -foreach(FORMAT ${SUPPORTED_FORMATS}) - add_definitions(-DLOAD_${FORMAT}) -endforeach(FORMAT) - -# SDL -find_path(SDL_INCLUDE_DIR SDL2/SDL.h) -find_package(SDL2 CONFIG REQUIRED) - -include_directories(${SDL_INCLUDE_DIR}) -include_directories(${SDL_INCLUDE_DIR}/SDL2) -include_directories(${CMAKE_SOURCE_DIR}) - -target_link_libraries(SDL2_image SDL2::SDL2) - -# external dependencies -if(USE_WEBP) - find_package(WebP CONFIG REQUIRED) - add_definitions(-DLOAD_WEBP) - target_link_libraries(SDL2_image PRIVATE WebP::webp) -endif() - -if(USE_PNG) - find_package(PNG REQUIRED) - add_definitions(-DLOAD_PNG) - target_link_libraries(SDL2_image PRIVATE PNG::PNG) -endif() - -if(USE_JPEG) - find_package(JPEG REQUIRED) - add_definitions(-DLOAD_JPG) - target_link_libraries(SDL2_image PRIVATE ${JPEG_LIBRARIES}) -endif() - -if(USE_TIFF) - find_package(TIFF REQUIRED) - add_definitions(-DLOAD_TIF) - target_link_libraries(SDL2_image PRIVATE TIFF::TIFF) - - if(CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /wd4996") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /wd4996") - endif() -endif() - -install(TARGETS SDL2_image - EXPORT SDL2_image - RUNTIME DESTINATION bin - ARCHIVE DESTINATION lib - LIBRARY DESTINATION lib) - -install(FILES SDL_image.h DESTINATION include/SDL2 CONFIGURATIONS Release) - -configure_file("${CMAKE_CURRENT_SOURCE_DIR}/sdl2-image-config.cmake.in" - "${CMAKE_CURRENT_BINARY_DIR}/sdl2-image-config.cmake" @ONLY - INSTALL_DESTINATION "share/sdl2-image") - -set(prefix "") -set(exec_prefix [[${prefix}]]) -set(libdir [[${prefix}/lib]]) -set(includedir [[${prefix}/include]]) -set(PACKAGE "SDL2_image") -file(READ "SDL_image.h" header_contents) -# #define SDL_IMAGE_MAJOR_VERSION 2 -# #define SDL_IMAGE_MINOR_VERSION 0 -# #define SDL_IMAGE_PATCHLEVEL 5 -string(REGEX MATCH "define *SDL_IMAGE_MAJOR_VERSION *([0-9]+)" _ "${header_contents}") -set(VERSION ${CMAKE_MATCH_1}) -string(REGEX MATCH "define *SDL_IMAGE_MINOR_VERSION *([0-9]+)" _ "${header_contents}") -string(APPEND VERSION ".${CMAKE_MATCH_1}") -string(REGEX MATCH "define *SDL_IMAGE_PATCHLEVEL *([0-9]+)" _ "${header_contents}") -string(APPEND VERSION ".${CMAKE_MATCH_1}") -set(SDL_VERSION 0.0) -configure_file(SDL2_image.pc.in "${CMAKE_CURRENT_BINARY_DIR}/SDL2_image.pc" @ONLY) -install(FILES ${CMAKE_CURRENT_BINARY_DIR}/SDL2_image.pc DESTINATION lib/pkgconfig) - -install(FILES ${CMAKE_CURRENT_BINARY_DIR}/sdl2-image-config.cmake DESTINATION share/sdl2-image) - -install(EXPORT SDL2_image - DESTINATION share/sdl2-image/ - FILE sdl2-image-targets.cmake - NAMESPACE SDL2:: -) diff --git a/ports/sdl2-image/fix-pkgconfig.patch b/ports/sdl2-image/fix-pkgconfig.patch new file mode 100644 index 00000000000000..1bd8bcaf2109e6 --- /dev/null +++ b/ports/sdl2-image/fix-pkgconfig.patch @@ -0,0 +1,22 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 9abeefb..ba42875 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -694,7 +694,7 @@ if(SDL2IMAGE_INSTALL) + COMPONENT devel + ) + +- if(SDL2IMAGE_BUILD_SHARED_LIBS) ++ if(1) + # Only create a .pc file for a shared SDL2_image + set(prefix "${CMAKE_INSTALL_PREFIX}") + set(exec_prefix "\${prefix}") +@@ -723,7 +723,7 @@ if(SDL2IMAGE_INSTALL) + \"${CMAKE_CURRENT_BINARY_DIR}/SDL2_image.pc\") + file(INSTALL DESTINATION \"\${CMAKE_INSTALL_PREFIX}/${PC_DESTDIR}\" + TYPE FILE +- FILES \"${CMAKE_CURRENT_BINARY_DIR}/SDL2_image.pc\")" CONFIG Release COMPONENT devel) ++ FILES \"${CMAKE_CURRENT_BINARY_DIR}/SDL2_image.pc\")" COMPONENT devel) + endif() + + if(SDL2IMAGE_BUILD_SHARED_LIBS AND (APPLE OR (UNIX AND NOT ANDROID))) diff --git a/ports/sdl2-image/portfile.cmake b/ports/sdl2-image/portfile.cmake index cede4e4161e314..ed870b4b226e3c 100644 --- a/ports/sdl2-image/portfile.cmake +++ b/ports/sdl2-image/portfile.cmake @@ -1,43 +1,54 @@ -set(SDL2_IMAGE_VERSION "2.0.5") - -vcpkg_download_distfile(ARCHIVE - URLS "https://www.libsdl.org/projects/SDL_image/release/SDL2_image-${SDL2_IMAGE_VERSION}.zip" - FILENAME "SDL2_image-${SDL2_IMAGE_VERSION}.zip" - SHA512 c10e28a0d50fb7a6c985ffe8904370ab4faeb9bbed6f2ffbc81536422e8f8bb66eddbf69b12423082216c2bcfcb617cba4c5970f63fe75bfacccd9f99f02a6a2 -) - -vcpkg_extract_source_archive_ex( +vcpkg_minimum_required(VERSION 2022-10-12) # for ${VERSION} +vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH - ARCHIVE ${ARCHIVE} - REF ${SDL2_IMAGE_VERSION} + REPO libsdl-org/SDL_image + REF release-${VERSION} + SHA512 8ecf26a13ffc00b9941bf0befb669c1fd2f2d2e9ca1dcf7210cb93eb18f49cf749af1f491f85627eed7030d1e603051720c9470bfed9b031b0219e3a47d06622 + HEAD_REF main PATCHES - 0001-sdl2-image-potentially-uninitialized_local-pointer-variable-start.patch + fix-pkgconfig.patch ) -file(COPY "${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt" DESTINATION "${SOURCE_PATH}") -file(COPY "${CMAKE_CURRENT_LIST_DIR}/sdl2-image-config.cmake.in" DESTINATION "${SOURCE_PATH}") - -vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS +vcpkg_check_features( + OUT_FEATURE_OPTIONS FEATURE_OPTIONS FEATURES - libjpeg-turbo USE_JPEG - tiff USE_TIFF - libwebp USE_WEBP + libjpeg-turbo SDL2IMAGE_JPG + libwebp SDL2IMAGE_WEBP + tiff SDL2IMAGE_TIF ) +string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" SDL2IMAGE_DEPS_SHARED) + vcpkg_cmake_configure( SOURCE_PATH "${SOURCE_PATH}" OPTIONS - -DUSE_PNG=ON ${FEATURE_OPTIONS} + -DSDL2IMAGE_BACKEND_IMAGEIO=OFF + -DSDL2IMAGE_BACKEND_STB=OFF + -DSDL2IMAGE_DEPS_SHARED=${SDL2IMAGE_DEPS_SHARED} + -DSDL2IMAGE_SAMPLES=OFF + -DSDL2IMAGE_VENDORED=OFF ) vcpkg_cmake_install() vcpkg_copy_pdbs() -vcpkg_cmake_config_fixup() +if(EXISTS "${CURRENT_PACKAGES_DIR}/cmake") + vcpkg_cmake_config_fixup(PACKAGE_NAME SDL2_image CONFIG_PATH cmake) +elseif(EXISTS "${CURRENT_PACKAGES_DIR}/SDL2_image.framework/Resources") + vcpkg_cmake_config_fixup(PACKAGE_NAME SDL2_image CONFIG_PATH SDL2_image.framework/Resources) +else() + vcpkg_cmake_config_fixup(PACKAGE_NAME SDL2_image CONFIG_PATH lib/cmake/SDL2_image) +endif() + vcpkg_fixup_pkgconfig() -file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share") +file(REMOVE_RECURSE + "${CURRENT_PACKAGES_DIR}/debug/share" + "${CURRENT_PACKAGES_DIR}/debug/include" + "${CURRENT_PACKAGES_DIR}/SDL2_image.framework" + "${CURRENT_PACKAGES_DIR}/debug/SDL2_image.framework" +) -# Handle copyright -file(INSTALL "${SOURCE_PATH}/COPYING.txt" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) +file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") +vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE.txt") diff --git a/ports/sdl2-image/sdl2-image-config.cmake.in b/ports/sdl2-image/sdl2-image-config.cmake.in deleted file mode 100644 index 8db8b11d0781be..00000000000000 --- a/ports/sdl2-image/sdl2-image-config.cmake.in +++ /dev/null @@ -1,13 +0,0 @@ -include(CMakeFindDependencyMacro) - -find_dependency(SDL2 CONFIG) - -if(@USE_WEBP@) - find_dependency(WebP CONFIG) -endif() - -if (@USE_PNG@) - find_dependency(PNG) -endif() - -include("${CMAKE_CURRENT_LIST_DIR}/sdl2-image-targets.cmake") diff --git a/ports/sdl2-image/usage b/ports/sdl2-image/usage new file mode 100644 index 00000000000000..ab9d3224345854 --- /dev/null +++ b/ports/sdl2-image/usage @@ -0,0 +1,4 @@ +sdl2-image provides CMake targets: + + find_package(SDL2_image CONFIG REQUIRED) + target_link_libraries(main PRIVATE $,SDL2_image::SDL2_image,SDL2_image::SDL2_image-static>) diff --git a/ports/sdl2-image/vcpkg.json b/ports/sdl2-image/vcpkg.json index 1d9b5ce7a4518f..c09a522deaf1e5 100644 --- a/ports/sdl2-image/vcpkg.json +++ b/ports/sdl2-image/vcpkg.json @@ -1,9 +1,8 @@ { "name": "sdl2-image", - "version": "2.0.5", - "port-version": 7, + "version": "2.6.2", "description": "SDL_image is an image file loading library. It loads images as SDL surfaces and textures, and supports the following formats: BMP, GIF, JPEG, LBM, PCX, PNG, PNM, TGA, TIFF, WEBP, XCF, XPM, XV", - "homepage": "https://www.libsdl.org/projects/SDL_image", + "homepage": "https://github.com/libsdl-org/SDL_image", "license": "Zlib", "dependencies": [ "libpng", @@ -21,39 +20,18 @@ "libjpeg-turbo": { "description": "Support for JPEG image format", "dependencies": [ - "libjpeg-turbo", - { - "name": "sdl2", - "features": [ - "x11" - ], - "platform": "!windows" - } + "libjpeg-turbo" ] }, "libwebp": { "description": "Support for WEBP image format.", "dependencies": [ - "libwebp", - { - "name": "sdl2", - "features": [ - "x11" - ], - "platform": "!windows" - } + "libwebp" ] }, "tiff": { "description": "Support for TIFF image format", "dependencies": [ - { - "name": "sdl2", - "features": [ - "x11" - ], - "platform": "!windows" - }, "tiff" ] } diff --git a/ports/sdl2pp/fix-dependencies.patch b/ports/sdl2pp/fix-dependencies.patch index 14300c0ded2307..b3536bb9e1839d 100644 --- a/ports/sdl2pp/fix-dependencies.patch +++ b/ports/sdl2pp/fix-dependencies.patch @@ -35,11 +35,10 @@ index cdfd2a6..dc08748 100644 ENDIF(MINGW) IF(SDL2PP_WITH_IMAGE) -- FIND_PACKAGE(SDL2_image REQUIRED) + 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}) -+ FIND_PACKAGE(sdl2-image CONFIG REQUIRED) -+ SET(SDL2_ALL_LIBRARIES ${SDL2_ALL_LIBRARIES} SDL2::SDL2_image) ++ SET(SDL2_ALL_LIBRARIES ${SDL2_ALL_LIBRARIES} $,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") diff --git a/ports/sdl2pp/vcpkg.json b/ports/sdl2pp/vcpkg.json index 3ed283ae02ba46..c2c11e40dadc27 100644 --- a/ports/sdl2pp/vcpkg.json +++ b/ports/sdl2pp/vcpkg.json @@ -1,7 +1,7 @@ { "name": "sdl2pp", "version": "0.16.1", - "port-version": 5, + "port-version": 6, "description": "C++11 bindings/wrapper for SDL2", "homepage": "https://sdl2pp.amdmi3.ru", "license": "Zlib", diff --git a/versions/baseline.json b/versions/baseline.json index 7eca242a002e71..3b0e0fa23374cd 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -6765,8 +6765,8 @@ "port-version": 8 }, "sdl2-image": { - "baseline": "2.0.5", - "port-version": 7 + "baseline": "2.6.2", + "port-version": 0 }, "sdl2-mixer": { "baseline": "2.6.1", @@ -6782,7 +6782,7 @@ }, "sdl2pp": { "baseline": "0.16.1", - "port-version": 5 + "port-version": 6 }, "seal": { "baseline": "3.7.2", diff --git a/versions/s-/sdl2-image.json b/versions/s-/sdl2-image.json index 67d171b01176a5..fba197ac97e784 100644 --- a/versions/s-/sdl2-image.json +++ b/versions/s-/sdl2-image.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "b5bbf1d2cbb382ec8adb25ca10cb3fa4913829f9", + "version": "2.6.2", + "port-version": 0 + }, { "git-tree": "4890f12d4639bf57d7eac19097b5903c06574184", "version": "2.0.5", diff --git a/versions/s-/sdl2pp.json b/versions/s-/sdl2pp.json index c759c94bf103b9..d52e28f529f47a 100644 --- a/versions/s-/sdl2pp.json +++ b/versions/s-/sdl2pp.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "064e16bf7d04b929d0175c6c0aff6486032370db", + "version": "0.16.1", + "port-version": 6 + }, { "git-tree": "89665ed749a05bebacf76088e7781d0f1ef4c06a", "version": "0.16.1",