bootstrap: Define CMake platform if DragonFly.
CMAKE_SYSTEM_NAME is defined on a cross build if the target is recognized. Without this explicit definition cmake will assume that we're building for the host platform which can bring in unwanted compiler and linker flags. Also, add a warning on cross builds with unknown target to aid in cross builds for future platforms.
This commit is contained in:
parent
0308df23e6
commit
a0538db826
@ -1,4 +1,4 @@
|
|||||||
Change this file to make users of the `download-ci-llvm` configuration download
|
Change this file to make users of the `download-ci-llvm` configuration download
|
||||||
a new version of LLVM from CI, even if the LLVM submodule hasn’t changed.
|
a new version of LLVM from CI, even if the LLVM submodule hasn’t changed.
|
||||||
|
|
||||||
Last change is for: https://github.com/rust-lang/rust/pull/112931
|
Last change is for: https://github.com/rust-lang/rust/pull/113996
|
||||||
|
@ -559,6 +559,8 @@ fn configure_cmake(
|
|||||||
|
|
||||||
if target.contains("netbsd") {
|
if target.contains("netbsd") {
|
||||||
cfg.define("CMAKE_SYSTEM_NAME", "NetBSD");
|
cfg.define("CMAKE_SYSTEM_NAME", "NetBSD");
|
||||||
|
} else if target.contains("dragonfly") {
|
||||||
|
cfg.define("CMAKE_SYSTEM_NAME", "DragonFly");
|
||||||
} else if target.contains("freebsd") {
|
} else if target.contains("freebsd") {
|
||||||
cfg.define("CMAKE_SYSTEM_NAME", "FreeBSD");
|
cfg.define("CMAKE_SYSTEM_NAME", "FreeBSD");
|
||||||
} else if target.contains("windows") {
|
} else if target.contains("windows") {
|
||||||
@ -569,7 +571,12 @@ fn configure_cmake(
|
|||||||
cfg.define("CMAKE_SYSTEM_NAME", "SunOS");
|
cfg.define("CMAKE_SYSTEM_NAME", "SunOS");
|
||||||
} else if target.contains("linux") {
|
} else if target.contains("linux") {
|
||||||
cfg.define("CMAKE_SYSTEM_NAME", "Linux");
|
cfg.define("CMAKE_SYSTEM_NAME", "Linux");
|
||||||
|
} else {
|
||||||
|
builder.info(
|
||||||
|
"could not determine CMAKE_SYSTEM_NAME from the target `{target}`, build may fail",
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
// When cross-compiling we should also set CMAKE_SYSTEM_VERSION, but in
|
// When cross-compiling we should also set CMAKE_SYSTEM_VERSION, but in
|
||||||
// that case like CMake we cannot easily determine system version either.
|
// that case like CMake we cannot easily determine system version either.
|
||||||
//
|
//
|
||||||
|
Loading…
Reference in New Issue
Block a user