diff options
-rw-r--r-- | Help/release/3.14.rst | 14 | ||||
-rw-r--r-- | Modules/FindFontconfig.cmake | 56 | ||||
-rw-r--r-- | Modules/FindX11.cmake | 2 | ||||
-rw-r--r-- | Tests/FindFontconfig/Test/CMakeLists.txt | 6 |
4 files changed, 46 insertions, 32 deletions
diff --git a/Help/release/3.14.rst b/Help/release/3.14.rst index 5038a75..f2a91c6 100644 --- a/Help/release/3.14.rst +++ b/Help/release/3.14.rst @@ -377,3 +377,17 @@ Other Changes * CMake no longer issues a warning if a target listed in an :command:`install(TARGETS)` command has its :prop_tgt:`EXCLUDE_FROM_ALL` property set to true. + +Updates +======= + +Changes made since CMake 3.14.0 include the following. + +3.14.1 +------ + +* The :module:`FindFontconfig` module added by 3.14.0 accidentally + used uppercase ``FONTCONFIG_*`` variable names that do not match + our conventions. 3.14.1 revises the module to use ``Fontconfig_*`` + variable names. This is incompatible with 3.14.0 but since the + module is new in the 3.14 series usage should not yet be widespread. diff --git a/Modules/FindFontconfig.cmake b/Modules/FindFontconfig.cmake index 96e1e76..a6f0180 100644 --- a/Modules/FindFontconfig.cmake +++ b/Modules/FindFontconfig.cmake @@ -18,15 +18,15 @@ Result Variables This will define the following variables in your project: -``FONTCONFIG_FOUND`` +``Fontconfig_FOUND`` true if (the requested version of) Fontconfig is available. -``FONTCONFIG_VERSION`` +``Fontconfig_VERSION`` the version of Fontconfig. -``FONTCONFIG_LIBRARIES`` +``Fontconfig_LIBRARIES`` the libraries to link against to use Fontconfig. -``FONTCONFIG_INCLUDE_DIRS`` +``Fontconfig_INCLUDE_DIRS`` where to find the Fontconfig headers. -``FONTCONFIG_COMPILE_OPTIONS`` +``Fontconfig_COMPILE_OPTIONS`` this should be passed to target_compile_options(), if the target is not used for linking @@ -37,10 +37,10 @@ This will define the following variables in your project: # in the FIND_PATH() and FIND_LIBRARY() calls find_package(PkgConfig QUIET) pkg_check_modules(PKG_FONTCONFIG QUIET fontconfig) -set(FONTCONFIG_COMPILE_OPTIONS ${PKG_FONTCONFIG_CFLAGS_OTHER}) -set(FONTCONFIG_VERSION ${PKG_FONTCONFIG_VERSION}) +set(Fontconfig_COMPILE_OPTIONS ${PKG_FONTCONFIG_CFLAGS_OTHER}) +set(Fontconfig_VERSION ${PKG_FONTCONFIG_VERSION}) -find_path( FONTCONFIG_INCLUDE_DIR +find_path( Fontconfig_INCLUDE_DIR NAMES fontconfig/fontconfig.h HINTS @@ -48,24 +48,24 @@ find_path( FONTCONFIG_INCLUDE_DIR /usr/X11/include ) -find_library( FONTCONFIG_LIBRARY +find_library( Fontconfig_LIBRARY NAMES fontconfig PATHS ${PKG_FONTCONFIG_LIBRARY_DIRS} ) -if (FONTCONFIG_INCLUDE_DIR AND NOT FONTCONFIG_VERSION) - file(STRINGS ${FONTCONFIG_INCLUDE_DIR}/fontconfig/fontconfig.h _contents REGEX "^#define[ \t]+FC_[A-Z]+[ \t]+[0-9]+$") - unset(FONTCONFIG_VERSION) +if (Fontconfig_INCLUDE_DIR AND NOT Fontconfig_VERSION) + file(STRINGS ${Fontconfig_INCLUDE_DIR}/fontconfig/fontconfig.h _contents REGEX "^#define[ \t]+FC_[A-Z]+[ \t]+[0-9]+$") + unset(Fontconfig_VERSION) foreach(VPART MAJOR MINOR REVISION) foreach(VLINE ${_contents}) if(VLINE MATCHES "^#define[\t ]+FC_${VPART}[\t ]+([0-9]+)$") - set(FONTCONFIG_VERSION_PART "${CMAKE_MATCH_1}") - if(FONTCONFIG_VERSION) - string(APPEND FONTCONFIG_VERSION ".${FONTCONFIG_VERSION_PART}") + set(Fontconfig_VERSION_PART "${CMAKE_MATCH_1}") + if(Fontconfig_VERSION) + string(APPEND Fontconfig_VERSION ".${Fontconfig_VERSION_PART}") else() - set(FONTCONFIG_VERSION "${FONTCONFIG_VERSION_PART}") + set(Fontconfig_VERSION "${Fontconfig_VERSION_PART}") endif() endif() endforeach() @@ -75,27 +75,27 @@ endif () include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Fontconfig FOUND_VAR - FONTCONFIG_FOUND + Fontconfig_FOUND REQUIRED_VARS - FONTCONFIG_LIBRARY - FONTCONFIG_INCLUDE_DIR + Fontconfig_LIBRARY + Fontconfig_INCLUDE_DIR VERSION_VAR - FONTCONFIG_VERSION + Fontconfig_VERSION ) -if(FONTCONFIG_FOUND AND NOT TARGET Fontconfig::Fontconfig) +if(Fontconfig_FOUND AND NOT TARGET Fontconfig::Fontconfig) add_library(Fontconfig::Fontconfig UNKNOWN IMPORTED) set_target_properties(Fontconfig::Fontconfig PROPERTIES - IMPORTED_LOCATION "${FONTCONFIG_LIBRARY}" - INTERFACE_COMPILE_OPTIONS "${FONTCONFIG_COMPILE_OPTIONS}" - INTERFACE_INCLUDE_DIRECTORIES "${FONTCONFIG_INCLUDE_DIR}" + IMPORTED_LOCATION "${Fontconfig_LIBRARY}" + INTERFACE_COMPILE_OPTIONS "${Fontconfig_COMPILE_OPTIONS}" + INTERFACE_INCLUDE_DIRECTORIES "${Fontconfig_INCLUDE_DIR}" ) endif() -mark_as_advanced(FONTCONFIG_LIBRARY FONTCONFIG_INCLUDE_DIR) +mark_as_advanced(Fontconfig_LIBRARY Fontconfig_INCLUDE_DIR) -if(FONTCONFIG_FOUND) - set(FONTCONFIG_LIBRARIES ${FONTCONFIG_LIBRARY}) - set(FONTCONFIG_INCLUDE_DIRS ${FONTCONFIG_INCLUDE_DIR}) +if(Fontconfig_FOUND) + set(Fontconfig_LIBRARIES ${Fontconfig_LIBRARY}) + set(Fontconfig_INCLUDE_DIRS ${Fontconfig_INCLUDE_DIR}) endif() diff --git a/Modules/FindX11.cmake b/Modules/FindX11.cmake index 46a7449..b28dd12 100644 --- a/Modules/FindX11.cmake +++ b/Modules/FindX11.cmake @@ -206,7 +206,7 @@ if (UNIX) if(X11_Xft_LIB AND X11_Xft_INCLUDE_PATH) find_package(Freetype QUIET) find_package(Fontconfig QUIET) - if (FREETYPE_FOUND AND FONTCONFIG_FOUND) + if (FREETYPE_FOUND AND Fontconfig_FOUND) set(X11_Xft_FOUND TRUE) endif () list(APPEND X11_INCLUDE_DIR ${X11_Xft_INCLUDE_PATH}) diff --git a/Tests/FindFontconfig/Test/CMakeLists.txt b/Tests/FindFontconfig/Test/CMakeLists.txt index 81db3ba..36c76b1 100644 --- a/Tests/FindFontconfig/Test/CMakeLists.txt +++ b/Tests/FindFontconfig/Test/CMakeLists.txt @@ -4,13 +4,13 @@ include(CTest) find_package(Fontconfig REQUIRED) -add_definitions(-DCMAKE_EXPECTED_FONTCONFIG_VERSION="${FONTCONFIG_VERSION}") +add_definitions(-DCMAKE_EXPECTED_FONTCONFIG_VERSION="${Fontconfig_VERSION}") add_executable(test_tgt main.c) target_link_libraries(test_tgt Fontconfig::Fontconfig) add_test(NAME test_tgt COMMAND test_tgt) add_executable(test_var main.c) -target_include_directories(test_var PRIVATE ${FONTCONFIG_INCLUDE_DIRS}) -target_link_libraries(test_var PRIVATE ${FONTCONFIG_LIBRARIES}) +target_include_directories(test_var PRIVATE ${Fontconfig_INCLUDE_DIRS}) +target_link_libraries(test_var PRIVATE ${Fontconfig_LIBRARIES}) add_test(NAME test_var COMMAND test_var) |