xref: /aosp_15_r20/external/icu/libandroidicuinit/CMakeLists.txt (revision 0e209d3975ff4a8c132096b14b0e9364a753506e)
1*0e209d39SAndroid Build Coastguard Worker# Minimum CMake required
2*0e209d39SAndroid Build Coastguard Workercmake_minimum_required(VERSION 3.1.3)
3*0e209d39SAndroid Build Coastguard Worker
4*0e209d39SAndroid Build Coastguard Worker# Project
5*0e209d39SAndroid Build Coastguard Workerproject(androidicuinit C CXX)
6*0e209d39SAndroid Build Coastguard Worker
7*0e209d39SAndroid Build Coastguard Workeradd_definitions("-DANDROID_LINK_SHARED_ICU4C")
8*0e209d39SAndroid Build Coastguard Workeradd_definitions("-DANDROID_ICU_NO_DAT")
9*0e209d39SAndroid Build Coastguard Workeradd_definitions("-DNO_ANDROID_LIBLOG")
10*0e209d39SAndroid Build Coastguard Worker
11*0e209d39SAndroid Build Coastguard Worker# Glob libandroidicuinit source files
12*0e209d39SAndroid Build Coastguard Workerfile(
13*0e209d39SAndroid Build Coastguard Worker   GLOB_RECURSE
14*0e209d39SAndroid Build Coastguard Worker   ANDROIDICU_INIT_CC_SOURCES
15*0e209d39SAndroid Build Coastguard Worker   RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}
16*0e209d39SAndroid Build Coastguard Worker   "${CMAKE_CURRENT_SOURCE_DIR}/*.h"
17*0e209d39SAndroid Build Coastguard Worker   "${CMAKE_CURRENT_SOURCE_DIR}/*.cpp"
18*0e209d39SAndroid Build Coastguard Worker)
19*0e209d39SAndroid Build Coastguard Workermessage(STATUS "ANDROIDICU_INIT_CC_SOURCES=${ANDROIDICU_INIT_CC_SOURCES}")
20*0e209d39SAndroid Build Coastguard Worker
21*0e209d39SAndroid Build Coastguard Worker# Add icuuc, android_icu4c headers
22*0e209d39SAndroid Build Coastguard Workerset(ICU_COMMON_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../icu4c/source/common")
23*0e209d39SAndroid Build Coastguard Workerset(ICU_CONFIG_LOCAL_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../android_icu4c/include")
24*0e209d39SAndroid Build Coastguard Worker
25*0e209d39SAndroid Build Coastguard Workeradd_library(
26*0e209d39SAndroid Build Coastguard Worker   # name
27*0e209d39SAndroid Build Coastguard Worker   androidicuinit
28*0e209d39SAndroid Build Coastguard Worker
29*0e209d39SAndroid Build Coastguard Worker   # SHARED or STATIC
30*0e209d39SAndroid Build Coastguard Worker   STATIC
31*0e209d39SAndroid Build Coastguard Worker
32*0e209d39SAndroid Build Coastguard Worker   # Provides a relative path to your source file(s).
33*0e209d39SAndroid Build Coastguard Worker   ${ANDROIDICU_INIT_CC_SOURCES}
34*0e209d39SAndroid Build Coastguard Worker)
35*0e209d39SAndroid Build Coastguard Workertarget_include_directories(androidicuinit PRIVATE ${CMAKE_CURRENT_SOURCE_DIR})
36*0e209d39SAndroid Build Coastguard Workertarget_include_directories(androidicuinit PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/include")
37*0e209d39SAndroid Build Coastguard Workertarget_include_directories(androidicuinit PRIVATE ${ICU_COMMON_SOURCE_DIR})
38*0e209d39SAndroid Build Coastguard Workertarget_include_directories(androidicuinit PRIVATE ${ICU_CONFIG_LOCAL_SOURCE_DIR})
39*0e209d39SAndroid Build Coastguard Worker
40*0e209d39SAndroid Build Coastguard Workerset_target_properties(androidicuinit PROPERTIES LINKER_LANGUAGE CXX)
41