aboutsummaryrefslogtreecommitdiffstats
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorVsevolod Stakhov <vsevolod@rambler-co.ru>2010-05-31 19:45:13 +0400
committerVsevolod Stakhov <vsevolod@rambler-co.ru>2010-05-31 19:45:13 +0400
commitab222b29d811745683c55f3c743870526f2da432 (patch)
tree895307b4de4f57b0bdd3cebf6b954bd29dd4fe7c /CMakeLists.txt
parent0612e84b3cec508c3d62d38c4e2682c85cc808bb (diff)
downloadrspamd-ab222b29d811745683c55f3c743870526f2da432.tar.gz
rspamd-ab222b29d811745683c55f3c743870526f2da432.zip
* Fix more gmime2.4 issues
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt82
1 files changed, 58 insertions, 24 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 233741405..681bb252d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -96,13 +96,47 @@ pkg_check_modules(GMIME2 gmime-2.0)
# Try to link with gmime24
IF(NOT GMIME2_FOUND)
- pkg_check_modules(GMIME2 REQUIRED gmime-2.4)
- SET(GMIME24 "yes")
+ pkg_check_modules(GMIME24 REQUIRED gmime-2.4)
+ SET(GMIME24 "yes")
+ # Gmime2
+ FOREACH(arg ${GMIME24_CFLAGS})
+ SET(GMIME_CFLAGS "${GMIME_CFLAGS} ${arg}")
+ ENDFOREACH(arg ${GMIME24_CFLAGS})
+
+ IF(ENABLE_STATIC MATCHES "ON")
+ FOREACH(arg ${GMIME24_STATIC_LDFLAGS})
+ SET(GMIME_LDFLAGS "${GMIME_LDFLAGS} ${arg}")
+ ENDFOREACH(arg ${GMIME24_LDFLAGS})
+ ELSE(ENABLE_STATIC MATCHES "ON")
+ FOREACH(arg ${GMIME24_LDFLAGS})
+ SET(GMIME_LDFLAGS "${GMIME_LDFLAGS} ${arg}")
+ ENDFOREACH(arg ${GMIME24_LDFLAGS})
+ ENDIF(ENABLE_STATIC MATCHES "ON")
+ INCLUDE_DIRECTORIES(${GMIME24_INCLUDE_DIRS})
+ LINK_DIRECTORIES(${GMIME24_LIBRARY_DIRS})
+ELSE(NOT GMIME2_FOUND)
+ # Gmime2
+ FOREACH(arg ${GMIME2_CFLAGS})
+ SET(GMIME_CFLAGS "${GMIME_CFLAGS} ${arg}")
+ ENDFOREACH(arg ${GMIME2_CFLAGS})
+
+ IF(ENABLE_STATIC MATCHES "ON")
+ FOREACH(arg ${GMIME2_STATIC_LDFLAGS})
+ SET(GMIME_LDFLAGS "${GMIME_LDFLAGS} ${arg}")
+ ENDFOREACH(arg ${GMIME2_LDFLAGS})
+ ELSE(ENABLE_STATIC MATCHES "ON")
+ FOREACH(arg ${GMIME2_LDFLAGS})
+ SET(GMIME_LDFLAGS "${GMIME_LDFLAGS} ${arg}")
+ ENDFOREACH(arg ${GMIME2_LDFLAGS})
+ ENDIF(ENABLE_STATIC MATCHES "ON")
+ INCLUDE_DIRECTORIES(${GMIME2_INCLUDE_DIRS})
+ LINK_DIRECTORIES(${GMIME2_LIBRARY_DIRS})
ENDIF(NOT GMIME2_FOUND)
-IF(NOT GLIB2_FOUND OR NOT GMIME2_FOUND)
+
+IF(NOT GLIB2_FOUND OR (NOT GMIME2_FOUND AND NOT GMIME24_FOUND))
MESSAGE(FATAL_ERROR "Error: gmime2 and glib2 are required for rspamd")
-ENDIF(NOT GLIB2_FOUND OR NOT GMIME2_FOUND)
+ENDIF(NOT GLIB2_FOUND OR (NOT GMIME2_FOUND AND NOT GMIME24_FOUND))
# Make from ; separated list normal space separated list
# Glib2
@@ -119,26 +153,10 @@ ELSE(ENABLE_STATIC MATCHES "ON")
SET(GLIB_LDFLAGS "${GLIB_LDFLAGS} ${arg}")
ENDFOREACH(arg ${GLIB2_LDFLAGS})
ENDIF(ENABLE_STATIC MATCHES "ON")
-# Gmime2
-FOREACH(arg ${GMIME2_CFLAGS})
- SET(GMIME_CFLAGS "${GMIME_CFLAGS} ${arg}")
-ENDFOREACH(arg ${GMIME2_CFLAGS})
-
-IF(ENABLE_STATIC MATCHES "ON")
- FOREACH(arg ${GMIME2_STATIC_LDFLAGS})
- SET(GMIME_LDFLAGS "${GMIME_LDFLAGS} ${arg}")
- ENDFOREACH(arg ${GMIME2_LDFLAGS})
-ELSE(ENABLE_STATIC MATCHES "ON")
- FOREACH(arg ${GMIME2_LDFLAGS})
- SET(GMIME_LDFLAGS "${GMIME_LDFLAGS} ${arg}")
- ENDFOREACH(arg ${GMIME2_LDFLAGS})
-ENDIF(ENABLE_STATIC MATCHES "ON")
INCLUDE_DIRECTORIES(${GLIB2_INCLUDE_DIRS})
-INCLUDE_DIRECTORIES(${GMIME2_INCLUDE_DIRS})
LINK_DIRECTORIES(${GLIB2_LIBRARY_DIRS})
-LINK_DIRECTORIES(${GMIME2_LIBRARY_DIRS})
SET(CMAKE_REQUIRED_LIBRARIES m)
SET(CMAKE_REQUIRED_INCLUDES sys/mman.h stdlib.h stdio.h unistd.h time.h sched.h)
@@ -553,7 +571,11 @@ TARGET_LINK_LIBRARIES(rspamd rspamd_evdns)
TARGET_LINK_LIBRARIES(rspamd event)
TARGET_LINK_LIBRARIES(rspamd rspamd_json)
TARGET_LINK_LIBRARIES(rspamd ${GLIB2_LIBRARIES})
-TARGET_LINK_LIBRARIES(rspamd ${GMIME2_LIBRARIES})
+IF(GMIME2_FOUND)
+ TARGET_LINK_LIBRARIES(rspamd ${GMIME2_LIBRARIES})
+ELSE(GMIME2_FOUND)
+ TARGET_LINK_LIBRARIES(rspamd ${GMIME24_LIBRARIES})
+ENDIF(GMIME2_FOUND)
IF(ENABLE_STATIC MATCHES "ON")
TARGET_LINK_LIBRARIES(rspamd ${PCRE_LIBRARIES})
ENDIF(ENABLE_STATIC MATCHES "ON")
@@ -576,7 +598,11 @@ IF(LIBUTIL_LIBRARY)
ENDIF(LIBUTIL_LIBRARY)
TARGET_LINK_LIBRARIES(test/rspamd-test event)
TARGET_LINK_LIBRARIES(test/rspamd-test ${GLIB2_LIBRARIES})
-TARGET_LINK_LIBRARIES(test/rspamd-test ${GMIME2_LIBRARIES})
+IF(GMIME2_FOUND)
+ TARGET_LINK_LIBRARIES(test/rspamd-test ${GMIME2_LIBRARIES})
+ELSE(GMIME2_FOUND)
+ TARGET_LINK_LIBRARIES(test/rspamd-test ${GMIME24_LIBRARIES})
+ENDIF(GMIME2_FOUND)
IF(ENABLE_STATIC MATCHES "ON")
TARGET_LINK_LIBRARIES(test/rspamd-test ${PCRE_LIBRARIES})
ENDIF(ENABLE_STATIC MATCHES "ON")
@@ -593,7 +619,11 @@ IF(LIBUTIL_LIBRARY)
TARGET_LINK_LIBRARIES(utils/url-extracter util)
ENDIF(LIBUTIL_LIBRARY)
TARGET_LINK_LIBRARIES(utils/url-extracter ${GLIB2_LIBRARIES})
-TARGET_LINK_LIBRARIES(utils/url-extracter ${GMIME2_LIBRARIES})
+IF(GMIME2_FOUND)
+ TARGET_LINK_LIBRARIES(utils/url-extracter ${GMIME2_LIBRARIES})
+ELSE(GMIME2_FOUND)
+ TARGET_LINK_LIBRARIES(utils/url-extracter ${GMIME24_LIBRARIES})
+ENDIF(GMIME2_FOUND)
IF(ENABLE_STATIC MATCHES "ON")
TARGET_LINK_LIBRARIES(utils/url-extracter ${PCRE_LIBRARIES})
ENDIF(ENABLE_STATIC MATCHES "ON")
@@ -610,7 +640,11 @@ IF(LIBUTIL_LIBRARY)
TARGET_LINK_LIBRARIES(utils/expression-parser util)
ENDIF(LIBUTIL_LIBRARY)
TARGET_LINK_LIBRARIES(utils/expression-parser ${GLIB2_LIBRARIES})
-TARGET_LINK_LIBRARIES(utils/expression-parser ${GMIME2_LIBRARIES})
+IF(GMIME2_FOUND)
+ TARGET_LINK_LIBRARIES(utils/expression-parser ${GMIME2_LIBRARIES})
+ELSE(GMIME2_FOUND)
+ TARGET_LINK_LIBRARIES(utils/expression-parser ${GMIME24_LIBRARIES})
+ENDIF(GMIME2_FOUND)
IF(ENABLE_STATIC MATCHES "ON")
TARGET_LINK_LIBRARIES(utils/expression-parser ${PCRE_LIBRARIES})
ENDIF(ENABLE_STATIC MATCHES "ON")