diff --git a/BUILD.gn b/BUILD.gn index c658943737..6aec7e536c 100644 --- a/BUILD.gn +++ b/BUILD.gn @@ -14,28 +14,20 @@ config("deno_config") { rust_executable("deno") { source_root = "src/main.rs" - extern = [ ":libc" ] + extern = [ "$rust_build:libc" ] deps = [ ":libdeno", ] } -rust_component("libc") { - source_root = "third_party/rust_crates/libc/src/lib.rs" - cfg = [ - "feature=\"default\"", - "feature=\"use_std\"", - ] -} - rust_component("handlers") { source_root = "src/handlers.rs" - extern = [ ":libc" ] + extern = [ "$rust_build:libc" ] } rust_test("handlers_test") { source_root = "src/handlers.rs" - extern = [ ":libc" ] + extern = [ "$rust_build:libc" ] } executable("deno_cc") { diff --git a/build_extra/rust/BUILD.gn b/build_extra/rust/BUILD.gn index e5a4fec16f..0889ad8403 100644 --- a/build_extra/rust/BUILD.gn +++ b/build_extra/rust/BUILD.gn @@ -13,3 +13,11 @@ rust_component("stdlib") { libs = [ "userenv.lib" ] } } + +rust_component("libc") { + source_root = "//third_party/rust_crates/libc/src/lib.rs" + cfg = [ + "feature=\"default\"", + "feature=\"use_std\"", + ] +} diff --git a/build_extra/rust/rust.gni b/build_extra/rust/rust.gni index faa97205b9..4c6b4ddd61 100644 --- a/build_extra/rust/rust.gni +++ b/build_extra/rust/rust.gni @@ -1,5 +1,10 @@ stdlib_label = "//build_extra/rust:stdlib" +declare_args() { + # Absolute path of rust build files. + rust_build = "//build_extra/rust/" +} + template("run_rustc") { action(target_name) { assert(defined(invoker.source_root), "Must specify source_root")