xref: /aosp_15_r20/tools/netsim/rust/proto/CMakeLists.txt (revision cf78ab8cffb8fc9207af348f23af247fb04370a6)
1*cf78ab8cSAndroid Build Coastguard Workermessage(STATUS "Adding rust ${CMAKE_CURRENT_LIST_DIR}/Cargo.toml")
2*cf78ab8cSAndroid Build Coastguard Worker
3*cf78ab8cSAndroid Build Coastguard Workercorrosion_set_env_vars(netsim-proto RUST_BACKTRACE=full)
4*cf78ab8cSAndroid Build Coastguard Worker
5*cf78ab8cSAndroid Build Coastguard Workercmake_path(APPEND PROTOBUF_INCLUDE_DIR "${AOSP_ROOT}" "external" "protobuf"
6*cf78ab8cSAndroid Build Coastguard Worker           "src")
7*cf78ab8cSAndroid Build Coastguard Workercmake_path(CONVERT ${PROTOBUF_INCLUDE_DIR} TO_NATIVE_PATH_LIST
8*cf78ab8cSAndroid Build Coastguard Worker           NATIVE_PROTOBUF_INCLUDE_DIR)
9*cf78ab8cSAndroid Build Coastguard Worker
10*cf78ab8cSAndroid Build Coastguard Workercorrosion_set_env_vars(netsim-proto
11*cf78ab8cSAndroid Build Coastguard Worker                       PROTOBUF_INCLUDE_DIR=${NATIVE_PROTOBUF_INCLUDE_DIR})
12*cf78ab8cSAndroid Build Coastguard Worker
13*cf78ab8cSAndroid Build Coastguard Worker# Set CMake executable filepath because it's not found by cmake Rust crate. From
14*cf78ab8cSAndroid Build Coastguard Worker# https://github.com/rust-lang/cmake-rs, the CMake executable is assumed to be
15*cf78ab8cSAndroid Build Coastguard Worker# cmake unless the CMAKE environmental variable is set.
16*cf78ab8cSAndroid Build Coastguard Worker
17*cf78ab8cSAndroid Build Coastguard Workercorrosion_set_env_vars(netsim-proto CMAKE=${CMAKE_COMMAND})
18*cf78ab8cSAndroid Build Coastguard Worker
19*cf78ab8cSAndroid Build Coastguard Workerif(LINUX)
20*cf78ab8cSAndroid Build Coastguard Worker  # b/260271048
21*cf78ab8cSAndroid Build Coastguard Worker  corrosion_add_target_rustflags(
22*cf78ab8cSAndroid Build Coastguard Worker    netsim-proto "-Clink-args=-Wl,-rpath,${CMAKE_LIBRARY_OUTPUT_DIRECTORY}")
23*cf78ab8cSAndroid Build Coastguard Workerendif()
24