1
1
package(default_visibility = ["//visibility:public"])
2
2
3
- load(":osx_archs.bzl", "OSX_TOOLS_ARCHS")
3
+ load(":osx_archs.bzl", "OSX_TOOLS_ARCHS", "OSX_TOOLS_CONSTRAINTS" )
4
4
load(":cc_toolchain_config.bzl", "cc_toolchain_config")
5
5
6
6
CC_TOOLCHAINS = [(
@@ -10,10 +10,10 @@ CC_TOOLCHAINS = [(
10
10
cpu,
11
11
":cc-compiler-" + cpu,
12
12
) for cpu in OSX_TOOLS_ARCHS] + [
13
- ("k8|compiler", ":cc-compiler-darwin_x86_64", ),
14
- ("darwin|compiler", ":cc-compiler-darwin_x86_64", ),
15
- ("k8", ":cc-compiler-darwin_x86_64", ),
16
- ("darwin", ":cc-compiler-darwin_x86_64", ),
13
+ ("k8|compiler", ":cc-compiler-darwin_x86_64"),
14
+ ("darwin|compiler", ":cc-compiler-darwin_x86_64"),
15
+ ("k8", ":cc-compiler-darwin_x86_64"),
16
+ ("darwin", ":cc-compiler-darwin_x86_64"),
17
17
]
18
18
19
19
cc_library(
@@ -39,13 +39,13 @@ cc_toolchain_suite(
39
39
filegroup(
40
40
name = "osx_tools_" + arch,
41
41
srcs = [
42
- ":cc_wrapper",
43
- ":libtool",
44
- ":make_hashed_objlist.py",
45
- ":wrapped_clang ",
46
- ":wrapped_clang_pp ",
47
- ":wrapped_ar ",
48
- ":xcrunwrapper.sh",
42
+ ":cc_wrapper",
43
+ ":libtool",
44
+ ":make_hashed_objlist.py",
45
+ ":wrapped_ar ",
46
+ ":wrapped_clang ",
47
+ ":wrapped_clang_pp ",
48
+ ":xcrunwrapper.sh",
49
49
],
50
50
)
51
51
for arch in OSX_TOOLS_ARCHS
@@ -54,12 +54,6 @@ cc_toolchain_suite(
54
54
[
55
55
apple_cc_toolchain(
56
56
name = "cc-compiler-" + arch,
57
- toolchain_identifier = (
58
- arch if arch != "armeabi-v7a" else "stub_armeabi-v7a"
59
- ),
60
- toolchain_config = ":" + (
61
- arch if arch != "armeabi-v7a" else "stub_armeabi-v7a"
62
- ),
63
57
all_files = ":osx_tools_" + arch,
64
58
ar_files = ":empty",
65
59
as_files = ":empty",
@@ -69,15 +63,21 @@ cc_toolchain_suite(
69
63
objcopy_files = ":empty",
70
64
strip_files = ":osx_tools_" + arch,
71
65
supports_param_files = 0,
66
+ toolchain_config = ":" + (
67
+ arch if arch != "armeabi-v7a" else "stub_armeabi-v7a"
68
+ ),
69
+ toolchain_identifier = (
70
+ arch if arch != "armeabi-v7a" else "stub_armeabi-v7a"
71
+ ),
72
72
)
73
73
for arch in OSX_TOOLS_ARCHS
74
74
]
75
75
76
76
[
77
77
cc_toolchain_config(
78
78
name = (arch if arch != "armeabi-v7a" else "stub_armeabi-v7a"),
79
- cpu = arch,
80
79
compiler = "compiler",
80
+ cpu = arch,
81
81
)
82
82
for arch in OSX_TOOLS_ARCHS
83
83
]
@@ -86,11 +86,11 @@ cc_toolchain_suite(
86
86
toolchain(
87
87
name = "cc-toolchain-" + arch,
88
88
exec_compatible_with = [
89
- # TODO(katre): add autodiscovered constraints for host CPU and OS.
90
- ],
91
- target_compatible_with = [
92
- # TODO(katre): add autodiscovered constraints for host CPU and OS.
89
+ # These only execute on macOS.
90
+ "@bazel_tools//platforms:osx",
91
+ "@bazel_tools//platforms:x86_64",
93
92
],
93
+ target_compatible_with = OSX_TOOLS_CONSTRAINTS[arch],
94
94
toolchain = ":cc-compiler-" + arch,
95
95
toolchain_type = "@bazel_tools//tools/cpp:toolchain_type",
96
96
)
0 commit comments