/[pcre]/code/trunk/CMakeLists.txt
ViewVC logotype

Diff of /code/trunk/CMakeLists.txt

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 142 by ph10, Fri Mar 30 15:55:18 2007 UTC revision 303 by ph10, Sun Jan 20 19:39:43 2008 UTC
# Line 1  Line 1 
1  # CMakeLists.txt  # CMakeLists.txt
2  #  #
3    #
4  # This file allows building PCRE with the CMake configuration and build  # This file allows building PCRE with the CMake configuration and build
5  # tool. Download CMake in source or binary form from http://www.cmake.org/  # tool. Download CMake in source or binary form from http://www.cmake.org/
6  #  #
7  # Original listfile by Christian Ehrlicher <Ch.Ehrlicher@gmx.de>  # Original listfile by Christian Ehrlicher <Ch.Ehrlicher@gmx.de>
8  # Refined and expanded by Daniel Richard G. <skunk@iSKUNK.ORG>  # Refined and expanded by Daniel Richard G. <skunk@iSKUNK.ORG>
9    # 2007-09-14 mod by Sheri so 7.4 supported configuration options can be entered
10    # 2007-09-19 Adjusted by PH to retain previous default settings
11    # 2007-12-26 (a) On UNIX, use names libpcre instead of just pcre
12    #            (b) Ensure pcretest and pcregrep link with the local library,
13    #                not a previously-installed one.
14    #            (c) Add PCRE_SUPPORT_LIBREADLINE, PCRE_SUPPORT_LIBZ, and
15    #                PCRE_SUPPORT_LIBBZ2.
16    # 2008-01-20 Brought up to date to include several new features by Christian
17    #            Ehrlicher.
18  #  #
19    
20  PROJECT(PCRE C CXX)  PROJECT(PCRE C CXX)
21    
22  CMAKE_MINIMUM_REQUIRED(VERSION 2.4.6)  CMAKE_MINIMUM_REQUIRED(VERSION 2.4.6)
23    
24    SET(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake) # for FindReadline.cmake
25    
26    # external packages
27    FIND_PACKAGE( BZip2 )
28    FIND_PACKAGE( ZLIB )
29    FIND_PACKAGE( Readline )
30    
31  # Configuration checks  # Configuration checks
32    
33  INCLUDE(CheckIncludeFile)  INCLUDE(CheckIncludeFile)
# Line 18  INCLUDE(CheckIncludeFileCXX) Line 35  INCLUDE(CheckIncludeFileCXX)
35  INCLUDE(CheckFunctionExists)  INCLUDE(CheckFunctionExists)
36  INCLUDE(CheckTypeSize)  INCLUDE(CheckTypeSize)
37    
38  CHECK_INCLUDE_FILE(dirent.h     HAVE_DIRENT_H)  CHECK_INCLUDE_FILE(dirent.h         HAVE_DIRENT_H)
 CHECK_INCLUDE_FILE(unistd.h     HAVE_UNISTD_H)  
39  CHECK_INCLUDE_FILE(sys/stat.h   HAVE_SYS_STAT_H)  CHECK_INCLUDE_FILE(sys/stat.h   HAVE_SYS_STAT_H)
40  CHECK_INCLUDE_FILE(sys/types.h  HAVE_SYS_TYPES_H)  CHECK_INCLUDE_FILE(sys/types.h  HAVE_SYS_TYPES_H)
41    CHECK_INCLUDE_FILE(unistd.h         HAVE_UNISTD_H)
42    CHECK_INCLUDE_FILE(windows.h    HAVE_WINDOWS_H)
43    
44  CHECK_INCLUDE_FILE_CXX(type_traits.h            HAVE_TYPE_TRAITS_H)  CHECK_INCLUDE_FILE_CXX(type_traits.h            HAVE_TYPE_TRAITS_H)
45  CHECK_INCLUDE_FILE_CXX(bits/type_traits.h       HAVE_BITS_TYPE_TRAITS_H)  CHECK_INCLUDE_FILE_CXX(bits/type_traits.h       HAVE_BITS_TYPE_TRAITS_H)
# Line 29  CHECK_INCLUDE_FILE_CXX(bits/type_traits. Line 47  CHECK_INCLUDE_FILE_CXX(bits/type_traits.
47  CHECK_FUNCTION_EXISTS(bcopy     HAVE_BCOPY)  CHECK_FUNCTION_EXISTS(bcopy     HAVE_BCOPY)
48  CHECK_FUNCTION_EXISTS(memmove   HAVE_MEMMOVE)  CHECK_FUNCTION_EXISTS(memmove   HAVE_MEMMOVE)
49  CHECK_FUNCTION_EXISTS(strerror  HAVE_STRERROR)  CHECK_FUNCTION_EXISTS(strerror  HAVE_STRERROR)
50    CHECK_FUNCTION_EXISTS(strtoll   HAVE_STRTOLL)
51    CHECK_FUNCTION_EXISTS(strtoq    HAVE_STRTOQ)
52    CHECK_FUNCTION_EXISTS(_strtoi64 HAVE__STRTOI64)
53    
54  CHECK_TYPE_SIZE("long long"             LONG_LONG)  CHECK_TYPE_SIZE("long long"             LONG_LONG)
55  CHECK_TYPE_SIZE("unsigned long long"    UNSIGNED_LONG_LONG)  CHECK_TYPE_SIZE("unsigned long long"    UNSIGNED_LONG_LONG)
# Line 38  CHECK_TYPE_SIZE("unsigned long long"   UNS Line 59  CHECK_TYPE_SIZE("unsigned long long"   UNS
59  # (Note: CMakeSetup displays these in alphabetical order, regardless of  # (Note: CMakeSetup displays these in alphabetical order, regardless of
60  # the order we use here)  # the order we use here)
61    
62  SET(BUILD_SHARED_LIBS "SHARED" CACHE STRING  SET(BUILD_SHARED_LIBS OFF CACHE BOOL
63      "What type of libraries to build. Set to SHARED or STATIC.")      "Build shared libraries instead of static ones.")
64    
65  OPTION(PCRE_BUILD_PCRECPP "Build the PCRE C++ library (pcrecpp)." ON)  OPTION(PCRE_BUILD_PCRECPP "Build the PCRE C++ library (pcrecpp)." ON)
66    
67  SET(PCRE_EBCDIC FALSE CACHE BOOL  SET(PCRE_EBCDIC OFF CACHE BOOL
68      "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)")
69    
70  SET(PCRE_LINK_SIZE "2" CACHE STRING  SET(PCRE_LINK_SIZE "2" CACHE STRING
# Line 56  SET(PCRE_MATCH_LIMIT_RECURSION "MATCH_LI Line 77  SET(PCRE_MATCH_LIMIT_RECURSION "MATCH_LI
77      "Default limit on internal recursion. See MATCH_LIMIT_RECURSION in config.h.in for details.")      "Default limit on internal recursion. See MATCH_LIMIT_RECURSION in config.h.in for details.")
78    
79  SET(PCRE_NEWLINE "LF" CACHE STRING  SET(PCRE_NEWLINE "LF" CACHE STRING
80      "What to recognize as a newline (one of CR, LF, CRLF, ANY).")      "What to recognize as a newline (one of CR, LF, CRLF, ANY, ANYCRLF).")
81    
82  SET(PCRE_NO_RECURSE TRUE CACHE BOOL  SET(PCRE_NO_RECURSE OFF CACHE BOOL
83      "If ON, then don't use stack recursion when matching. See NO_RECURSE in config.h.in for details.")      "If ON, then don't use stack recursion when matching. See NO_RECURSE in config.h.in for details.")
84    
85  SET(PCRE_POSIX_MALLOC_THRESHOLD "10" CACHE STRING  SET(PCRE_POSIX_MALLOC_THRESHOLD "10" CACHE STRING
86      "Threshold for malloc() usage. See POSIX_MALLOC_THRESHOLD in config.h.in for details.")      "Threshold for malloc() usage. See POSIX_MALLOC_THRESHOLD in config.h.in for details.")
87    
88  SET(PCRE_SUPPORT_UNICODE_PROPERTIES FALSE CACHE BOOL  SET(PCRE_SUPPORT_UNICODE_PROPERTIES OFF CACHE BOOL
89      "Enable support for Unicode properties. (If set, UTF-8 support will be enabled as well)")      "Enable support for Unicode properties. (If set, UTF-8 support will be enabled as well)")
90    
91  SET(PCRE_SUPPORT_UTF8 FALSE CACHE BOOL  SET(PCRE_SUPPORT_UTF8 OFF CACHE BOOL
92      "Enable support for the Unicode UTF-8 encoding.")      "Enable support for the Unicode UTF-8 encoding.")
93    
94    SET(PCRE_SUPPORT_BSR_ANYCRLF OFF CACHE BOOL
95        "ON=Backslash-R matches only LF CR and CRLF, OFF=Backslash-R matches all Unicode Linebreaks")
96    
97    # bzip2 lib
98    IF(BZIP2_FOUND)
99      OPTION (PCRE_SUPPORT_LIBBZ2 "Enable support for linking pcregrep with libbz2." ON)
100    ENDIF(BZIP2_FOUND)
101    IF(PCRE_SUPPORT_LIBBZ2)
102      INCLUDE_DIRECTORIES(${BZIP2_INCLUDE_DIR})
103    ENDIF(PCRE_SUPPORT_LIBBZ2)
104    
105    # zlib
106    IF(ZLIB_FOUND)
107      OPTION (PCRE_SUPPORT_LIBZ "Enable support for linking pcregrep with libz." ON)
108    ENDIF(ZLIB_FOUND)
109    IF(PCRE_SUPPORT_LIBZ)
110      INCLUDE_DIRECTORIES(${ZLIB_INCLUDE_DIR})
111    ENDIF(PCRE_SUPPORT_LIBZ)
112    
113    # readline lib
114    IF(READLINE_FOUND)
115      OPTION (PCRE_SUPPORT_LIBREADLINE  "Enable support for linking pcretest with libreadline." ON)
116    ENDIF(READLINE_FOUND)
117    IF(PCRE_SUPPORT_LIBREADLINE)
118      INCLUDE_DIRECTORIES(${READLINE_INCLUDE_DIR})
119    ENDIF(PCRE_SUPPORT_LIBREADLINE)
120    
121  # Prepare build configuration  # Prepare build configuration
122    
123  SET(pcre_have_type_traits 0)  SET(pcre_have_type_traits 0)
# Line 94  IF(HAVE_UNSIGNED_LONG_LONG) Line 142  IF(HAVE_UNSIGNED_LONG_LONG)
142          SET(pcre_have_ulong_long 1)          SET(pcre_have_ulong_long 1)
143  ENDIF(HAVE_UNSIGNED_LONG_LONG)  ENDIF(HAVE_UNSIGNED_LONG_LONG)
144    
145    IF(NOT BUILD_SHARED_LIBS)
146            SET(PCRE_STATIC 1)
147    ENDIF(NOT BUILD_SHARED_LIBS)
148    
149    IF(PCRE_SUPPORT_BSR_ANYCRLF)
150            SET(BSR_ANYCRLF 1)
151    ENDIF(PCRE_SUPPORT_BSR_ANYCRLF)
152    
153  IF(PCRE_SUPPORT_UTF8 OR PCRE_SUPPORT_UNICODE_PROPERTIES)  IF(PCRE_SUPPORT_UTF8 OR PCRE_SUPPORT_UNICODE_PROPERTIES)
154          SET(SUPPORT_UTF8 1)          SET(SUPPORT_UTF8 1)
155  ENDIF(PCRE_SUPPORT_UTF8 OR PCRE_SUPPORT_UNICODE_PROPERTIES)  ENDIF(PCRE_SUPPORT_UTF8 OR PCRE_SUPPORT_UNICODE_PROPERTIES)
# Line 102  IF(PCRE_SUPPORT_UNICODE_PROPERTIES) Line 158  IF(PCRE_SUPPORT_UNICODE_PROPERTIES)
158          SET(SUPPORT_UCP 1)          SET(SUPPORT_UCP 1)
159  ENDIF(PCRE_SUPPORT_UNICODE_PROPERTIES)  ENDIF(PCRE_SUPPORT_UNICODE_PROPERTIES)
160    
161    IF(PCRE_SUPPORT_LIBREADLINE)
162            SET(SUPPORT_LIBREADLINE 1)
163            SET(PCRETEST_LIBS ${READLINE_LIBRARY})
164    ENDIF(PCRE_SUPPORT_LIBREADLINE)
165    
166    IF(PCRE_SUPPORT_LIBZ)
167            SET(SUPPORT_LIBZ 1)
168            SET(PCREGREP_LIBS ${PCREGREP_LIBS} ${ZLIB_LIBRARIES})
169    ENDIF(PCRE_SUPPORT_LIBZ)
170    
171    IF(PCRE_SUPPORT_LIBBZ2)
172            SET(SUPPORT_LIBBZ2 1)
173            SET(PCREGREP_LIBS ${PCREGREP_LIBS} ${BZIP2_LIBRARIES})
174    ENDIF(PCRE_SUPPORT_LIBBZ2)
175    
176    SET(NEWLINE "")
177    
178  IF(PCRE_NEWLINE STREQUAL "LF")  IF(PCRE_NEWLINE STREQUAL "LF")
179    SET(NEWLINE "10")          SET(NEWLINE "10")
 ELSE(PCRE_NEWLINE STREQUAL "LF")  
   IF(PCRE_NEWLINE STREQUAL "CR")  
     SET(NEWLINE "13")  
   ELSE(PCRE_NEWLINE STREQUAL "CR")  
     IF(PCRE_NEWLINE STREQUAL "CRLF")  
       SET(NEWLINE "3338")  
     ELSE(PCRE_NEWLINE STREQUAL "CRLF")  
       IF(PCRE_NEWLINE STREQUAL "ANY")  
         SET(NEWLINE "-1")  
       ELSE(PCRE_NEWLINE STREQUAL "ANY")  
         MESSAGE(FATAL_ERROR "The PCRE_NEWLINE variable must be set to one of the following values: \"LF\", \"CR\", \"CRLF\", \"ANY\".")  
       ENDIF(PCRE_NEWLINE STREQUAL "ANY")  
     ENDIF(PCRE_NEWLINE STREQUAL "CRLF")  
   ENDIF(PCRE_NEWLINE STREQUAL "CR")  
180  ENDIF(PCRE_NEWLINE STREQUAL "LF")  ENDIF(PCRE_NEWLINE STREQUAL "LF")
181    IF(PCRE_NEWLINE STREQUAL "CR")
182            SET(NEWLINE "13")
183    ENDIF(PCRE_NEWLINE STREQUAL "CR")
184    IF(PCRE_NEWLINE STREQUAL "CRLF")
185            SET(NEWLINE "3338")
186    ENDIF(PCRE_NEWLINE STREQUAL "CRLF")
187    IF(PCRE_NEWLINE STREQUAL "ANY")
188            SET(NEWLINE "-1")
189    ENDIF(PCRE_NEWLINE STREQUAL "ANY")
190    IF(PCRE_NEWLINE STREQUAL "ANYCRLF")
191            SET(NEWLINE "-2")
192    ENDIF(PCRE_NEWLINE STREQUAL "ANYCRLF")
193    
194    IF(NEWLINE STREQUAL "")
195            MESSAGE(FATAL_ERROR "The PCRE_NEWLINE variable must be set to one of the following values: \"LF\", \"CR\", \"CRLF\", \"ANY\", \"ANYCRLF\".")
196    ENDIF(NEWLINE STREQUAL "")
197    
198  IF(PCRE_EBCDIC)  IF(PCRE_EBCDIC)
199          SET(EBCDIC 1)          SET(EBCDIC 1)
# Line 152  ENDIF(PCRE_BUILD_PCRECPP) Line 227  ENDIF(PCRE_BUILD_PCRECPP)
227    
228  # Character table generation  # Character table generation
229    
230  ADD_EXECUTABLE(dftables dftables.c)  OPTION(PCRE_REBUILD_CHARTABLES "Rebuild char tables" OFF)
231    IF(PCRE_REBUILD_CHARTABLES)
232  GET_TARGET_PROPERTY(DFTABLES_EXE dftables LOCATION)    ADD_EXECUTABLE(dftables dftables.c)
233    
234  ADD_CUSTOM_COMMAND(    GET_TARGET_PROPERTY(DFTABLES_EXE dftables LOCATION)
235          COMMENT "Generating character tables (pcre_chartables.c) for current locale"  
236          DEPENDS dftables    ADD_CUSTOM_COMMAND(
237          COMMAND ${DFTABLES_EXE}      COMMENT "Generating character tables (pcre_chartables.c) for current locale"
238          ARGS    ${CMAKE_BINARY_DIR}/pcre_chartables.c      DEPENDS dftables
239          OUTPUT  ${CMAKE_BINARY_DIR}/pcre_chartables.c      COMMAND ${DFTABLES_EXE}
240  )      ARGS        ${CMAKE_BINARY_DIR}/pcre_chartables.c
241        OUTPUT      ${CMAKE_BINARY_DIR}/pcre_chartables.c
242      )
243    ELSE(PCRE_REBUILD_CHARTABLES)
244      CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/pcre_chartables.c.dist
245                        ${CMAKE_BINARY_DIR}/pcre_chartables.c
246                        COPYONLY)
247    ENDIF(PCRE_REBUILD_CHARTABLES)
248    
249  # Source code  # Source code
250    
251  SET(PCRE_HEADERS ${CMAKE_BINARY_DIR}/pcre.h)  SET(PCRE_HEADERS ${CMAKE_BINARY_DIR}/pcre.h)
252    
253  SET(PCRE_SOURCES  SET(PCRE_SOURCES
254          ${CMAKE_BINARY_DIR}/pcre_chartables.c    ${CMAKE_BINARY_DIR}/pcre_chartables.c
255          pcre_compile.c    pcre_compile.c
256          pcre_config.c    pcre_config.c
257          pcre_dfa_exec.c    pcre_dfa_exec.c
258          pcre_exec.c    pcre_exec.c
259          pcre_fullinfo.c    pcre_fullinfo.c
260          pcre_get.c    pcre_get.c
261          pcre_globals.c    pcre_globals.c
262          pcre_info.c    pcre_info.c
263          pcre_newline.c    pcre_newline.c
264          pcre_maketables.c    pcre_maketables.c
265          pcre_ord2utf8.c    pcre_ord2utf8.c
266          pcre_refcount.c    pcre_refcount.c
267          pcre_study.c    pcre_study.c
268          pcre_tables.c    pcre_tables.c
269          pcre_try_flipped.c    pcre_try_flipped.c
270          pcre_ucp_searchfuncs.c    pcre_ucp_searchfuncs.c
271          pcre_valid_utf8.c    pcre_valid_utf8.c
272          pcre_version.c    pcre_version.c
273          pcre_xclass.c    pcre_xclass.c
274  )  )
275    
276  SET(PCREPOSIX_HEADERS pcreposix.h)  SET(PCREPOSIX_HEADERS pcreposix.h)
# Line 196  SET(PCREPOSIX_HEADERS pcreposix.h) Line 278  SET(PCREPOSIX_HEADERS pcreposix.h)
278  SET(PCREPOSIX_SOURCES pcreposix.c)  SET(PCREPOSIX_SOURCES pcreposix.c)
279    
280  SET(PCRECPP_HEADERS  SET(PCRECPP_HEADERS
281          pcrecpp.h    pcrecpp.h
282          pcre_scanner.h    pcre_scanner.h
283          ${CMAKE_BINARY_DIR}/pcrecpparg.h    ${CMAKE_BINARY_DIR}/pcrecpparg.h
284          ${CMAKE_BINARY_DIR}/pcre_stringpiece.h    ${CMAKE_BINARY_DIR}/pcre_stringpiece.h
285  )  )
286    
287  SET(PCRECPP_SOURCES  SET(PCRECPP_SOURCES
# Line 212  SET(PCRECPP_SOURCES Line 294  SET(PCRECPP_SOURCES
294    
295  ADD_DEFINITIONS(-DHAVE_CONFIG_H)  ADD_DEFINITIONS(-DHAVE_CONFIG_H)
296    
297  IF(WIN32)  IF(MSVC)
         # What about -DDLL_EXPORT?  
298          ADD_DEFINITIONS(-D_CRT_SECURE_NO_DEPRECATE)          ADD_DEFINITIONS(-D_CRT_SECURE_NO_DEPRECATE)
299  ENDIF(WIN32)  ENDIF(MSVC)
300    
301  SET(CMAKE_INCLUDE_CURRENT_DIR 1)  SET(CMAKE_INCLUDE_CURRENT_DIR 1)
302    # needed to make sure to not link debug libs
303  #SET(CMAKE_DEBUG_POSTFIX "d")  # against release libs and vice versa
304    IF(WIN32)
305      SET(CMAKE_DEBUG_POSTFIX "d")
306    ENDIF(WIN32)
307    
308  # Libraries  # Libraries
309    
310  ADD_LIBRARY(pcre ${PCRE_HEADERS} ${PCRE_SOURCES})  ADD_LIBRARY(pcre ${PCRE_HEADERS} ${PCRE_SOURCES} ${CMAKE_BINARY_DIR}/config.h)
   
311  ADD_LIBRARY(pcreposix ${PCREPOSIX_HEADERS} ${PCREPOSIX_SOURCES})  ADD_LIBRARY(pcreposix ${PCREPOSIX_HEADERS} ${PCREPOSIX_SOURCES})
312  TARGET_LINK_LIBRARIES(pcreposix pcre)  TARGET_LINK_LIBRARIES(pcreposix pcre)
313    
314  IF(PCRE_BUILD_PCRECPP)  IF(PCRE_BUILD_PCRECPP)
315          ADD_LIBRARY(pcrecpp ${PCRECPP_HEADERS} ${PCRECPP_SOURCES})    ADD_LIBRARY(pcrecpp ${PCRECPP_HEADERS} ${PCRECPP_SOURCES})
316          TARGET_LINK_LIBRARIES(pcrecpp pcre)    TARGET_LINK_LIBRARIES(pcrecpp pcre)
         IF(MINGW)  
                 SET_TARGET_PROPERTIES(pcrecpp PROPERTIES PREFIX "mingw-")  
         ENDIF(MINGW)  
317  ENDIF(PCRE_BUILD_PCRECPP)  ENDIF(PCRE_BUILD_PCRECPP)
318    
319  # Executables  # Executables
320    
321  ADD_EXECUTABLE(pcretest pcretest.c)  ADD_EXECUTABLE(pcretest pcretest.c)
322  TARGET_LINK_LIBRARIES(pcretest pcreposix)  TARGET_LINK_LIBRARIES(pcretest pcreposix ${PCRETEST_LIBS})
323    
324  ADD_EXECUTABLE(pcregrep pcregrep.c)  ADD_EXECUTABLE(pcregrep pcregrep.c)
325  TARGET_LINK_LIBRARIES(pcregrep pcreposix)  TARGET_LINK_LIBRARIES(pcregrep pcreposix ${PCREGREP_LIBS})
326    
327    ADD_EXECUTABLE(pcredemo pcredemo.c)
328    TARGET_LINK_LIBRARIES(pcredemo pcreposix)
329    IF(NOT BUILD_SHARED_LIBS)
330        # make sure to not use declspec(dllimport) in static mode on windows
331            SET_TARGET_PROPERTIES(pcredemo PROPERTIES COMPILE_FLAGS "-DPCRE_STATIC")
332    ENDIF(NOT BUILD_SHARED_LIBS)
333    
334    IF(PCRE_BUILD_PCRECPP)
335            ADD_EXECUTABLE(pcrecpp_unittest pcrecpp_unittest.cc)
336            TARGET_LINK_LIBRARIES(pcrecpp_unittest pcrecpp)
337    
338            ADD_EXECUTABLE(pcre_scanner_unittest pcre_scanner_unittest.cc)
339            TARGET_LINK_LIBRARIES(pcre_scanner_unittest pcrecpp)
340    
341            ADD_EXECUTABLE(pcre_stringpiece_unittest pcre_stringpiece_unittest.cc)
342            TARGET_LINK_LIBRARIES(pcre_stringpiece_unittest pcrecpp)
343    ENDIF(PCRE_BUILD_PCRECPP)
344    
345  # Testing  # Testing
346    
347  ENABLE_TESTING()  ENABLE_TESTING()
348    
349    GET_TARGET_PROPERTY(PCREGREP_EXE pcregrep DEBUG_LOCATION)
350    GET_TARGET_PROPERTY(PCRETEST_EXE pcretest DEBUG_LOCATION)
351    
352    # Write out a CTest configuration file that sets some needed environment
353    # variables for the test scripts.
354    #
355    FILE(WRITE ${CMAKE_BINARY_DIR}/CTestCustom.ctest
356    "# This is a generated file.
357    SET(ENV{srcdir} ${CMAKE_SOURCE_DIR})
358    SET(ENV{pcregrep} ${PCREGREP_EXE})
359    SET(ENV{pcretest} ${PCRETEST_EXE})
360    ")
361    
362  IF(UNIX)  IF(UNIX)
363          ADD_TEST(test1 sh -c "srcdir=${CMAKE_SOURCE_DIR} ${CMAKE_SOURCE_DIR}/RunTest")          ADD_TEST(pcre_test      ${CMAKE_SOURCE_DIR}/RunTest)
364          ADD_TEST(test2 sh -c "srcdir=${CMAKE_SOURCE_DIR} ${CMAKE_SOURCE_DIR}/RunGrepTest")          ADD_TEST(pcre_grep_test ${CMAKE_SOURCE_DIR}/RunGrepTest)
 ELSE(UNIX)  
   IF(WIN32)  
         ADD_TEST(test1 ${CMAKE_SOURCE_DIR}/RunTest.bat ${CMAKE_SOURCE_DIR})  
   ENDIF(WIN32)  
365  ENDIF(UNIX)  ENDIF(UNIX)
366    IF(WIN32)
367            ADD_TEST(pcre_test cmd /C ${CMAKE_SOURCE_DIR}/RunTest.bat)
368    ENDIF(WIN32)
369    
370    GET_TARGET_PROPERTY(PCRECPP_UNITTEST_EXE
371                        pcrecpp_unittest
372                        DEBUG_LOCATION)
373    
374    GET_TARGET_PROPERTY(PCRE_SCANNER_UNITTEST_EXE
375                        pcre_scanner_unittest
376                        DEBUG_LOCATION)
377    
378    GET_TARGET_PROPERTY(PCRE_STRINGPIECE_UNITTEST_EXE
379                        pcre_stringpiece_unittest
380                        DEBUG_LOCATION)
381    
382    ADD_TEST(pcrecpp_test          ${PCRECPP_UNITTEST_EXE})
383    ADD_TEST(pcre_scanner_test     ${PCRE_SCANNER_UNITTEST_EXE})
384    ADD_TEST(pcre_stringpiece_test ${PCRE_STRINGPIECE_UNITTEST_EXE})
385    
386  # Installation  # Installation
387    
# Line 273  FILE(GLOB man1 ${CMAKE_SOURCE_DIR}/doc/* Line 399  FILE(GLOB man1 ${CMAKE_SOURCE_DIR}/doc/*
399  FILE(GLOB man3 ${CMAKE_SOURCE_DIR}/doc/*.3)  FILE(GLOB man3 ${CMAKE_SOURCE_DIR}/doc/*.3)
400    
401  IF(PCRE_BUILD_PCRECPP)  IF(PCRE_BUILD_PCRECPP)
402          INSTALL(TARGETS pcrecpp DESTINATION lib)          INSTALL(TARGETS pcrecpp
403                    RUNTIME DESTINATION bin
404                    LIBRARY DESTINATION lib
405                    ARCHIVE DESTINATION lib)
406          INSTALL(FILES ${PCRECPP_HEADERS} DESTINATION include)          INSTALL(FILES ${PCRECPP_HEADERS} DESTINATION include)
407  ELSE(PCRE_BUILD_PCRECPP)  ELSE(PCRE_BUILD_PCRECPP)
408          # Remove pcrecpp.3          # Remove pcrecpp.3
# Line 288  ENDIF(PCRE_BUILD_PCRECPP) Line 417  ENDIF(PCRE_BUILD_PCRECPP)
417    
418  INSTALL(FILES ${man1} DESTINATION man/man1)  INSTALL(FILES ${man1} DESTINATION man/man1)
419  INSTALL(FILES ${man3} DESTINATION man/man3)  INSTALL(FILES ${man3} DESTINATION man/man3)
420  INSTALL(FILES ${html} DESTINATION doc/html)  INSTALL(FILES ${html} DESTINATION share/doc/pcre/html)
421    
422    # help, only for nice output
423    IF(BUILD_SHARED_LIBS)
424      SET(BUILD_STATIC_LIBS OFF)
425    ELSE(BUILD_SHARED_LIBS)
426      SET(BUILD_STATIC_LIBS ON)
427    ENDIF(BUILD_SHARED_LIBS)
428    
429    MESSAGE(STATUS "")
430    MESSAGE(STATUS "")
431    MESSAGE(STATUS "PCRE configuration summary:")
432    MESSAGE(STATUS "")
433    MESSAGE(STATUS "  Install prefix .................. : " ${CMAKE_INSTALL_PREFIX})
434    MESSAGE(STATUS "  C compiler ...................... : " ${CMAKE_C_COMPILER})
435    MESSAGE(STATUS "  C++ compiler .................... : " ${CMAKE_CXX_COMPILER})
436    MESSAGE(STATUS "  C compiler flags ................ : " ${CMAKE_C_FLAGS})   #FIXME
437    MESSAGE(STATUS "  C++ compiler flags .............. : " ${CMAKE_CXX_FLAGS}) #FIXME
438    MESSAGE(STATUS "")
439    MESSAGE(STATUS "  Build C++ library ............... : " ${PCRE_BUILD_PCRECPP})
440    MESSAGE(STATUS "  Enable UTF-8 support ............ : " ${PCRE_SUPPORT_UNICODE_PROPERTIES})
441    MESSAGE(STATUS "  Unicode properties .............. : " ${PCRE_SUPPORT_UNICODE_PROPERTIES})
442    MESSAGE(STATUS "  Newline char/sequence ........... : " ${PCRE_NEWLINE})
443    MESSAGE(STATUS "  \\R matches only ANYCRLF ......... : " ${PCRE_SUPPORT_BSR_ANYCRLF})
444    MESSAGE(STATUS "  EBCDIC coding ................... : " ${PCRE_EBCDIC})
445    MESSAGE(STATUS "  Rebuild char tables ............. : " ${PCRE_REBUILD_CHARTABLES})
446    MESSAGE(STATUS "  Use stack recursion ............. : " ${PCRE_NO_RECURSE})
447    MESSAGE(STATUS "  POSIX mem threshold ............. : " ${PCRE_POSIX_MALLOC_THRESHOLD})
448    MESSAGE(STATUS "  Internal link size .............. : " ${PCRE_LINK_SIZE})
449    MESSAGE(STATUS "  Match limit ..................... : " ${PCRE_MATCH_LIMIT})
450    MESSAGE(STATUS "  Match limit recursion ........... : " ${PCRE_MATCH_LIMIT_RECURSION})
451    MESSAGE(STATUS "  Build shared libs ............... : " ${BUILD_SHARED_LIBS})
452    MESSAGE(STATUS "  Build static libs ............... : " ${BUILD_STATIC_LIBS})
453    IF(ZLIB_FOUND)
454      MESSAGE(STATUS "  Link pcregrep with libz ......... : " ${PCRE_SUPPORT_LIBZ})
455    ELSE(ZLIB_FOUND)
456      MESSAGE(STATUS "  Link pcregrep with libz ......... :   zlib libraries not found!" )
457    ENDIF(ZLIB_FOUND)
458    IF(BZIP2_FOUND)
459      MESSAGE(STATUS "  Link pcregrep with libbz2 ....... : " ${PCRE_SUPPORT_LIBBZ2})
460    ELSE(BZIP2_FOUND)
461      MESSAGE(STATUS "  Link pcregrep with libbz2 ....... :   bzip2 libraries not found!" )
462    ENDIF(BZIP2_FOUND)
463    MESSAGE(STATUS "  Link pcretest with libreadline .. : " ${PCRE_SUPPORT_LIBREADLINE})
464    MESSAGE(STATUS "")
465    
466  # end CMakeLists.txt  # end CMakeLists.txt

Legend:
Removed from v.142  
changed lines
  Added in v.303

  ViewVC Help
Powered by ViewVC 1.1.5