Diff for /embedaddon/pcre/CMakeLists.txt between versions 1.1.1.1 and 1.1.1.4

version 1.1.1.1, 2012/02/21 23:05:51 version 1.1.1.4, 2013/07/22 08:25:55
Line 51 Line 51
 # 2011-10-04 Sheri added scripts to provide needed variables and to execute  # 2011-10-04 Sheri added scripts to provide needed variables and to execute
 #            RunTest.bat in Win32 (for effortless testing with "make test")  #            RunTest.bat in Win32 (for effortless testing with "make test")
 # 2011-10-04 Sheri Increased minimum required cmake version  # 2011-10-04 Sheri Increased minimum required cmake version
   # 2012-01-06 PH removed pcre_info.c and added pcre_string_utils.c
   # 2012-01-10 Zoltan Herczeg added libpcre16 support
   # 2012-01-13 Stephen Kelly added out of source build support
   # 2012-01-17 PH applied Stephen Kelly's patch to parse the version data out
   #            of the configure.ac file
   # 2012-02-26 PH added support for libedit
   # 2012-09-06 PH added support for PCRE_EBCDIC_NL25
   # 2012-09-08 ChPe added PCRE32 support
   # 2012-10-23 PH added support for VALGRIND and GCOV
   # 2012-12-08 PH added patch from Daniel Richard G to quash some MSVC warnings
   
 PROJECT(PCRE C CXX)  PROJECT(PCRE C CXX)
   
Line 64  SET(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake) # f Line 74  SET(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake) # f
 FIND_PACKAGE( BZip2 )  FIND_PACKAGE( BZip2 )
 FIND_PACKAGE( ZLIB )  FIND_PACKAGE( ZLIB )
 FIND_PACKAGE( Readline )  FIND_PACKAGE( Readline )
   FIND_PACKAGE( Editline )
   
 # Configuration checks  # Configuration checks
   
Line 101  CHECK_TYPE_SIZE("unsigned long long"    UNSIGNED_LONG_ Line 112  CHECK_TYPE_SIZE("unsigned long long"    UNSIGNED_LONG_
 SET(BUILD_SHARED_LIBS OFF CACHE BOOL  SET(BUILD_SHARED_LIBS OFF CACHE BOOL
     "Build shared libraries instead of static ones.")      "Build shared libraries instead of static ones.")
   
   OPTION(PCRE_BUILD_PCRE8 "Build 8 bit PCRE library" ON)
   
   OPTION(PCRE_BUILD_PCRE16 "Build 16 bit PCRE library" OFF)
   
   OPTION(PCRE_BUILD_PCRE32 "Build 32 bit PCRE library" OFF)
   
 OPTION(PCRE_BUILD_PCRECPP "Build the PCRE C++ library (pcrecpp)." ON)  OPTION(PCRE_BUILD_PCRECPP "Build the PCRE C++ library (pcrecpp)." ON)
   
 SET(PCRE_EBCDIC OFF CACHE BOOL  SET(PCRE_EBCDIC OFF CACHE BOOL
    "Use EBCDIC coding instead of ASCII. (This is rarely used outside of mainframe systems)")    "Use EBCDIC coding instead of ASCII. (This is rarely used outside of mainframe systems.)")
   
   SET(PCRE_EBCDIC_NL25 OFF CACHE BOOL
       "Use 0x25 as EBCDIC NL character instead of 0x15; implies EBCDIC.")
   
 SET(PCRE_LINK_SIZE "2" CACHE STRING  SET(PCRE_LINK_SIZE "2" CACHE STRING
     "Internal link size (2, 3 or 4 allowed). See LINK_SIZE in config.h.in for details.")      "Internal link size (2, 3 or 4 allowed). See LINK_SIZE in config.h.in for details.")
   
Line 133  SET(PCRE_SUPPORT_JIT OFF CACHE BOOL Line 153  SET(PCRE_SUPPORT_JIT OFF CACHE BOOL
 SET(PCRE_SUPPORT_PCREGREP_JIT ON CACHE BOOL  SET(PCRE_SUPPORT_PCREGREP_JIT ON CACHE BOOL
     "Enable use of Just-in-time compiling in pcregrep.")      "Enable use of Just-in-time compiling in pcregrep.")
   
   SET(PCRE_SUPPORT_UTF OFF CACHE BOOL
       "Enable support for Unicode Transformation Format (UTF-8/UTF-16/UTF-32) encoding.")
   
 SET(PCRE_SUPPORT_UNICODE_PROPERTIES OFF CACHE BOOL  SET(PCRE_SUPPORT_UNICODE_PROPERTIES OFF CACHE BOOL
    "Enable support for Unicode properties. (If set, UTF-8 support will be enabled as well)")    "Enable support for Unicode properties (if set, UTF support will be enabled as well).")
   
 SET(PCRE_SUPPORT_UTF8 OFF CACHE BOOL  
     "Enable support for the Unicode UTF-8 encoding.")  
   
 SET(PCRE_SUPPORT_BSR_ANYCRLF OFF CACHE BOOL  SET(PCRE_SUPPORT_BSR_ANYCRLF OFF CACHE BOOL
     "ON=Backslash-R matches only LF CR and CRLF, OFF=Backslash-R matches all Unicode Linebreaks")      "ON=Backslash-R matches only LF CR and CRLF, OFF=Backslash-R matches all Unicode Linebreaks")
   
   SET(PCRE_SUPPORT_VALGRIND OFF CACHE BOOL
       "Enable Valgrind support.")
   
   SET(PCRE_SUPPORT_COVERAGE OFF CACHE BOOL
       "Enable code coverage support using gcov.")
   
 OPTION(PCRE_SHOW_REPORT    "Show the final configuration report" ON)  OPTION(PCRE_SHOW_REPORT    "Show the final configuration report" ON)
 OPTION(PCRE_BUILD_PCREGREP "Build pcregrep" ON)  OPTION(PCRE_BUILD_PCREGREP "Build pcregrep" ON)
 OPTION(PCRE_BUILD_TESTS    "Build the tests" ON)  OPTION(PCRE_BUILD_TESTS    "Build the tests" ON)
   
 IF (PCRE_BUILD_TESTS)  
   IF (NOT PCRE_BUILD_PCREGREP)  
     MESSAGE(STATUS "** Building tests requires pcregrep: PCRE_BUILD_PCREGREP forced ON")  
     SET(PCRE_BUILD_PCREGREP ON)  
   ENDIF(NOT PCRE_BUILD_PCREGREP)  
 ENDIF(PCRE_BUILD_TESTS)  
   
 IF (MINGW)  IF (MINGW)
   OPTION(NON_STANDARD_LIB_PREFIX    OPTION(NON_STANDARD_LIB_PREFIX
          "ON=Shared libraries built in mingw will be named pcre.dll, etc., instead of libpcre.dll, etc."           "ON=Shared libraries built in mingw will be named pcre.dll, etc., instead of libpcre.dll, etc."
Line 179  IF(PCRE_SUPPORT_LIBZ) Line 198  IF(PCRE_SUPPORT_LIBZ)
   INCLUDE_DIRECTORIES(${ZLIB_INCLUDE_DIR})    INCLUDE_DIRECTORIES(${ZLIB_INCLUDE_DIR})
 ENDIF(PCRE_SUPPORT_LIBZ)  ENDIF(PCRE_SUPPORT_LIBZ)
   
   # editline lib
   IF(EDITLINE_FOUND)
     OPTION (PCRE_SUPPORT_LIBEDIT  "Enable support for linking pcretest with libedit." OFF)
   ENDIF(EDITLINE_FOUND)
   IF(PCRE_SUPPORT_LIBEDIT)
     INCLUDE_DIRECTORIES(${EDITLINE_INCLUDE_DIR})
   ENDIF(PCRE_SUPPORT_LIBEDIT)
   
 # readline lib  # readline lib
 IF(READLINE_FOUND)  IF(READLINE_FOUND)
   OPTION (PCRE_SUPPORT_LIBREADLINE  "Enable support for linking pcretest with libreadline." ON)    OPTION (PCRE_SUPPORT_LIBREADLINE  "Enable support for linking pcretest with libreadline." ON)
Line 215  IF(NOT BUILD_SHARED_LIBS) Line 242  IF(NOT BUILD_SHARED_LIBS)
         SET(PCRE_STATIC 1)          SET(PCRE_STATIC 1)
 ENDIF(NOT BUILD_SHARED_LIBS)  ENDIF(NOT BUILD_SHARED_LIBS)
   
   IF(NOT PCRE_BUILD_PCRE8 AND NOT PCRE_BUILD_PCRE16 AND NOT PCRE_BUILD_PCRE32)
           MESSAGE(FATAL_ERROR "At least one of PCRE_BUILD_PCRE8, PCRE_BUILD_PCRE16 or PCRE_BUILD_PCRE32 must be enabled")
   ENDIF(NOT PCRE_BUILD_PCRE8 AND NOT PCRE_BUILD_PCRE16 AND NOT PCRE_BUILD_PCRE32)
   
   IF(PCRE_BUILD_PCRE8)
           SET(SUPPORT_PCRE8 1)
   ENDIF(PCRE_BUILD_PCRE8)
   
   IF(PCRE_BUILD_PCRE16)
           SET(SUPPORT_PCRE16 1)
   ENDIF(PCRE_BUILD_PCRE16)
   
   IF(PCRE_BUILD_PCRE32)
           SET(SUPPORT_PCRE32 1)
   ENDIF(PCRE_BUILD_PCRE32)
   
   IF(PCRE_BUILD_PCRECPP AND NOT PCRE_BUILD_PCRE8)
           MESSAGE(STATUS "** PCRE_BUILD_PCRE8 must be enabled for the C++ library support")
           SET(PCRE_BUILD_PCRECPP OFF)
   ENDIF(PCRE_BUILD_PCRECPP AND NOT PCRE_BUILD_PCRE8)
   
   IF(PCRE_BUILD_PCREGREP AND NOT PCRE_BUILD_PCRE8)
           MESSAGE(STATUS "** PCRE_BUILD_PCRE8 must be enabled for the pcregrep program")
           SET(PCRE_BUILD_PCREGREP OFF)
   ENDIF(PCRE_BUILD_PCREGREP AND NOT PCRE_BUILD_PCRE8)
   
   IF(PCRE_SUPPORT_LIBREADLINE AND PCRE_SUPPORT_LIBEDIT)
           MESSAGE(FATAL_ERROR "Only one of libreadline or libeditline can be specified")
   ENDIF(PCRE_SUPPORT_LIBREADLINE AND PCRE_SUPPORT_LIBEDIT)
   
 IF(PCRE_SUPPORT_BSR_ANYCRLF)  IF(PCRE_SUPPORT_BSR_ANYCRLF)
         SET(BSR_ANYCRLF 1)          SET(BSR_ANYCRLF 1)
 ENDIF(PCRE_SUPPORT_BSR_ANYCRLF)  ENDIF(PCRE_SUPPORT_BSR_ANYCRLF)
   
IF(PCRE_SUPPORT_UTF8 OR PCRE_SUPPORT_UNICODE_PROPERTIES)IF(PCRE_SUPPORT_UTF OR PCRE_SUPPORT_UNICODE_PROPERTIES)
        SET(SUPPORT_UTF8 1)        SET(SUPPORT_UTF 1)
ENDIF(PCRE_SUPPORT_UTF8 OR PCRE_SUPPORT_UNICODE_PROPERTIES)        SET(PCRE_SUPPORT_UTF ON)
 ENDIF(PCRE_SUPPORT_UTF OR PCRE_SUPPORT_UNICODE_PROPERTIES)
   
 IF(PCRE_SUPPORT_UNICODE_PROPERTIES)  IF(PCRE_SUPPORT_UNICODE_PROPERTIES)
         SET(SUPPORT_UCP 1)          SET(SUPPORT_UCP 1)
Line 235  IF(PCRE_SUPPORT_PCREGREP_JIT) Line 293  IF(PCRE_SUPPORT_PCREGREP_JIT)
         SET(SUPPORT_PCREGREP_JIT 1)          SET(SUPPORT_PCREGREP_JIT 1)
 ENDIF(PCRE_SUPPORT_PCREGREP_JIT)  ENDIF(PCRE_SUPPORT_PCREGREP_JIT)
   
   IF(PCRE_SUPPORT_VALGRIND)
           SET(SUPPORT_VALGRIND 1)
   ENDIF(PCRE_SUPPORT_VALGRIND)
   
   IF(PCRE_SUPPORT_COVERAGE)
           SET(SUPPORT_GCOV 1)
           IF(NOT CMAKE_COMPILER_IS_GNUCC)
               MESSAGE(FATAL_ERROR "Code coverage reports can only be generated when using GCC")
           ENDIF(NOT CMAKE_COMPILER_IS_GNUCC)
   ENDIF(PCRE_SUPPORT_COVERAGE)
   
 # This next one used to contain  # This next one used to contain
 #       SET(PCRETEST_LIBS ${READLINE_LIBRARY})  #       SET(PCRETEST_LIBS ${READLINE_LIBRARY})
 # but I was advised to add the NCURSES test as well, along with  # but I was advised to add the NCURSES test as well, along with
Line 246  IF(PCRE_SUPPORT_LIBREADLINE) Line 315  IF(PCRE_SUPPORT_LIBREADLINE)
         SET(PCRETEST_LIBS ${READLINE_LIBRARY} ${NCURSES_LIBRARY})          SET(PCRETEST_LIBS ${READLINE_LIBRARY} ${NCURSES_LIBRARY})
 ENDIF(PCRE_SUPPORT_LIBREADLINE)  ENDIF(PCRE_SUPPORT_LIBREADLINE)
   
   # libedit is a plug-compatible alternative to libreadline
   
   IF(PCRE_SUPPORT_LIBEDIT)
           SET(SUPPORT_LIBEDIT 1)
           SET(PCRETEST_LIBS ${EDITLINE_LIBRARY} ${NCURSES_LIBRARY})
   ENDIF(PCRE_SUPPORT_LIBEDIT)
   
 IF(PCRE_SUPPORT_LIBZ)  IF(PCRE_SUPPORT_LIBZ)
         SET(SUPPORT_LIBZ 1)          SET(SUPPORT_LIBZ 1)
         SET(PCREGREP_LIBS ${PCREGREP_LIBS} ${ZLIB_LIBRARIES})          SET(PCREGREP_LIBS ${PCREGREP_LIBS} ${ZLIB_LIBRARIES})
Line 280  ENDIF(NEWLINE STREQUAL "") Line 356  ENDIF(NEWLINE STREQUAL "")
   
 IF(PCRE_EBCDIC)  IF(PCRE_EBCDIC)
         SET(EBCDIC 1)          SET(EBCDIC 1)
   IF(PCRE_NEWLINE STREQUAL "LF")
           SET(NEWLINE "21")
   ENDIF(PCRE_NEWLINE STREQUAL "LF")
   IF(PCRE_NEWLINE STREQUAL "CRLF")
           SET(NEWLINE "3349")
   ENDIF(PCRE_NEWLINE STREQUAL "CRLF")
 ENDIF(PCRE_EBCDIC)  ENDIF(PCRE_EBCDIC)
   
   IF(PCRE_EBCDIC_NL25)
           SET(EBCDIC 1)
           SET(EBCDIC_NL25 1)
   IF(PCRE_NEWLINE STREQUAL "LF")
           SET(NEWLINE "37")
   ENDIF(PCRE_NEWLINE STREQUAL "LF")
   IF(PCRE_NEWLINE STREQUAL "CRLF")
           SET(NEWLINE "3365")
   ENDIF(PCRE_NEWLINE STREQUAL "CRLF")
   ENDIF(PCRE_EBCDIC_NL25)
   
 IF(PCRE_NO_RECURSE)  IF(PCRE_NO_RECURSE)
         SET(NO_RECURSE 1)          SET(NO_RECURSE 1)
 ENDIF(PCRE_NO_RECURSE)  ENDIF(PCRE_NO_RECURSE)
Line 291  CONFIGURE_FILE(config-cmake.h.in Line 384  CONFIGURE_FILE(config-cmake.h.in
                ${PROJECT_BINARY_DIR}/config.h                 ${PROJECT_BINARY_DIR}/config.h
                @ONLY)                 @ONLY)
   
CONFIGURE_FILE(pcre.h.generic# Parse version numbers and date out of configure.ac
 
 file(STRINGS ${PROJECT_SOURCE_DIR}/configure.ac
   configure_lines
   LIMIT_COUNT 50 # Read only the first 50 lines of the file
 )
 
 set(SEARCHED_VARIABLES "pcre_major" "pcre_minor" "pcre_prerelease" "pcre_date")
 foreach(configure_line ${configure_lines})
     foreach(_substitution_variable ${SEARCHED_VARIABLES})
         string(TOUPPER ${_substitution_variable} _substitution_variable_upper)
         if (NOT ${_substitution_variable_upper})
             string(REGEX MATCH "m4_define\\(${_substitution_variable}, \\[(.*)\\]" MACTHED_STRING ${configure_line})
             if (CMAKE_MATCH_1)
                 set(${_substitution_variable_upper} ${CMAKE_MATCH_1})
             endif()
         endif()
     endforeach()
 endforeach()
 
 CONFIGURE_FILE(pcre.h.in
                ${PROJECT_BINARY_DIR}/pcre.h                 ${PROJECT_BINARY_DIR}/pcre.h
               COPYONLY)               @ONLY)
   
 # What about pcre-config and libpcre.pc?  # What about pcre-config and libpcre.pc?
   
Line 332  ENDIF(PCRE_REBUILD_CHARTABLES) Line 445  ENDIF(PCRE_REBUILD_CHARTABLES)
   
 SET(PCRE_HEADERS ${PROJECT_BINARY_DIR}/pcre.h)  SET(PCRE_HEADERS ${PROJECT_BINARY_DIR}/pcre.h)
   
   IF(PCRE_BUILD_PCRE8)
 SET(PCRE_SOURCES  SET(PCRE_SOURCES
  ${PROJECT_BINARY_DIR}/pcre_chartables.c  pcre_byte_order.c
   pcre_chartables.c
   pcre_compile.c    pcre_compile.c
   pcre_config.c    pcre_config.c
   pcre_dfa_exec.c    pcre_dfa_exec.c
Line 341  SET(PCRE_SOURCES Line 456  SET(PCRE_SOURCES
   pcre_fullinfo.c    pcre_fullinfo.c
   pcre_get.c    pcre_get.c
   pcre_globals.c    pcre_globals.c
   pcre_info.c  
   pcre_jit_compile.c    pcre_jit_compile.c
   pcre_newline.c  
   pcre_maketables.c    pcre_maketables.c
     pcre_newline.c
   pcre_ord2utf8.c    pcre_ord2utf8.c
   pcre_refcount.c    pcre_refcount.c
     pcre_string_utils.c
   pcre_study.c    pcre_study.c
   pcre_tables.c    pcre_tables.c
   pcre_try_flipped.c  
   pcre_ucd.c    pcre_ucd.c
   pcre_valid_utf8.c    pcre_valid_utf8.c
   pcre_version.c    pcre_version.c
   pcre_xclass.c    pcre_xclass.c
 )  )
   
   
 SET(PCREPOSIX_HEADERS pcreposix.h)  SET(PCREPOSIX_HEADERS pcreposix.h)
   
 SET(PCREPOSIX_SOURCES pcreposix.c)  SET(PCREPOSIX_SOURCES pcreposix.c)
   
   ENDIF(PCRE_BUILD_PCRE8)
   
   IF(PCRE_BUILD_PCRE16)
   SET(PCRE16_SOURCES
     pcre16_byte_order.c
     pcre16_chartables.c
     pcre16_compile.c
     pcre16_config.c
     pcre16_dfa_exec.c
     pcre16_exec.c
     pcre16_fullinfo.c
     pcre16_get.c
     pcre16_globals.c
     pcre16_jit_compile.c
     pcre16_maketables.c
     pcre16_newline.c
     pcre16_ord2utf16.c
     pcre16_refcount.c
     pcre16_string_utils.c
     pcre16_study.c
     pcre16_tables.c
     pcre16_ucd.c
     pcre16_utf16_utils.c
     pcre16_valid_utf16.c
     pcre16_version.c
     pcre16_xclass.c
   )
   ENDIF(PCRE_BUILD_PCRE16)
   
   IF(PCRE_BUILD_PCRE32)
   SET(PCRE32_SOURCES
     pcre32_byte_order.c
     pcre32_chartables.c
     pcre32_compile.c
     pcre32_config.c
     pcre32_dfa_exec.c
     pcre32_exec.c
     pcre32_fullinfo.c
     pcre32_get.c
     pcre32_globals.c
     pcre32_jit_compile.c
     pcre32_maketables.c
     pcre32_newline.c
     pcre32_ord2utf32.c
     pcre32_refcount.c
     pcre32_string_utils.c
     pcre32_study.c
     pcre32_tables.c
     pcre32_ucd.c
     pcre32_utf32_utils.c
     pcre32_valid_utf32.c
     pcre32_version.c
     pcre32_xclass.c
   )
   ENDIF(PCRE_BUILD_PCRE32)
   
 IF(MINGW AND NOT PCRE_STATIC)  IF(MINGW AND NOT PCRE_STATIC)
 IF (EXISTS ${PROJECT_SOURCE_DIR}/pcre.rc)  IF (EXISTS ${PROJECT_SOURCE_DIR}/pcre.rc)
 ADD_CUSTOM_COMMAND(OUTPUT ${PROJECT_SOURCE_DIR}/pcre.o  ADD_CUSTOM_COMMAND(OUTPUT ${PROJECT_SOURCE_DIR}/pcre.o
Line 402  SET(PCRECPP_SOURCES Line 571  SET(PCRECPP_SOURCES
 ADD_DEFINITIONS(-DHAVE_CONFIG_H)  ADD_DEFINITIONS(-DHAVE_CONFIG_H)
   
 IF(MSVC)  IF(MSVC)
        ADD_DEFINITIONS(-D_CRT_SECURE_NO_DEPRECATE)        ADD_DEFINITIONS(-D_CRT_SECURE_NO_DEPRECATE -D_CRT_SECURE_NO_WARNINGS)
 ENDIF(MSVC)  ENDIF(MSVC)
   
 SET(CMAKE_INCLUDE_CURRENT_DIR 1)  SET(CMAKE_INCLUDE_CURRENT_DIR 1)
Line 416  SET(targets) Line 585  SET(targets)
   
 # Libraries  # Libraries
 # pcre  # pcre
   IF(PCRE_BUILD_PCRE8)
 ADD_LIBRARY(pcre ${PCRE_HEADERS} ${PCRE_SOURCES} ${PROJECT_BINARY_DIR}/config.h)  ADD_LIBRARY(pcre ${PCRE_HEADERS} ${PCRE_SOURCES} ${PROJECT_BINARY_DIR}/config.h)
 SET(targets ${targets} pcre)  SET(targets ${targets} pcre)
 ADD_LIBRARY(pcreposix ${PCREPOSIX_HEADERS} ${PCREPOSIX_SOURCES})  ADD_LIBRARY(pcreposix ${PCREPOSIX_HEADERS} ${PCREPOSIX_SOURCES})
 SET(targets ${targets} pcreposix)  SET(targets ${targets} pcreposix)
 TARGET_LINK_LIBRARIES(pcreposix pcre)  TARGET_LINK_LIBRARIES(pcreposix pcre)
   
 IF(MINGW AND NOT PCRE_STATIC)  IF(MINGW AND NOT PCRE_STATIC)
   IF(NON_STANDARD_LIB_PREFIX)    IF(NON_STANDARD_LIB_PREFIX)
     SET_TARGET_PROPERTIES(pcre pcreposix      SET_TARGET_PROPERTIES(pcre pcreposix
Line 435  IF(MINGW AND NOT PCRE_STATIC) Line 606  IF(MINGW AND NOT PCRE_STATIC)
   ENDIF(NON_STANDARD_LIB_SUFFIX)    ENDIF(NON_STANDARD_LIB_SUFFIX)
 ENDIF(MINGW AND NOT PCRE_STATIC)  ENDIF(MINGW AND NOT PCRE_STATIC)
   
   ENDIF(PCRE_BUILD_PCRE8)
   
   IF(PCRE_BUILD_PCRE16)
   ADD_LIBRARY(pcre16 ${PCRE_HEADERS} ${PCRE16_SOURCES} ${PROJECT_BINARY_DIR}/config.h)
   SET(targets ${targets} pcre16)
   
   IF(MINGW AND NOT PCRE_STATIC)
     IF(NON_STANDARD_LIB_PREFIX)
       SET_TARGET_PROPERTIES(pcre16
                           PROPERTIES PREFIX ""
       )
     ENDIF(NON_STANDARD_LIB_PREFIX)
   
     IF(NON_STANDARD_LIB_SUFFIX)
       SET_TARGET_PROPERTIES(pcre16
                           PROPERTIES SUFFIX "-0.dll"
       )
     ENDIF(NON_STANDARD_LIB_SUFFIX)
   ENDIF(MINGW AND NOT PCRE_STATIC)
   
   ENDIF(PCRE_BUILD_PCRE16)
   
   IF(PCRE_BUILD_PCRE32)
   ADD_LIBRARY(pcre32 ${PCRE_HEADERS} ${PCRE32_SOURCES} ${PROJECT_BINARY_DIR}/config.h)
   SET(targets ${targets} pcre32)
   
   IF(MINGW AND NOT PCRE_STATIC)
     IF(NON_STANDARD_LIB_PREFIX)
       SET_TARGET_PROPERTIES(pcre32
                           PROPERTIES PREFIX ""
       )
     ENDIF(NON_STANDARD_LIB_PREFIX)
   
     IF(NON_STANDARD_LIB_SUFFIX)
       SET_TARGET_PROPERTIES(pcre32
                           PROPERTIES SUFFIX "-0.dll"
       )
     ENDIF(NON_STANDARD_LIB_SUFFIX)
   ENDIF(MINGW AND NOT PCRE_STATIC)
   
   ENDIF(PCRE_BUILD_PCRE32)
   
 # pcrecpp  # pcrecpp
 IF(PCRE_BUILD_PCRECPP)  IF(PCRE_BUILD_PCRECPP)
  ADD_LIBRARY(pcrecpp ${PCRECPP_HEADERS} ${PCRECPP_SOURCES})ADD_LIBRARY(pcrecpp ${PCRECPP_HEADERS} ${PCRECPP_SOURCES})
 SET(targets ${targets} pcrecpp)  SET(targets ${targets} pcrecpp)
  TARGET_LINK_LIBRARIES(pcrecpp pcre)TARGET_LINK_LIBRARIES(pcrecpp pcre)
   
   IF(MINGW AND NOT PCRE_STATIC)    IF(MINGW AND NOT PCRE_STATIC)
     IF(NON_STANDARD_LIB_PREFIX)      IF(NON_STANDARD_LIB_PREFIX)
Line 469  ENDIF(PCRE_BUILD_PCRECPP) Line 681  ENDIF(PCRE_BUILD_PCRECPP)
 #         SET_TARGET_PROPERTIES(pcredemo PROPERTIES COMPILE_FLAGS "-DPCRE_STATIC")  #         SET_TARGET_PROPERTIES(pcredemo PROPERTIES COMPILE_FLAGS "-DPCRE_STATIC")
 # ENDIF(NOT BUILD_SHARED_LIBS)  # ENDIF(NOT BUILD_SHARED_LIBS)
   
IF(PCRE_BUILD_PCREGREP OR PCRE_BUILD_TESTS)IF(PCRE_BUILD_PCREGREP)
   ADD_EXECUTABLE(pcregrep pcregrep.c)    ADD_EXECUTABLE(pcregrep pcregrep.c)
   SET(targets ${targets} pcregrep)    SET(targets ${targets} pcregrep)
   TARGET_LINK_LIBRARIES(pcregrep pcreposix ${PCREGREP_LIBS})    TARGET_LINK_LIBRARIES(pcregrep pcreposix ${PCREGREP_LIBS})
ENDIF(PCRE_BUILD_PCREGREP OR PCRE_BUILD_TESTS)ENDIF(PCRE_BUILD_PCREGREP)
   
 # Testing  # Testing
 IF(PCRE_BUILD_TESTS)  IF(PCRE_BUILD_TESTS)
   ENABLE_TESTING()    ENABLE_TESTING()
   
  ADD_EXECUTABLE(pcretest pcretest.c)  SET(PCRETEST_SOURCES pcretest.c)
   IF(PCRE_BUILD_PCRE8)
     LIST(APPEND PCRETEST_SOURCES pcre_printint.c)
   ENDIF(PCRE_BUILD_PCRE8)
   IF(PCRE_BUILD_PCRE16)
     LIST(APPEND PCRETEST_SOURCES pcre16_printint.c)
   ENDIF(PCRE_BUILD_PCRE16)
   IF(PCRE_BUILD_PCRE32)
     LIST(APPEND PCRETEST_SOURCES pcre32_printint.c)
   ENDIF(PCRE_BUILD_PCRE32)
 
   ADD_EXECUTABLE(pcretest ${PCRETEST_SOURCES})
   SET(targets ${targets} pcretest)    SET(targets ${targets} pcretest)
  TARGET_LINK_LIBRARIES(pcretest pcreposix ${PCRETEST_LIBS})  IF(PCRE_BUILD_PCRE8)
     LIST(APPEND PCRETEST_LIBS pcreposix pcre)
   ENDIF(PCRE_BUILD_PCRE8)
   IF(PCRE_BUILD_PCRE16)
     LIST(APPEND PCRETEST_LIBS pcre16)
   ENDIF(PCRE_BUILD_PCRE16)
   IF(PCRE_BUILD_PCRE32)
     LIST(APPEND PCRETEST_LIBS pcre32)
   ENDIF(PCRE_BUILD_PCRE32)
   TARGET_LINK_LIBRARIES(pcretest ${PCRETEST_LIBS})
   
   IF(PCRE_SUPPORT_JIT)    IF(PCRE_SUPPORT_JIT)
     ADD_EXECUTABLE(pcre_jit_test pcre_jit_test.c)      ADD_EXECUTABLE(pcre_jit_test pcre_jit_test.c)
     SET(targets ${targets} pcre_jit_test)      SET(targets ${targets} pcre_jit_test)
    TARGET_LINK_LIBRARIES(pcre_jit_test pcre)    SET(PCRE_JIT_TEST_LIBS )
     IF(PCRE_BUILD_PCRE8)
       LIST(APPEND PCRE_JIT_TEST_LIBS pcre)
     ENDIF(PCRE_BUILD_PCRE8)
     IF(PCRE_BUILD_PCRE16)
       LIST(APPEND PCRE_JIT_TEST_LIBS pcre16)
     ENDIF(PCRE_BUILD_PCRE16)
     IF(PCRE_BUILD_PCRE32)
       LIST(APPEND PCRE_JIT_TEST_LIBS pcre32)
     ENDIF(PCRE_BUILD_PCRE32)
     TARGET_LINK_LIBRARIES(pcre_jit_test ${PCRE_JIT_TEST_LIBS})
   ENDIF(PCRE_SUPPORT_JIT)    ENDIF(PCRE_SUPPORT_JIT)
   
   IF(PCRE_BUILD_PCRECPP)    IF(PCRE_BUILD_PCRECPP)
Line 510  IF(PCRE_BUILD_TESTS) Line 752  IF(PCRE_BUILD_TESTS)
   
   # exes in Debug location tested by the RunTest shell script    # exes in Debug location tested by the RunTest shell script
   # via "make test"    # via "make test"
  GET_TARGET_PROPERTY(PCREGREP_EXE pcregrep DEBUG_LOCATION)  IF(PCRE_BUILD_PCREGREP)
     GET_TARGET_PROPERTY(PCREGREP_EXE pcregrep DEBUG_LOCATION)
   ENDIF(PCRE_BUILD_PCREGREP)
 
   GET_TARGET_PROPERTY(PCRETEST_EXE pcretest DEBUG_LOCATION)    GET_TARGET_PROPERTY(PCRETEST_EXE pcretest DEBUG_LOCATION)
   
 # =================================================  # =================================================
Line 519  IF(PCRE_BUILD_TESTS) Line 764  IF(PCRE_BUILD_TESTS)
   FILE(WRITE ${PROJECT_BINARY_DIR}/CTestCustom.ctest    FILE(WRITE ${PROJECT_BINARY_DIR}/CTestCustom.ctest
   "# This is a generated file.    "# This is a generated file.
 MESSAGE(\"When testing is complete, review test output in the  MESSAGE(\"When testing is complete, review test output in the
${PROJECT_BINARY_DIR}/Testing/Temporary folder.\")\\\"${PROJECT_BINARY_DIR}/Testing/Temporary\\\" folder.\")
MESSAGE(\"\")MESSAGE(\" \")
 ")  ")
   
      FILE(WRITE ${PROJECT_BINARY_DIR}/pcre_test.sh  FILE(WRITE ${PROJECT_BINARY_DIR}/pcre_test.sh
      "#! /bin/sh  "#! /bin/sh
 # This is a generated file.  # This is a generated file.
 srcdir=${PROJECT_SOURCE_DIR}  srcdir=${PROJECT_SOURCE_DIR}
 pcregrep=${PCREGREP_EXE}  
 pcretest=${PCRETEST_EXE}  pcretest=${PCRETEST_EXE}
 source ${PROJECT_SOURCE_DIR}/RunTest  source ${PROJECT_SOURCE_DIR}/RunTest
 if test \"$?\" != \"0\"; then exit 1; fi  if test \"$?\" != \"0\"; then exit 1; fi
 # End  # End
 ")  ")
   
      FILE(WRITE ${PROJECT_BINARY_DIR}/pcre_grep_test.sh  IF(UNIX)
      "#! /bin/sh    ADD_TEST(pcre_test      sh ${PROJECT_BINARY_DIR}/pcre_test.sh)
   ENDIF(UNIX)
 
   IF(PCRE_BUILD_PCREGREP)
     FILE(WRITE ${PROJECT_BINARY_DIR}/pcre_grep_test.sh
     "#! /bin/sh
 # This is a generated file.  # This is a generated file.
 srcdir=${PROJECT_SOURCE_DIR}  srcdir=${PROJECT_SOURCE_DIR}
 pcregrep=${PCREGREP_EXE}  pcregrep=${PCREGREP_EXE}
Line 545  if test \"$?\" != \"0\"; then exit 1; fi Line 794  if test \"$?\" != \"0\"; then exit 1; fi
 # End  # End
 ")  ")
   
  IF(UNIX)    IF(UNIX)
    ADD_TEST(pcre_test      sh ${PROJECT_BINARY_DIR}/pcre_test.sh)      ADD_TEST(pcre_grep_test sh ${PROJECT_BINARY_DIR}/pcre_grep_test.sh)
    ADD_TEST(pcre_grep_test sh ${PROJECT_BINARY_DIR}/pcre_grep_test.sh)    ENDIF(UNIX)
  ENDIF(UNIX)  ENDIF(PCRE_BUILD_PCREGREP)
   
   IF(WIN32)    IF(WIN32)
     # Provide environment for executing the bat file version of RunTest      # Provide environment for executing the bat file version of RunTest
    string(REPLACE "/" "\\" winsrc "${PROJECT_SOURCE_DIR}")    FILE(TO_NATIVE_PATH ${PROJECT_SOURCE_DIR} winsrc)
     FILE(TO_NATIVE_PATH ${PROJECT_BINARY_DIR} winbin)
     FILE(TO_NATIVE_PATH ${PCRETEST_EXE} winexe)
   
    FILE(WRITE ${PROJECT_BINARY_DIR}/pcre_test.txt    FILE(WRITE ${PROJECT_BINARY_DIR}/pcre_test.bat
     "\@REM This is a generated file.      "\@REM This is a generated file.
\@Echo off\@echo off
 setlocal  setlocal
SET\ srcdir=\${srcdir}SET srcdir=\"${winsrc}\"
SET\ pcretest=\${pcretest}SET pcretest=\"${winexe}\"
SET\ pcregrep=\${pcregrep}if not [%CMAKE_CONFIG_TYPE%]==[] SET pcretest=\"${winbin}\\%CMAKE_CONFIG_TYPE%\\pcretest.exe\"
call \"\${srcdir}\\RunTest.Bat\"call %srcdir%\\RunTest.Bat
 if errorlevel 1 exit /b 1  if errorlevel 1 exit /b 1
 echo RunTest.bat tests successfully completed  echo RunTest.bat tests successfully completed
 ")  ")
   
   FILE(WRITE ${PROJECT_BINARY_DIR}/BatDriver.cmake  
   "# This is a generated file.  
 # this script is run with arguments via the cmake command in add_test(NAME pcre_test_bat)  
 # BatDriver feeds the actual location of pcretest.exe and pcregrep.exe  
 FILE(TO_NATIVE_PATH \${pcretestx} pcretest)  
 FILE(TO_NATIVE_PATH \${pcregrepx} pcregrep)  
 FILE(TO_NATIVE_PATH \${srcdirx} srcdir)  
 configure_file(\"\${bindirx}/pcre_test.txt\" \"\${bindirx}/pcre_test.bat\")  
 # MESSAGE(\"cmake\ variable\ pcretest\ is\ \${pcretest}\")  
 # MESSAGE(\"cmake\ variable\ pcregrep\ is\ \${pcregrep}\")  
 # STRING(REPLACE \" \" \"\\ \" bindir \${bindirx})  
 MESSAGE(\"COMMAND pcre_test.bat \")  
 EXECUTE_PROCESS(COMMAND pcre_test.bat  
 WORKING_DIRECTORY .  
 OUTPUT_VARIABLE batoutput)  
 MESSAGE(\"OUTPUT: \${batoutput}\")  
 ")  
   
   ADD_TEST(NAME pcre_test_bat    ADD_TEST(NAME pcre_test_bat
  COMMAND ${CMAKE_COMMAND} -D bindirx=${PROJECT_BINARY_DIR} -D srcdirx=${PROJECT_SOURCE_DIR} -D pcretestx=$<TARGET_FILE:pcretest> -D pcregrepx=$<TARGET_FILE:pcregrep> -P "${PROJECT_BINARY_DIR}/BatDriver.cmake")  COMMAND pcre_test.bat)
   SET_TESTS_PROPERTIES(pcre_test_bat PROPERTIES    SET_TESTS_PROPERTIES(pcre_test_bat PROPERTIES
   PASS_REGULAR_EXPRESSION "RunTest\\.bat tests successfully completed")    PASS_REGULAR_EXPRESSION "RunTest\\.bat tests successfully completed")
   
     IF("$ENV{OSTYPE}" STREQUAL "msys")      IF("$ENV{OSTYPE}" STREQUAL "msys")
    # Both the sh and bat file versions of RunTest are run if make test is used      # Both the sh and bat file versions of RunTest are run if make test is used
    # in msys      # in msys
 
       ADD_TEST(pcre_test_sh    sh.exe ${PROJECT_BINARY_DIR}/pcre_test.sh)        ADD_TEST(pcre_test_sh    sh.exe ${PROJECT_BINARY_DIR}/pcre_test.sh)
      ADD_TEST(pcre_grep_test sh.exe ${PROJECT_BINARY_DIR}/pcre_grep_test.sh)      IF(PCRE_BUILD_PCREGREP)
        ADD_TEST(pcre_grep_test  sh.exe ${PROJECT_BINARY_DIR}/pcre_grep_test.sh)
       ENDIF(PCRE_BUILD_PCREGREP)
     ENDIF("$ENV{OSTYPE}" STREQUAL "msys")      ENDIF("$ENV{OSTYPE}" STREQUAL "msys")
   
   ENDIF(WIN32)    ENDIF(WIN32)
   
   # Changed to accommodate testing whichever location was just built    # Changed to accommodate testing whichever location was just built
   
   IF(PCRE_SUPPORT_JIT)    IF(PCRE_SUPPORT_JIT)
  ADD_TEST(pcre_jit_test       pcre_jit_test)    ADD_TEST(pcre_jit_test         pcre_jit_test)
   ENDIF(PCRE_SUPPORT_JIT)    ENDIF(PCRE_SUPPORT_JIT)
   
   IF(PCRE_BUILD_PCRECPP)    IF(PCRE_BUILD_PCRECPP)
     ADD_TEST(pcrecpp_test          pcrecpp_unittest)      ADD_TEST(pcrecpp_test          pcrecpp_unittest)
     ADD_TEST(pcre_scanner_test     pcre_scanner_unittest)      ADD_TEST(pcre_scanner_test     pcre_scanner_unittest)
     ADD_TEST(pcre_stringpiece_test pcre_stringpiece_unittest)      ADD_TEST(pcre_stringpiece_test pcre_stringpiece_unittest)
   
   ENDIF(PCRE_BUILD_PCRECPP)    ENDIF(PCRE_BUILD_PCRECPP)
   
 ENDIF(PCRE_BUILD_TESTS)  ENDIF(PCRE_BUILD_TESTS)
   
 # Installation  # Installation
Line 669  IF(PCRE_SHOW_REPORT) Line 903  IF(PCRE_SHOW_REPORT)
   MESSAGE(STATUS "  C compiler flags ................ : ${CMAKE_C_FLAGS}${cfsp}${CMAKE_C_FLAGS_${buildtype}}")    MESSAGE(STATUS "  C compiler flags ................ : ${CMAKE_C_FLAGS}${cfsp}${CMAKE_C_FLAGS_${buildtype}}")
   MESSAGE(STATUS "  C++ compiler flags .............. : ${CMAKE_CXX_FLAGS}${cxxfsp}${CMAKE_CXX_FLAGS_${buildtype}}")    MESSAGE(STATUS "  C++ compiler flags .............. : ${CMAKE_CXX_FLAGS}${cxxfsp}${CMAKE_CXX_FLAGS_${buildtype}}")
   MESSAGE(STATUS "")    MESSAGE(STATUS "")
     MESSAGE(STATUS "  Build 8 bit PCRE library ........ : ${PCRE_BUILD_PCRE8}")
     MESSAGE(STATUS "  Build 16 bit PCRE library ....... : ${PCRE_BUILD_PCRE16}")
     MESSAGE(STATUS "  Build 32 bit PCRE library ....... : ${PCRE_BUILD_PCRE32}")
   MESSAGE(STATUS "  Build C++ library ............... : ${PCRE_BUILD_PCRECPP}")    MESSAGE(STATUS "  Build C++ library ............... : ${PCRE_BUILD_PCRECPP}")
   MESSAGE(STATUS "  Enable JIT compiling support .... : ${PCRE_SUPPORT_JIT}")    MESSAGE(STATUS "  Enable JIT compiling support .... : ${PCRE_SUPPORT_JIT}")
  MESSAGE(STATUS "  Enable UTF-8 support ............ : ${PCRE_SUPPORT_UNICODE_PROPERTIES}")  MESSAGE(STATUS "  Enable UTF support .............. : ${PCRE_SUPPORT_UTF}")
   MESSAGE(STATUS "  Unicode properties .............. : ${PCRE_SUPPORT_UNICODE_PROPERTIES}")    MESSAGE(STATUS "  Unicode properties .............. : ${PCRE_SUPPORT_UNICODE_PROPERTIES}")
   MESSAGE(STATUS "  Newline char/sequence ........... : ${PCRE_NEWLINE}")    MESSAGE(STATUS "  Newline char/sequence ........... : ${PCRE_NEWLINE}")
   MESSAGE(STATUS "  \\R matches only ANYCRLF ......... : ${PCRE_SUPPORT_BSR_ANYCRLF}")    MESSAGE(STATUS "  \\R matches only ANYCRLF ......... : ${PCRE_SUPPORT_BSR_ANYCRLF}")
   MESSAGE(STATUS "  EBCDIC coding ................... : ${PCRE_EBCDIC}")    MESSAGE(STATUS "  EBCDIC coding ................... : ${PCRE_EBCDIC}")
     MESSAGE(STATUS "  EBCDIC coding with NL=0x25 ...... : ${PCRE_EBCDIC_NL25}")
   MESSAGE(STATUS "  Rebuild char tables ............. : ${PCRE_REBUILD_CHARTABLES}")    MESSAGE(STATUS "  Rebuild char tables ............. : ${PCRE_REBUILD_CHARTABLES}")
   MESSAGE(STATUS "  No stack recursion .............. : ${PCRE_NO_RECURSE}")    MESSAGE(STATUS "  No stack recursion .............. : ${PCRE_NO_RECURSE}")
   MESSAGE(STATUS "  POSIX mem threshold ............. : ${PCRE_POSIX_MALLOC_THRESHOLD}")    MESSAGE(STATUS "  POSIX mem threshold ............. : ${PCRE_POSIX_MALLOC_THRESHOLD}")
Line 692  IF(PCRE_SHOW_REPORT) Line 930  IF(PCRE_SHOW_REPORT)
   IF(ZLIB_FOUND)    IF(ZLIB_FOUND)
     MESSAGE(STATUS "  Link pcregrep with libz ......... : ${PCRE_SUPPORT_LIBZ}")      MESSAGE(STATUS "  Link pcregrep with libz ......... : ${PCRE_SUPPORT_LIBZ}")
   ELSE(ZLIB_FOUND)    ELSE(ZLIB_FOUND)
    MESSAGE(STATUS "  Link pcregrep with libz ......... : None" )    MESSAGE(STATUS "  Link pcregrep with libz ......... : Library not found" )
   ENDIF(ZLIB_FOUND)    ENDIF(ZLIB_FOUND)
   IF(BZIP2_FOUND)    IF(BZIP2_FOUND)
     MESSAGE(STATUS "  Link pcregrep with libbz2 ....... : ${PCRE_SUPPORT_LIBBZ2}")      MESSAGE(STATUS "  Link pcregrep with libbz2 ....... : ${PCRE_SUPPORT_LIBBZ2}")
   ELSE(BZIP2_FOUND)    ELSE(BZIP2_FOUND)
    MESSAGE(STATUS "  Link pcregrep with libbz2 ....... : None" )    MESSAGE(STATUS "  Link pcregrep with libbz2 ....... : Library not found" )
   ENDIF(BZIP2_FOUND)    ENDIF(BZIP2_FOUND)
  IF(NOT PCRE_SUPPORT_LIBREADLINE)  IF(EDITLINE_FOUND)
    MESSAGE(STATUS "  Link pcretest with libreadline .. : None" )    MESSAGE(STATUS "  Link pcretest with libeditline .. : ${PCRE_SUPPORT_LIBEDIT}")
  ELSE(NOT PCRE_SUPPORT_LIBREADLINE)  ELSE(EDITLINE_FOUND)
     MESSAGE(STATUS "  Link pcretest with libeditline .. : Library not found" )
   ENDIF(EDITLINE_FOUND)
   IF(READLINE_FOUND)
     MESSAGE(STATUS "  Link pcretest with libreadline .. : ${PCRE_SUPPORT_LIBREADLINE}")      MESSAGE(STATUS "  Link pcretest with libreadline .. : ${PCRE_SUPPORT_LIBREADLINE}")
  ENDIF(NOT PCRE_SUPPORT_LIBREADLINE)  ELSE(READLINE_FOUND)
     MESSAGE(STATUS "  Link pcretest with libreadline .. : Library not found" )
   ENDIF(READLINE_FOUND)
   MESSAGE(STATUS "  Support Valgrind .................: ${PCRE_SUPPORT_VALGRIND}")
   MESSAGE(STATUS "  Support coverage .................: ${PCRE_SUPPORT_COVERAGE}")
 
   IF(MINGW AND NOT PCRE_STATIC)    IF(MINGW AND NOT PCRE_STATIC)
     MESSAGE(STATUS "  Non-standard dll names (prefix) . : ${NON_STANDARD_LIB_PREFIX}")      MESSAGE(STATUS "  Non-standard dll names (prefix) . : ${NON_STANDARD_LIB_PREFIX}")
     MESSAGE(STATUS "  Non-standard dll names (suffix) . : ${NON_STANDARD_LIB_SUFFIX}")      MESSAGE(STATUS "  Non-standard dll names (suffix) . : ${NON_STANDARD_LIB_SUFFIX}")

Removed from v.1.1.1.1  
changed lines
  Added in v.1.1.1.4


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>