102 lines
4.4 KiB
Plaintext
102 lines
4.4 KiB
Plaintext
From 6383a6c04ef2c915391563de62b01456a6723f87 Mon Sep 17 00:00:00 2001
|
|
From: Niels Sascha Reedijk <niels.reedijk@gmail.com>
|
|
Date: Wed, 20 Sep 2017 18:20:13 +0000
|
|
Subject: Patches for Haiku
|
|
|
|
|
|
diff --git a/mk/cfg/i686-unknown-haiku.mk b/mk/cfg/i686-unknown-haiku.mk
|
|
index cbacbff..d1bcc7a 100644
|
|
--- a/mk/cfg/i686-unknown-haiku.mk
|
|
+++ b/mk/cfg/i686-unknown-haiku.mk
|
|
@@ -9,7 +9,7 @@ CFG_STATIC_LIB_NAME_i686-unknown-haiku=lib$(1).a
|
|
CFG_LIB_GLOB_i686-unknown-haiku=lib$(1)-*.so
|
|
CFG_LIB_DSYM_GLOB_i686-unknown-haiku=lib$(1)-*.dylib.dSYM
|
|
CFG_CFLAGS_i686-unknown-haiku := -m32 $(CFLAGS)
|
|
-CFG_GCCISH_CFLAGS_i686-unknown-haiku := -Wall -Werror -g -fPIC -m32 $(CFLAGS)
|
|
+CFG_GCCISH_CFLAGS_i686-unknown-haiku := -Wall -g -fPIC -m32 $(CFLAGS)
|
|
CFG_GCCISH_CXXFLAGS_i686-unknown-haiku := -fno-rtti $(CXXFLAGS)
|
|
CFG_GCCISH_LINK_FLAGS_i686-unknown-haiku := -shared -fPIC -ldl -pthread -lrt -g -m32
|
|
CFG_GCCISH_PRE_LIB_FLAGS_i686-unknown-haiku := -Wl,-whole-archive
|
|
diff --git a/mk/cfg/x86_64-unknown-haiku.mk b/mk/cfg/x86_64-unknown-haiku.mk
|
|
index 4c2d888..476327a 100644
|
|
--- a/mk/cfg/x86_64-unknown-haiku.mk
|
|
+++ b/mk/cfg/x86_64-unknown-haiku.mk
|
|
@@ -9,7 +9,7 @@ CFG_STATIC_LIB_NAME_x86_64-unknown-haiku=lib$(1).a
|
|
CFG_LIB_GLOB_x86_64-unknown-haiku=lib$(1)-*.so
|
|
CFG_LIB_DSYM_GLOB_x86_64-unknown-haiku=lib$(1)-*.dylib.dSYM
|
|
CFG_CFLAGS_x86_64-unknown-haiku := -m64 $(CFLAGS)
|
|
-CFG_GCCISH_CFLAGS_x86_64-unknown-haiku := -Wall -Werror -g -fPIC -m64 $(CFLAGS)
|
|
+CFG_GCCISH_CFLAGS_x86_64-unknown-haiku := -Wall -g -fPIC -m64 $(CFLAGS)
|
|
CFG_GCCISH_CXXFLAGS_x86_64-unknown-haiku := -fno-rtti $(CXXFLAGS)
|
|
CFG_GCCISH_LINK_FLAGS_x86_64-unknown-haiku := -shared -fPIC -ldl -pthread -lrt -g -m64
|
|
CFG_GCCISH_PRE_LIB_FLAGS_x86_64-unknown-haiku := -Wl,-whole-archive
|
|
diff --git a/src/librustc_back/target/haiku_base.rs b/src/librustc_back/target/haiku_base.rs
|
|
index 5e319ba..7f79330 100644
|
|
--- a/src/librustc_back/target/haiku_base.rs
|
|
+++ b/src/librustc_back/target/haiku_base.rs
|
|
@@ -16,7 +16,7 @@ pub fn opts() -> TargetOptions {
|
|
linker: "cc".to_string(),
|
|
dynamic_linking: true,
|
|
executables: true,
|
|
- has_rpath: true,
|
|
+ has_rpath: false,
|
|
linker_is_gnu: true,
|
|
.. Default::default()
|
|
}
|
|
diff --git a/src/librustc_back/target/mod.rs b/src/librustc_back/target/mod.rs
|
|
index 0870780..4cabd47 100644
|
|
--- a/src/librustc_back/target/mod.rs
|
|
+++ b/src/librustc_back/target/mod.rs
|
|
@@ -166,8 +166,8 @@ supported_targets! {
|
|
("x86_64-unknown-netbsd", x86_64_unknown_netbsd),
|
|
("x86_64-rumprun-netbsd", x86_64_rumprun_netbsd),
|
|
|
|
- ("i686_unknown_haiku", i686_unknown_haiku),
|
|
- ("x86_64_unknown_haiku", x86_64_unknown_haiku),
|
|
+ ("i686-unknown-haiku", i686_unknown_haiku),
|
|
+ ("x86_64-unknown-haiku", x86_64_unknown_haiku),
|
|
|
|
("x86_64-apple-darwin", x86_64_apple_darwin),
|
|
("i686-apple-darwin", i686_apple_darwin),
|
|
diff --git a/src/librustc_data_structures/flock.rs b/src/librustc_data_structures/flock.rs
|
|
index 510c9ce..c1546e0 100644
|
|
--- a/src/librustc_data_structures/flock.rs
|
|
+++ b/src/librustc_data_structures/flock.rs
|
|
@@ -109,6 +109,7 @@ mod imp {
|
|
pub l_sysid: libc::c_int,
|
|
}
|
|
|
|
+ pub const F_RDLCK: libc::c_short = 0x0040;
|
|
pub const F_UNLCK: libc::c_short = 0x0200;
|
|
pub const F_WRLCK: libc::c_short = 0x0400;
|
|
pub const F_SETLK: libc::c_int = 0x0080;
|
|
diff --git a/src/librustdoc/lib.rs b/src/librustdoc/lib.rs
|
|
index b6dc755..88e5af9 100644
|
|
--- a/src/librustdoc/lib.rs
|
|
+++ b/src/librustdoc/lib.rs
|
|
@@ -98,7 +98,7 @@ struct Output {
|
|
}
|
|
|
|
pub fn main() {
|
|
- const STACK_SIZE: usize = 32_000_000; // 32MB
|
|
+ const STACK_SIZE: usize = 16_000_000; // 16MB on Haiku
|
|
let res = std::thread::Builder::new().stack_size(STACK_SIZE).spawn(move || {
|
|
let s = env::args().collect::<Vec<_>>();
|
|
main_args(&s)
|
|
diff --git a/src/libstd/sys/common/net.rs b/src/libstd/sys/common/net.rs
|
|
index 18280e4..609e43e 100644
|
|
--- a/src/libstd/sys/common/net.rs
|
|
+++ b/src/libstd/sys/common/net.rs
|
|
@@ -29,7 +29,7 @@ use sys::net::netc::IPV6_JOIN_GROUP as IPV6_ADD_MEMBERSHIP;
|
|
#[cfg(not(any(target_os = "dragonfly", target_os = "freebsd",
|
|
target_os = "ios", target_os = "macos",
|
|
target_os = "openbsd", target_os = "netbsd",
|
|
- target_os = "solaris", taget_os = "haiku")))]
|
|
+ target_os = "solaris", target_os = "haiku")))]
|
|
use sys::net::netc::IPV6_ADD_MEMBERSHIP;
|
|
#[cfg(any(target_os = "dragonfly", target_os = "freebsd",
|
|
target_os = "ios", target_os = "macos",
|
|
--
|
|
2.7.0
|
|
|