From 53491f2ca0f197a84f15cf10949f13450ce7d021 Mon Sep 17 00:00:00 2001 From: Albrecht Schlosser Date: Tue, 6 May 2025 19:10:00 +0200 Subject: Remove hardcoded version numbers: part 1 The goal is to change the version number for a new release only in CMakeLists.txt. This is the first step. Details: - CMake/gen_config.cmake: this new file is included to generate the header files config.h (private, root directory), and FL/fl_config.h (public, can be installed). This file implements also ABI version checks (removed from FL/Enumerations.H and with more checks). Warnings are issued if the chosen ABI version is invalid. - CMake/export.cmake: code to generate 'config.h' was moved to CMake/gen_config.cmake. - CMake/options.cmake: set default of FLTK_BUILD_FORMS=OFF + comments - CMakeLists.txt: move generation of FL/fl_config.h to gen_config.cmake, add API and ABI versions to CMake summary, - FL/Enumerations.H: remove most of the version number details which are now included in FL/fl_config.h. This needed also some doxygen related changes. - README.CMake.txt: improve docs of FL_ABI_VERSION and some more. Reflect the new default of CMake option FLTK_BUILD_FORMS (OFF). - documentation/Doxyfile.in: add FL/fl_config.h to file list. This file is created in the build tree (and may be "installed"). - fl_config.h.in: add version number details that have been moved here from Enumerations.H (used to generate FL/fl_config.h). --- CMake/options.cmake | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'CMake/options.cmake') diff --git a/CMake/options.cmake b/CMake/options.cmake index 8411b92ec..3ff6d06f5 100644 --- a/CMake/options.cmake +++ b/CMake/options.cmake @@ -75,9 +75,9 @@ add_definitions(${FLTK_ARCHFLAGS}) ####################################################################### set(FLTK_ABI_VERSION "" CACHE STRING - "FLTK ABI Version FL_ABI_VERSION: 1xxyy for 1.x.y (xx,yy with leading zero)" + "FLTK ABI Version FL_ABI_VERSION: 1xxyy for 1.x.y (xx,yy with leading zeroes)" ) -set(FL_ABI_VERSION ${FLTK_ABI_VERSION}) +# see also CMake/gen_config.cmake ####################################################################### # Select MSVC (Visual Studio) Runtime: DLL (/MDx) or static (/MTx) @@ -201,8 +201,8 @@ if(FLTK_USE_BUNDLED_PNG) # Definitions for 'config.h' - do we still need this? # See also png/CMakeLists.txt (target_compile_definitions). - # Note: config.h is generated by either configure or CMake, - # hence we should support it in 1.4.x (may be changed in 1.5.0) + # Note: config.h is generated by CMake (or configure in 1.4), hence + # we support it in 1.4.x, but this may be changed in 1.5.0. (?) set(HAVE_PNG_H 1) set(HAVE_PNG_GET_VALID 1) @@ -439,7 +439,7 @@ option(FLTK_BUILD_SHARED_LIBS option(FLTK_OPTION_PRINT_SUPPORT "allow print support" ON) option(FLTK_OPTION_FILESYSTEM_SUPPORT "allow file system support" ON) -option(FLTK_BUILD_FORMS "Build forms compatibility library" ON) +option(FLTK_BUILD_FORMS "Build forms compatibility library" OFF) option(FLTK_BUILD_FLUID "Build FLUID" ON) option(FLTK_BUILD_FLTK_OPTIONS "Build fltk-options" ON) option(FLTK_BUILD_EXAMPLES "Build example programs" OFF) -- cgit v1.2.3