diff options
author | Matthew Maurer <mmaurer@google.com> | 2024-03-19 22:41:55 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2024-03-19 22:41:55 +0000 |
commit | 35bd72fbb68e5f4feccc59d17af7fb350974a3dc (patch) | |
tree | a559c2c5f783d4cbd605578eee27269d1e3c533b /tools | |
parent | 6bdb9aa5e8afca684f73b8b30a162f3064e183a6 (diff) | |
parent | 15cbbff88df7a8191d88c7aebefc7b508bd4de69 (diff) | |
download | cxx-master.tar.gz |
Original change: https://android-review.googlesource.com/c/platform/external/rust/cxx/+/3003022
Change-Id: Ifb8c5cfdcc08f30aeff8426e3d7f276a1e11716a
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
Diffstat (limited to 'tools')
-rw-r--r-- | tools/bazel/BUILD | 12 | ||||
-rw-r--r-- | tools/bazel/extension.bzl | 12 | ||||
-rw-r--r-- | tools/buck/.ignore | 1 | ||||
-rw-r--r-- | tools/buck/build_mode.bzl | 14 | ||||
-rw-r--r-- | tools/buck/buildscript.bzl | 17 | ||||
m--------- | tools/buck/prelude | 0 | ||||
-rw-r--r-- | tools/buck/rust_cxx_bridge.bzl | 19 | ||||
-rw-r--r-- | tools/buck/third_party.bzl | 5 | ||||
-rw-r--r-- | tools/buck/toolchains/BUCK | 17 |
9 files changed, 67 insertions, 30 deletions
diff --git a/tools/bazel/BUILD b/tools/bazel/BUILD index d42fc71c..63c8db9e 100644 --- a/tools/bazel/BUILD +++ b/tools/bazel/BUILD @@ -5,3 +5,15 @@ bzl_library( srcs = glob(["**/*.bzl"]), visibility = ["//visibility:public"], ) + +xcode_version( + name = "github_actions_xcode_14_2_0", + default_macos_sdk_version = "13.1", + version = "14.2", +) + +xcode_config( + name = "github_actions_xcodes", + default = ":github_actions_xcode_14_2_0", + versions = [":github_actions_xcode_14_2_0"], +) diff --git a/tools/bazel/extension.bzl b/tools/bazel/extension.bzl new file mode 100644 index 00000000..efde7f26 --- /dev/null +++ b/tools/bazel/extension.bzl @@ -0,0 +1,12 @@ +load("//third-party/bazel:defs.bzl", _crate_repositories = "crate_repositories") + +def _crate_repositories_impl(module_ctx): + direct_deps = _crate_repositories() + return module_ctx.extension_metadata( + root_module_direct_deps = [repo.repo for repo in direct_deps], + root_module_direct_dev_deps = [], + ) + +crate_repositories = module_extension( + implementation = _crate_repositories_impl, +) diff --git a/tools/buck/.ignore b/tools/buck/.ignore new file mode 100644 index 00000000..adba186d --- /dev/null +++ b/tools/buck/.ignore @@ -0,0 +1 @@ +prelude/ diff --git a/tools/buck/build_mode.bzl b/tools/buck/build_mode.bzl new file mode 100644 index 00000000..aeff4987 --- /dev/null +++ b/tools/buck/build_mode.bzl @@ -0,0 +1,14 @@ +load("@prelude//:build_mode.bzl", "BuildModeInfo") + +def _build_mode_impl(ctx: AnalysisContext) -> list[Provider]: + return [ + DefaultInfo(), + BuildModeInfo(cell = ctx.attrs.cell), + ] + +build_mode = rule( + impl = _build_mode_impl, + attrs = { + "cell": attrs.string(), + }, +) diff --git a/tools/buck/buildscript.bzl b/tools/buck/buildscript.bzl deleted file mode 100644 index e4d5e1e4..00000000 --- a/tools/buck/buildscript.bzl +++ /dev/null @@ -1,17 +0,0 @@ -def buildscript_args( - name: str.type, - package_name: str.type, - buildscript_rule: str.type, - outfile: str.type, - version: str.type, - cfgs: [str.type] = [], - features: [str.type] = []): - _ = package_name - _ = version - _ = cfgs - _ = features - native.genrule( - name = name, - out = outfile, - cmd = "env RUSTC=rustc TARGET= $(exe %s) | sed -n s/^cargo:rustc-cfg=/--cfg=/p > ${OUT}" % buildscript_rule, - ) diff --git a/tools/buck/prelude b/tools/buck/prelude -Subproject 08670e1d9a3fde1fd3cdc12839747a9ea1852a5 +Subproject 7b15f7b14e0a1628d4f1081b131aa7846a0404b diff --git a/tools/buck/rust_cxx_bridge.bzl b/tools/buck/rust_cxx_bridge.bzl index 18bb2458..1dce3950 100644 --- a/tools/buck/rust_cxx_bridge.bzl +++ b/tools/buck/rust_cxx_bridge.bzl @@ -1,23 +1,26 @@ def rust_cxx_bridge( - name: str.type, - src: str.type, - deps: [str.type] = []): - native.genrule( + name: str, + src: str, + deps: list[str] = []): + native.export_file( name = "%s/header" % name, + src = ":%s/generated[generated.h]" % name, out = src + ".h", - cmd = "cp $(location :%s/generated)/generated.h ${OUT}" % name, ) - native.genrule( + native.export_file( name = "%s/source" % name, + src = ":%s/generated[generated.cc]" % name, out = src + ".cc", - cmd = "cp $(location :%s/generated)/generated.cc ${OUT}" % name, ) native.genrule( name = "%s/generated" % name, srcs = [src], - out = ".", + outs = { + "generated.cc": ["generated.cc"], + "generated.h": ["generated.h"], + }, cmd = "$(exe //:codegen) ${SRCS} -o ${OUT}/generated.h -o ${OUT}/generated.cc", type = "cxxbridge", ) diff --git a/tools/buck/third_party.bzl b/tools/buck/third_party.bzl deleted file mode 100644 index 84e5ca8f..00000000 --- a/tools/buck/third_party.bzl +++ /dev/null @@ -1,5 +0,0 @@ -def third_party_rust_library(**kwargs): - native.rust_library( - doctests = False, - **kwargs - ) diff --git a/tools/buck/toolchains/BUCK b/tools/buck/toolchains/BUCK index 6984a86b..e120a29b 100644 --- a/tools/buck/toolchains/BUCK +++ b/tools/buck/toolchains/BUCK @@ -1,10 +1,21 @@ load("@prelude//toolchains:cxx.bzl", "system_cxx_toolchain") load("@prelude//toolchains:genrule.bzl", "system_genrule_toolchain") load("@prelude//toolchains:python.bzl", "system_python_bootstrap_toolchain") +load("@prelude//toolchains:remote_test_execution.bzl", "remote_test_execution_toolchain") load("@prelude//toolchains:rust.bzl", "system_rust_toolchain") system_cxx_toolchain( name = "cxx", + cxx_flags = select({ + "config//os:linux": ["-std=c++17"], + "config//os:macos": ["-std=c++17"], + "config//os:windows": [], + }), + link_flags = select({ + "config//os:linux": ["-lstdc++"], + "config//os:macos": ["-lc++"], + "config//os:windows": [], + }), visibility = ["PUBLIC"], ) @@ -21,5 +32,11 @@ system_python_bootstrap_toolchain( system_rust_toolchain( name = "rust", default_edition = None, + doctests = True, + visibility = ["PUBLIC"], +) + +remote_test_execution_toolchain( + name = "remote_test_execution", visibility = ["PUBLIC"], ) |