Skip to content

Commit 299f4e9

Browse files
committed
Move examples into their own workspaces
This is more clear, as they don't need to round-trip via two .bzl files, so the examples are self-contained. However, we'll need to work out how to make them build on CI.
1 parent 3a00856 commit 299f4e9

File tree

14 files changed

+178
-110
lines changed

14 files changed

+178
-110
lines changed

.bazelignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
docs
22
examples
3+
examples/crate_universe
34
examples/cargo_manifest_dir/external_crate

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
# bazel
77
/bazel-*
88
/examples/bazel-*
9-
/examples/*/bazel-*
9+
/examples/crate_universe/*/bazel-*
1010
/docs/bazel-*
1111

1212
# rustfmt

WORKSPACE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ examples_repositories()
6363

6464
load("@examples//:examples_deps.bzl", examples_deps = "deps")
6565

66-
examples_deps(is_top_level = True)
66+
examples_deps()
6767

6868
load("@examples//:examples_transitive_deps.bzl", examples_transitive_deps = "transitive_deps")
6969

examples/crate_universe/basic/BUILD.bazel

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ load(
22
"@rules_rust//rust:rust.bzl",
33
"rust_binary",
44
)
5-
load("@crate_universe_basic_rust_deps//:defs.bzl", "crate")
5+
load("@rust_deps//:defs.bzl", "crate")
66

77
rust_binary(
88
name = "basic",
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
local_repository(
2+
name = "rules_rust",
3+
path = "../../..",
4+
)
5+
6+
load("@rules_rust//rust:repositories.bzl", "rust_repositories")
7+
8+
rust_repositories()
9+
10+
load("@rules_rust//cargo:repositories.bzl", "crate_universe_deps")
11+
12+
crate_universe_deps()
13+
14+
load("@rules_rust//cargo:workspace.bzl", "crate", "crate_universe")
15+
16+
crate_universe(
17+
name = "rust_deps",
18+
packages = [
19+
crate.spec(
20+
name = "lazy_static",
21+
semver = "=1.4",
22+
),
23+
],
24+
supported_targets = [
25+
"x86_64-apple-darwin",
26+
"x86_64-unknown-linux-gnu",
27+
],
28+
)
29+
30+
load("@rust_deps//:defs.bzl", "pinned_rust_install")
31+
32+
pinned_rust_install()

examples/crate_universe/has_aliased_deps/BUILD.bazel

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ load(
22
"@rules_rust//rust:rust.bzl",
33
"rust_binary",
44
)
5-
load("@crate_universe_has_aliased_deps_rust_deps//:defs.bzl", "crate")
5+
load("@rust_deps//:defs.bzl", "crate")
66

77
rust_binary(
88
name = "has_aliased_deps",
Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
local_repository(
2+
name = "rules_rust",
3+
path = "../../..",
4+
)
5+
6+
local_repository(
7+
name = "examples",
8+
path = "../../../examples",
9+
)
10+
11+
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
12+
13+
http_archive(
14+
name = "openssl",
15+
strip_prefix = "openssl-OpenSSL_1_1_1d",
16+
urls = ["https://github.com/openssl/openssl/archive/OpenSSL_1_1_1d.tar.gz"],
17+
sha256 = "23011a5cc78e53d0dc98dfa608c51e72bcd350aa57df74c5d5574ba4ffb62e74",
18+
build_file = "@examples//third_party/openssl:BUILD.openssl.bazel",
19+
)
20+
21+
load("@rules_rust//rust:repositories.bzl", "rust_repositories")
22+
23+
rust_repositories()
24+
25+
load("@rules_rust//cargo:repositories.bzl", "crate_universe_deps")
26+
27+
crate_universe_deps()
28+
29+
load("@rules_rust//cargo:workspace.bzl", "crate", "crate_universe")
30+
31+
crate_universe(
32+
name = "rust_deps",
33+
cargo_toml_files = ["//:Cargo.toml"],
34+
overrides = {
35+
"openssl-sys": crate.override(
36+
extra_build_script_env_vars = {
37+
"OPENSSL_DIR": "../openssl/openssl",
38+
},
39+
extra_bazel_deps = {
40+
"cfg(all())": ["@openssl//:openssl"],
41+
},
42+
extra_build_script_bazel_data_deps = {
43+
"cfg(all())": ["@openssl//:openssl"],
44+
},
45+
),
46+
},
47+
supported_targets = [
48+
"x86_64-apple-darwin",
49+
"x86_64-unknown-linux-gnu",
50+
],
51+
)
52+
53+
load("@rust_deps//:defs.bzl", "pinned_rust_install")
54+
55+
pinned_rust_install()

examples/crate_universe/uses_proc_macro/BUILD.bazel

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ load(
33
"rust_binary",
44
)
55

6-
load("@crate_universe_uses_proc_macro_rust_deps//:defs.bzl", "crate")
6+
load("@rust_deps//:defs.bzl", "crate")
77

88
rust_binary(
99
name = "uses_proc_macro",
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
local_repository(
2+
name = "rules_rust",
3+
path = "../../..",
4+
)
5+
6+
load("@rules_rust//rust:repositories.bzl", "rust_repositories")
7+
8+
rust_repositories()
9+
10+
load("@rules_rust//cargo:repositories.bzl", "crate_universe_deps")
11+
12+
crate_universe_deps()
13+
14+
load("@rules_rust//cargo:workspace.bzl", "crate", "crate_universe")
15+
16+
crate_universe(
17+
name = "rust_deps",
18+
cargo_toml_files = ["//:Cargo.toml"],
19+
supported_targets = [
20+
"x86_64-apple-darwin",
21+
"x86_64-unknown-linux-gnu",
22+
],
23+
)
24+
25+
load("@rust_deps//:defs.bzl", "pinned_rust_install")
26+
27+
pinned_rust_install()

examples/crate_universe/uses_sys_crate/BUILD.bazel

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ load(
44
"@rules_rust//rust:rust.bzl",
55
"rust_binary",
66
)
7-
load("@crate_universe_uses_sys_crate_rust_deps//:defs.bzl", "crate")
7+
load("@rust_deps//:defs.bzl", "crate")
88

99
rust_binary(
1010
name = "uses_sys_crate",

0 commit comments

Comments
 (0)