# Minimum CMake required cmake_minimum_required(VERSION 3.1.3) # Project project(androidicuinit C CXX) add_definitions("-DANDROID_LINK_SHARED_ICU4C") add_definitions("-DANDROID_ICU_NO_DAT") add_definitions("-DNO_ANDROID_LIBLOG") # Glob libandroidicuinit source files file( GLOB_RECURSE ANDROIDICU_INIT_CC_SOURCES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "${CMAKE_CURRENT_SOURCE_DIR}/*.h" "${CMAKE_CURRENT_SOURCE_DIR}/*.cpp" ) message(STATUS "ANDROIDICU_INIT_CC_SOURCES=${ANDROIDICU_INIT_CC_SOURCES}") # Add icuuc, android_icu4c headers set(ICU_COMMON_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../icu4c/source/common") set(ICU_CONFIG_LOCAL_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../android_icu4c/include") add_library( # name androidicuinit # SHARED or STATIC STATIC # Provides a relative path to your source file(s). ${ANDROIDICU_INIT_CC_SOURCES} ) target_include_directories(androidicuinit PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}) target_include_directories(androidicuinit PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/include") target_include_directories(androidicuinit PRIVATE ${ICU_COMMON_SOURCE_DIR}) target_include_directories(androidicuinit PRIVATE ${ICU_CONFIG_LOCAL_SOURCE_DIR}) set_target_properties(androidicuinit PROPERTIES LINKER_LANGUAGE CXX)