diff --git a/BUILD.gn b/BUILD.gn new file mode 100644 index 0000000000000000000000000000000000000000..8f3b110b1fac9b22b6dba44b84971f2fa2525911 --- /dev/null +++ b/BUILD.gn @@ -0,0 +1,74 @@ +# Copyright (c) 2023 Huawei Device Co., Ltd. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import("//build/ohos.gni") + +ohos_cargo_crate("lib") { + crate_name = "clap" + crate_type = "rlib" + crate_root = "src/lib.rs" + + sources = [ "src/lib.rs" ] + edition = "2021" + cargo_pkg_version = "4.1.4" + cargo_pkg_name = "clap" + cargo_pkg_description = "A simple to use, efficient, and full-featured Command Line Argument Parser" + deps = [ + "//third_party/rust/crates/bitflags:lib", + "//third_party/rust/crates/clap/clap_derive:lib(${host_toolchain})", + "//third_party/rust/crates/clap/clap_lex:lib", + "//third_party/rust/crates/is-terminal:lib", + "//third_party/rust/crates/once_cell:lib", + "//third_party/rust/crates/strsim-rs:lib", + "//third_party/rust/crates/termcolor:lib", + ] + features = [ + "color", + "error-context", + "help", + "std", + "suggestions", + "usage", + "derive", + ] +} + +ohos_cargo_crate("stdio_fixture") { + crate_type = "bin" + crate_root = "src/bin/stdio-fixture.rs" + + sources = [ "src/bin/stdio-fixture.rs" ] + edition = "2021" + cargo_pkg_version = "4.1.4" + cargo_pkg_name = "clap" + cargo_pkg_description = "A simple to use, efficient, and full-featured Command Line Argument Parser" + deps = [ + "//third_party/rust/crates/bitflags:lib", + "//third_party/rust/crates/clap:lib", + "//third_party/rust/crates/clap/clap_derive:lib(${host_toolchain})", + "//third_party/rust/crates/clap/clap_lex:lib", + "//third_party/rust/crates/is-terminal:lib", + "//third_party/rust/crates/once_cell:lib", + "//third_party/rust/crates/strsim-rs:lib", + "//third_party/rust/crates/termcolor:lib", + ] + features = [ + "color", + "error-context", + "help", + "std", + "suggestions", + "usage", + "derive", + ] +} diff --git a/clap_derive/BUILD.gn b/clap_derive/BUILD.gn new file mode 100644 index 0000000000000000000000000000000000000000..f9328ca7d307fd33d43008f417b8e52a1c620cac --- /dev/null +++ b/clap_derive/BUILD.gn @@ -0,0 +1,33 @@ +# Copyright (c) 2023 Huawei Device Co., Ltd. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import("//build/ohos.gni") + +ohos_cargo_crate("lib") { + crate_name = "clap_derive" + crate_type = "proc-macro" + crate_root = "src/lib.rs" + + sources = ["src/lib.rs"] + edition = "2021" + cargo_pkg_version = "4.1.0" + cargo_pkg_name = "clap_derive" + cargo_pkg_description = "Parse command line argument by defining a struct, derive crate." + deps = [ + "//third_party/rust/crates/heck:lib", + "//third_party/rust/crates/proc-macro2:lib", + "//third_party/rust/crates/proc-macro-error:lib", + "//third_party/rust/crates/quote:lib", + "//third_party/rust/crates/syn:lib", + ] +} diff --git a/clap_lex/BUILD.gn b/clap_lex/BUILD.gn new file mode 100644 index 0000000000000000000000000000000000000000..760036b03f7659c360e8b644d80f8d187cbd40da --- /dev/null +++ b/clap_lex/BUILD.gn @@ -0,0 +1,27 @@ +# Copyright (c) 2023 Huawei Device Co., Ltd. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import("//build/ohos.gni") + +ohos_cargo_crate("lib") { + crate_name = "clap_lex" + crate_type = "rlib" + crate_root = "src/lib.rs" + + sources = ["src/lib.rs"] + edition = "2021" + cargo_pkg_version = "0.3.1" + cargo_pkg_name = "clap_lex" + cargo_pkg_description = "Minimal, flexible command line parser" + deps = ["//third_party/rust/crates/os_str_bytes:lib"] +}