diff options
| author | Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com> | 2021-05-18 14:24:46 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-05-17 23:24:46 -0700 |
| commit | c7f8a9db6bd715d056046489dfa9408dc492f93b (patch) | |
| tree | 7ad3eae54e2a26772f2f4b71d824eee24325bf11 | |
| parent | 968c5eba7b9f24806b27d59593c389598402bc69 (diff) | |
| download | vcpkg-c7f8a9db6bd715d056046489dfa9408dc492f93b.tar.gz vcpkg-c7f8a9db6bd715d056046489dfa9408dc492f93b.zip | |
[tgui] Fix usage and update to 0.9.1 (#17093)
* [tgui] Fix usage
* update version record
* update to 0.9.1
* update version record
* [tgui] Add feature sdl2 and sfml, fix dependencies
* add comment
* version
* fix gui-builder build
* Update versions/t-/tgui.json
* Update ports/tgui/vcpkg.json
* update manifest
* update to latest commit
* update version record
* Update versions/baseline.json
| -rw-r--r-- | ports/tgui/CONTROL | 7 | ||||
| -rw-r--r-- | ports/tgui/fix-dependencies.patch | 27 | ||||
| -rw-r--r-- | ports/tgui/fix-usage.patch | 23 | ||||
| -rw-r--r-- | ports/tgui/portfile.cmake | 50 | ||||
| -rw-r--r-- | ports/tgui/vcpkg.json | 40 | ||||
| -rw-r--r-- | versions/baseline.json | 2 | ||||
| -rw-r--r-- | versions/t-/tgui.json | 5 |
7 files changed, 123 insertions, 31 deletions
diff --git a/ports/tgui/CONTROL b/ports/tgui/CONTROL deleted file mode 100644 index b71b82a98..000000000 --- a/ports/tgui/CONTROL +++ /dev/null @@ -1,7 +0,0 @@ -Source: tgui
-Version: 0.8.8 -Description: TGUI is an easy to use, cross-platform, C++ GUI for SFML.
-Build-Depends: sfml
-
-Feature: tool
-Description: Build GUI builder
diff --git a/ports/tgui/fix-dependencies.patch b/ports/tgui/fix-dependencies.patch new file mode 100644 index 000000000..ad6b7107c --- /dev/null +++ b/ports/tgui/fix-dependencies.patch @@ -0,0 +1,27 @@ +diff --git a/src/Backends/SDL/CMakeLists.txt b/src/Backends/SDL/CMakeLists.txt +index d86f11d..1e31e21 100644 +--- a/src/Backends/SDL/CMakeLists.txt ++++ b/src/Backends/SDL/CMakeLists.txt +@@ -1,10 +1,10 @@ + list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_LIST_DIR}/cmake_modules) + +-find_package(SDL2 REQUIRED) +-find_package(SDL2_ttf REQUIRED) ++find_package(SDL2 CONFIG REQUIRED) ++find_package(sdl2-ttf CONFIG REQUIRED) + + # Link to SDL and set include and library search directories +-target_link_libraries(tgui PRIVATE SDL2::Core SDL2::TTF) ++target_link_libraries(tgui PRIVATE SDL2::SDL2 SDL2::SDL2_ttf) + + # Add the backend source files to the library + target_sources(tgui PRIVATE +@@ -19,7 +19,7 @@ target_sources(tgui PRIVATE + ) + + add_library(tgui-sdl-interface INTERFACE) +-target_link_libraries(tgui-sdl-interface INTERFACE SDL2::Core SDL2::TTF SDL2::Main) ++target_link_libraries(tgui-sdl-interface INTERFACE SDL2::SDL2 SDL2::SDL2_ttf SDL2::SDL2main) + + # Also link to OpenGL or OpenGL ES + if(NOT TGUI_USE_GLES) diff --git a/ports/tgui/fix-usage.patch b/ports/tgui/fix-usage.patch new file mode 100644 index 000000000..cbc43b4e7 --- /dev/null +++ b/ports/tgui/fix-usage.patch @@ -0,0 +1,23 @@ +diff --git a/cmake/TGUIConfig.cmake.in b/cmake/TGUIConfig.cmake.in +index 63e8a45..01804cd 100644 +--- a/cmake/TGUIConfig.cmake.in ++++ b/cmake/TGUIConfig.cmake.in +@@ -44,6 +44,9 @@ + # add_executable(myapp ...) + # target_link_libraries(myapp tgui) + ++include(CMakeFindDependencyMacro) ++find_dependency(SFML COMPONENTS graphics CONFIG) ++ + set(FIND_TGUI_PATHS + "${CMAKE_CURRENT_LIST_DIR}/../.." + ${TGUI_ROOT} +@@ -58,7 +61,7 @@ set(FIND_TGUI_PATHS + /opt) + + # Choose which target definitions must be imported +-if (TGUI_STATIC_LIBRARIES) ++if (NOT @TGUI_SHARED_LIBS@) + set(TGUI_IS_FRAMEWORK_INSTALL "@TGUI_BUILD_FRAMEWORKS@") + if (TGUI_IS_FRAMEWORK_INSTALL) + message(WARNING "Static frameworks are not supported by TGUI. Clear TGUI_DIR cache entry, \ diff --git a/ports/tgui/portfile.cmake b/ports/tgui/portfile.cmake index 30b08fd6c..305eb8180 100644 --- a/ports/tgui/portfile.cmake +++ b/ports/tgui/portfile.cmake @@ -1,9 +1,12 @@ vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO texus/TGUI
- REF 6576c04e594ae0b76ff5e188d543a7558882ad6c # v0.8.8 - SHA512 52d044e90fde0eb6c46c3af3e11a6c8641cce301e863858701aaa909b945c76a1dade2f96a2176a223d92c51f84fe8a6dd883ec74873e8d2fcf09dac50869891
- HEAD_REF 0.8
+ REF 6515153c2466e6677ba933679b3dca6c283daf87 + SHA512 109e64c114336979a4bd0d44765e4bc26cb4ecb6e4db92d7441230d148438b084d01cb56dd292f09a6fd28b0f7420044455ffb519147cc3aea71e322142cd9a0
+ HEAD_REF 0.9
+ PATCHES
+ fix-usage.patch
+ fix-dependencies.patch
)
set(TGUI_SHARE_PATH ${CURRENT_PACKAGES_DIR}/share/tgui)
@@ -13,38 +16,35 @@ set(TGUI_TOOLS_PATH ${CURRENT_PACKAGES_DIR}/tools/tgui) file(REMOVE "${SOURCE_PATH}/cmake/Modules/FindSFML.cmake")
string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" TGUI_SHARED_LIBS)
-# gui-builder
-set(BUILD_GUI_BUILDER OFF)
-if("tool" IN_LIST FEATURES)
- set(BUILD_GUI_BUILDER ON)
-endif()
+vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
+ FEATURES
+ sdl2 TGUI_HAS_BACKEND_SDL
+ sfml TGUI_HAS_BACKEND_SFML
+ tool TGUI_BUILD_GUI_BUILDER
+)
vcpkg_configure_cmake(
SOURCE_PATH "${SOURCE_PATH}"
DISABLE_PARALLEL_CONFIGURE
PREFER_NINJA
- OPTIONS
- -DTGUI_BUILD_GUI_BUILDER=${BUILD_GUI_BUILDER}
+ OPTIONS ${FEATURE_OPTIONS}
-DTGUI_MISC_INSTALL_PREFIX=${TGUI_SHARE_PATH}
-DTGUI_SHARED_LIBS=${TGUI_SHARED_LIBS}
+ -DTGUI_BACKEND="Custom"
+ -DTGUI_BUILD_EXAMPLES=OFF
)
vcpkg_install_cmake()
vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/TGUI)
vcpkg_copy_pdbs()
-if(BUILD_GUI_BUILDER)
- set(EXECUTABLE_SUFFIX "")
- if (NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
- set(EXECUTABLE_SUFFIX ".exe")
- endif()
-
- message(STATUS "Check for: ${TGUI_SHARE_PATH}/gui-builder/gui-builder${EXECUTABLE_SUFFIX}")
- if(EXISTS "${TGUI_SHARE_PATH}/gui-builder/gui-builder${EXECUTABLE_SUFFIX}")
+if("tool" IN_LIST FEATURES)
+ message(STATUS "Check for: ${TGUI_SHARE_PATH}/gui-builder/gui-builder${VCPKG_TARGET_EXECUTABLE_SUFFIX}")
+ if(EXISTS "${TGUI_SHARE_PATH}/gui-builder/gui-builder${VCPKG_TARGET_EXECUTABLE_SUFFIX}")
file(MAKE_DIRECTORY "${TGUI_TOOLS_PATH}")
file(RENAME
- "${TGUI_SHARE_PATH}/gui-builder/gui-builder${EXECUTABLE_SUFFIX}"
- "${TGUI_TOOLS_PATH}/gui-builder${EXECUTABLE_SUFFIX}")
+ "${TGUI_SHARE_PATH}/gui-builder/gui-builder${VCPKG_TARGET_EXECUTABLE_SUFFIX}"
+ "${TGUI_TOOLS_PATH}/gui-builder${VCPKG_TARGET_EXECUTABLE_SUFFIX}")
# Need to copy `resources` and `themes` directories
file(COPY "${TGUI_SHARE_PATH}/gui-builder/resources" DESTINATION "${TGUI_TOOLS_PATH}")
file(COPY "${TGUI_SHARE_PATH}/gui-builder/themes" DESTINATION "${TGUI_TOOLS_PATH}")
@@ -53,8 +53,12 @@ if(BUILD_GUI_BUILDER) endif()
endif()
-file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/share)
-file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/include/TGUI/nanosvg")
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include" "${CURRENT_PACKAGES_DIR}/debug/share")
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/include/TGUI/extlibs/nanosvg" "${CURRENT_PACKAGES_DIR}/include/TGUI/extlibs/glad"
+ "${CURRENT_PACKAGES_DIR}/include/TGUI/extlibs/stb"
+) # All folders are empty
+
+file(RENAME "${CURRENT_PACKAGES_DIR}/share/doc" "${CURRENT_PACKAGES_DIR}/share/${PORT}/doc")
# Handle copyright
-file(INSTALL "${SOURCE_PATH}/license.txt" DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
+file(INSTALL "${SOURCE_PATH}/license.txt" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
diff --git a/ports/tgui/vcpkg.json b/ports/tgui/vcpkg.json new file mode 100644 index 000000000..426a58da3 --- /dev/null +++ b/ports/tgui/vcpkg.json @@ -0,0 +1,40 @@ +{ + "name": "tgui", + "version-date": "2021-04-19", + "description": "TGUI is an easy to use, cross-platform, C++ GUI for SFML.", + "homepage": "https://tgui.eu", + "default-features": [ + "sdl2", + "sfml" + ], + "features": { + "sdl2": { + "description": "build the SDL backend", + "dependencies": [ + "sdl2", + "sdl2-ttf" + ] + }, + "sfml": { + "description": "build the SFML backend", + "dependencies": [ + { + "name": "glad", + "features": [ + "egl" + ], + "platform": "!android & !ios" + }, + { + "name": "opengl", + "platform": "android | ios" + }, + "sfml", + "stb" + ] + }, + "tool": { + "description": "Build GUI builder" + } + } +} diff --git a/versions/baseline.json b/versions/baseline.json index b7673cc7d..08efb6ecf 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -5989,7 +5989,7 @@ "port-version": 0 }, "tgui": { - "baseline": "0.8.8", + "baseline": "2021-04-19", "port-version": 0 }, "theia": { diff --git a/versions/t-/tgui.json b/versions/t-/tgui.json index 505b34bda..dd30e98d2 100644 --- a/versions/t-/tgui.json +++ b/versions/t-/tgui.json @@ -1,6 +1,11 @@ { "versions": [ { + "git-tree": "bf02ffb145ee6449fd7479d72920c1e1ca9843c8", + "version-date": "2021-04-19", + "port-version": 0 + }, + { "git-tree": "5ea44912cb8584751e303f69d686e3126c028300", "version-string": "0.8.8", "port-version": 0 |
