|
16 | 16 | import shlex
|
17 | 17 | from enum import Enum, auto
|
18 | 18 |
|
19 |
| -from .builder import Builder |
| 19 | +from .builder import Builder, BuilderOutput |
20 | 20 |
|
21 | 21 |
|
22 | 22 | class AndroidBoard(Enum):
|
@@ -366,6 +366,9 @@ def generate(self):
|
366 | 366 | if self.options.pw_command_launcher:
|
367 | 367 | gn_args["pw_command_launcher"] = self.options.pw_command_launcher
|
368 | 368 |
|
| 369 | + if self.options.enable_link_map_file: |
| 370 | + gn_args["chip_generate_link_map_file"] = True |
| 371 | + |
369 | 372 | if exampleName == "chip-test":
|
370 | 373 | gn_args["chip_build_tests"] = True
|
371 | 374 | if self.profile != AndroidProfile.DEBUG:
|
@@ -569,85 +572,61 @@ def _build(self):
|
569 | 572 |
|
570 | 573 | def build_outputs(self):
|
571 | 574 | if self.board.IsIde():
|
572 |
| - outputs = { |
573 |
| - self.app.AppName() |
574 |
| - + "-debug.apk": os.path.join( |
| 575 | + yield BuilderOutput( |
| 576 | + os.path.join( |
575 | 577 | self.root,
|
576 | 578 | "examples/android",
|
577 | 579 | self.app.AppName(),
|
578 |
| - "app/build/outputs/apk/debug/app-debug.apk", |
579 |
| - ) |
580 |
| - } |
| 580 | + "app/build/outputs/apk/debug/app-debug.apk"), |
| 581 | + self.app.AppName() + "-debug.apk") |
581 | 582 | elif self.app.ExampleName() is not None:
|
582 | 583 | if self.app == AndroidApp.TV_SERVER:
|
583 |
| - outputs = { |
584 |
| - "tv-sever-platform-app-debug.apk": os.path.join( |
585 |
| - self.output_dir, "platform-app", "outputs", "apk", "debug", "platform-app-debug.apk" |
586 |
| - ), |
587 |
| - "tv-sever-content-app-debug.apk": os.path.join( |
588 |
| - self.output_dir, "content-app", "outputs", "apk", "debug", "content-app-debug.apk" |
589 |
| - ) |
590 |
| - } |
| 584 | + yield BuilderOutput( |
| 585 | + os.path.join(self.output_dir, "platform-app", |
| 586 | + "outputs", "apk", "debug", "platform-app-debug.apk"), |
| 587 | + "tv-sever-platform-app-debug.apk") |
| 588 | + yield BuilderOutput( |
| 589 | + os.path.join(self.output_dir, "content-app", |
| 590 | + "outputs", "apk", "debug", "content-app-debug.apk"), |
| 591 | + "tv-sever-content-app-debug.apk") |
591 | 592 | elif self.app == AndroidApp.VIRTUAL_DEVICE_APP:
|
592 |
| - outputs = { |
593 |
| - self.app.AppName() + "app-debug.apk": os.path.join( |
594 |
| - self.output_dir, "VirtualDeviceApp", "app", "outputs", "apk", "debug", "app-debug.apk" |
595 |
| - ) |
596 |
| - } |
| 593 | + yield BuilderOutput( |
| 594 | + os.path.join(self.output_dir, "VirtualDeviceApp", "app", |
| 595 | + "outputs", "apk", "debug", "app-debug.apk"), |
| 596 | + self.app.AppName() + "app-debug.apk") |
597 | 597 | else:
|
598 |
| - outputs = { |
599 |
| - self.app.AppName() + "app-debug.apk": os.path.join( |
600 |
| - self.output_dir, "outputs", "apk", "debug", "app-debug.apk" |
601 |
| - ) |
602 |
| - } |
| 598 | + yield BuilderOutput( |
| 599 | + os.path.join(self.output_dir, |
| 600 | + "outputs", "apk", "debug", "app-debug.apk"), |
| 601 | + self.app.AppName() + "app-debug.apk") |
603 | 602 | else:
|
604 |
| - outputs = { |
605 |
| - self.app.AppName() + "app-debug.apk": os.path.join( |
606 |
| - self.output_dir, "outputs", "apk", "debug", "app-debug.apk" |
607 |
| - ), |
608 |
| - "CHIPController.jar": os.path.join( |
609 |
| - self.output_dir, "lib", "src/controller/java/CHIPController.jar" |
610 |
| - ), |
611 |
| - "CHIPInteractionModel.jar": os.path.join( |
612 |
| - self.output_dir, "lib", "src/controller/java/CHIPInteractionModel.jar" |
613 |
| - ), |
614 |
| - "libMatterTlv.jar": os.path.join( |
615 |
| - self.output_dir, "lib", "src/controller/java/libMatterTlv.jar" |
616 |
| - ), |
617 |
| - "AndroidPlatform.jar": os.path.join( |
618 |
| - self.output_dir, "lib", "src/platform/android/AndroidPlatform.jar" |
619 |
| - ), |
620 |
| - "OnboardingPayload.jar": os.path.join( |
621 |
| - self.output_dir, |
622 |
| - "lib", |
623 |
| - "src/controller/java/OnboardingPayload.jar", |
624 |
| - ), |
625 |
| - "CHIPClusters.jar": os.path.join( |
626 |
| - self.output_dir, |
627 |
| - "lib", |
628 |
| - "src/controller/java/CHIPClusters.jar", |
629 |
| - ), |
630 |
| - "CHIPClusterID.jar": os.path.join( |
631 |
| - self.output_dir, |
632 |
| - "lib", |
633 |
| - "src/controller/java/CHIPClusterID.jar", |
634 |
| - ), |
635 |
| - "jni/%s/libCHIPController.so" |
636 |
| - % self.board.AbiName(): os.path.join( |
637 |
| - self.output_dir, |
638 |
| - "lib", |
639 |
| - "jni", |
640 |
| - self.board.AbiName(), |
641 |
| - "libCHIPController.so", |
642 |
| - ), |
643 |
| - "jni/%s/libc++_shared.so" |
644 |
| - % self.board.AbiName(): os.path.join( |
645 |
| - self.output_dir, |
646 |
| - "lib", |
647 |
| - "jni", |
648 |
| - self.board.AbiName(), |
649 |
| - "libc++_shared.so", |
650 |
| - ), |
651 |
| - } |
652 |
| - |
653 |
| - return outputs |
| 603 | + yield BuilderOutput( |
| 604 | + os.path.join(self.output_dir, "outputs", "apk", "debug", "app-debug.apk"), |
| 605 | + self.app.AppName() + "app-debug.apk") |
| 606 | + yield BuilderOutput( |
| 607 | + os.path.join(self.output_dir, "lib", "src", "controller", "java", "CHIPController.jar"), |
| 608 | + "CHIPController.jar") |
| 609 | + yield BuilderOutput( |
| 610 | + os.path.join(self.output_dir, "lib", "src", "controller", "java", "CHIPInteractionModel.jar"), |
| 611 | + "CHIPInteractionModel.jar") |
| 612 | + yield BuilderOutput( |
| 613 | + os.path.join(self.output_dir, "lib", "src", "controller", "java", "libMatterTlv.jar"), |
| 614 | + "libMatterTlv.jar") |
| 615 | + yield BuilderOutput( |
| 616 | + os.path.join(self.output_dir, "lib", "src", "platform", "android", "AndroidPlatform.jar"), |
| 617 | + "AndroidPlatform.jar") |
| 618 | + yield BuilderOutput( |
| 619 | + os.path.join(self.output_dir, "lib", "src", "controller", "java", "OnboardingPayload.jar"), |
| 620 | + "OnboardingPayload.jar") |
| 621 | + yield BuilderOutput( |
| 622 | + os.path.join(self.output_dir, "lib", "src", "controller", "java", "CHIPClusters.jar"), |
| 623 | + "CHIPClusters.jar") |
| 624 | + yield BuilderOutput( |
| 625 | + os.path.join(self.output_dir, "lib", "src", "controller", "java", "CHIPClusterID.jar"), |
| 626 | + "CHIPClusterID.jar") |
| 627 | + yield BuilderOutput( |
| 628 | + os.path.join(self.output_dir, "lib", "jni", self.board.AbiName(), "libCHIPController.so"), |
| 629 | + "jni/%s/libCHIPController.so" % self.board.AbiName()) |
| 630 | + yield BuilderOutput( |
| 631 | + os.path.join(self.output_dir, "lib", "jni", self.board.AbiName(), "libc++_shared.so"), |
| 632 | + "jni/%s/libc++_shared.so" % self.board.AbiName()) |
0 commit comments