--- code/trunk/CMakeLists.txt 2010/01/02 18:21:30 475 +++ code/trunk/CMakeLists.txt 2011/08/22 14:57:32 667 @@ -36,6 +36,9 @@ # 2009-04-11 PH applied Christian Ehrlicher's patch to show compiler flags that # are set by specifying a release type. # 2010-01-02 PH added test for stdint.h +# 2010-03-02 PH added test for inttypes.h +# 2011-08-01 PH added PCREGREP_BUFSIZE +# 2011-08-22 PH added PCRE_SUPPORT_JIT PROJECT(PCRE C CXX) @@ -57,6 +60,7 @@ CHECK_INCLUDE_FILE(dirent.h HAVE_DIRENT_H) CHECK_INCLUDE_FILE(stdint.h HAVE_STDINT_H) +CHECK_INCLUDE_FILE(inttypes.h HAVE_INTTYPES_H) CHECK_INCLUDE_FILE(sys/stat.h HAVE_SYS_STAT_H) CHECK_INCLUDE_FILE(sys/types.h HAVE_SYS_TYPES_H) CHECK_INCLUDE_FILE(unistd.h HAVE_UNISTD_H) @@ -97,6 +101,9 @@ SET(PCRE_MATCH_LIMIT_RECURSION "MATCH_LIMIT" CACHE STRING "Default limit on internal recursion. See MATCH_LIMIT_RECURSION in config.h.in for details.") +SET(PCREGREP_BUFSIZE "20480" CACHE STRING + "Buffer size parameter for pcregrep. See PCREGREP_BUFSIZE in config.h.in for details.") + SET(PCRE_NEWLINE "LF" CACHE STRING "What to recognize as a newline (one of CR, LF, CRLF, ANY, ANYCRLF).") @@ -106,6 +113,9 @@ SET(PCRE_POSIX_MALLOC_THRESHOLD "10" CACHE STRING "Threshold for malloc() usage. See POSIX_MALLOC_THRESHOLD in config.h.in for details.") +SET(PCRE_SUPPORT_JIT OFF CACHE BOOL + "Enable support for Just-in-time compiling.") + SET(PCRE_SUPPORT_UNICODE_PROPERTIES OFF CACHE BOOL "Enable support for Unicode properties. (If set, UTF-8 support will be enabled as well)") @@ -200,6 +210,10 @@ SET(SUPPORT_UCP 1) ENDIF(PCRE_SUPPORT_UNICODE_PROPERTIES) +IF(PCRE_SUPPORT_JIT) + SET(SUPPORT_JIT 1) +ENDIF(PCRE_SUPPORT_JIT) + # This next one used to contain # SET(PCRETEST_LIBS ${READLINE_LIBRARY}) # but I was advised to add the NCURSES test as well, along with @@ -307,6 +321,7 @@ pcre_get.c pcre_globals.c pcre_info.c + pcre_jit_compile.c pcre_newline.c pcre_maketables.c pcre_ord2utf8.c @@ -423,6 +438,12 @@ ADD_EXECUTABLE(pcretest pcretest.c) SET(targets ${targets} pcretest) TARGET_LINK_LIBRARIES(pcretest pcreposix ${PCRETEST_LIBS}) + + IF(PCRE_SUPPORT_JIT) + ADD_EXECUTABLE(pcre_jit_test pcre_jit_test.c) + SET(targets ${targets} pcre_jit_test) + TARGET_LINK_LIBRARIES(pcre_jit_test pcre) + ENDIF(PCRE_SUPPORT_JIT) IF(PCRE_BUILD_PCRECPP) ADD_EXECUTABLE(pcrecpp_unittest pcrecpp_unittest.cc) @@ -434,7 +455,6 @@ ) ENDIF(MINGW AND NON_STANDARD_LIB_NAMES AND NOT PCRE_STATIC) - ADD_EXECUTABLE(pcre_scanner_unittest pcre_scanner_unittest.cc) SET(targets ${targets} pcre_scanner_unittest) TARGET_LINK_LIBRARIES(pcre_scanner_unittest pcrecpp) @@ -465,6 +485,12 @@ ADD_TEST(pcre_test cmd /C ${PROJECT_SOURCE_DIR}/RunTest.bat) ENDIF(WIN32) + IF(PCRE_SUPPORT_JIT) + GET_TARGET_PROPERTY(PCRE_JIT_TEST_EXE + pcre_jit_test + DEBUG_LOCATION) + ENDIF(PCRE_SUPPORT_JIT) + GET_TARGET_PROPERTY(PCRECPP_UNITTEST_EXE pcrecpp_unittest DEBUG_LOCATION) @@ -477,6 +503,9 @@ pcre_stringpiece_unittest DEBUG_LOCATION) + IF(PCRE_SUPPORT_JIT) + ADD_TEST(pcre_jit_test ${PCRE_JIT_TEST_EXE}) + ENDIF(PCRE_SUPPORT_JIT) ADD_TEST(pcrecpp_test ${PCRECPP_UNITTEST_EXE}) ADD_TEST(pcre_scanner_test ${PCRE_SCANNER_UNITTEST_EXE}) ADD_TEST(pcre_stringpiece_test ${PCRE_STRINGPIECE_UNITTEST_EXE}) @@ -540,6 +569,7 @@ MESSAGE(STATUS " C++ compiler flags .............. : ${CMAKE_CXX_FLAGS}${cxxfsp}${CMAKE_CXX_FLAGS_${buildtype}}") MESSAGE(STATUS "") MESSAGE(STATUS " Build C++ library ............... : ${PCRE_BUILD_PCRECPP}") + MESSAGE(STATUS " Enable JIT compiling support .... : ${PCRE_SUPPORT_JIT}") MESSAGE(STATUS " Enable UTF-8 support ............ : ${PCRE_SUPPORT_UNICODE_PROPERTIES}") MESSAGE(STATUS " Unicode properties .............. : ${PCRE_SUPPORT_UNICODE_PROPERTIES}") MESSAGE(STATUS " Newline char/sequence ........... : ${PCRE_NEWLINE}") @@ -554,6 +584,7 @@ MESSAGE(STATUS " Build shared libs ............... : ${BUILD_SHARED_LIBS}") MESSAGE(STATUS " Build static libs ............... : ${BUILD_STATIC_LIBS}") MESSAGE(STATUS " Build pcregrep .................. : ${PCRE_BUILD_PCREGREP}") + MESSAGE(STATUS " Buffer size for pcregrep ........ : ${PCREGREP_BUFSIZE}") MESSAGE(STATUS " Build tests (implies pcretest) .. : ${PCRE_BUILD_TESTS}") IF(ZLIB_FOUND) MESSAGE(STATUS " Link pcregrep with libz ......... : ${PCRE_SUPPORT_LIBZ}")