// Copyright 2023 The Android Open Source Project // // 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. rust_defaults { name: "libinput_rust_defaults", crate_name: "input", srcs: ["lib.rs"], host_supported: true, rustlibs: [ "libbitflags", "libcxx", "libinput_bindgen", "liblogger", "liblog_rust", "inputconstants-rust", ], whole_static_libs: [ "libinput_from_rust_to_cpp", ], shared_libs: [ "libbase", ], } rust_library { name: "libinput_rust", defaults: ["libinput_rust_defaults"], } rust_ffi_static { name: "libinput_rust_ffi", defaults: ["libinput_rust_defaults"], } rust_test { name: "libinput_rust_test", defaults: ["libinput_rust_defaults"], test_options: { unit_test: true, }, test_suites: ["device_tests"], sanitize: { hwaddress: true, }, } genrule { name: "libinput_cxx_bridge_code", tools: ["cxxbridge"], cmd: "$(location cxxbridge) $(in) >> $(out)", srcs: ["lib.rs"], out: ["input_cxx_bridge_generated.cpp"], } genrule { name: "libinput_cxx_bridge_header", tools: ["cxxbridge"], cmd: "$(location cxxbridge) $(in) --header >> $(out)", srcs: ["lib.rs"], out: ["input_cxx_bridge.rs.h"], }