aboutsummaryrefslogtreecommitdiffstats
path: root/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt75
1 files changed, 62 insertions, 13 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 2f246d74..6809e7c3 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -12,7 +12,7 @@
# http://www.cmake.org
#
-CMAKE_MINIMUM_REQUIRED(VERSION 2.6 FATAL_ERROR)
+CMAKE_MINIMUM_REQUIRED(VERSION 2.8.3 FATAL_ERROR)
INCLUDE(cmake/Utils.cmake)
@@ -623,25 +623,74 @@ ENDIF(VMIME_HAVE_TLS_SUPPORT)
##############################################################################
-# iconv
+# Charset conversion library
INCLUDE(cmake/FindIconv.cmake)
+INCLUDE(cmake/FindICU.cmake)
-INCLUDE_DIRECTORIES(
- ${INCLUDE_DIRECTORIES}
- ${ICONV_INCLUDE_DIR}
+FIND_PACKAGE(ICU QUIET)
+
+IF(ICONV_FOUND)
+ SET(VMIME_CHARSETCONV_LIB_IS_ICONV_DEFAULT "ON")
+ SET(VMIME_CHARSETCONV_LIB_IS_ICU_DEFAULT "OFF")
+ELSEIF(ICU_LIBRARIES)
+ SET(VMIME_CHARSETCONV_LIB_IS_ICONV_DEFAULT "OFF")
+ SET(VMIME_CHARSETCONV_LIB_IS_ICU_DEFAULT "ON")
+ENDIF()
+
+OPTION(
+ VMIME_CHARSETCONV_LIB_IS_ICONV
+ "Use iconv library for charset conversion"
+ ${VMIME_CHARSETCONV_LIB_IS_ICONV_DEFAULT}
)
-IF(VMIME_BUILD_SHARED_LIBRARY)
- TARGET_LINK_LIBRARIES(
- ${VMIME_LIBRARY_NAME}
- ${TARGET_LINK_LIBRARIES}
- ${ICONV_LIBRARIES}
+OPTION(
+ VMIME_CHARSETCONV_LIB_IS_ICU
+ "Use ICU library for charset conversion"
+ ${VMIME_CHARSETCONV_LIB_IS_ICU_DEFAULT}
+)
+
+IF(VMIME_CHARSETCONV_LIB_IS_ICONV)
+
+ INCLUDE_DIRECTORIES(
+ ${INCLUDE_DIRECTORIES}
+ ${ICONV_INCLUDE_DIR}
)
-ENDIF()
-SET(VMIME_PKGCONFIG_LIBS "${VMIME_PKGCONFIG_LIBS} ${ICONV_LIBRARIES}")
-SET(VMIME_PKGCONFIG_CFLAGS "${VMIME_PKGCONFIG_CFLAGS} -I${ICONV_INCLUDE_DIR}")
+ IF(VMIME_BUILD_SHARED_LIBRARY)
+ TARGET_LINK_LIBRARIES(
+ ${VMIME_LIBRARY_NAME}
+ ${TARGET_LINK_LIBRARIES}
+ ${ICONV_LIBRARIES}
+ )
+ ENDIF()
+
+ SET(VMIME_PKGCONFIG_LIBS "${VMIME_PKGCONFIG_LIBS} ${ICONV_LIBRARIES}")
+ SET(VMIME_PKGCONFIG_CFLAGS "${VMIME_PKGCONFIG_CFLAGS} -I${ICONV_INCLUDE_DIR}")
+
+ELSEIF(VMIME_CHARSETCONV_LIB_IS_ICU)
+
+ INCLUDE_DIRECTORIES(
+ ${INCLUDE_DIRECTORIES}
+ ${ICU_INCLUDE_DIRS}
+ )
+
+ IF(VMIME_BUILD_SHARED_LIBRARY)
+ TARGET_LINK_LIBRARIES(
+ ${VMIME_LIBRARY_NAME}
+ ${TARGET_LINK_LIBRARIES}
+ ${ICU_LIBRARIES}
+ )
+ ENDIF()
+
+ SET(VMIME_PKGCONFIG_LIBS "${VMIME_PKGCONFIG_LIBS} ${ICU_LIBRARIES}")
+ SET(VMIME_PKGCONFIG_CFLAGS "${VMIME_PKGCONFIG_CFLAGS} -I${ICU_INCLUDE_DIRS}")
+
+ELSE()
+
+ MESSAGE(FATAL_ERROR "No charset conversion library was selected/found")
+
+ENDIF()
##############################################################################