Return the 'output' (full output path) of a gyp spec. E.g., the loadable module 'foobar' in directory 'baz' will produce '$(obj)/baz/libfoobar.so'
(self, spec)
| 715 | return "".join(self.ComputeOutputParts(spec)) |
| 716 | |
| 717 | def ComputeOutput(self, spec): |
| 718 | """Return the 'output' (full output path) of a gyp spec. |
| 719 | |
| 720 | E.g., the loadable module 'foobar' in directory 'baz' will produce |
| 721 | '$(obj)/baz/libfoobar.so' |
| 722 | """ |
| 723 | if self.type == "executable": |
| 724 | # We install host executables into shared_intermediate_dir so they can be |
| 725 | # run by gyp rules that refer to PRODUCT_DIR. |
| 726 | path = "$(gyp_shared_intermediate_dir)" |
| 727 | elif self.type == "shared_library": |
| 728 | if self.toolset == "host": |
| 729 | path = "$($(GYP_HOST_VAR_PREFIX)HOST_OUT_INTERMEDIATE_LIBRARIES)" |
| 730 | else: |
| 731 | path = "$($(GYP_VAR_PREFIX)TARGET_OUT_INTERMEDIATE_LIBRARIES)" |
| 732 | # Other targets just get built into their intermediate dir. |
| 733 | elif self.toolset == "host": |
| 734 | path = ( |
| 735 | "$(call intermediates-dir-for,%s,%s,true,," |
| 736 | "$(GYP_HOST_VAR_PREFIX))" % (self.android_class, self.android_module) |
| 737 | ) |
| 738 | else: |
| 739 | path = ( |
| 740 | f"$(call intermediates-dir-for,{self.android_class}," |
| 741 | f"{self.android_module},,,$(GYP_VAR_PREFIX))" |
| 742 | ) |
| 743 | |
| 744 | assert spec.get("product_dir") is None # TODO: not supported? |
| 745 | return os.path.join(path, self.ComputeOutputBasename(spec)) |
| 746 | |
| 747 | def NormalizeIncludePaths(self, include_paths): |
| 748 | """Normalize include_paths. |
no test coverage detected