diff options
author | Hoa V. DINH <dinh.viet.hoa@gmail.com> | 2013-06-17 22:50:45 -0700 |
---|---|---|
committer | Hoa V. DINH <dinh.viet.hoa@gmail.com> | 2013-06-17 22:50:45 -0700 |
commit | 3beb4d30cfaa2ec8f738a638474f6f344df52f01 (patch) | |
tree | 0e788cf477b4c011d1564a709e504c0f867447a9 /src | |
parent | 0e350de54bedecad721bb096a24a4198389ca5db (diff) |
Implemented detection of dependencies in cmakefile
Diffstat (limited to 'src')
-rw-r--r-- | src/CMakeLists.txt | 76 |
1 files changed, 72 insertions, 4 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 18e8667a..4d314aea 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -9,6 +9,76 @@ set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake") include(core) include(async) include(objc) +include(LibFindMacros) + +IF(APPLE) + set(additional_includes + ${CMAKE_CURRENT_SOURCE_DIR}/../Externals/ctemplate/include + ${CMAKE_CURRENT_SOURCE_DIR}/../Externals/icu4c/include + ${CMAKE_CURRENT_SOURCE_DIR}/../Externals/libetpan/include + ) + + set(additional_lib_searchpath + ${CMAKE_CURRENT_SOURCE_DIR}/../Externals/ctemplate/lib + ${CMAKE_CURRENT_SOURCE_DIR}/../Externals/icu4c/lib + ${CMAKE_CURRENT_SOURCE_DIR}/../Externals/libetpan/lib + ) + + execute_process(COMMAND "${CMAKE_CURRENT_SOURCE_DIR}/../scripts/prepare.sh" + WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/../scripts") +ENDIF() + +# detect ctemplate + +find_path(CTEMPLATE_INCLUDE_DIR + NAMES ctemplate/template.h + PATHS ${additional_includes} +) +find_library(CTEMPLATE_LIBRARY + NAMES ctemplate + PATHS ${additional_lib_searchpath} +) + +if(NOT CTEMPLATE_INCLUDE_DIR OR NOT CTEMPLATE_LIBRARY) + message(FATAL_ERROR "ERROR: Could not find ctemplate") +else() + message(STATUS "Found ctemplate") +endif() + +# detect icu4c + +find_path(ICU4C_INCLUDE_DIR + NAMES unicode/utf8.h + PATHS ${additional_includes} +) +find_library(ICU4C_LIBRARY + NAMES icuuc + PATHS ${additional_lib_searchpath} +) + +if(NOT ICU4C_INCLUDE_DIR OR NOT ICU4C_LIBRARY) + message(FATAL_ERROR "ERROR: Could not find icu4c") +else() + message(STATUS "Found icu4c") +endif() + +# detect libetpan + +find_path(LIBETPAN_INCLUDE_DIR + NAMES libetpan/libetpan.h + PATHS ${additional_includes} +) +find_library(LIBETPAN_LIBRARY + NAMES etpan + PATHS ${additional_lib_searchpath} +) + +if(NOT LIBETPAN_INCLUDE_DIR OR NOT LIBETPAN_LIBRARY) + message(FATAL_ERROR "ERROR: Could not find libetpan") +else() + message(STATUS "Found libetpan") +endif() + file(GLOB_RECURSE source_files @@ -36,11 +106,9 @@ include_directories(${CMAKE_CURRENT_BINARY_DIR}/include ${async_includes} ${core_includes} ${objc_includes} - ${CMAKE_CURRENT_SOURCE_DIR}/../Externals/ctemplate/include - ${CMAKE_CURRENT_SOURCE_DIR}/../Externals/icu4c/include - ${CMAKE_CURRENT_SOURCE_DIR}/../Externals/libetpan/include + ${additional_includes} /usr/include/tidy - /usr/include/libxml2/ + /usr/include/libxml2 ) add_library(MailCore |