From b67a203fdaeba70372dea8a20bc9db0cff4ea010 Mon Sep 17 00:00:00 2001 From: Kubat <mael.martin31@gmail.com> Date: Thu, 29 Sep 2022 09:38:19 +0200 Subject: [PATCH] RUST: Place the target folder of all rust sub-projects in the rust folder to share compilation artifacts --- CMakeLists.txt | 17 +++++++++++++++-- src/rust/.cargo/config.toml | 2 ++ src/rust/liblektor-rs/.cargo/config.toml | 2 -- 3 files changed, 17 insertions(+), 4 deletions(-) create mode 100644 src/rust/.cargo/config.toml delete mode 100644 src/rust/liblektor-rs/.cargo/config.toml diff --git a/CMakeLists.txt b/CMakeLists.txt index a2293516..af0486b9 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -355,6 +355,19 @@ set_property(TARGET luka PROPERTY CXX_STANDARD 20) set_directory_properties(PROPERTIES EP_PREFIX ${CMAKE_BINARY_DIR}/Rust) +ExternalProject_Add(amadeus_rs + DOWNLOAD_COMMAND "" + CONFIGURE_COMMAND "" + SOURCE_DIR "${CMAKE_SOURCE_DIR}/src/rust/amadeus-rs" + BUILD_COMMAND "${CARGO}" build + COMMAND "${CARGO}" build + INSTALL_COMMAND "" + BUILD_BYPRODUCTS "${CMAKE_SOURCE_DIR}/src/rust/target/debug/amadeus" + BUILD_ALWAYS 1 + BUILD_IN_SOURCE 1 + LOG_BUILD 1 +) + ExternalProject_Add(liblektor_rs DOWNLOAD_COMMAND "" CONFIGURE_COMMAND "" @@ -362,7 +375,7 @@ ExternalProject_Add(liblektor_rs BUILD_COMMAND "${CARGO}" build COMMAND "${CARGO}" build INSTALL_COMMAND "" - BUILD_BYPRODUCTS "${CMAKE_SOURCE_DIR}/src/rust/liblektor-rs/target/debug/liblektor_rs.a" + BUILD_BYPRODUCTS "${CMAKE_SOURCE_DIR}/src/rust/target/debug/liblektor_rs.a" BUILD_ALWAYS 1 BUILD_IN_SOURCE 1 LOG_BUILD 1 @@ -372,7 +385,7 @@ add_dependencies(lektord liblektor_rs) target_link_libraries(lektord PRIVATE - "${CMAKE_SOURCE_DIR}/src/rust/liblektor-rs/target/debug/liblektor_rs.a" + "${CMAKE_SOURCE_DIR}/src/rust/target/debug/liblektor_rs.a" Qt${QT_VERSION_MAJOR}::Widgets ) diff --git a/src/rust/.cargo/config.toml b/src/rust/.cargo/config.toml new file mode 100644 index 00000000..a6b014e9 --- /dev/null +++ b/src/rust/.cargo/config.toml @@ -0,0 +1,2 @@ +[build] +target-dir = "target" diff --git a/src/rust/liblektor-rs/.cargo/config.toml b/src/rust/liblektor-rs/.cargo/config.toml deleted file mode 100644 index 9823a4d5..00000000 --- a/src/rust/liblektor-rs/.cargo/config.toml +++ /dev/null @@ -1,2 +0,0 @@ -[build] -target-dir = "target" \ No newline at end of file -- GitLab