aboutsummaryrefslogtreecommitdiffstats
path: root/build/conf/project_specific/maps/asrc.conf
blob: d5b1a0251d8d8f8ea84d963f79554404977edf1c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
_BUNDLE_DELIM_JAVA=__DELIM_JAVA__ 
_BUNDLE_DELIM_RES=__DELIM_RES__ 
_BUNDLE_DELIM_ASSETS=__DELIM_ASSETS__ 
_BUNDLE_DELIM_AIDL=__DELIM_AIDL__ 
 
_BUNDLE_EXTRA_INPUTS_VALUE= 
### @usage: BUNDLE_EXTRA_INPUTS(filenames...) # internal 
macro BUNDLE_EXTRA_INPUTS(INPUTS...) { 
    SET_APPEND(_BUNDLE_EXTRA_INPUTS_VALUE $INPUTS) 
} 
 
_BUNDLE_AIDL_SRCS_VALUE= 
### @usage: BUNDLE_AIDL_SRCS(dirname filenames...) # internal 
macro BUNDLE_AIDL_SRCS(PREFIX, ABSOLUTE[], FILES...) { 
    SET_APPEND(_BUNDLE_AIDL_SRCS_VALUE $_BUNDLE_DELIM_AIDL $PREFIX ${pre=$PREFIX/:FILES} ${ABSOLUTE}) 
    BUNDLE_EXTRA_INPUTS(${pre=$PREFIX/:FILES} ${ABSOLUTE}) 
} 
 
_BUNDLE_JAVA_SRCS_VALUE= 
### @usage: BUNDLE_JAVA_SRCS(dirname filenames...) # internal 
macro BUNDLE_JAVA_SRCS(PREFIX, ABSOLUTE[], FILES...) { 
    SET_APPEND(_BUNDLE_JAVA_SRCS_VALUE $_BUNDLE_DELIM_JAVA $PREFIX ${pre=$PREFIX/:FILES} ${ABSOLUTE}) 
    BUNDLE_EXTRA_INPUTS(${pre=$PREFIX/:FILES} ${ABSOLUTE}) 
} 
 
_BUNDLE_RES_SRCS_VALUE= 
### @usage: BUNDLE_RES_SRCS(dirname filenames...) # internal 
macro BUNDLE_RES_SRCS(PREFIX, ABSOLUTE[], FILES...) { 
    SET_APPEND(_BUNDLE_RES_SRCS_VALUE $_BUNDLE_DELIM_RES $PREFIX ${pre=$PREFIX/:FILES} ${ABSOLUTE}) 
    BUNDLE_EXTRA_INPUTS(${pre=$PREFIX/:FILES} ${ABSOLUTE}) 
} 
 
_BUNDLE_ASSETS_SRCS_VALUE= 
### @usage: BUNDLE_ASSETS_SRCS(dirname filenames...) # internal 
macro BUNDLE_ASSETS_SRCS(PREFIX, ABSOLUTE[], FILES...) { 
    SET_APPEND(_BUNDLE_ASSETS_SRCS_VALUE $_BUNDLE_DELIM_ASSETS $PREFIX ${pre=$PREFIX/:FILES} ${ABSOLUTE}) 
    BUNDLE_EXTRA_INPUTS(${pre=$PREFIX/:FILES} ${ABSOLUTE}) 
} 
 
_BUNDLE_SRCS_VALUE=$_BUNDLE_AIDL_SRCS_VALUE $_BUNDLE_ASSETS_SRCS_VALUE $_BUNDLE_JAVA_SRCS_VALUE $_BUNDLE_RES_SRCS_VALUE 
 
macro _COMPILE_ASRC_IMPL(EXTRA_INPUTS...) { 
    .CMD=${cwd:ARCADIA_BUILD_ROOT} $YMAKE_PYTHON ${input:"build/scripts/link_asrc.py"} --work $BINDIR --input $_BUNDLE_SRCS_VALUE ${input;hide:EXTRA_INPUTS} --output $TARGET ${kv;hide:"p AC"} $kv;hide:"pc light-blue"} ${kv;hide:"show_out"} 
} 
 
_COMPILE_ASRC=$_COMPILE_ASRC_IMPL($_ASRC_EXTRA_INPUTS_VALUE) 
 
COMPILE_ASRC_MF=$_COMPILE_ASRC && $GENERATE_MF 
 
### @usage: ASRC_LIBRARY() # internal 
module ASRC_LIBRARY: _BASE_UNIT { 
    .CMD=COMPILE_ASRC_MF 
    .ALL_INS_TO_OUT=no 
    .PEERDIR_POLICY=as_include 
    .FINAL_TARGET=no 
    PEERDIR_TAGS=JAVA_PROTO JAVA_IDL 
    MODULE_TYPE=Library 
    SET(MODULE_SUFFIX .asrc) 
    SET(DONT_RESOLVE_INCLUDES yes) 
    SET(NEED_PLATFORM_PEERDIRS no) 
 
    NO_RUNTIME() 
} 
 
macro _MOBILE_LIBRARY_PREREQUISITES_IMPL(OUTPUT, EXTRA_INPUTS...) { 
    .CMD=${cwd:ARCADIA_BUILD_ROOT} $YMAKE_PYTHON ${input:"build/scripts/link_asrc.py"} --work $BINDIR --input $_BUNDLE_SRCS_VALUE --output $OUTPUT ${kv;hide:"p AC"} ${kv;hide:"pc lite-blue"} ${kv;hide:"show_out"} 
} 
 
macro _MOBILE_LIBRARY_PREREQUISITES_CMD(OUTPUT, EXTRA_INPUTS...) { 
    .CMD=${output;hide:OUTPUT} ${input;hide:EXTRA_INPUTS} ${kv;hide:"p AC"} ${kv;hide:"pc lite-blue"} ${kv;hide:"show_out"} $_MOBILE_LIBRARY_PREREQUISITES_IMPL($OUTPUT $EXTRA_INPUTS) 
} 
 
when ($OS_ANDROID == "yes") { 
    LINK_MOBILE_LIB=$LINK_LIB && $_MOBILE_LIBRARY_PREREQUISITES_CMD(${BINDIR}/$MODULE_PREFIX$REALPRJNAME$MODULE_SUFFIX.asrc $_BUNDLE_EXTRA_INPUTS_VALUE) 
} 
otherwise { 
    LINK_MOBILE_LIB=$LINK_LIB 
} 
 
### @usage: MOBILE_LIBRARY() # internal 
module MOBILE_LIBRARY: LIBRARY { 
    .CMD=LINK_MOBILE_LIB 
    DISABLE(NEED_ADD_FAKE_SRC) 
} 
 
_JSRC_PROXY_MOBILE_LIBRARY_CMDLINE=${cwd:ARCADIA_BUILD_ROOT} $YMAKE_PYTHON ${input:"build/scripts/link_asrc.py"} --work $BINDIR --jsrcs ${ext=.jsrc;tags_in=local:PEERS} --input $_BUNDLE_SRCS_VALUE ${input;hide:EXTRA_INPUTS} --output ${output;pre=$MODULE_PREFIX;suf=$MODULE_SUFFIX.asrc:REALPRJNAME} ${kv;hide:"p AC"} ${kv;hide:"pc lite-blue"} ${kv;hide:"show_out"} 
 
macro _JSRC_PROXY_MOBILE_LIBRARY_CMD_IMPL(EXTRA_INPUTS...) { 
    .CMD=$_JSRC_PROXY_MOBILE_LIBRARY_CMDLINE 
} 
 
JSRC_PROXY_MOBILE_LIBRARY_CMD=$LINK_LIB && $_JSRC_PROXY_MOBILE_LIBRARY_CMD_IMPL($_BUNDLE_EXTRA_INPUTS_VALUE) 
 
### @usage: JSRC_PROXY_MOBILE_LIBRARY() # internal 
module JSRC_PROXY_MOBILE_LIBRARY: MOBILE_LIBRARY { 
    .CMD=JSRC_PROXY_MOBILE_LIBRARY_CMD 
    .PEERDIR_POLICY=as_build_from 
    .PROXY=yes 
 
    SET(MODULE_TYPE LIBRARY) 
    DISABLE(NEED_ADD_FAKE_SRC) 
 
    PEERDIR_TAGS=JAVA_PROTO JAVA_IDL 
 
    SET(BIN_TMP_DIR ${BINDIR}/tmp) 
 
    NO_UTIL() 
} 
 
_MOBILE_DLL_PREREQUISITES_CMDLINE=${cwd:ARCADIA_BUILD_ROOT} $YMAKE_PYTHON ${input:"build/scripts/link_asrc.py"} --work $BINDIR --asrcs ${PEERS.arcs} --input $_BUNDLE_SRCS_VALUE ${input;hide:EXTRA_INPUTS} --output ${output;pre=$MODULE_PREFIX;suf=$MODULE_SUFFIX.asrc:REALPRJNAME} ${kv;hide:"p AC"} ${kv;hide:"pc lite-blue"} ${kv;hide:"show_out"} 
 
macro _MOBILE_DLL_PREREQUISITES_CMD(EXTRA_INPUTS...) { 
    .CMD=$_MOBILE_DLL_PREREQUISITES_CMDLINE 
} 
 
when ($OS_ANDROID == "yes") { 
    LINK_MOBILE_DLL=$LINK_DYN_LIB && $_MOBILE_DLL_PREREQUISITES_CMD($_BUNDLE_EXTRA_INPUTS_VALUE) 
} 
otherwise { 
    LINK_MOBILE_DLL=$LINK_DYN_LIB 
}