summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt16
-rw-r--r--fluid/CMakeLists.txt5
2 files changed, 20 insertions, 1 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index ac5adb44e..7ac4e112d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -57,6 +57,11 @@ if(0)
fl_debug_var(CMAKE_VERSION)
endif()
+# Set FLTK_VERSION in the cache so user projects can access it,
+# for instance if FLTK is built as a subproject (FetchContent)
+
+set(FLTK_VERSION ${FLTK_VERSION} CACHE STRING "FLTK version" FORCE)
+
#######################################################################
# basic setup
#######################################################################
@@ -115,13 +120,22 @@ endif()
add_subdirectory(src)
#######################################################################
-# build fluid
+# build fluid (optional)
#######################################################################
+set(FLTK_FLUID_EXECUTABLE "")
+
if(FLTK_BUILD_FLUID)
add_subdirectory(fluid)
endif(FLTK_BUILD_FLUID)
+# Set FLTK_FLUID_EXECUTABLE in the cache for user projects.
+# This can be used if FLTK has been built as a subproject.
+
+set(FLTK_FLUID_EXECUTABLE
+ "${FLTK_FLUID_EXECUTABLE}" CACHE STRING
+ "FLTK's 'fluid' executable")
+
#######################################################################
# build fltk-options
#######################################################################
diff --git a/fluid/CMakeLists.txt b/fluid/CMakeLists.txt
index 28b5db745..66f16a99f 100644
--- a/fluid/CMakeLists.txt
+++ b/fluid/CMakeLists.txt
@@ -177,8 +177,13 @@ if(WIN32)
list(APPEND TARGETS fluid-cmd)
add_executable(fluid-cmd fluid.cxx)
target_link_libraries(fluid-cmd PRIVATE fluid-lib)
+ set(FLTK_FLUID_EXECUTABLE fltk::fluid-cmd)
+else()
+ set(FLTK_FLUID_EXECUTABLE fltk::fluid)
endif()
+set(FLTK_FLUID_EXECUTABLE "${FLTK_FLUID_EXECUTABLE}" PARENT_SCOPE)
+
# Create aliases for all targets
foreach(tgt ${TARGETS})