1 CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
5 MESSAGE(STATUS "adding pcre from : ${OSGPcreSrcDir}")
9 SET(${PROJECT_NAME}SharedTargetPcre osgpcre)
10 SET(${PROJECT_NAME}SharedTargetPcrecpp osgpcrecpp)
11 SET(${PROJECT_NAME}StaticTargetPcre libosgpcre)
12 SET(${PROJECT_NAME}StaticTargetPcrecpp libosgpcrecpp)
14 SET(OSG_PCRE_SRCS ${OSGPcreSrcDir}/pcre_compile.c
15 ${OSGPcreSrcDir}/pcre_config.c
16 ${OSGPcreSrcDir}/pcre_dfa_exec.c
17 ${OSGPcreSrcDir}/pcre_exec.c
18 ${OSGPcreSrcDir}/pcre_fullinfo.c
19 ${OSGPcreSrcDir}/pcre_get.c
20 ${OSGPcreSrcDir}/pcre_globals.c
21 ${OSGPcreSrcDir}/pcre_info.c
22 ${OSGPcreSrcDir}/pcre_maketables.c
23 ${OSGPcreSrcDir}/pcre_newline.c
24 ${OSGPcreSrcDir}/pcre_ord2utf8.c
25 ${OSGPcreSrcDir}/pcre_refcount.c
26 ${OSGPcreSrcDir}/pcre_study.c
27 ${OSGPcreSrcDir}/pcre_tables.c
28 ${OSGPcreSrcDir}/pcre_try_flipped.c
29 ${OSGPcreSrcDir}/pcre_ucd.c
30 ${OSGPcreSrcDir}/pcre_valid_utf8.c
31 ${OSGPcreSrcDir}/pcre_version.c
32 ${OSGPcreSrcDir}/pcre_xclass.c
33 ${CMAKE_BINARY_DIR}/pcre/pcre_chartables.c)
35 SET(OSG_PCRECPP_SRCS ${OSGPcreSrcDir}/pcre_scanner.cc
36 ${OSGPcreSrcDir}/pcre_stringpiece.cc
37 ${OSGPcreSrcDir}/pcrecpp.cc)
39 SET(OSG_PCRE_HDR ${OSGPSrcDir})
40 SET(OSG_PCRECPP_HDR ${OSGPSrcDir})
42 ADD_DEFINITIONS(-DHAVE_CONFIG_H)
45 COMMAND "${CMAKE_COMMAND}" -E copy_if_different
46 "${OSGPcreSrcDir}/pcre_chartables.c.dist"
47 "${CMAKE_BINARY_DIR}/pcre/pcre_chartables.c")
50 COMMAND "${CMAKE_COMMAND}" -E copy_if_different
51 "${OSGPcreSrcDir}/pcre.h.generic"
52 "${CMAKE_BINARY_DIR}/pcre/pcre.h")
54 SET(pcre_have_ulong_long 1)
55 SET(pcre_have_long_long 1)
57 CONFIGURE_FILE("${OSGPcreSrcDir}/pcrecpparg.h.in"
58 "${CMAKE_BINARY_DIR}/pcre/pcrecpparg.h")
60 SET(pcre_have_type_traits 0)
61 SET(pcre_have_bits_type_traits 0)
63 CONFIGURE_FILE("${OSGPcreSrcDir}/pcre_stringpiece.h.in"
64 "${CMAKE_BINARY_DIR}/pcre/pcre_stringpiece.h")
66 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/pcre)
67 INCLUDE_DIRECTORIES(${CMAKE_BINARY_DIR}/pcre)
68 INCLUDE_DIRECTORIES(${OSGPcreSrcDir})
72 ADD_LIBRARY(${${PROJECT_NAME}SharedTargetPcre} SHARED
75 ADD_DEPENDENCIES(ALL_STANDARD_BUILD ${${PROJECT_NAME}SharedTargetPcre})
77 SET_TARGET_PROPERTIES(${${PROJECT_NAME}SharedTargetPcre} PROPERTIES
80 INSTALL(TARGETS ${${PROJECT_NAME}SharedTargetPcre}
81 CONFIGURATIONS Release
82 RUNTIME DESTINATION bin COMPONENT release_runtimes
83 LIBRARY DESTINATION lib COMPONENT release_libraries
84 ARCHIVE DESTINATION lib COMPONENT release_libraries)
86 INSTALL(TARGETS ${${PROJECT_NAME}SharedTargetPcre}
88 RUNTIME DESTINATION bin COMPONENT debug_runtimes
89 LIBRARY DESTINATION lib COMPONENT debug_libraries
90 ARCHIVE DESTINATION lib COMPONENT debug_libraries)
92 ADD_LIBRARY(${${PROJECT_NAME}SharedTargetPcrecpp} SHARED
95 ADD_DEPENDENCIES(ALL_STANDARD_BUILD ${${PROJECT_NAME}SharedTargetPcrecpp})
97 SET_TARGET_PROPERTIES(${${PROJECT_NAME}SharedTargetPcrecpp} PROPERTIES
100 TARGET_LINK_LIBRARIES(${${PROJECT_NAME}SharedTargetPcrecpp} ${${PROJECT_NAME}SharedTargetPcre})
102 INSTALL(TARGETS ${${PROJECT_NAME}SharedTargetPcrecpp}
103 CONFIGURATIONS Release
104 RUNTIME DESTINATION bin COMPONENT release_runtimes
105 LIBRARY DESTINATION lib COMPONENT release_libraries
106 ARCHIVE DESTINATION lib COMPONENT release_libraries)
108 INSTALL(TARGETS ${${PROJECT_NAME}SharedTargetPcrecpp}
110 RUNTIME DESTINATION bin COMPONENT debug_runtimes
111 LIBRARY DESTINATION lib COMPONENT debug_libraries
112 ARCHIVE DESTINATION lib COMPONENT debug_libraries)
113 ENDIF(BUILD_SHARED_LIBS)
115 IF(BUILD_STATIC_LIBS)
116 ADD_LIBRARY(${${PROJECT_NAME}StaticTargetPcre} STATIC
119 ADD_DEPENDENCIES(ALL_STANDARD_BUILD ${${PROJECT_NAME}StaticTargetPcre})
121 SET_TARGET_PROPERTIES(${${PROJECT_NAME}StaticTargetPcre} PROPERTIES
123 COMPILE_DEFINITIONS PCRE_STATIC)
125 INSTALL(TARGETS ${${PROJECT_NAME}StaticTargetPcre}
126 CONFIGURATIONS Release
127 RUNTIME DESTINATION lib COMPONENT release_libraries
128 LIBRARY DESTINATION lib COMPONENT release_libraries
129 ARCHIVE DESTINATION lib COMPONENT release_libraries)
131 INSTALL(TARGETS ${${PROJECT_NAME}StaticTargetPcre}
133 RUNTIME DESTINATION lib COMPONENT debug_libraries
134 LIBRARY DESTINATION lib COMPONENT debug_libraries
135 ARCHIVE DESTINATION lib COMPONENT debug_libraries)
137 ADD_LIBRARY(${${PROJECT_NAME}StaticTargetPcrecpp} STATIC
140 ADD_DEPENDENCIES(ALL_STANDARD_BUILD ${${PROJECT_NAME}StaticTargetPcrecpp})
142 SET_TARGET_PROPERTIES(${${PROJECT_NAME}StaticTargetPcrecpp} PROPERTIES
144 COMPILE_DEFINITIONS PCRE_STATIC)
146 INSTALL(TARGETS ${${PROJECT_NAME}StaticTargetPcrecpp}
147 CONFIGURATIONS Release
148 RUNTIME DESTINATION lib COMPONENT release_libraries
149 LIBRARY DESTINATION lib COMPONENT release_libraries
150 ARCHIVE DESTINATION lib COMPONENT release_libraries)
152 INSTALL(TARGETS ${${PROJECT_NAME}StaticTargetPcrecpp}
154 RUNTIME DESTINATION lib COMPONENT debug_libraries
155 LIBRARY DESTINATION lib COMPONENT debug_libraries
156 ARCHIVE DESTINATION lib COMPONENT debug_libraries)
157 ENDIF(BUILD_STATIC_LIBS)
159 SET(OSG_PCRE_INCLUDE_DIR ${OSGPcreSrcDir};${CMAKE_BINARY_DIR}/pcre CACHE PATH "")
160 SET(OSG_PCRE_STATIC_LIBRARY ${${PROJECT_NAME}StaticTargetPcre} CACHE STRING "")
161 # SET(OSG_PCRE_SHARED_LIBRARY ${${PROJECT_NAME}SharedTargetPcre} CACHE STRING "")
164 MESSAGE(STATUS "ignoring pcre")
166 SET(OSGPcreSrcDir "" CACHE PATH "")