[fltk] Update 1.3.11 (#43992)

This commit is contained in:
Kai Pastor 2025-02-24 07:31:10 +01:00 committed by GitHub
parent 10f85d543e
commit 02e18019be
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 9 additions and 121 deletions

View File

@ -1,115 +0,0 @@
diff --git a/CMake/FLTKConfig.cmake.in b/CMake/FLTKConfig.cmake.in
index e2de914..c0bee05 100644
--- a/CMake/FLTKConfig.cmake.in
+++ b/CMake/FLTKConfig.cmake.in
@@ -37,17 +37,100 @@ set (FLTK_USE_FILE ${CMAKE_CURRENT_LIST_DIR}/UseFLTK.cmake)
set (FLTK_INCLUDE_DIR "${FLTK_INCLUDE_DIRS}")
-if (CMAKE_CROSSCOMPILING)
- find_file(FLUID_PATH
+if(CMAKE_CROSSCOMPILING)
+
+ # Find a fluid executable on the build host to be able to build fluid programs
+
+ find_program(FLTK_FLUID_HOST
NAMES fluid fluid.exe
PATHS ENV PATH
+ NO_DEFAULT_PATH
NO_CMAKE_FIND_ROOT_PATH
)
- add_executable(fluid IMPORTED)
- set_target_properties(fluid
- PROPERTIES IMPORTED_LOCATION ${FLUID_PATH}
- )
- set (FLTK_FLUID_EXECUTABLE ${FLUID_PATH})
-else ()
- set (FLTK_FLUID_EXECUTABLE fluid)
-endif (CMAKE_CROSSCOMPILING)
+
+ if(FLTK_FLUID_HOST)
+
+ if(0) # Experimental: currently not used
+ # Import a special 'fluid' target called 'fluid-host' (fltk::fluid-host)
+ # Note: this is "the same as" the CMake variable FLTK_FLUID_EXECUTABLE
+ add_executable(fluid-host IMPORTED)
+ set_target_properties(fluid-host
+ PROPERTIES IMPORTED_LOCATION ${FLTK_FLUID_HOST}
+ )
+ add_executable(fltk::fluid-host ALIAS fluid-host)
+ set(FLTK_FLUID_EXECUTABLE fltk::fluid-host)
+
+ else()
+
+ set(FLTK_FLUID_EXECUTABLE "${FLTK_FLUID_HOST}")
+
+ endif()
+
+ else() # fluid not found on build host
+
+ message(STATUS "FLTKConfig.cmake (cross-compiling): fluid not found on the build host")
+ # note: this assigns "FLTK_FLUID_HOST-NOTFOUND" and running fluid will fail
+ set(FLTK_FLUID_EXECUTABLE "${FLTK_FLUID_HOST}")
+
+ endif()
+
+else(CMAKE_CROSSCOMPILING)
+
+ if(FLTK_CREATE_COMPATIBILITY_ALIASES)
+
+ function(_fltk_make_alias target from)
+ if(TARGET ${from} AND NOT TARGET ${target})
+ # message(STATUS "FLTKConfig.cmake - create alias: ${target} from ${from}")
+
+ # promote imported target to global visibility (CMake < 3.18 only)
+ if(CMAKE_VERSION VERSION_LESS "3.18")
+ set_target_properties(${from} PROPERTIES IMPORTED_GLOBAL TRUE)
+ endif()
+
+ get_target_property(ttype ${from} TYPE)
+ if(ttype STREQUAL "EXECUTABLE")
+ add_executable(${target} ALIAS ${from})
+ else()
+ add_library(${target} ALIAS ${from})
+ endif()
+ endif()
+ endfunction(_fltk_make_alias target)
+
+ if(NOT TARGET fltk::fltk)
+ message(FATAL "FLTKConfig.cmake: target fltk::fltk does not exist!")
+ endif()
+
+ _fltk_make_alias(fltk fltk::fltk)
+ _fltk_make_alias(fltk-shared fltk::fltk-shared)
+
+ _fltk_make_alias(fluid fltk::fluid)
+ _fltk_make_alias(fluid-cmd fltk::fluid-cmd)
+
+ _fltk_make_alias(fltk-options fltk::options)
+ _fltk_make_alias(fltk-options-cmd fltk::options-cmd)
+
+ foreach(target cairo forms gl images jpeg png z)
+ _fltk_make_alias(fltk_${target} fltk::${target})
+ _fltk_make_alias(fltk_${target}-shared fltk::${target}-shared)
+ endforeach()
+
+ endif() # Create aliases ...
+
+ # set FLTK_FLUID_EXECUTABLE: try to use the fltk::target name if it
+ # exists and fall back to 'fluid-cmd' or 'fluid' if not. This will
+ # eventually call the build host's fluid if found in the users's PATH
+
+ if(TARGET fltk::fluid-cmd) # Windows only
+ set(FLTK_FLUID_EXECUTABLE fltk::fluid-cmd)
+ elseif(TARGET fltk::fluid)
+ set(FLTK_FLUID_EXECUTABLE fltk::fluid)
+ elseif(WIN32)
+ set(FLTK_FLUID_EXECUTABLE fluid-cmd)
+ else()
+ set(FLTK_FLUID_EXECUTABLE fluid)
+ endif()
+
+endif(CMAKE_CROSSCOMPILING)
+
+# Debug: should be commented out
+# message(STATUS "FLTKConfig.cmake: FLTK_FLUID_EXECUTABLE = '${FLTK_FLUID_EXECUTABLE}'")

View File

@ -5,14 +5,13 @@ vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO fltk/fltk
REF "release-${VERSION}"
SHA512 2dfeeed9fdc6db62a6620e7c846dbe0bf97dacce3077832e314a35bf16ba6a45803373188a7b3954eada5829385b9914241270b71f12aaf3e9e3df45eb2b1b95
SHA512 b18ff6322349af4416a37d28c4f42ebe355260786ed42bdd54dcc20dc92db1a38a8db74e6d637fdff8f320bdd51e2515c0fa939d30679c5f22ea99fb32c97204
PATCHES
dependencies.patch
config-path.patch
include.patch
fix-system-link.patch
math-h-polyfill.patch
fix-build-executable.patch #https://github.com/fltk/fltk/commit/63d7c71e1a926f487f22aa26042a2582624b3b17
)
file(REMOVE_RECURSE
"${SOURCE_PATH}/jpeg"

View File

@ -1,7 +1,6 @@
{
"name": "fltk",
"version": "1.3.9",
"port-version": 2,
"version": "1.3.11",
"description": "FLTK (pronounced fulltick) is a cross-platform C++ GUI toolkit for UNIX/Linux (X11), Microsoft Windows, and MacOS X. FLTK provides modern GUI functionality without the bloat and supports 3D graphics via OpenGL and its built-in GLUT emulation.",
"homepage": "https://www.fltk.org/",
"license": null,

View File

@ -2833,8 +2833,8 @@
"port-version": 1
},
"fltk": {
"baseline": "1.3.9",
"port-version": 2
"baseline": "1.3.11",
"port-version": 0
},
"fluidlite": {
"baseline": "2023-04-18",

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "1aa2a3f1e9baf7547c85ff2a6899d98646e92d55",
"version": "1.3.11",
"port-version": 0
},
{
"git-tree": "338d88ae1c146411ee45b68b14f7f72af6b33239",
"version": "1.3.9",