From eee5122702f949bec971207853d1da0248c6ea25 Mon Sep 17 00:00:00 2001 From: Jonathan Hemi Date: Mon, 5 Oct 2020 22:26:57 +0800 Subject: [PATCH] Set compiler vendor name as SwiftWasm --- utils/build-presets.ini | 1 + .../build_swift/build_swift/driver_arguments.py | 2 +- .../swift_build_support/products/llvm.py | 7 +++++++ .../swift_build_support/products/swift.py | 16 ++++++++++++---- 4 files changed, 21 insertions(+), 5 deletions(-) diff --git a/utils/build-presets.ini b/utils/build-presets.ini index 579445946bc6f..55d66483f8795 100644 --- a/utils/build-presets.ini +++ b/utils/build-presets.ini @@ -2446,6 +2446,7 @@ llvm-install-components=llvm-cov;llvm-profdata;IndexStore;clang;clang-resource-h install-swift install-llvm install-prefix=/%(TOOLCHAIN_NAME)s/usr +compiler-vendor=swiftwasm [preset: webassembly-host] diff --git a/utils/build_swift/build_swift/driver_arguments.py b/utils/build_swift/build_swift/driver_arguments.py index 2059231d02441..65776c5384730 100644 --- a/utils/build_swift/build_swift/driver_arguments.py +++ b/utils/build_swift/build_swift/driver_arguments.py @@ -413,7 +413,7 @@ def create_argument_parser(): 'fuzzing swiftc') option('--compiler-vendor', store, - choices=['none', 'apple'], + choices=['none', 'apple', 'swiftwasm'], default=defaults.COMPILER_VENDOR, help='Compiler vendor name') option('--clang-compiler-version', store, diff --git a/utils/swift_build_support/swift_build_support/products/llvm.py b/utils/swift_build_support/swift_build_support/products/llvm.py index 3d23c2e3b162e..e9d658ce92b92 100644 --- a/utils/swift_build_support/swift_build_support/products/llvm.py +++ b/utils/swift_build_support/swift_build_support/products/llvm.py @@ -39,6 +39,13 @@ def _compiler_vendor_flags(self): if self.args.compiler_vendor == "none": return [] + if self.args.compiler_vendor == "swiftwasm": + return [ + ('CLANG_VENDOR', 'SwiftWasm'), + ('CLANG_VENDOR_UTI', 'org.swiftwasm.compilers.llvm.clang'), + ('PACKAGE_VERSION', str(self.args.clang_user_visible_version)) + ] + if self.args.compiler_vendor != "apple": raise RuntimeError("Unknown compiler vendor?!") diff --git a/utils/swift_build_support/swift_build_support/products/swift.py b/utils/swift_build_support/swift_build_support/products/swift.py index e4259b018ef54..de9b1294a80da 100644 --- a/utils/swift_build_support/swift_build_support/products/swift.py +++ b/utils/swift_build_support/swift_build_support/products/swift.py @@ -59,14 +59,22 @@ def _compiler_vendor_flags(self): if self.args.compiler_vendor == "none": return [] - if self.args.compiler_vendor != "apple": - raise RuntimeError("Unknown compiler vendor?! Was build-script \ -updated without updating swift.py?") - swift_compiler_version = "" if self.args.swift_compiler_version is not None: swift_compiler_version = self.args.swift_compiler_version + if self.args.compiler_vendor == "swiftwasm": + return [ + ('SWIFT_VENDOR', 'SwiftWasm'), + ('SWIFT_VENDOR_UTI', 'org.swiftwasm.compilers.llvm.swift'), + ('SWIFT_VERSION', str(self.args.swift_user_visible_version)), + ('SWIFT_COMPILER_VERSION', str(swift_compiler_version)), + ] + + if self.args.compiler_vendor != "apple": + raise RuntimeError("Unknown compiler vendor?! Was build-script \ +updated without updating swift.py?") + return [ ('SWIFT_VENDOR', 'Apple'), ('SWIFT_VENDOR_UTI', 'com.apple.compilers.llvm.swift'),