[Cmake-commits] CMake branch, master, updated. v3.14.0-545-ga60f1c4

Kitware Robot kwrobot at kitware.com
Wed Mar 27 14:13:03 EDT 2019


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".

The branch, master has been updated
       via  a60f1c4faf32e0e1d89a4f88e3b5851e1c0aec27 (commit)
       via  c03ee3ca714715671ff54cd2f61217b62637ff14 (commit)
       via  a3a1e69f8a8e6571bbb8c9257b401f04c22bd1e2 (commit)
       via  1d16eae868b2542789de9d2b6224c8d3185540d4 (commit)
      from  c126e80b5a7a9cf98ebea7c34a2b5b5f848dfab1 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a60f1c4faf32e0e1d89a4f88e3b5851e1c0aec27
commit a60f1c4faf32e0e1d89a4f88e3b5851e1c0aec27
Merge: c03ee3c 1d16eae
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Wed Mar 27 18:11:37 2019 +0000
Commit:     Kitware Robot <kwrobot at kitware.com>
CommitDate: Wed Mar 27 14:11:57 2019 -0400

    Merge topic 'jacoco_parser_crash'
    
    1d16eae868 ctest_coverage: fix out-of-bounds index in Jacoco parser
    
    Acked-by: Kitware Robot <kwrobot at kitware.com>
    Merge-request: !3147


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=c03ee3ca714715671ff54cd2f61217b62637ff14
commit c03ee3ca714715671ff54cd2f61217b62637ff14
Merge: c126e80 a3a1e69
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Wed Mar 27 18:11:01 2019 +0000
Commit:     Kitware Robot <kwrobot at kitware.com>
CommitDate: Wed Mar 27 14:11:08 2019 -0400

    Merge topic 'FindFontconfig-var-case'
    
    a3a1e69f8a FindFontconfig: Convert module variables to camel case
    
    Acked-by: Kitware Robot <kwrobot at kitware.com>
    Merge-request: !3153


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a3a1e69f8a8e6571bbb8c9257b401f04c22bd1e2
commit a3a1e69f8a8e6571bbb8c9257b401f04c22bd1e2
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Tue Mar 26 13:44:52 2019 -0400
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Tue Mar 26 14:14:09 2019 -0400

    FindFontconfig: Convert module variables to camel case
    
    Our documented standard for find module variable names is to match the
    case of the find module package name.  This was overlooked when the
    module was added by commit 84e7920b3a (FindFontconfig: Add module to
    find Fontconfig, 2018-09-27, v3.14.0-rc1~523^2).
    
    The module was released with the upper case names in CMake 3.14.0, so
    fix it to have camel case names in 3.14.1.  This is incompatible but
    anyone using a given release series should be using the latest patch on
    it and we've made breaking fixups on newly released features like this
    before.
    
    Reported-by: Christophe Giboudeaux <christophe at krop.fr>
    Fixes: #19094

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)

https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1d16eae868b2542789de9d2b6224c8d3185540d4
commit 1d16eae868b2542789de9d2b6224c8d3185540d4
Author:     Sylvain Joubert <joubert.sy at gmail.com>
AuthorDate: Tue Mar 26 10:52:57 2019 +0100
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Tue Mar 26 11:50:30 2019 -0400

    ctest_coverage: fix out-of-bounds index in Jacoco parser
    
    When the current source file is not found the FilePath variable was left
    with the previous path content. In case the previous file had less lines
    than the current one and there are 'line' entries for the current one
    with higher number we ended up in a buffer overflow while indexing the
    previous file entry with a line number higher.  By clearing the
    FilePath, the empty() guard triggers correctly on an empty path and it
    avoid modifying the wrong data.

diff --git a/Source/CTest/cmParseJacocoCoverage.cxx b/Source/CTest/cmParseJacocoCoverage.cxx
index 61c5dcb..b78142a 100644
--- a/Source/CTest/cmParseJacocoCoverage.cxx
+++ b/Source/CTest/cmParseJacocoCoverage.cxx
@@ -29,6 +29,7 @@ protected:
       this->PackageName = atts[1];
       this->PackagePath.clear();
     } else if (name == "sourcefile") {
+      this->FilePath.clear();
       std::string fileName = atts[1];
 
       if (this->PackagePath.empty()) {

-----------------------------------------------------------------------

Summary of changes:
 Help/release/3.14.rst                    | 14 ++++++++
 Modules/FindFontconfig.cmake             | 56 ++++++++++++++++----------------
 Modules/FindX11.cmake                    |  2 +-
 Source/CTest/cmParseJacocoCoverage.cxx   |  1 +
 Tests/FindFontconfig/Test/CMakeLists.txt |  6 ++--
 5 files changed, 47 insertions(+), 32 deletions(-)


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list