@@ -93,6 +93,13 @@ function main(toolchain)
93
93
toolchain :set (" toolset" , " ranlib" , gcc_toolchain_bin and path .join (gcc_toolchain_bin , cross .. " ranlib" ) or (cross .. " ranlib" ))
94
94
toolchain :set (" toolset" , " strip" , gcc_toolchain_bin and path .join (gcc_toolchain_bin , cross .. " strip" ) or (cross .. " strip" ), " llvm-strip" )
95
95
96
+ -- gnustl and stlport have been removed in ndk r18 (deprecated in ndk r17)
97
+ -- https://github.com/android/ndk/wiki/Changelog-r18
98
+ local old_runtimes = {" gnustl_static" , " gnustl_shared" , " stlport_static" , " stlport_shared" }
99
+ if ndkver and ndkver < 18 then
100
+ toolchain :add (" runtimes" , table.unpack (old_runtimes ))
101
+ end
102
+
96
103
-- init flags
97
104
local arm32 = false
98
105
local arch = toolchain :arch ()
@@ -213,6 +220,10 @@ function main(toolchain)
213
220
local cxxstl_sdkdir = nil
214
221
local ndk_cxxstl = config .get (" runtimes" ) or config .get (" ndk_cxxstl" )
215
222
if ndk_cxxstl then
223
+ if (ndkver and ndkver >= 18 ) and table .contains (old_runtimes , ndk_cxxstl ) then
224
+ utils .warning (" %s is was removed in ndk v%s" , ndk_cxxstl , ndk_sdkver )
225
+ end
226
+
216
227
if ndk_cxxstl :find (" ," , 1 , true ) then
217
228
local runtimes_supported = hashset .from (toolchain :get (" runtimes" ))
218
229
for _ , item in ipairs (ndk_cxxstl :split (" ," )) do
0 commit comments