Update to rust-1.0.0beta2, from maintainer Sébastien Marie

Ensure we link against the correct libestdc++ version.
Remove a patch merged upstream.
This commit is contained in:
landry 2015-04-18 12:19:09 +00:00
parent be3b4cc4dd
commit 073b1a542b
4 changed files with 138 additions and 2122 deletions

View File

@ -1,4 +1,4 @@
# $OpenBSD: Makefile,v 1.2 2015/04/08 13:02:57 sthen Exp $
# $OpenBSD: Makefile,v 1.3 2015/04/18 12:19:09 landry Exp $
# snapshots are only available for amd64, for now
ONLY_FOR_ARCHS = amd64
@ -7,8 +7,8 @@ PKG_ARCH-doc = *
COMMENT-main = compiler for Rust Language
COMMENT-doc = html documentation for rustc
V = 1.0.0beta
DISTNAME = rustc-1.0.0-beta-src
V = 1.0.0beta2
DISTNAME = rustc-1.0.0-beta.2-src
PKGNAME = rust-${V}
PKGNAME-main = rust-${V}
@ -29,7 +29,6 @@ MAINTAINER = Sebastien Marie <semarie-openbsd@latrappe.fr>
# with portions covered by various BSD-like licenses
PERMIT_PACKAGE_CDROM = Yes
# "make port-lib-depends-check" can help
WANTLIB-main = ${WANTLIB} c m pthread
WANTLIB-doc =
@ -59,16 +58,18 @@ MODULES += gcc4 \
MODGCC4_LANGS = c++
MODGCC4_ARCHS = *
#TEST_DEPENDS = ???
# need to be keep in sync
LIBESTDC_VERSION = 16.0
# note: VERBOSE permit to unhide Makefile processing
# RUSTFLAGS extra flags passed to rust
# -L modgcc-libs : disambiguate libestdc++.so
# -Z print-link-args : unhide link call
# RUSTFLAGS_STAGE0 extra flags passed to stage0
# --sysroot force sysroot (due to limitation of us bootstrapper)
# RUST_LOG helper
MAKE_ENV = VERBOSE=1 \
RUSTFLAGS="-Z print-link-args" \
RUSTFLAGS="-L ${WRKDIR}/modgcc-libs -Z print-link-args" \
RUSTFLAGS_STAGE0="--sysroot ${WRKBUILD}/${TRIPLE_ARCH}/stage0" \
RUST_LOG="${RUST_LOG}"
@ -104,6 +105,9 @@ pre-configure:
exit 1; fi
# - remove autodetected programs
# - copy libestdc++ from MODGCC4 to specific directory
# in order to disambiguate version linking (having multiple libestdc++
# at build time)
# - copy snapshot in stage0 (avoid downloading a snapshot)
post-configure:
.for _v in CFG_CURLORWGET CFG_GIT CFG_CLANG CFG_VALGRIND CFG_PERF CFG_ISCC \
@ -111,6 +115,8 @@ post-configure:
CFG_GDB_VERSION CFG_ADB
perl -pi -e 's/^${_v} .*/${_v} := /' ${WRKBUILD}/config.mk
.endfor
mkdir ${WRKDIR}/modgcc-libs
cp ${LOCALBASE}/lib/libestdc++.so.${LIBESTDC_VERSION} ${WRKDIR}/modgcc-libs
cp ${WRKDIR}/rust-stage0/bin/rustc \
${WRKBUILD}/${TRIPLE_ARCH}/stage0/bin
cp ${WRKDIR}/rust-stage0/lib/lib*.so* \

View File

@ -1,4 +1,4 @@
SHA256 (rust/rust-stage0-2015-03-27-5520801-openbsd-x86_64-afab969e747a3fc72c357155ca82891d2b485b36.tar.bz2) = R00kMjGzuiNJRuckAKOtH51KtwrYle2npQkV12GGYi4=
SHA256 (rust/rustc-1.0.0-beta-src.tar.gz) = lCSOMEh3I6xvbDSg21ohCFwLEzjmoyvRKxWeHSzYBFE=
SHA256 (rust/rustc-1.0.0-beta.2-src.tar.gz) = lp8gv+xYhFavirgcmwDvRt8HW/msmVXkKoex85y5l3E=
SIZE (rust/rust-stage0-2015-03-27-5520801-openbsd-x86_64-afab969e747a3fc72c357155ca82891d2b485b36.tar.bz2) = 23974052
SIZE (rust/rustc-1.0.0-beta-src.tar.gz) = 22294998
SIZE (rust/rustc-1.0.0-beta.2-src.tar.gz) = 22115249

View File

@ -1,133 +0,0 @@
$OpenBSD: patch-src_liblibc_lib_rs,v 1.1.1.1 2015/04/06 16:01:05 landry Exp $
https://github.com/rust-lang/rust/pull/23967
--- src/liblibc/lib.rs.orig Sat Apr 4 12:09:24 2015
+++ src/liblibc/lib.rs Sat Apr 4 12:09:28 2015
@@ -863,13 +863,16 @@ pub mod types {
pub sa_data: [u8; 14],
}
#[repr(C)]
- #[derive(Copy, Clone)] pub struct sockaddr_storage {
+ #[derive(Copy)] pub struct sockaddr_storage {
pub ss_len: u8,
pub ss_family: sa_family_t,
pub __ss_pad1: [u8; 6],
pub __ss_align: i64,
pub __ss_pad2: [u8; 112],
}
+ impl ::core::clone::Clone for sockaddr_storage {
+ fn clone(&self) -> sockaddr_storage { *self }
+ }
#[repr(C)]
#[derive(Copy, Clone)] pub struct sockaddr_in {
pub sin_len: u8,
@@ -917,11 +920,14 @@ pub mod types {
pub ai_next: *mut addrinfo,
}
#[repr(C)]
- #[derive(Copy, Clone)] pub struct sockaddr_un {
+ #[derive(Copy)] pub struct sockaddr_un {
pub sun_len: u8,
pub sun_family: sa_family_t,
pub sun_path: [c_char; 104]
}
+ impl ::core::clone::Clone for sockaddr_un {
+ fn clone(&self) -> sockaddr_un { *self }
+ }
#[repr(C)]
#[derive(Copy, Clone)] pub struct ifaddrs {
pub ifa_next: *mut ifaddrs,
@@ -1125,13 +1131,16 @@ pub mod types {
pub sa_data: [u8; 14],
}
#[repr(C)]
- #[derive(Copy, Clone)] pub struct sockaddr_storage {
+ #[derive(Copy)] pub struct sockaddr_storage {
pub ss_len: u8,
pub ss_family: sa_family_t,
pub __ss_pad1: [u8; 6],
pub __ss_align: i64,
pub __ss_pad2: [u8; 112],
}
+ impl ::core::clone::Clone for sockaddr_storage {
+ fn clone(&self) -> sockaddr_storage { *self }
+ }
#[repr(C)]
#[derive(Copy, Clone)] pub struct sockaddr_in {
pub sin_len: u8,
@@ -1179,11 +1188,14 @@ pub mod types {
pub ai_next: *mut addrinfo,
}
#[repr(C)]
- #[derive(Copy, Clone)] pub struct sockaddr_un {
+ #[derive(Copy)] pub struct sockaddr_un {
pub sun_len: u8,
pub sun_family: sa_family_t,
pub sun_path: [c_char; 104]
}
+ impl ::core::clone::Clone for sockaddr_un {
+ fn clone(&self) -> sockaddr_un { *self }
+ }
#[repr(C)]
#[derive(Copy, Clone)] pub struct ifaddrs {
pub ifa_next: *mut ifaddrs,
@@ -1405,13 +1417,16 @@ pub mod types {
pub sa_data: [u8; 14],
}
#[repr(C)]
- #[derive(Copy, Clone)] pub struct sockaddr_storage {
+ #[derive(Copy)] pub struct sockaddr_storage {
pub ss_len: u8,
pub ss_family: sa_family_t,
pub __ss_pad1: [u8; 6],
pub __ss_pad2: i64,
pub __ss_pad3: [u8; 240],
}
+ impl ::core::clone::Clone for sockaddr_storage {
+ fn clone(&self) -> sockaddr_storage { *self }
+ }
#[repr(C)]
#[derive(Copy, Clone)] pub struct sockaddr_in {
pub sin_len: u8,
@@ -1459,11 +1474,14 @@ pub mod types {
pub ai_next: *mut addrinfo,
}
#[repr(C)]
- #[derive(Copy, Clone)] pub struct sockaddr_un {
+ #[derive(Copy)] pub struct sockaddr_un {
pub sun_len: u8,
pub sun_family: sa_family_t,
pub sun_path: [c_char; 104]
}
+ impl ::core::clone::Clone for sockaddr_un {
+ fn clone(&self) -> sockaddr_un { *self }
+ }
#[repr(C)]
#[derive(Copy, Clone)] pub struct ifaddrs {
pub ifa_next: *mut ifaddrs,
@@ -3116,7 +3134,7 @@ pub mod consts {
pub const MAP_FIXED : c_int = 0x0010;
pub const MAP_ANON : c_int = 0x0800;
- pub const MAP_FAILED : *mut c_void = -1 as *mut c_void;
+ pub const MAP_FAILED : *mut c_void = !0 as *mut c_void;
pub const MCL_CURRENT : c_int = 0x0001;
pub const MCL_FUTURE : c_int = 0x0002;
@@ -3852,7 +3870,7 @@ pub mod consts {
pub const MAP_FIXED : c_int = 0x0010;
pub const MAP_ANON : c_int = 0x1000;
- pub const MAP_FAILED : *mut c_void = -1 as *mut c_void;
+ pub const MAP_FAILED : *mut c_void = !0 as *mut c_void;
pub const MCL_CURRENT : c_int = 0x0001;
pub const MCL_FUTURE : c_int = 0x0002;
@@ -4306,7 +4324,7 @@ pub mod consts {
pub const MAP_FIXED : c_int = 0x0010;
pub const MAP_ANON : c_int = 0x1000;
- pub const MAP_FAILED : *mut c_void = -1 as *mut c_void;
+ pub const MAP_FAILED : *mut c_void = !0 as *mut c_void;
pub const MCL_CURRENT : c_int = 0x0001;
pub const MCL_FUTURE : c_int = 0x0002;

File diff suppressed because it is too large Load Diff