diff --git a/ports/spine-c/fix-cmake.patch b/ports/spine-c/fix-cmake.patch new file mode 100644 index 0000000000..14f1412f97 --- /dev/null +++ b/ports/spine-c/fix-cmake.patch @@ -0,0 +1,14 @@ +diff --git a/spine-c/CMakeLists.txt b/spine-c/CMakeLists.txt +index b7e4d2aa2..b2c3b280a 100644 +--- a/spine-c/CMakeLists.txt ++++ b/spine-c/CMakeLists.txt +@@ -10,5 +10,5 @@ file(GLOB SOURCES "spine-c/src/**/*.c") + add_library(spine-c STATIC ${SOURCES} ${INCLUDES}) + target_include_directories(spine-c PUBLIC spine-c/include) + +-install(TARGETS spine-c DESTINATION dist/lib) +-install(FILES ${INCLUDES} DESTINATION dist/include) +\ No newline at end of file ++install(TARGETS spine-c DESTINATION lib) ++install(FILES ${INCLUDES} DESTINATION include/spine-c/spine) +\ No newline at end of file diff --git a/ports/spine-c/portfile.cmake b/ports/spine-c/portfile.cmake new file mode 100644 index 0000000000..1fa8add6f8 --- /dev/null +++ b/ports/spine-c/portfile.cmake @@ -0,0 +1,22 @@ +vcpkg_check_linkage(ONLY_STATIC_LIBRARY) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO EsotericSoftware/spine-runtimes + REF 43e530611d30c044a8bc16eba0486140e4dc2ce0 + SHA512 16a1ba493852c2512997bde4ab56318f435f65f23238544cf0c1000f53a2950cfd480255db6b3dc5c1d0b6a21a4be174be9401465d320b54c6b88c06e57e38d8 + HEAD_REF 4.2 + PATCHES + fix-cmake.patch +) + +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}/spine-c" + OPTIONS + -DSPINE_SET_COMPILER_FLAGS=OFF +) +vcpkg_cmake_install() + +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") + +vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE") diff --git a/ports/spine-runtimes/vcpkg.json b/ports/spine-c/vcpkg.json similarity index 76% rename from ports/spine-runtimes/vcpkg.json rename to ports/spine-c/vcpkg.json index d160b3b6d4..cbbc0fe97f 100644 --- a/ports/spine-runtimes/vcpkg.json +++ b/ports/spine-c/vcpkg.json @@ -1,7 +1,6 @@ { - "name": "spine-runtimes", - "version": "4.1.0", - "port-version": 1, + "name": "spine-c", + "version": "4.2.20260227", "description": "2D skeletal animation runtimes for Spine", "homepage": "https://github.com/EsotericSoftware/spine-runtimes", "license": null, diff --git a/ports/spine-cpp/fix-cmake.patch b/ports/spine-cpp/fix-cmake.patch new file mode 100644 index 0000000000..f16bffbafb --- /dev/null +++ b/ports/spine-cpp/fix-cmake.patch @@ -0,0 +1,15 @@ +diff --git a/spine-cpp/CMakeLists.txt b/spine-cpp/CMakeLists.txt +index 9829b42cd..372d58d15 100644 +--- a/spine-cpp/CMakeLists.txt ++++ b/spine-cpp/CMakeLists.txt +@@ -14,8 +14,8 @@ add_library(spine-cpp-lite STATIC ${SOURCES} ${INCLUDES} spine-cpp-lite/spine-cp + target_include_directories(spine-cpp-lite PUBLIC spine-cpp/include spine-cpp-lite) + + # Install target +-install(TARGETS spine-cpp EXPORT spine-cpp_TARGETS DESTINATION dist/lib) +-install(FILES ${INCLUDES} DESTINATION dist/include) ++install(TARGETS spine-cpp EXPORT spine-cpp_TARGETS DESTINATION lib) ++install(FILES ${INCLUDES} DESTINATION include/spine-cpp/spine) + + # Export target + export( diff --git a/ports/spine-cpp/portfile.cmake b/ports/spine-cpp/portfile.cmake new file mode 100644 index 0000000000..ba75b121bb --- /dev/null +++ b/ports/spine-cpp/portfile.cmake @@ -0,0 +1,22 @@ +vcpkg_check_linkage(ONLY_STATIC_LIBRARY) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO EsotericSoftware/spine-runtimes + REF 43e530611d30c044a8bc16eba0486140e4dc2ce0 + SHA512 16a1ba493852c2512997bde4ab56318f435f65f23238544cf0c1000f53a2950cfd480255db6b3dc5c1d0b6a21a4be174be9401465d320b54c6b88c06e57e38d8 + HEAD_REF 4.2 + PATCHES + fix-cmake.patch +) + +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}/spine-cpp" + OPTIONS + -DSPINE_SET_COMPILER_FLAGS=OFF +) +vcpkg_cmake_install() + +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") + +vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE") diff --git a/ports/spine-cpp/vcpkg.json b/ports/spine-cpp/vcpkg.json new file mode 100644 index 0000000000..994486c929 --- /dev/null +++ b/ports/spine-cpp/vcpkg.json @@ -0,0 +1,13 @@ +{ + "name": "spine-cpp", + "version": "4.2.20260227", + "description": "2D skeletal animation runtimes for Spine", + "homepage": "https://github.com/EsotericSoftware/spine-runtimes", + "license": null, + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + } + ] +} diff --git a/ports/spine-runtimes/fix-cmake.patch b/ports/spine-runtimes/fix-cmake.patch deleted file mode 100644 index 799f439db3..0000000000 --- a/ports/spine-runtimes/fix-cmake.patch +++ /dev/null @@ -1,107 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index f77ff7f..1aeb5fc 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -1,7 +1,7 @@ - cmake_minimum_required(VERSION 3.17) - project(spine) - --set(CMAKE_INSTALL_PREFIX "./") -+include(GNUInstallDirs) - set(CMAKE_VERBOSE_MAKEFILE ON) - set(SPINE_SFML FALSE CACHE BOOL FALSE) - set(SPINE_SANITIZE FALSE CACHE BOOL FALSE) -@@ -20,12 +20,12 @@ else() - endif() - endif() - --if((${SPINE_SFML}) OR (${CMAKE_CURRENT_BINARY_DIR} MATCHES "spine-sfml")) -- add_subdirectory(spine-c) -+add_subdirectory(spine-c) -+add_subdirectory(spine-cpp) -+if(SPINE_SFML) - add_subdirectory(spine-sfml/c) -- add_subdirectory(spine-cpp) - add_subdirectory(spine-sfml/cpp) - endif() - - # add_subdirectory(spine-c/spine-c-unit-tests) --add_subdirectory(spine-cpp/spine-cpp-unit-tests) -+# add_subdirectory(spine-cpp/spine-cpp-unit-tests) -diff --git a/spine-c/CMakeLists.txt b/spine-c/CMakeLists.txt -index 906f7b0..c5e1f18 100644 ---- a/spine-c/CMakeLists.txt -+++ b/spine-c/CMakeLists.txt -@@ -3,6 +3,6 @@ file(GLOB INCLUDES "spine-c/include/**/*.h") - file(GLOB SOURCES "spine-c/src/**/*.c" "spine-c/src/**/*.cpp") - - add_library(spine-c STATIC ${SOURCES} ${INCLUDES}) --target_include_directories(spine-c PUBLIC spine-c/include) --install(TARGETS spine-c DESTINATION dist/lib) --install(FILES ${INCLUDES} DESTINATION dist/include) -\ No newline at end of file -+target_include_directories(spine-c PUBLIC $) -+install(TARGETS spine-c DESTINATION ${CMAKE_INSTALL_LIBDIR}) -+install(FILES ${INCLUDES} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/spine-c/spine) -\ No newline at end of file -diff --git a/spine-cpp/CMakeLists.txt b/spine-cpp/CMakeLists.txt -index e008c33..805aba8 100644 ---- a/spine-cpp/CMakeLists.txt -+++ b/spine-cpp/CMakeLists.txt -@@ -12,6 +12,6 @@ file(GLOB INCLUDES "spine-cpp/include/**/*.h") - file(GLOB SOURCES "spine-cpp/src/**/*.cpp") - - add_library(spine-cpp STATIC ${SOURCES} ${INCLUDES}) --target_include_directories(spine-cpp PUBLIC spine-cpp/include) --install(TARGETS spine-cpp DESTINATION dist/lib) --install(FILES ${INCLUDES} DESTINATION dist/include) -\ No newline at end of file -+target_include_directories(spine-cpp PUBLIC $) -+install(TARGETS spine-cpp DESTINATION ${CMAKE_INSTALL_LIBDIR}) -+install(FILES ${INCLUDES} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/spine-cpp/spine) -\ No newline at end of file -diff --git a/spine-sfml/c/CMakeLists.txt b/spine-sfml/c/CMakeLists.txt -index 68dcc75..2ccfb2d 100644 ---- a/spine-sfml/c/CMakeLists.txt -+++ b/spine-sfml/c/CMakeLists.txt -@@ -48,8 +48,9 @@ file(GLOB INCLUDES "src/**/*.h") - file(GLOB SOURCES "src/**/*.cpp") - add_library(spine-sfml STATIC ${SOURCES} ${INCLUDES}) - target_link_libraries(spine-sfml LINK_PUBLIC spine-c) --install(TARGETS spine-sfml DESTINATION dist/lib) --install(FILES ${INCLUDES} DESTINATION dist/include) -+install(TARGETS spine-sfml DESTINATION ${CMAKE_INSTALL_LIBDIR}) -+install(FILES ${INCLUDES} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/spine) -+return() - - # Define spine-sfml example executable - add_executable(spine-sfml-example example/main.cpp) -diff --git a/spine-sfml/cpp/CMakeLists.txt b/spine-sfml/cpp/CMakeLists.txt -index 903d0f7..bbcbb97 100644 ---- a/spine-sfml/cpp/CMakeLists.txt -+++ b/spine-sfml/cpp/CMakeLists.txt -@@ -57,8 +57,9 @@ file(GLOB INCLUDES "src/**/*.h") - file(GLOB SOURCES "src/**/*.cpp") - add_library(spine-sfml-cpp STATIC ${SOURCES} ${INCLUDES}) - target_link_libraries(spine-sfml-cpp LINK_PUBLIC spine-cpp) --install(TARGETS spine-sfml-cpp DESTINATION dist/lib) --install(FILES ${INCLUDES} DESTINATION dist/include) -+install(TARGETS spine-sfml-cpp DESTINATION ${CMAKE_INSTALL_LIBDIR}) -+install(FILES ${INCLUDES} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/spine) -+return() - - # Define spine-sfml example executable - add_executable(spine-sfml-cpp-example example/main.cpp) -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 1aeb5fc..0a9ffb7 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -11,8 +11,6 @@ if(MSVC) - set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS}") - set (CMAKE_C_FLAGS "${CMAKE_CXX_FLAGS}") - else() -- set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wunused-value -Wno-c++11-long-long -Wno-variadic-macros -Werror -Wextra -pedantic -Wnonportable-include-path -Wshadow -std=c89") -- set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wunused-value -Wno-c++11-long-long -Wno-variadic-macros -Werror -Wextra -Wnon-virtual-dtor -pedantic -Wnonportable-include-path -Wshadow -std=c++11 -fno-exceptions -fno-rtti") - - if (${SPINE_SANITIZE}) - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fsanitize=address -fsanitize=undefined") diff --git a/ports/spine-runtimes/portfile.cmake b/ports/spine-runtimes/portfile.cmake deleted file mode 100644 index fc796c71d1..0000000000 --- a/ports/spine-runtimes/portfile.cmake +++ /dev/null @@ -1,25 +0,0 @@ -vcpkg_check_linkage(ONLY_STATIC_LIBRARY) # the project doesn't support SHARED - -vcpkg_from_github( - OUT_SOURCE_PATH SOURCE_PATH - REPO EsotericSoftware/spine-runtimes - REF 4.1.00 - SHA512 40a352a1f5e9939802667f330c9de2f0b03bf63834d1c20514a6cecb35c1a9915fb13588ee92cbaba9effbd2205c25851cca58d2ec7f90ce9b974252bd168425 - HEAD_REF 4.1 - PATCHES - fix-cmake.patch -) - -vcpkg_cmake_configure(SOURCE_PATH "${SOURCE_PATH}") -vcpkg_cmake_build(TARGET spine-c LOGFILE_BASE build-c) -vcpkg_cmake_build(TARGET spine-cpp LOGFILE_BASE build-cpp) -vcpkg_cmake_install() - -file(REMOVE_RECURSE - "${CURRENT_PACKAGES_DIR}/debug/include" - "${CURRENT_PACKAGES_DIR}/debug/share" - "${CURRENT_PACKAGES_DIR}/debug/bin" - "${CURRENT_PACKAGES_DIR}/bin" -) - -file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/versions/baseline.json b/versions/baseline.json index 5b3f9c63de..104f2e36e6 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -9392,9 +9392,13 @@ "baseline": "2025-01-23", "port-version": 0 }, - "spine-runtimes": { - "baseline": "4.1.0", - "port-version": 1 + "spine-c": { + "baseline": "4.2.20260227", + "port-version": 0 + }, + "spine-cpp": { + "baseline": "4.2.20260227", + "port-version": 0 }, "spirit-po": { "baseline": "1.1.2", diff --git a/versions/s-/spine-c.json b/versions/s-/spine-c.json new file mode 100644 index 0000000000..a063ff9ea3 --- /dev/null +++ b/versions/s-/spine-c.json @@ -0,0 +1,9 @@ +{ + "versions": [ + { + "git-tree": "4e062ce604133bd151fd38d05edd8a065ad86ef8", + "version": "4.2.20260227", + "port-version": 0 + } + ] +} diff --git a/versions/s-/spine-cpp.json b/versions/s-/spine-cpp.json new file mode 100644 index 0000000000..1b6d82ee8a --- /dev/null +++ b/versions/s-/spine-cpp.json @@ -0,0 +1,9 @@ +{ + "versions": [ + { + "git-tree": "b0f5555121874ba5b610e3ff4094e5980508e797", + "version": "4.2.20260227", + "port-version": 0 + } + ] +}