@@ -274,11 +274,15 @@ pub fn openssl(build: &Build, target: &str) {
274
274
configure. arg ( "no-ssl3" ) ;
275
275
276
276
let os = match target {
277
+ "aarch64-linux-android" => "linux-aarch64" ,
277
278
"aarch64-unknown-linux-gnu" => "linux-aarch64" ,
279
+ "arm-linux-androideabi" => "android" ,
278
280
"arm-unknown-linux-gnueabi" => "linux-armv4" ,
279
281
"arm-unknown-linux-gnueabihf" => "linux-armv4" ,
282
+ "armv7-linux-androideabi" => "android-armv7" ,
280
283
"armv7-unknown-linux-gnueabihf" => "linux-armv4" ,
281
284
"i686-apple-darwin" => "darwin-i386-cc" ,
285
+ "i686-linux-android" => "android-x86" ,
282
286
"i686-unknown-freebsd" => "BSD-x86-elf" ,
283
287
"i686-unknown-linux-gnu" => "linux-elf" ,
284
288
"i686-unknown-linux-musl" => "linux-elf" ,
@@ -302,6 +306,12 @@ pub fn openssl(build: &Build, target: &str) {
302
306
for flag in build. cflags ( target) {
303
307
configure. arg ( flag) ;
304
308
}
309
+ // There is no specific os target for android aarch64,
310
+ // so we use linux-aarch64 and pass some extra cflags
311
+ if os == "linux-aarch64" {
312
+ configure. arg ( "-mandroid" ) ;
313
+ configure. arg ( "-fomit-frame-pointer" ) ;
314
+ }
305
315
configure. current_dir ( & obj) ;
306
316
println ! ( "Configuring openssl for {}" , target) ;
307
317
build. run_quiet ( & mut configure) ;
0 commit comments