mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-12-18 04:12:19 +00:00
Update condition required to define Rust target toolchain in corrosion-cmake
The `CMAKE_TOOLCHAIN_FILE` variable is used for cross-compilation. Currently, the build is blocked when it's unset. Keep the default Rust target toolchain variable unless the CMake toolchain variable is set.
This commit is contained in:
parent
6858d2f4ca
commit
2fa1aebe51
@ -16,29 +16,30 @@ message(STATUS "Checking Rust toolchain for current target")
|
|||||||
|
|
||||||
# See https://doc.rust-lang.org/nightly/rustc/platform-support.html
|
# See https://doc.rust-lang.org/nightly/rustc/platform-support.html
|
||||||
|
|
||||||
if(CMAKE_TOOLCHAIN_FILE MATCHES "ppc64le")
|
if(DEFINED CMAKE_TOOLCHAIN_FILE)
|
||||||
|
if(CMAKE_TOOLCHAIN_FILE MATCHES "ppc64le")
|
||||||
set(Rust_CARGO_TARGET "powerpc64le-unknown-linux-gnu")
|
set(Rust_CARGO_TARGET "powerpc64le-unknown-linux-gnu")
|
||||||
elseif((CMAKE_TOOLCHAIN_FILE MATCHES "linux/toolchain-x86_64") AND (CMAKE_TOOLCHAIN_FILE MATCHES "musl"))
|
elseif((CMAKE_TOOLCHAIN_FILE MATCHES "linux/toolchain-x86_64") AND (CMAKE_TOOLCHAIN_FILE MATCHES "musl"))
|
||||||
set(Rust_CARGO_TARGET "x86_64-unknown-linux-musl")
|
set(Rust_CARGO_TARGET "x86_64-unknown-linux-musl")
|
||||||
elseif(CMAKE_TOOLCHAIN_FILE MATCHES "linux/toolchain-x86_64")
|
elseif(CMAKE_TOOLCHAIN_FILE MATCHES "linux/toolchain-x86_64")
|
||||||
set(Rust_CARGO_TARGET "x86_64-unknown-linux-gnu")
|
set(Rust_CARGO_TARGET "x86_64-unknown-linux-gnu")
|
||||||
elseif((CMAKE_TOOLCHAIN_FILE MATCHES "linux/toolchain-aarch64") AND (CMAKE_TOOLCHAIN_FILE MATCHES "musl"))
|
elseif((CMAKE_TOOLCHAIN_FILE MATCHES "linux/toolchain-aarch64") AND (CMAKE_TOOLCHAIN_FILE MATCHES "musl"))
|
||||||
set(Rust_CARGO_TARGET "aarch64-unknown-linux-musl")
|
set(Rust_CARGO_TARGET "aarch64-unknown-linux-musl")
|
||||||
elseif(CMAKE_TOOLCHAIN_FILE MATCHES "linux/toolchain-aarch64")
|
elseif(CMAKE_TOOLCHAIN_FILE MATCHES "linux/toolchain-aarch64")
|
||||||
set(Rust_CARGO_TARGET "aarch64-unknown-linux-gnu")
|
set(Rust_CARGO_TARGET "aarch64-unknown-linux-gnu")
|
||||||
elseif((CMAKE_TOOLCHAIN_FILE MATCHES "darwin") AND (CMAKE_TOOLCHAIN_FILE MATCHES "x86_64"))
|
elseif((CMAKE_TOOLCHAIN_FILE MATCHES "darwin") AND (CMAKE_TOOLCHAIN_FILE MATCHES "x86_64"))
|
||||||
set(Rust_CARGO_TARGET "x86_64-apple-darwin")
|
set(Rust_CARGO_TARGET "x86_64-apple-darwin")
|
||||||
elseif((CMAKE_TOOLCHAIN_FILE MATCHES "darwin") AND (CMAKE_TOOLCHAIN_FILE MATCHES "aarch64"))
|
elseif((CMAKE_TOOLCHAIN_FILE MATCHES "darwin") AND (CMAKE_TOOLCHAIN_FILE MATCHES "aarch64"))
|
||||||
set(Rust_CARGO_TARGET "aarch64-apple-darwin")
|
set(Rust_CARGO_TARGET "aarch64-apple-darwin")
|
||||||
elseif((CMAKE_TOOLCHAIN_FILE MATCHES "freebsd") AND (CMAKE_TOOLCHAIN_FILE MATCHES "x86_64"))
|
elseif((CMAKE_TOOLCHAIN_FILE MATCHES "freebsd") AND (CMAKE_TOOLCHAIN_FILE MATCHES "x86_64"))
|
||||||
set(Rust_CARGO_TARGET "x86_64-unknown-freebsd")
|
set(Rust_CARGO_TARGET "x86_64-unknown-freebsd")
|
||||||
elseif(CMAKE_TOOLCHAIN_FILE MATCHES "linux/toolchain-riscv64")
|
elseif(CMAKE_TOOLCHAIN_FILE MATCHES "linux/toolchain-riscv64")
|
||||||
set(Rust_CARGO_TARGET "riscv64gc-unknown-linux-gnu")
|
set(Rust_CARGO_TARGET "riscv64gc-unknown-linux-gnu")
|
||||||
else()
|
else()
|
||||||
message(FATAL_ERROR "Unsupported rust target")
|
message(FATAL_ERROR "Unsupported rust target")
|
||||||
endif()
|
endif()
|
||||||
|
message(STATUS "Switched Rust target to ${Rust_CARGO_TARGET}")
|
||||||
message(STATUS "Switched Rust target to ${Rust_CARGO_TARGET}")
|
endif ()
|
||||||
|
|
||||||
# FindRust.cmake
|
# FindRust.cmake
|
||||||
list(APPEND CMAKE_MODULE_PATH "${ClickHouse_SOURCE_DIR}/contrib/corrosion/cmake")
|
list(APPEND CMAKE_MODULE_PATH "${ClickHouse_SOURCE_DIR}/contrib/corrosion/cmake")
|
||||||
|
Loading…
Reference in New Issue
Block a user