xref: /aosp_15_r20/build/soong/cc/cmake_module_cc.txt (revision 333d2b3687b3a337dbcca9d65000bca186795e39)
1*333d2b36SAndroid Build Coastguard Worker<<$srcs := getSources .M>>
2*333d2b36SAndroid Build Coastguard Worker<<$includeDirs := getIncludeDirs .Ctx .M>>
3*333d2b36SAndroid Build Coastguard Worker<<$cflags := getCflagsProperty .Ctx .M>>
4*333d2b36SAndroid Build Coastguard Worker<<$deps := mapLibraries .Ctx .M (concat5
5*333d2b36SAndroid Build Coastguard Worker(getWholeStaticLibsProperty .Ctx .M)
6*333d2b36SAndroid Build Coastguard Worker(getStaticLibsProperty .Ctx .M)
7*333d2b36SAndroid Build Coastguard Worker(getSharedLibsProperty .Ctx .M)
8*333d2b36SAndroid Build Coastguard Worker(getHeaderLibsProperty .Ctx .M)
9*333d2b36SAndroid Build Coastguard Worker(getExtraLibs .M)
10*333d2b36SAndroid Build Coastguard Worker) .Pprop.LibraryMapping>>
11*333d2b36SAndroid Build Coastguard Worker<<$moduleType := getModuleType .M>>
12*333d2b36SAndroid Build Coastguard Worker<<$moduleTypeCmake := "executable">>
13*333d2b36SAndroid Build Coastguard Worker<<if eq $moduleType "library">>
14*333d2b36SAndroid Build Coastguard Worker<<$moduleTypeCmake = "library">>
15*333d2b36SAndroid Build Coastguard Worker<<end>>
16*333d2b36SAndroid Build Coastguard Worker
17*333d2b36SAndroid Build Coastguard Worker# <<.M.Name>>
18*333d2b36SAndroid Build Coastguard Worker<<if $srcs>>
19*333d2b36SAndroid Build Coastguard Worker<<setList .M.Name "_SRCS" "${ANDROID_BUILD_TOP}/" (toStrings $srcs)>>
20*333d2b36SAndroid Build Coastguard Workeradd_<<$moduleTypeCmake>>(<<.M.Name>> ${<<.M.Name>>_SRCS})
21*333d2b36SAndroid Build Coastguard Worker<<- else>>
22*333d2b36SAndroid Build Coastguard Workeradd_<<$moduleTypeCmake>>(<<.M.Name>> INTERFACE)
23*333d2b36SAndroid Build Coastguard Worker<<- end>>
24*333d2b36SAndroid Build Coastguard Worker<<- if eq $moduleType "library">>
25*333d2b36SAndroid Build Coastguard Workeradd_library(android::<<.M.Name>> ALIAS <<.M.Name>>)
26*333d2b36SAndroid Build Coastguard Worker<<- else if eq $moduleType "test">>
27*333d2b36SAndroid Build Coastguard Workeradd_test(NAME <<.M.Name>> COMMAND <<.M.Name>>)
28*333d2b36SAndroid Build Coastguard Worker<<- end>>
29*333d2b36SAndroid Build Coastguard Worker<<print "">>
30*333d2b36SAndroid Build Coastguard Worker
31*333d2b36SAndroid Build Coastguard Worker<<- if $includeDirs>>
32*333d2b36SAndroid Build Coastguard Worker<<setList .M.Name "_INCLUDES" "${ANDROID_BUILD_TOP}/" $includeDirs>>
33*333d2b36SAndroid Build Coastguard Workertarget_include_directories(<<.M.Name>> <<if $srcs>>PUBLIC<<else>>INTERFACE<<end>> ${<<.M.Name>>_INCLUDES})
34*333d2b36SAndroid Build Coastguard Worker<<end>>
35*333d2b36SAndroid Build Coastguard Worker
36*333d2b36SAndroid Build Coastguard Worker<<- if and $srcs $cflags>>
37*333d2b36SAndroid Build Coastguard Worker<<cflagsList .M.Name "_CFLAGS" $cflags .Snapshot.Properties.Unportable_flags .Snapshot.Properties.Cflags_ignored>>
38*333d2b36SAndroid Build Coastguard Workertarget_compile_options(<<.M.Name>> PRIVATE ${<<.M.Name>>_CFLAGS})
39*333d2b36SAndroid Build Coastguard Worker<<end>>
40*333d2b36SAndroid Build Coastguard Worker
41*333d2b36SAndroid Build Coastguard Worker<<- if $deps>>
42*333d2b36SAndroid Build Coastguard Worker<<setList .M.Name "_DEPENDENCIES" "" $deps>>
43*333d2b36SAndroid Build Coastguard Workertarget_link_libraries(<<.M.Name>> <<if not $srcs>>INTERFACE <<end ->> ${<<.M.Name>>_DEPENDENCIES})
44*333d2b36SAndroid Build Coastguard Worker<<end>>
45