diff options
Diffstat (limited to '')
-rw-r--r-- | CMakeLists.txt | 24 |
1 files changed, 21 insertions, 3 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index b08d7c79..aac379cc 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -726,12 +726,18 @@ INCLUDE(cmake/FindICU.cmake) FIND_PACKAGE(ICU QUIET) -IF(ICONV_FOUND) +IF(WIN32) + SET(VMIME_CHARSETCONV_LIB_IS_ICONV_DEFAULT "OFF") + SET(VMIME_CHARSETCONV_LIB_IS_ICU_DEFAULT "OFF") + SET(VMIME_CHARSETCONV_LIB_IS_WIN_DEFAULT "ON") +ELSEIF(ICONV_FOUND) SET(VMIME_CHARSETCONV_LIB_IS_ICONV_DEFAULT "ON") SET(VMIME_CHARSETCONV_LIB_IS_ICU_DEFAULT "OFF") + SET(VMIME_CHARSETCONV_LIB_IS_WIN_DEFAULT "OFF") ELSEIF(ICU_LIBRARIES) SET(VMIME_CHARSETCONV_LIB_IS_ICONV_DEFAULT "OFF") SET(VMIME_CHARSETCONV_LIB_IS_ICU_DEFAULT "ON") + SET(VMIME_CHARSETCONV_LIB_IS_WIN_DEFAULT "OFF") ENDIF() OPTION( @@ -746,8 +752,16 @@ OPTION( ${VMIME_CHARSETCONV_LIB_IS_ICU_DEFAULT} ) -IF(VMIME_CHARSETCONV_LIB_IS_ICONV AND VMIME_CHARSETCONV_LIB_IS_ICU) - MESSAGE(FATAL_ERROR "Options VMIME_CHARSETCONV_LIB_IS_ICONV and VMIME_CHARSETCONV_LIB_IS_ICU are mutually exclusive (select one or the other, but not both!)") +OPTION( + VMIME_CHARSETCONV_LIB_IS_WIN + "Use Windows API for charset conversion" + ${VMIME_CHARSETCONV_LIB_IS_WIN_DEFAULT} +) + +IF((VMIME_CHARSETCONV_LIB_IS_ICONV AND VMIME_CHARSETCONV_LIB_IS_ICU) OR + (VMIME_CHARSETCONV_LIB_IS_ICONV AND VMIME_CHARSETCONV_LIB_IS_WIN) OR + (VMIME_CHARSETCONV_LIB_IS_ICU AND VMIME_CHARSETCONV_LIB_IS_WIN)) + MESSAGE(FATAL_ERROR "Options VMIME_CHARSETCONV_LIB_IS_ICONV, VMIME_CHARSETCONV_LIB_IS_ICU and VMIME_CHARSETCONV_LIB_IS_WIN are mutually exclusive (select only one of them, but not all!)") ENDIF() IF(VMIME_CHARSETCONV_LIB_IS_ICONV) @@ -786,6 +800,10 @@ ELSEIF(VMIME_CHARSETCONV_LIB_IS_ICU) SET(VMIME_PKGCONFIG_LIBS "${VMIME_PKGCONFIG_LIBS} ${ICU_LIBRARIES}") SET(VMIME_PKGCONFIG_CFLAGS "${VMIME_PKGCONFIG_CFLAGS} -I${ICU_INCLUDE_DIRS}") +ELSEIF(VMIME_CHARSETCONV_LIB_IS_WIN) + + # Nothing to do + ELSE() MESSAGE(FATAL_ERROR "No charset conversion library was selected/found") |