@@ -23,8 +23,6 @@ import("core.base.option")
23
23
import (" core.base.semver" )
24
24
import (" core.tool.toolchain" )
25
25
import (" core.project.config" )
26
- import (" core.tool.linker" )
27
- import (" core.tool.compiler" )
28
26
import (" core.project.project" )
29
27
import (" lib.detect.find_file" )
30
28
import (" lib.detect.find_tool" )
@@ -67,16 +65,6 @@ function _translate_bin_path(bin_path)
67
65
return bin_path
68
66
end
69
67
70
- -- map compiler flags
71
- function _map_compflags (package , langkind , name , values )
72
- return compiler .map_flags (langkind , name , values , {target = package })
73
- end
74
-
75
- -- map linker flags
76
- function _map_linkflags (package , targetkind , sourcekinds , name , values )
77
- return linker .map_flags (targetkind , sourcekinds , name , values , {target = package })
78
- end
79
-
80
68
-- get pkg-config, we need force to find it, because package install environments will be changed
81
69
function _get_pkgconfig (package )
82
70
-- meson need fullpath pkgconfig
@@ -146,13 +134,13 @@ function _get_cflags_from_packagedeps(package, opt)
146
134
local result = {}
147
135
if values then
148
136
if values .defines then
149
- table .join2 (result , _map_compflags (package , " cxx" , " define" , values .defines ))
137
+ table .join2 (result , toolchain_utils . map_compflags (package , " cxx" , " define" , values .defines ))
150
138
end
151
139
if values .includedirs then
152
- table .join2 (result , _translate_paths (_map_compflags (package , " cxx" , " includedir" , values .includedirs )))
140
+ table .join2 (result , _translate_paths (toolchain_utils . map_compflags (package , " cxx" , " includedir" , values .includedirs )))
153
141
end
154
142
if values .sysincludedirs then
155
- table .join2 (result , _translate_paths (_map_compflags (package , " cxx" , " sysincludedir" , values .sysincludedirs )))
143
+ table .join2 (result , _translate_paths (toolchain_utils . map_compflags (package , " cxx" , " sysincludedir" , values .sysincludedirs )))
156
144
end
157
145
end
158
146
return result
@@ -177,16 +165,16 @@ function _get_ldflags_from_packagedeps(package, opt)
177
165
local result = {}
178
166
if values then
179
167
if values .linkdirs then
180
- table .join2 (result , _translate_paths (_map_linkflags (package , " binary" , {" cxx" }, " linkdir" , values .linkdirs )))
168
+ table .join2 (result , _translate_paths (toolchain_utils . map_linkflags (package , " binary" , {" cxx" }, " linkdir" , values .linkdirs )))
181
169
end
182
170
if values .links then
183
- table .join2 (result , _map_linkflags (package , " binary" , {" cxx" }, " link" , values .links ))
171
+ table .join2 (result , toolchain_utils . map_linkflags (package , " binary" , {" cxx" }, " link" , values .links ))
184
172
end
185
173
if values .syslinks then
186
- table .join2 (result , _translate_paths (_map_linkflags (package , " binary" , {" cxx" }, " syslink" , values .syslinks )))
174
+ table .join2 (result , _translate_paths (toolchain_utils . map_linkflags (package , " binary" , {" cxx" }, " syslink" , values .syslinks )))
187
175
end
188
176
if values .frameworks then
189
- table .join2 (result , _map_linkflags (package , " binary" , {" cxx" }, " framework" , values .frameworks ))
177
+ table .join2 (result , toolchain_utils . map_linkflags (package , " binary" , {" cxx" }, " framework" , values .frameworks ))
190
178
end
191
179
end
192
180
return result
@@ -199,9 +187,9 @@ function _get_cflags(package, opt)
199
187
if opt .cross then
200
188
table .join2 (result , package :build_getenv (" cflags" ))
201
189
table .join2 (result , package :build_getenv (" cxflags" ))
202
- table .join2 (result , _map_compflags (package , " c" , " define" , package :build_getenv (" defines" )))
203
- table .join2 (result , _map_compflags (package , " c" , " includedir" , package :build_getenv (" includedirs" )))
204
- table .join2 (result , _map_compflags (package , " c" , " sysincludedir" , package :build_getenv (" sysincludedirs" )))
190
+ table .join2 (result , toolchain_utils . map_compflags (package , " c" , " define" , package :build_getenv (" defines" )))
191
+ table .join2 (result , toolchain_utils . map_compflags (package , " c" , " includedir" , package :build_getenv (" includedirs" )))
192
+ table .join2 (result , toolchain_utils . map_compflags (package , " c" , " sysincludedir" , package :build_getenv (" sysincludedirs" )))
205
193
end
206
194
table .join2 (result , package :config (" cflags" ))
207
195
table .join2 (result , package :config (" cxflags" ))
@@ -230,9 +218,9 @@ function _get_cxxflags(package, opt)
230
218
if opt .cross then
231
219
table .join2 (result , package :build_getenv (" cxxflags" ))
232
220
table .join2 (result , package :build_getenv (" cxflags" ))
233
- table .join2 (result , _map_compflags (package , " cxx" , " define" , package :build_getenv (" defines" )))
234
- table .join2 (result , _map_compflags (package , " cxx" , " includedir" , package :build_getenv (" includedirs" )))
235
- table .join2 (result , _map_compflags (package , " cxx" , " sysincludedir" , package :build_getenv (" sysincludedirs" )))
221
+ table .join2 (result , toolchain_utils . map_compflags (package , " cxx" , " define" , package :build_getenv (" defines" )))
222
+ table .join2 (result , toolchain_utils . map_compflags (package , " cxx" , " includedir" , package :build_getenv (" includedirs" )))
223
+ table .join2 (result , toolchain_utils . map_compflags (package , " cxx" , " sysincludedir" , package :build_getenv (" sysincludedirs" )))
236
224
end
237
225
table .join2 (result , package :config (" cxxflags" ))
238
226
table .join2 (result , package :config (" cxflags" ))
@@ -260,9 +248,9 @@ function _get_asflags(package, opt)
260
248
local result = {}
261
249
if opt .cross then
262
250
table .join2 (result , package :build_getenv (" asflags" ))
263
- table .join2 (result , _map_compflags (package , " as" , " define" , package :build_getenv (" defines" )))
264
- table .join2 (result , _map_compflags (package , " as" , " includedir" , package :build_getenv (" includedirs" )))
265
- table .join2 (result , _map_compflags (package , " as" , " sysincludedir" , package :build_getenv (" sysincludedirs" )))
251
+ table .join2 (result , toolchain_utils . map_compflags (package , " as" , " define" , package :build_getenv (" defines" )))
252
+ table .join2 (result , toolchain_utils . map_compflags (package , " as" , " includedir" , package :build_getenv (" includedirs" )))
253
+ table .join2 (result , toolchain_utils . map_compflags (package , " as" , " sysincludedir" , package :build_getenv (" sysincludedirs" )))
266
254
end
267
255
table .join2 (result , package :config (" asflags" ))
268
256
if opt .asflags then
@@ -279,9 +267,9 @@ function _get_ldflags(package, opt)
279
267
local result = {}
280
268
if opt .cross then
281
269
table .join2 (result , package :build_getenv (" ldflags" ))
282
- table .join2 (result , _map_linkflags (package , " binary" , {" cxx" }, " link" , package :build_getenv (" links" )))
283
- table .join2 (result , _map_linkflags (package , " binary" , {" cxx" }, " syslink" , package :build_getenv (" syslinks" )))
284
- table .join2 (result , _map_linkflags (package , " binary" , {" cxx" }, " linkdir" , package :build_getenv (" linkdirs" )))
270
+ table .join2 (result , toolchain_utils . map_linkflags (package , " binary" , {" cxx" }, " link" , package :build_getenv (" links" )))
271
+ table .join2 (result , toolchain_utils . map_linkflags (package , " binary" , {" cxx" }, " syslink" , package :build_getenv (" syslinks" )))
272
+ table .join2 (result , toolchain_utils . map_linkflags (package , " binary" , {" cxx" }, " linkdir" , package :build_getenv (" linkdirs" )))
285
273
end
286
274
table .join2 (result , package :config (" ldflags" ))
287
275
if package :config (" lto" ) then
@@ -305,9 +293,9 @@ function _get_shflags(package, opt)
305
293
local result = {}
306
294
if opt .cross then
307
295
table .join2 (result , package :build_getenv (" shflags" ))
308
- table .join2 (result , _map_linkflags (package , " shared" , {" cxx" }, " link" , package :build_getenv (" links" )))
309
- table .join2 (result , _map_linkflags (package , " shared" , {" cxx" }, " syslink" , package :build_getenv (" syslinks" )))
310
- table .join2 (result , _map_linkflags (package , " shared" , {" cxx" }, " linkdir" , package :build_getenv (" linkdirs" )))
296
+ table .join2 (result , toolchain_utils . map_linkflags (package , " shared" , {" cxx" }, " link" , package :build_getenv (" links" )))
297
+ table .join2 (result , toolchain_utils . map_linkflags (package , " shared" , {" cxx" }, " syslink" , package :build_getenv (" syslinks" )))
298
+ table .join2 (result , toolchain_utils . map_linkflags (package , " shared" , {" cxx" }, " linkdir" , package :build_getenv (" linkdirs" )))
311
299
end
312
300
table .join2 (result , package :config (" shflags" ))
313
301
if package :config (" lto" ) then
@@ -881,11 +869,11 @@ function _get_envs_for_runtime_flags(package, configs, opt)
881
869
local envs = {}
882
870
local runtimes = package :runtimes ()
883
871
if runtimes then
884
- envs [format (" CMAKE_C_FLAGS_%s" , buildtype )] = _map_compflags (package , " c" , " runtime" , runtimes )
885
- envs [format (" CMAKE_CXX_FLAGS_%s" , buildtype )] = _map_compflags (package , " cxx" , " runtime" , runtimes )
886
- envs [format (" CMAKE_EXE_LINKER_FLAGS_%s" , buildtype )] = _map_linkflags (package , " binary" , {" cxx" }, " runtime" , runtimes )
887
- envs [format (" CMAKE_STATIC_LINKER_FLAGS_%s" , buildtype )] = _map_linkflags (package , " static" , {" cxx" }, " runtime" , runtimes )
888
- envs [format (" CMAKE_SHARED_LINKER_FLAGS_%s" , buildtype )] = _map_linkflags (package , " shared" , {" cxx" }, " runtime" , runtimes )
872
+ envs [format (" CMAKE_C_FLAGS_%s" , buildtype )] = toolchain_utils . map_compflags (package , " c" , " runtime" , runtimes )
873
+ envs [format (" CMAKE_CXX_FLAGS_%s" , buildtype )] = toolchain_utils . map_compflags (package , " cxx" , " runtime" , runtimes )
874
+ envs [format (" CMAKE_EXE_LINKER_FLAGS_%s" , buildtype )] = toolchain_utils . map_linkflags (package , " binary" , {" cxx" }, " runtime" , runtimes )
875
+ envs [format (" CMAKE_STATIC_LINKER_FLAGS_%s" , buildtype )] = toolchain_utils . map_linkflags (package , " static" , {" cxx" }, " runtime" , runtimes )
876
+ envs [format (" CMAKE_SHARED_LINKER_FLAGS_%s" , buildtype )] = toolchain_utils . map_linkflags (package , " shared" , {" cxx" }, " runtime" , runtimes )
889
877
end
890
878
return envs
891
879
end
0 commit comments