summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorph10 <ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15>2007-12-26 18:46:46 +0000
committerph10 <ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15>2007-12-26 18:46:46 +0000
commit1201de92c4da659547a8bf9a3a7f690770b5247a (patch)
tree87058b8047cd27fd77fe0b6b0dc19f13d301b03e
parent5c47b26e7ef71aea6e3a70f07aad0996cc7bba51 (diff)
downloadpcre-1201de92c4da659547a8bf9a3a7f690770b5247a.tar.gz
Update CMake files for new build-arguments.
git-svn-id: svn://vcs.exim.org/pcre/code/trunk@291 2f5784b3-3f2a-0410-8824-cb99058d5e15
-rw-r--r--CMakeLists.txt40
-rw-r--r--ChangeLog10
-rw-r--r--config-cmake.h.in5
3 files changed, 53 insertions, 2 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 960736d..539c145 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -8,6 +8,11 @@
# Refined and expanded by Daniel Richard G. <skunk@iSKUNK.ORG>
# 2007-09-14 mod by Sheri so 7.4 supported configuration options can be entered
# 2007-09-19 Adjusted by PH to retain previous default settings
+# 2007-12-26 (a) On UNIX, use names libpcre instead of just pcre
+# (b) Ensure pcretest and pcregrep link with the local library,
+# not a previously-installed one.
+# (c) Add PCRE_SUPPORT_LIBREADLINE, PCRE_SUPPORT_LIBZ, and
+# PCRE_SUPPORT_LIBBZ2.
#
PROJECT(PCRE C CXX)
@@ -26,6 +31,11 @@ CHECK_INCLUDE_FILE(unistd.h HAVE_UNISTD_H)
CHECK_INCLUDE_FILE(sys/stat.h HAVE_SYS_STAT_H)
CHECK_INCLUDE_FILE(sys/types.h HAVE_SYS_TYPES_H)
+CHECK_INCLUDE_FILE(bzlib.h HAVE_BZLIB_H)
+CHECK_INCLUDE_FILE(zlib.h HAVE_ZLIB_H)
+CHECK_INCLUDE_FILE(readline/history.h HAVE_READLINE_HISTORY_H)
+CHECK_INCLUDE_FILE(readline/readline.h HAVE_READLINE_READLINE_H)
+
CHECK_INCLUDE_FILE_CXX(type_traits.h HAVE_TYPE_TRAITS_H)
CHECK_INCLUDE_FILE_CXX(bits/type_traits.h HAVE_BITS_TYPE_TRAITS_H)
@@ -76,6 +86,15 @@ SET(PCRE_SUPPORT_UTF8 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")
+SET(PCRE_SUPPORT_LIBBZ2 OFF CACHE BOOL
+ "Enable support for linking pcregrep with libbz2.")
+
+SET (PCRE_SUPPORT_LIBZ OFF CACHE BOOL
+ "Enable support for linking pcregrep with libz.")
+
+SET (PCRE_SUPPORT_LIBREADLINE OFF CACHE BOOL
+ "Enable support for linking pcretest with libreadline.")
+
# Prepare build configuration
SET(pcre_have_type_traits 0)
@@ -116,6 +135,21 @@ IF(PCRE_SUPPORT_UNICODE_PROPERTIES)
SET(SUPPORT_UCP 1)
ENDIF(PCRE_SUPPORT_UNICODE_PROPERTIES)
+IF(PCRE_SUPPORT_LIBREADLINE)
+ SET(SUPPORT_LIBREADLINE 1)
+ SET(PCRETEST_LIBS readline)
+ENDIF(PCRE_SUPPORT_LIBREADLINE)
+
+IF(PCRE_SUPPORT_LIBZ)
+ SET(SUPPORT_LIBZ 1)
+ SET(PCREGREP_LIBS z)
+ENDIF(PCRE_SUPPORT_LIBZ)
+
+IF(PCRE_SUPPORT_LIBBZ2)
+ SET(SUPPORT_LIBBZ2 1)
+ SET(PCREGREP_LIBS ${PCREGREP_LIBS} bz2)
+ENDIF(PCRE_SUPPORT_LIBBZ2)
+
SET(NEWLINE "")
IF(PCRE_NEWLINE STREQUAL "LF")
@@ -245,9 +279,11 @@ ADD_LIBRARY(pcre ${PCRE_HEADERS} ${PCRE_SOURCES})
ADD_LIBRARY(pcreposix ${PCREPOSIX_HEADERS} ${PCREPOSIX_SOURCES})
TARGET_LINK_LIBRARIES(pcreposix pcre)
+IF(NOT UNIX)
SET_TARGET_PROPERTIES(pcre pcreposix
PROPERTIES PREFIX ""
)
+ENDIF(NOT UNIX)
IF(PCRE_BUILD_PCRECPP)
ADD_LIBRARY(pcrecpp ${PCRECPP_HEADERS} ${PCRECPP_SOURCES})
@@ -260,10 +296,10 @@ ENDIF(PCRE_BUILD_PCRECPP)
# Executables
ADD_EXECUTABLE(pcretest pcretest.c)
-TARGET_LINK_LIBRARIES(pcretest pcreposix)
+TARGET_LINK_LIBRARIES(pcretest pcreposix ${PCRETEST_LIBS})
ADD_EXECUTABLE(pcregrep pcregrep.c)
-TARGET_LINK_LIBRARIES(pcregrep pcreposix)
+TARGET_LINK_LIBRARIES(pcregrep pcreposix ${PCREGREP_LIBS})
IF(PCRE_BUILD_PCRECPP)
ADD_EXECUTABLE(pcrecpp_unittest pcrecpp_unittest.cc)
diff --git a/ChangeLog b/ChangeLog
index 77943ea..59f0f0a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -100,6 +100,16 @@ Version 7.5 23-Dec-07
20. In pcrecpp.cc, the variable 'count' was incremented twice in
RE::GlobalReplace(). As a result, the number of replacements returned was
double what it should be. I have removed one of the increments.
+
+21. Several CMake things:
+
+ (1) Arranged that, when cmake is used on Unix, the libraries end up with
+ the names libpcre and libpcreposix.
+
+ (2) Arranged for pcretest and pcregrep to link with the newly-built
+ libraries, not previously installed ones.
+
+ (3) Added PCRE_SUPPORT_LIBREADLINE, PCRE_SUPPORT_LIBZ, PCRE_SUPPORT_LIBBZ2.
Version 7.4 21-Sep-07
diff --git a/config-cmake.h.in b/config-cmake.h.in
index 27a2d02..521fa55 100644
--- a/config-cmake.h.in
+++ b/config-cmake.h.in
@@ -19,12 +19,17 @@
#cmakedefine BSR_ANYCRLF
#cmakedefine NO_RECURSE
+#cmakedefine SUPPORT_LIBBZ2
+#cmakedefine SUPPORT_LIBZ
+#cmakedefine SUPPORT_LIBREADLINE
+
#define NEWLINE @NEWLINE@
#define POSIX_MALLOC_THRESHOLD @PCRE_POSIX_MALLOC_THRESHOLD@
#define LINK_SIZE @PCRE_LINK_SIZE@
#define MATCH_LIMIT @PCRE_MATCH_LIMIT@
#define MATCH_LIMIT_RECURSION @PCRE_MATCH_LIMIT_RECURSION@
+
#define MAX_NAME_SIZE 32
#define MAX_NAME_COUNT 10000