@@ -209,7 +209,7 @@ def main(argv):
209
209
ios_framework_dir = os .path .join (sdk_dir , "xcframeworks" )
210
210
ios_framework_exist = os .path .isdir (ios_framework_dir )
211
211
if not ios_framework_exist and _IOS in platforms :
212
- _generate_makefiles_from_repo (sdk_dir )
212
+ _generate_makefiles_from_repo (repo_dir )
213
213
214
214
if update_pod_repo and _IOS in platforms :
215
215
_run (["pod" , "repo" , "update" ])
@@ -458,27 +458,29 @@ def _validate_android_environment_variables():
458
458
logging .warning ("No NDK env var set. Set one of %s" , ", " .join (ndk_vars ))
459
459
460
460
461
- # If sdk_dir contains no framework, consider it is Github repo, then
462
- # generate makefiles for ios frameworks
463
- def _generate_makefiles_from_repo (sdk_dir ):
461
+ # If sdk_dir contains no xcframework, consider it is Github repo, then
462
+ # generate makefiles for ios xcframeworks
463
+ # the xcframeworks will be placed at repo_dir/ios_build
464
+ def _generate_makefiles_from_repo (repo_dir ):
464
465
"""Generates cmake makefiles for building iOS frameworks from SDK source."""
465
466
ios_framework_builder = os .path .join (
466
- sdk_dir , "build_scripts" , "ios" , "build.sh" )
467
+ repo_dir , "build_scripts" , "ios" , "build.sh" )
467
468
468
469
framework_builder_args = [
469
470
ios_framework_builder ,
470
- "-b" , sdk_dir ,
471
- "-s" , sdk_dir ,
471
+ "-b" , os . path . join ( repo_dir , "ios_build" ) ,
472
+ "-s" , repo_dir ,
472
473
"-c" , "false"
473
474
]
474
475
_run (framework_builder_args )
475
476
476
477
477
- # build required ios frameworks based on makefiles
478
- def _build_ios_framework_from_repo (sdk_dir , api_config ):
478
+ # build required ios xcframeworks based on makefiles
479
+ # the xcframeworks locates at repo_dir/ios_build
480
+ def _build_ios_framework_from_repo (repo_dir , api_config ):
479
481
"""Builds iOS framework from SDK source."""
480
482
ios_framework_builder = os .path .join (
481
- sdk_dir , "build_scripts" , "ios" , "build.sh" )
483
+ repo_dir , "build_scripts" , "ios" , "build.sh" )
482
484
483
485
# build only required targets to save time
484
486
target = set ()
@@ -492,8 +494,8 @@ def _build_ios_framework_from_repo(sdk_dir, api_config):
492
494
493
495
framework_builder_args = [
494
496
ios_framework_builder ,
495
- "-b" , sdk_dir ,
496
- "-s" , sdk_dir ,
497
+ "-b" , os . path . join ( repo_dir , "ios_build" ) ,
498
+ "-s" , repo_dir ,
497
499
"-t" , "," .join (target ),
498
500
"-g" , "false"
499
501
]
@@ -504,7 +506,9 @@ def _build_ios(
504
506
sdk_dir , ios_framework_exist , project_dir , repo_dir , api_config , ios_sdk ):
505
507
"""Builds an iOS application (.app, .ipa or both)."""
506
508
if not ios_framework_exist :
507
- _build_ios_framework_from_repo (sdk_dir , api_config )
509
+ _build_ios_framework_from_repo (repo_dir , api_config )
510
+ sdk_dir = os .path .join (repo_dir , "ios_build" )
511
+ logging .info ("iOS xcframework created at: %s" , " " .join (sdk_dir ))
508
512
509
513
build_dir = os .path .join (project_dir , "ios_build" )
510
514
os .makedirs (build_dir )
0 commit comments