Patch for CMakeLists.txt by Wolfgang Stoeggl fixes several things; see Bugzilla

#2584/
This commit is contained in:
Philip.Hazel 2020-06-01 16:36:00 +00:00
parent e0c6029a62
commit e44976f929
3 changed files with 24 additions and 11 deletions

View File

@ -96,8 +96,8 @@
PROJECT(PCRE2 C) PROJECT(PCRE2 C)
# Increased minimum to 2.8.0 to support newer add_test features. # Increased minimum to 2.8.5 to support GNUInstallDirs.
CMAKE_MINIMUM_REQUIRED(VERSION 2.8.0) CMAKE_MINIMUM_REQUIRED(VERSION 2.8.5)
# Set policy CMP0026 to avoid warnings for the use of LOCATION in # Set policy CMP0026 to avoid warnings for the use of LOCATION in
# GET_TARGET_PROPERTY. This should no longer be required. # GET_TARGET_PROPERTY. This should no longer be required.
@ -124,6 +124,7 @@ INCLUDE(CheckFunctionExists)
INCLUDE(CheckSymbolExists) INCLUDE(CheckSymbolExists)
INCLUDE(CheckIncludeFile) INCLUDE(CheckIncludeFile)
INCLUDE(CheckTypeSize) INCLUDE(CheckTypeSize)
INCLUDE(GNUInstallDirs) # for CMAKE_INSTALL_LIBDIR
CHECK_INCLUDE_FILE(dirent.h HAVE_DIRENT_H) CHECK_INCLUDE_FILE(dirent.h HAVE_DIRENT_H)
CHECK_INCLUDE_FILE(stdint.h HAVE_STDINT_H) CHECK_INCLUDE_FILE(stdint.h HAVE_STDINT_H)
@ -464,7 +465,7 @@ foreach(configure_line ${configure_lines})
foreach(_substitution_variable ${SEARCHED_VARIABLES}) foreach(_substitution_variable ${SEARCHED_VARIABLES})
string(TOUPPER ${_substitution_variable} _substitution_variable_upper) string(TOUPPER ${_substitution_variable} _substitution_variable_upper)
if (NOT ${_substitution_variable_upper}) if (NOT ${_substitution_variable_upper})
string(REGEX MATCH "m4_define\\(${_substitution_variable}, *\\[(.*)\\]" MACTHED_STRING ${configure_line}) string(REGEX MATCH "m4_define\\(${_substitution_variable}, *\\[(.*)\\]" MATCHED_STRING ${configure_line})
if (CMAKE_MATCH_1) if (CMAKE_MATCH_1)
set(${_substitution_variable_upper} ${CMAKE_MATCH_1}) set(${_substitution_variable_upper} ${CMAKE_MATCH_1})
endif() endif()
@ -500,7 +501,7 @@ SET(PACKAGE_VERSION "${PCRE2_MAJOR}.${PCRE2_MINOR}")
SET(prefix ${CMAKE_INSTALL_PREFIX}) SET(prefix ${CMAKE_INSTALL_PREFIX})
SET(exec_prefix "\${prefix}") SET(exec_prefix "\${prefix}")
SET(libdir "\${exec_prefix}/lib") SET(libdir "\${exec_prefix}/${CMAKE_INSTALL_LIBDIR}")
SET(includedir "\${prefix}/include") SET(includedir "\${prefix}/include")
CONFIGURE_FILE(libpcre2-posix.pc.in libpcre2-posix.pc @ONLY) CONFIGURE_FILE(libpcre2-posix.pc.in libpcre2-posix.pc @ONLY)
SET(pkg_config_files ${pkg_config_files} "${CMAKE_CURRENT_BINARY_DIR}/libpcre2-posix.pc") SET(pkg_config_files ${pkg_config_files} "${CMAKE_CURRENT_BINARY_DIR}/libpcre2-posix.pc")
@ -882,9 +883,9 @@ SET(CMAKE_INSTALL_ALWAYS 1)
INSTALL(TARGETS ${targets} INSTALL(TARGETS ${targets}
RUNTIME DESTINATION bin RUNTIME DESTINATION bin
LIBRARY DESTINATION lib LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
ARCHIVE DESTINATION lib) ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
INSTALL(FILES ${pkg_config_files} DESTINATION lib/pkgconfig) INSTALL(FILES ${pkg_config_files} DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
INSTALL(FILES "${CMAKE_CURRENT_BINARY_DIR}/pcre2-config" INSTALL(FILES "${CMAKE_CURRENT_BINARY_DIR}/pcre2-config"
DESTINATION bin DESTINATION bin
# Set 0755 permissions # Set 0755 permissions
@ -935,7 +936,7 @@ IF(PCRE2_SHOW_REPORT)
ENDIF(CMAKE_C_FLAGS) ENDIF(CMAKE_C_FLAGS)
MESSAGE(STATUS "") MESSAGE(STATUS "")
MESSAGE(STATUS "") MESSAGE(STATUS "")
MESSAGE(STATUS "PCRE2 configuration summary:") MESSAGE(STATUS "PCRE2-${PCRE2_MAJOR}.${PCRE2_MINOR} configuration summary:")
MESSAGE(STATUS "") MESSAGE(STATUS "")
MESSAGE(STATUS " Install prefix .................. : ${CMAKE_INSTALL_PREFIX}") MESSAGE(STATUS " Install prefix .................. : ${CMAKE_INSTALL_PREFIX}")
MESSAGE(STATUS " C compiler ...................... : ${CMAKE_C_COMPILER}") MESSAGE(STATUS " C compiler ...................... : ${CMAKE_C_COMPILER}")

View File

@ -12,6 +12,18 @@ invented by PH.
2. Fix inifinite loop when a single byte newline is searched in JIT when 2. Fix inifinite loop when a single byte newline is searched in JIT when
invalid utf8 mode is enabled. invalid utf8 mode is enabled.
3. Updated CMakeLists.txt with patch from Wolfgang Stöggl (Bugzilla #2584):
- Include GNUInstallDirs and use ${CMAKE_INSTALL_LIBDIR} instead of hardcoded
lib. This allows differentiation between lib and lib64.
CMAKE_INSTALL_LIBDIR is used for installation of libraries and also for
pkgconfig file generation.
- Add the version of PCRE2 to the configuration summary like ./configure
does.
- Fix typo: MACTHED_STRING->MATCHED_STRING
Version 10.35 09-May-2020 Version 10.35 09-May-2020
--------------------------- ---------------------------

View File

@ -9,9 +9,9 @@ dnl The PCRE2_PRERELEASE feature is for identifying release candidates. It might
dnl be defined as -RC2, for example. For real releases, it should be empty. dnl be defined as -RC2, for example. For real releases, it should be empty.
m4_define(pcre2_major, [10]) m4_define(pcre2_major, [10])
m4_define(pcre2_minor, [35]) m4_define(pcre2_minor, [36])
m4_define(pcre2_prerelease, []) m4_define(pcre2_prerelease, [-RC1])
m4_define(pcre2_date, [2020-05-09]) m4_define(pcre2_date, [2020-06-01])
# Libtool shared library interface versions (current:revision:age) # Libtool shared library interface versions (current:revision:age)
m4_define(libpcre2_8_version, [10:0:10]) m4_define(libpcre2_8_version, [10:0:10])