Hi,
As landry@ needs some update for lang/rust (it is a dependency of
firefox trunk), I post now my current state of the port.
First, it is functional (even if a bit slow compared to 1.14.0), and is
commitable. I ask for review and commit.
My current working area is the build time due to the switch to embedded
llvm version (build time switchs from 2h to 9h, and just the build time
for compiling llvm doesn't explain the difference). The in-tree version
suffers the same problem.
About the update from 1.14.0 to 1.15.1, the port changes a lot.
(1) Rust devs have deprecated the current configure + make way to build
(Makefile are deleted in trunk, the forecoming 1.17.0 version) to switch
to rustbuild system: a custom orchestor for building rustc. And as
reinventing the wheel isn't enough, the tool is written in Rust language
and requires Cargo to build.
It makes the lang/rust port to requires a *two* binaries bootstrap (one
for rustc and another for cargo). I reused the cargo bootstrap used for
devel/cargo for this purpose.
So, configure + build + install + test target are customs:
- for configure, I generated a config.toml file reflecting build
configuration
- for build, I just call the python stuff that build the builder and
launch it for generating dist (tgz ready to install)
- for install, I used the generated tgz to install in PREFIX. I added
some cleanup, and I replaced duplicated libraries by symlink.
(2) The documentation doesn't include anymore rust-libc documentation.
It makes the port to no need anymore b32/b64 PFRAG.
(3) The libraries produced by rustc don't have any more a name based on
rustc version (the RUST_HASH variable in the port)... it is based on own
rust cooking. So each lib has its own hash. And to help the maintainer
it is arch dependant... So I added per arch PFRAG for libraries. The
PLIST will changes for each release.
(4) About LLVM, I tried to minimize the diff between devel/llvm-3.9.1
and embedded version. Some patches on src/llvm are requires, others no
strictly, and are part of my work to understand the difference of build
time. All were present in devel/llvm-3.9.1 tree. Same thing for build
configuration (src/bootstrap/native.rs).
Thanks.
--
Sebastien Marie
Index: Makefile
===================================================================
RCS file: /cvs/ports/lang/rust/Makefile,v
retrieving revision 1.35
diff -u -p -r1.35 Makefile
--- Makefile 6 Jan 2017 17:32:22 -0000 1.35
+++ Makefile 12 Feb 2017 05:49:24 -0000
@@ -6,15 +6,18 @@ ONLY_FOR_ARCHS = amd64 i386
COMMENT-main = compiler for Rust Language
COMMENT-doc = html documentation for rustc
-V = 1.14.0
-BV-amd64 = 1.14.0-20161221
-BV-i386 = 1.14.0-20161221
+V = 1.15.1
DISTNAME = rustc-${V}-src
-#RUST_HASH != echo -n ${V} | md5 | cut -c1-8
-RUST_HASH = f5a209a9
-SUBST_VARS += RUST_HASH
-BV = ${BV-${MACHINE_ARCH}}
+# rustc bootstrap version
+RBV-amd64 = 1.15.0-20170203
+RBV-i386 = 1.15.0-20170204
+RBV = ${RBV-${MACHINE_ARCH}}
+
+# cargo bootstrap version
+CBV-amd64 = 0.15.0-20161230
+CBV-i386 = 0.15.0-20161230
+CBV = ${CBV-${MACHINE_ARCH}}
PKGNAME = rust-${V}
PKGNAME-main = rust-${V}
@@ -39,43 +42,40 @@ MASTER_SITES0 = http://kapouay.odns.fr/
DIST_SUBDIR = rust
DISTFILES = ${DISTNAME}${EXTRACT_SUFX} \
- ${BOOTSTRAP}
+ ${RBOOTSTRAP} \
+ ${CBOOTSTRAP}
-BOOTSTRAP = ${BOOTSTRAP-${MACHINE_ARCH}}
-.for m in i386 amd64
-BOOTSTRAP-$m = rustc-bootstrap-${m}-${BV-$m}.tar.gz:0
-SUPDISTFILES += ${BOOTSTRAP-$m}
+RBOOTSTRAP = ${RBOOTSTRAP-${MACHINE_ARCH}}
+CBOOTSTRAP = ${CBOOTSTRAP-${MACHINE_ARCH}}
+.for m in ${ONLY_FOR_ARCHS}
+RBOOTSTRAP-$m = rustc-bootstrap-${m}-${RBV-$m}.tar.gz:0
+CBOOTSTRAP-$m = ../cargo/cargo-bootstrap-${m}-${CBV-$m}.tar.gz:0
+SUPDISTFILES += ${RBOOTSTRAP-$m} \
+ ${CBOOTSTRAP-$m}
.endfor
-WRKDIST = ${WRKDIR}/${DISTNAME:S/-src//}
-
-# MACHINE_ARCH to TRIPLE_ARCH conversion
+# per MACHINE_ARCH configuration
.if "${MACHINE_ARCH}" == "amd64"
TRIPLE_ARCH = x86_64-unknown-openbsd
+PKG_ARGS += -Damd64=1 -Di386=0
.elif "${MACHINE_ARCH}" == "i386"
TRIPLE_ARCH = i686-unknown-openbsd
-.endif
-SUBST_VARS += TRIPLE_ARCH
-
-# PFRAG
-.if ${MACHINE_ARCH} == amd64
-PKG_ARGS += -Db64=1
-.else
-PKG_ARGS += -Db64=0
-.endif
-
-.if ${MACHINE_ARCH} == i386
-PKG_ARGS += -Db32=1
-.else
-PKG_ARGS += -Db32=0
+PKG_ARGS += -Damd64=0 -Di386=1
.endif
MODULES += gcc4 \
lang/python
-BUILD_DEPENDS += devel/cmake \
- devel/llvm
+BUILD_DEPENDS += devel/cmake
MODPY_RUNDEP = No
+# use embedded or ports version of LLVM
+PORTS_LLVM ?= No
+.if ${PORTS_LLVM:L:Myes}
+BUILD_DEPENDS += devel/llvm<4
+.else
+BUILD_DEPENDS += devel/ninja
+.endif
+
# rustllvm need c++11
MODGCC4_LANGS = c++
MODGCC4_ARCHS = *
@@ -83,43 +83,19 @@ MODGCC4_ARCHS = *
# need to be keep in sync
LIBESTDC_VERSION = 17.0
-# note: VERBOSE permit to unhide Makefile processing
-# RUSTFLAGS extra flags passed to rust
+# note: RUSTFLAGS extra flags passed to rust
# -L modgcc-libs : disambiguate libestdc++.so
-# RUST_LOG helper
-MAKE_ENV = VERBOSE=1 \
- RUSTFLAGS="-L ${WRKDIR}/modgcc-libs" \
- RUST_LOG="${RUST_LOG}"
-
+MAKE_ENV = RUSTFLAGS="-L ${WRKDIR}/modgcc-libs"
# build/configuration variables
-#
SEPARATE_BUILD = Yes
USE_GMAKE = Yes
-CONFIGURE_STYLE = simple
-CONFIGURE_ARGS += --disable-valgrind-rpass \
- --disable-codegen-tests \
- --release-channel=stable \
-
--local-rust-root="${WRKDIR}/rustc-bootstrap-${MACHINE_ARCH}-${BV}" \
- --llvm-root="${LOCALBASE}" \
- --prefix="${LOCALBASE}" \
- --mandir="${LOCALBASE}/man"
-
-# VERSION and BOOTSTRAP are same major version
-.if ${V:C/\.[0-9]+$//} == ${BV:C/\.[0-9]+-[0-9]+$//}
-CONFIGURE_ARGS += --enable-local-rebuild
-.endif
-
-CONFIGURE_ENV += ac_cv_header_execinfo_h=no
-
# need for libbacktrace
USE_LIBTOOL = gnu
-ALL_TARGET += rustc-stage2 docs
-TEST_TARGET = check
-TEST_ENV += ALLOW_NONZERO_RLIMIT_CORE=1
-TEST_DEPENDS += devel/git
+TEST_DEPENDS += ${FULLPKGNAME-main}:${BUILD_PKGPATH} \
+ devel/git
# - check datasize limit before configuring (and building)
pre-configure:
@@ -127,40 +103,93 @@ pre-configure:
echo datasize limit is too low - amd64 build takes approx
1.5GB; \
exit 1; fi
-# - remove autodetected programs
+# - generate config.toml file
# - copy libestdc++ from MODGCC4 to specific directory
# in order to disambiguate version linking (having multiple libestdc++
# at build time)
-# - copy bootstrap in stage0 (permit copying bootstrapped libs in stage0)
-post-configure:
-.for _v in CFG_CURL CFG_GIT CFG_CLANG CFG_VALGRIND CFG_PERF CFG_ISCC \
- CFG_JAVAC CFG_ANTLR4 CFG_BISON CFG_PANDOC CFG_GDB CFG_LLDB \
- CFG_GDB_VERSION CFG_ADB
- perl -pi -e 's/^${_v} .*/${_v} := /' ${WRKBUILD}/config.mk
-.endfor
+do-configure:
+ echo '[build]' >${WRKBUILD}/config.toml
+ echo 'rustc =
"${WRKDIR}/rustc-bootstrap-${MACHINE_ARCH}-${RBV}/bin/rustc"' \
+ >>${WRKBUILD}/config.toml
+ echo 'cargo = "${WRKDIR}/cargo-bootstrap-${MACHINE_ARCH}-${CBV}/cargo"'
\
+ >>${WRKBUILD}/config.toml
+ echo 'prefix = "${LOCALBASE}"' >>${WRKBUILD}/config.toml
+ echo 'vendor = true' >>${WRKBUILD}/config.toml
+
+ echo '[rust]' >>${WRKBUILD}/config.toml
+ echo 'channel = "stable"' >>${WRKBUILD}/config.toml
+ echo 'codegen-tests = false' >>${WRKBUILD}/config.toml
+
+.if ${PORTS_LLVM:L:Myes}
+ echo '[target.${TRIPLE_ARCH}]' >>${WRKBUILD}/config.toml
+ echo 'llvm-config = "${LOCALBASE}/bin/llvm-config"' \
+ >>${WRKBUILD}/config.toml
+.else
+ echo '[llvm]' >>${WRKBUILD}/config.toml
+ echo 'static-libstdcpp = false' >>${WRKBUILD}/config.toml
+ echo 'ninja = true' >>${WRKBUILD}/config.toml
+.endif
+
rm -rf ${WRKDIR}/modgcc-libs
- mkdir ${WRKDIR}/modgcc-libs
- cp ${LOCALBASE}/lib/libestdc++.so.${LIBESTDC_VERSION}
${WRKDIR}/modgcc-libs
- cp ${WRKDIR}/rustc-bootstrap-${MACHINE_ARCH}-${BV}/bin/rustc \
- ${WRKBUILD}/${TRIPLE_ARCH}/stage0/bin
- cp ${WRKDIR}/rustc-bootstrap-${MACHINE_ARCH}-${BV}/lib/lib*.so* \
- ${WRKBUILD}/${TRIPLE_ARCH}/stage0/lib
+ mkdir -p ${WRKDIR}/modgcc-libs
+ cp ${LOCALBASE}/lib/libestdc++.so.${LIBESTDC_VERSION} \
+ ${WRKDIR}/modgcc-libs
+
+BUILD_BIN = cd ${WRKBUILD} && exec ${SETENV} ${MAKE_ENV} \
+ ${MODPY_BIN} ${WRKSRC}/src/bootstrap/bootstrap.py
+
+do-build:
+ ${BUILD_BIN} dist --verbose --jobs=${MAKE_JOBS}
+
+COMPONENTS ?= rustc rust-std rust-docs
+do-install:
+ rm -rf ${WRKBUILD}/_extractdist
+.for _c in ${COMPONENTS}
+ mkdir ${WRKBUILD}/_extractdist
+ cd ${WRKBUILD}/_extractdist && tar zxf \
+ ${WRKBUILD}/build/dist/${_c}-${V}-${TRIPLE_ARCH}.tar.gz
+ cd ${WRKBUILD}/_extractdist/${_c}-${V}-${TRIPLE_ARCH} && ./install.sh \
+ --prefix="${PREFIX}" \
+ --mandir="${PREFIX}/man"
+ rm -rf ${WRKBUILD}/_extractdist
+.endfor
+ for lib in ${PREFIX}/lib/lib*.* ; do \
+ libname=$${lib##*/} ; \
+ test -e ${PREFIX}/lib/rustlib/${TRIPLE_ARCH}/lib/$${libname} &&
\
+ ln -fs rustlib/${TRIPLE_ARCH}/lib/$${libname} \
+ ${PREFIX}/lib/$${libname} ; \
+ done
post-install:
# cleanup
- rm
${PREFIX}/lib/rustlib/{install.log,uninstall.sh,rust-installer-version}
+ rm ${PREFIX}/bin/rust-lldb \
+
${PREFIX}/lib/rustlib/{install.log,uninstall.sh,rust-installer-version} \
+ ${PREFIX}/lib/rustlib/components \
+ ${PREFIX}/lib/rustlib/manifest-*
+do-test:
+ ${BUILD_BIN} test --verbose --jobs=${MAKE_JOBS}
# bootstrap target permits to regenerate the bootstrap archive
-# it is based on stage3 binary
BOOTSTRAPDIR=${WRKDIR}/rustc-bootstrap-${MACHINE_ARCH}-${V}-new
-bootstrap: configure
+bootstrap: build
rm -rf ${BOOTSTRAPDIR}
mkdir -p ${BOOTSTRAPDIR}/{bin,lib}
- cd ${WRKBUILD} && exec ${SETENV} ${MAKE_ENV} ${GMAKE} rustc-stage3
- cp ${WRKBUILD}/${TRIPLE_ARCH}/stage3/bin/rustc ${BOOTSTRAPDIR}/bin
- strip ${BOOTSTRAPDIR}/bin/rustc
- ldd ${BOOTSTRAPDIR}/bin/rustc \
+ ${MAKE} clean=fake
+ ${MAKE} fake \
+ PREFIX="${BOOTSTRAPDIR}" \
+ COMPONENTS="rustc rust-std" \
+ FAKE_SETUP=""
+ rm -rf ${BOOTSTRAPDIR}/{man,share} \
+ ${BOOTSTRAPDIR}/bin/{rust-gdb,rustdoc}
+ mv ${BOOTSTRAPDIR}/bin/rustc{,.bin}
+ strip ${BOOTSTRAPDIR}/bin/rustc.bin \
+ ${BOOTSTRAPDIR}/lib/lib*.so \
+ ${BOOTSTRAPDIR}/lib/rustlib/${TRIPLE_ARCH}/lib/lib*.so
+ cp ${WRKDIR}/rustc-bootstrap-${MACHINE_ARCH}-${RBV}/bin/rustc \
+ ${BOOTSTRAPDIR}/bin/rustc
+ LD_LIBRARY_PATH="${BOOTSTRAPDIR}/lib" \
+ ldd ${BOOTSTRAPDIR}/bin/rustc.bin \
| sed -ne 's,.* \(/.*/lib/lib.*\.so.[.0-9]*\)$$,\1,p' \
| xargs -r -J % cp % \
${BOOTSTRAPDIR}/lib
Index: distinfo
===================================================================
RCS file: /cvs/ports/lang/rust/distinfo,v
retrieving revision 1.21
diff -u -p -r1.21 distinfo
--- distinfo 26 Dec 2016 13:52:46 -0000 1.21
+++ distinfo 12 Feb 2017 05:49:24 -0000
@@ -1,6 +1,10 @@
-SHA256 (rust/rustc-1.14.0-src.tar.gz) =
x5Dt0ukVvQG+pGEirylCEIR5ov2ppvdtEJSt1SCsO2s=
-SHA256 (rust/rustc-bootstrap-amd64-1.14.0-20161221.tar.gz) =
oxPRGSqKA+Pyt9p7itQlDkAf0DmvFBnRha2l7cRkTy8=
-SHA256 (rust/rustc-bootstrap-i386-1.14.0-20161221.tar.gz) =
+DK+UWnh+ywjLZLXDJ3c3lXNt3lRCvUfDRXrKAydOOE=
-SIZE (rust/rustc-1.14.0-src.tar.gz) = 27572650
-SIZE (rust/rustc-bootstrap-amd64-1.14.0-20161221.tar.gz) = 21862142
-SIZE (rust/rustc-bootstrap-i386-1.14.0-20161221.tar.gz) = 23054891
+SHA256 (rust/../cargo/cargo-bootstrap-amd64-0.15.0-20161230.tar.gz) =
qcSZfY/j29rGuU+t8oEFFf+1fzvWN+wbHa8IaUr1Y+0=
+SHA256 (rust/../cargo/cargo-bootstrap-i386-0.15.0-20161230.tar.gz) =
xFMrNpaNIJpFcSMcnAHnOetEdHx9JHK0JoBjIcA8uUQ=
+SHA256 (rust/rustc-1.15.1-src.tar.gz) =
Ln2q1BioMLRbl3zX7PGBtl8w9z32P/NuEk6l/l0a8yc=
+SHA256 (rust/rustc-bootstrap-amd64-1.15.0-20170203.tar.gz) =
NFx/Mp665nROWNh7xSYY9A8NH5sPRDGYItBd/BjlsfE=
+SHA256 (rust/rustc-bootstrap-i386-1.15.0-20170204.tar.gz) =
lre23VEqIuQwJfNgUvQdJ+RECxbJkn4vqC4IkpzgtgY=
+SIZE (rust/../cargo/cargo-bootstrap-amd64-0.15.0-20161230.tar.gz) = 7896659
+SIZE (rust/../cargo/cargo-bootstrap-i386-0.15.0-20161230.tar.gz) = 7637045
+SIZE (rust/rustc-1.15.1-src.tar.gz) = 28100203
+SIZE (rust/rustc-bootstrap-amd64-1.15.0-20170203.tar.gz) = 46336655
+SIZE (rust/rustc-bootstrap-i386-1.15.0-20170204.tar.gz) = 47619584
Index: patches/patch-configure
===================================================================
RCS file: patches/patch-configure
diff -N patches/patch-configure
--- patches/patch-configure 26 Dec 2016 13:52:46 -0000 1.15
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,14 +0,0 @@
-$OpenBSD: patch-configure,v 1.15 2016/12/26 13:52:46 landry Exp $
-Remove requirement for curl.
-The snapshot isn't downloaded but copied by post-configure.
---- configure.orig Sun Dec 18 00:40:11 2016
-+++ configure Wed Dec 21 11:18:23 2016
-@@ -783,7 +783,7 @@ if [ -n "$CFG_ENABLE_DEBUG_JEMALLOC" ]; then putvar CF
-
- step_msg "looking for build programs"
-
--probe_need CFG_CURL curl
-+probe CFG_CURL curl
- if [ -z "$CFG_PYTHON_PROVIDED" ]; then
- probe_need CFG_PYTHON python2.7 python2 python
- fi
Index: patches/patch-mk_cfg_i686-unknown-openbsd_mk
===================================================================
RCS file: patches/patch-mk_cfg_i686-unknown-openbsd_mk
diff -N patches/patch-mk_cfg_i686-unknown-openbsd_mk
--- patches/patch-mk_cfg_i686-unknown-openbsd_mk 6 Dec 2016 22:39:49
-0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,30 +0,0 @@
-$OpenBSD: patch-mk_cfg_i686-unknown-openbsd_mk,v 1.1 2016/12/06 22:39:49
juanfra Exp $
-Add i686-unknown-openbsd target.
-https://github.com/rust-lang/rust/pull/38086
---- mk/cfg/i686-unknown-openbsd.mk.orig Tue Nov 29 15:11:57 2016
-+++ mk/cfg/i686-unknown-openbsd.mk Tue Nov 29 15:16:54 2016
-@@ -0,0 +1,24 @@
-+# i686-unknown-openbsd configuration
-+CC_i686-unknown-openbsd=$(CC)
-+CXX_i686-unknown-openbsd=$(CXX)
-+CPP_i686-unknown-openbsd=$(CPP)
-+AR_i686-unknown-openbsd=$(AR)
-+CFG_LIB_NAME_i686-unknown-openbsd=lib$(1).so
-+CFG_STATIC_LIB_NAME_i686-unknown-openbsd=lib$(1).a
-+CFG_LIB_GLOB_i686-unknown-openbsd=lib$(1)-*.so
-+CFG_LIB_DSYM_GLOB_i686-unknown-openbsd=$(1)-*.dylib.dSYM
-+CFG_JEMALLOC_CFLAGS_i686-unknown-openbsd := -m32 -I/usr/include $(CFLAGS)
-+CFG_GCCISH_CFLAGS_i686-unknown-openbsd := -g -fPIC -m32 -I/usr/include
$(CFLAGS)
-+CFG_GCCISH_LINK_FLAGS_i686-unknown-openbsd := -shared -fPIC -g -pthread -m32
-+CFG_GCCISH_DEF_FLAG_i686-unknown-openbsd :=
-Wl,--export-dynamic,--dynamic-list=
-+CFG_LLC_FLAGS_i686-unknown-openbsd :=
-+CFG_INSTALL_NAME_i686-unknown-openbsd =
-+CFG_EXE_SUFFIX_i686-unknown-openbsd :=
-+CFG_WINDOWSY_i686-unknown-openbsd :=
-+CFG_UNIXY_i686-unknown-openbsd := 1
-+CFG_LDPATH_i686-unknown-openbsd :=
-+CFG_RUN_i686-unknown-openbsd=$(2)
-+CFG_RUN_TARG_i686-unknown-openbsd=$(call CFG_RUN_i686-unknown-openbsd,,$(2))
-+CFG_GNU_TRIPLE_i686-unknown-openbsd := i686-unknown-openbsd
-+RUSTC_FLAGS_i686-unknown-openbsd=-C linker=$(call FIND_COMPILER,$(CC))
-+CFG_DISABLE_JEMALLOC_i686-unknown-openbsd := 1
Index: patches/patch-src_bootstrap_native_rs
===================================================================
RCS file: patches/patch-src_bootstrap_native_rs
diff -N patches/patch-src_bootstrap_native_rs
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_bootstrap_native_rs 12 Feb 2017 05:49:24 -0000
@@ -0,0 +1,18 @@
+$OpenBSD$
+use default settings from devel/llvm to local embedded version
+--- src/bootstrap/native.rs.orig Thu Feb 9 02:37:48 2017
++++ src/bootstrap/native.rs Fri Feb 10 13:35:47 2017
+@@ -85,10 +85,10 @@ pub fn llvm(build: &Build, target: &str) {
+ .define("LLVM_INCLUDE_EXAMPLES", "OFF")
+ .define("LLVM_INCLUDE_TESTS", "OFF")
+ .define("LLVM_INCLUDE_DOCS", "OFF")
+- .define("LLVM_ENABLE_ZLIB", "OFF")
+- .define("WITH_POLLY", "OFF")
++ .define("LLVM_ENABLE_FFI", "OFF")
++ .define("LLVM_REQUIRES_RTTI", "ON")
++ .define("GO_EXECUTABLE", "GO_EXECUTABLE-NOTFOUND")
+ .define("LLVM_ENABLE_TERMINFO", "OFF")
+- .define("LLVM_ENABLE_LIBEDIT", "OFF")
+ .define("LLVM_PARALLEL_COMPILE_JOBS", build.jobs().to_string())
+ .define("LLVM_TARGET_ARCH", target.split('-').next().unwrap())
+ .define("LLVM_DEFAULT_TARGET_TRIPLE", target);
Index: patches/patch-src_etc_rust-gdb
===================================================================
RCS file: /cvs/ports/lang/rust/patches/patch-src_etc_rust-gdb,v
retrieving revision 1.1
diff -u -p -r1.1 patch-src_etc_rust-gdb
--- patches/patch-src_etc_rust-gdb 13 Jan 2016 07:39:08 -0000 1.1
+++ patches/patch-src_etc_rust-gdb 12 Feb 2017 05:49:24 -0000
@@ -1,8 +1,18 @@
$OpenBSD: patch-src_etc_rust-gdb,v 1.1 2016/01/13 07:39:08 semarie Exp $
only compatible with egdb (gdb from ports)
---- src/etc/rust-gdb.orig Sat Dec 12 07:12:56 2015
-+++ src/etc/rust-gdb Sat Dec 12 07:13:44 2015
-@@ -17,7 +17,7 @@ RUSTC_SYSROOT=`rustc --print=sysroot`
+--- src/etc/rust-gdb.orig Tue Jan 31 01:29:51 2017
++++ src/etc/rust-gdb Sun Feb 5 15:40:37 2017
+@@ -12,12 +12,17 @@
+ # Exit if anything fails
+ set -e
+
++if ! command -v egdb; then
++ echo "error: rust-gdb requires devel/gdb to be installed" >&2
++ exit 1
++fi
++
+ # Find out where the pretty printer Python module is
+ RUSTC_SYSROOT=`rustc --print=sysroot`
GDB_PYTHON_MODULE_DIRECTORY="$RUSTC_SYSROOT/lib/rustlib/etc"
# Run GDB with the additional arguments that load the pretty printers
Index: patches/patch-src_liblibc_src_unix_bsd_netbsdlike_openbsdlike_mod_rs
===================================================================
RCS file: patches/patch-src_liblibc_src_unix_bsd_netbsdlike_openbsdlike_mod_rs
diff -N patches/patch-src_liblibc_src_unix_bsd_netbsdlike_openbsdlike_mod_rs
--- patches/patch-src_liblibc_src_unix_bsd_netbsdlike_openbsdlike_mod_rs
6 Dec 2016 22:39:49 -0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,33 +0,0 @@
-$OpenBSD: patch-src_liblibc_src_unix_bsd_netbsdlike_openbsdlike_mod_rs,v 1.1
2016/12/06 22:39:49 juanfra Exp $
-libclibc: make openbsdlike to support 64 and 32 bits archs
-
-https://github.com/rust-lang/libc/commit/94848c190728bdf42acfa2057f2bada59f46a0a6
-https://github.com/rust-lang/libc/commit/0ac39c5ccf6a04395b7c40dd62321cb91f63f160
---- src/liblibc/src/unix/bsd/netbsdlike/openbsdlike/mod.rs.orig Tue Nov
8 04:17:31 2016
-+++ src/liblibc/src/unix/bsd/netbsdlike/openbsdlike/mod.rs Fri Dec 2
13:55:21 2016
-@@ -1,7 +1,5 @@
--pub type c_long = i64;
--pub type c_ulong = u64;
- pub type clock_t = i64;
--pub type suseconds_t = i64;
-+pub type suseconds_t = ::c_long;
- pub type dev_t = i32;
- pub type sigset_t = ::c_uint;
- pub type blksize_t = ::int32_t;
-@@ -110,6 +108,9 @@ s! {
- pub si_code: ::c_int,
- pub si_errno: ::c_int,
- pub si_addr: *mut ::c_char,
-+ #[cfg(target_pointer_width = "32")]
-+ __pad: [u8; 112],
-+ #[cfg(target_pointer_width = "64")]
- __pad: [u8; 108],
- }
-
-@@ -446,3 +447,6 @@ cfg_if! {
- // Unknown target_os
- }
- }
-+
-+mod other;
-+pub use self::other::*;
Index:
patches/patch-src_liblibc_src_unix_bsd_netbsdlike_openbsdlike_other_b32_mod_rs
===================================================================
RCS file:
patches/patch-src_liblibc_src_unix_bsd_netbsdlike_openbsdlike_other_b32_mod_rs
diff -N
patches/patch-src_liblibc_src_unix_bsd_netbsdlike_openbsdlike_other_b32_mod_rs
---
patches/patch-src_liblibc_src_unix_bsd_netbsdlike_openbsdlike_other_b32_mod_rs
6 Dec 2016 22:39:49 -0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,9 +0,0 @@
-$OpenBSD:
patch-src_liblibc_src_unix_bsd_netbsdlike_openbsdlike_other_b32_mod_rs,v 1.1
2016/12/06 22:39:49 juanfra Exp $
-libclibc: make openbsdlike to support 64 and 32 bits archs
-
-https://github.com/rust-lang/libc/commit/94848c190728bdf42acfa2057f2bada59f46a0a6
---- src/liblibc/src/unix/bsd/netbsdlike/openbsdlike/other/b32/mod.rs.orig
Tue Nov 29 13:50:21 2016
-+++ src/liblibc/src/unix/bsd/netbsdlike/openbsdlike/other/b32/mod.rs Tue Nov
29 13:50:21 2016
-@@ -0,0 +1,2 @@
-+pub type c_long = i32;
-+pub type c_ulong = u32;
Index:
patches/patch-src_liblibc_src_unix_bsd_netbsdlike_openbsdlike_other_b64_mod_rs
===================================================================
RCS file:
patches/patch-src_liblibc_src_unix_bsd_netbsdlike_openbsdlike_other_b64_mod_rs
diff -N
patches/patch-src_liblibc_src_unix_bsd_netbsdlike_openbsdlike_other_b64_mod_rs
---
patches/patch-src_liblibc_src_unix_bsd_netbsdlike_openbsdlike_other_b64_mod_rs
6 Dec 2016 22:39:49 -0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,9 +0,0 @@
-$OpenBSD:
patch-src_liblibc_src_unix_bsd_netbsdlike_openbsdlike_other_b64_mod_rs,v 1.1
2016/12/06 22:39:49 juanfra Exp $
-libclibc: make openbsdlike to support 64 and 32 bits archs
-
-https://github.com/rust-lang/libc/commit/94848c190728bdf42acfa2057f2bada59f46a0a6
---- src/liblibc/src/unix/bsd/netbsdlike/openbsdlike/other/b64/mod.rs.orig
Tue Nov 29 13:50:21 2016
-+++ src/liblibc/src/unix/bsd/netbsdlike/openbsdlike/other/b64/mod.rs Tue Nov
29 13:50:21 2016
-@@ -0,0 +1,2 @@
-+pub type c_long = i64;
-+pub type c_ulong = u64;
Index:
patches/patch-src_liblibc_src_unix_bsd_netbsdlike_openbsdlike_other_mod_rs
===================================================================
RCS file:
patches/patch-src_liblibc_src_unix_bsd_netbsdlike_openbsdlike_other_mod_rs
diff -N
patches/patch-src_liblibc_src_unix_bsd_netbsdlike_openbsdlike_other_mod_rs
--- patches/patch-src_liblibc_src_unix_bsd_netbsdlike_openbsdlike_other_mod_rs
6 Dec 2016 22:39:49 -0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,18 +0,0 @@
-$OpenBSD: patch-src_liblibc_src_unix_bsd_netbsdlike_openbsdlike_other_mod_rs,v
1.1 2016/12/06 22:39:49 juanfra Exp $
-libclibc: make openbsdlike to support 64 and 32 bits archs
-
-https://github.com/rust-lang/libc/commit/94848c190728bdf42acfa2057f2bada59f46a0a6
---- src/liblibc/src/unix/bsd/netbsdlike/openbsdlike/other/mod.rs.orig Tue Nov
29 13:50:21 2016
-+++ src/liblibc/src/unix/bsd/netbsdlike/openbsdlike/other/mod.rs Tue Nov
29 13:50:21 2016
-@@ -0,0 +1,11 @@
-+cfg_if! {
-+ if #[cfg(target_arch = "x86_64")] {
-+ mod b64;
-+ pub use self::b64::*;
-+ } else if #[cfg(target_arch = "x86")] {
-+ mod b32;
-+ pub use self::b32::*;
-+ } else {
-+ // Unknown target_arch
-+ }
-+}
Index: patches/patch-src_librustc_back_target_i686_unknown_openbsd_rs
===================================================================
RCS file: patches/patch-src_librustc_back_target_i686_unknown_openbsd_rs
diff -N patches/patch-src_librustc_back_target_i686_unknown_openbsd_rs
--- patches/patch-src_librustc_back_target_i686_unknown_openbsd_rs 26 Dec
2016 13:52:46 -0000 1.2
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,36 +0,0 @@
-$OpenBSD: patch-src_librustc_back_target_i686_unknown_openbsd_rs,v 1.2
2016/12/26 13:52:46 landry Exp $
-Add i686-unknown-openbsd target.
-https://github.com/rust-lang/rust/pull/38086
---- src/librustc_back/target/i686_unknown_openbsd.rs.orig Wed Dec 21
11:23:51 2016
-+++ src/librustc_back/target/i686_unknown_openbsd.rs Wed Dec 21 11:33:00 2016
-@@ -0,0 +1,30 @@
-+// Copyright 2016 The Rust Project Developers. See the COPYRIGHT
-+// file at the top-level directory of this distribution and at
-+// http://rust-lang.org/COPYRIGHT.
-+//
-+// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
-+// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
-+// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
-+// option. This file may not be copied, modified, or distributed
-+// except according to those terms.
-+
-+use target::{Target, TargetResult};
-+
-+pub fn target() -> TargetResult {
-+ let mut base = super::openbsd_base::opts();
-+ base.cpu = "pentium4".to_string();
-+ base.max_atomic_width = Some(64);
-+ base.pre_link_args.push("-m32".to_string());
-+
-+ Ok(Target {
-+ llvm_target: "i686-unknown-openbsd".to_string(),
-+ target_endian: "little".to_string(),
-+ target_pointer_width: "32".to_string(),
-+ data_layout:
"e-m:e-p:32:32-f64:32:64-f80:32-n8:16:32-S128".to_string(),
-+ arch: "x86".to_string(),
-+ target_os: "openbsd".to_string(),
-+ target_env: "".to_string(),
-+ target_vendor: "unknown".to_string(),
-+ options: base,
-+ })
-+}
Index: patches/patch-src_librustc_back_target_mod_rs
===================================================================
RCS file: patches/patch-src_librustc_back_target_mod_rs
diff -N patches/patch-src_librustc_back_target_mod_rs
--- patches/patch-src_librustc_back_target_mod_rs 26 Dec 2016 13:52:46
-0000 1.2
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,50 +0,0 @@
-$OpenBSD: patch-src_librustc_back_target_mod_rs,v 1.2 2016/12/26 13:52:46
landry Exp $
-Add i686-unknown-openbsd target.
-https://github.com/rust-lang/rust/pull/38086
---- src/librustc_back/target/mod.rs.orig Sun Dec 18 00:40:11 2016
-+++ src/librustc_back/target/mod.rs Wed Dec 21 11:18:23 2016
-@@ -167,7 +167,10 @@ supported_targets! {
- ("x86_64-unknown-dragonfly", x86_64_unknown_dragonfly),
-
- ("x86_64-unknown-bitrig", x86_64_unknown_bitrig),
-+
-+ ("i686-unknown-openbsd", i686_unknown_openbsd),
- ("x86_64-unknown-openbsd", x86_64_unknown_openbsd),
-+
- ("x86_64-unknown-netbsd", x86_64_unknown_netbsd),
- ("x86_64-rumprun-netbsd", x86_64_rumprun_netbsd),
-
-@@ -298,6 +301,9 @@ pub struct TargetOptions {
- pub staticlib_suffix: String,
- /// OS family to use for conditional compilation. Valid options: "unix",
"windows".
- pub target_family: Option<String>,
-+ /// Whether the target toolchain is like OpenBSD's.
-+ /// Only useful for compiling against OpenBSD, for configuring abi when
returning a struct.
-+ pub is_like_openbsd: bool,
- /// Whether the target toolchain is like OSX's. Only useful for compiling
against iOS/OS X, in
- /// particular running dsymutil and some other stuff like `-dead_strip`.
Defaults to false.
- pub is_like_osx: bool,
-@@ -394,6 +400,7 @@ impl Default for TargetOptions {
- staticlib_prefix: "lib".to_string(),
- staticlib_suffix: ".a".to_string(),
- target_family: None,
-+ is_like_openbsd: false,
- is_like_osx: false,
- is_like_solaris: false,
- is_like_windows: false,
-@@ -558,6 +565,7 @@ impl Target {
- key!(staticlib_prefix);
- key!(staticlib_suffix);
- key!(target_family, optional);
-+ key!(is_like_openbsd, bool);
- key!(is_like_osx, bool);
- key!(is_like_solaris, bool);
- key!(is_like_windows, bool);
-@@ -717,6 +725,7 @@ impl ToJson for Target {
- target_option_val!(staticlib_prefix);
- target_option_val!(staticlib_suffix);
- target_option_val!(target_family);
-+ target_option_val!(is_like_openbsd);
- target_option_val!(is_like_osx);
- target_option_val!(is_like_solaris);
- target_option_val!(is_like_windows);
Index: patches/patch-src_librustc_back_target_openbsd_base_rs
===================================================================
RCS file: patches/patch-src_librustc_back_target_openbsd_base_rs
diff -N patches/patch-src_librustc_back_target_openbsd_base_rs
--- patches/patch-src_librustc_back_target_openbsd_base_rs 26 Dec 2016
13:52:46 -0000 1.2
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,13 +0,0 @@
-$OpenBSD: patch-src_librustc_back_target_openbsd_base_rs,v 1.2 2016/12/26
13:52:46 landry Exp $
-Add i686-unknown-openbsd target.
-https://github.com/rust-lang/rust/pull/38086
---- src/librustc_back/target/openbsd_base.rs.orig Sun Dec 18 00:40:11 2016
-+++ src/librustc_back/target/openbsd_base.rs Wed Dec 21 11:22:58 2016
-@@ -17,6 +17,7 @@ pub fn opts() -> TargetOptions {
- executables: true,
- linker_is_gnu: true,
- has_rpath: true,
-+ is_like_openbsd: true,
- pre_link_args: vec![
- // GNU-style linkers will use this to omit linking to libraries
- // which don't actually fulfill any relocations, but only for
Index: patches/patch-src_librustc_session_filesearch_rs
===================================================================
RCS file:
/cvs/ports/lang/rust/patches/patch-src_librustc_session_filesearch_rs,v
retrieving revision 1.3
diff -u -p -r1.3 patch-src_librustc_session_filesearch_rs
--- patches/patch-src_librustc_session_filesearch_rs 31 Aug 2016 08:33:19
-0000 1.3
+++ patches/patch-src_librustc_session_filesearch_rs 12 Feb 2017 05:49:24
-0000
@@ -1,5 +1,5 @@
$OpenBSD: patch-src_librustc_session_filesearch_rs,v 1.3 2016/08/31 08:33:19
landry Exp $
-fallback to CFG_PREFIX as default sysroot.
+fallback to LOCALBASE as default sysroot.
--- src/librustc/session/filesearch.rs.orig Mon Jul 4 20:04:09 2016
+++ src/librustc/session/filesearch.rs Tue Jul 5 19:01:38 2016
@@ -161,7 +161,10 @@ pub fn get_or_default_sysroot() -> PathBuf {
@@ -7,7 +7,7 @@ fallback to CFG_PREFIX as default sysroo
match canonicalize(env::current_exe().ok()) {
Some(mut p) => { p.pop(); p.pop(); p }
- None => bug!("can't determine value for sysroot")
-+ None => match option_env!("CFG_PREFIX") {
++ None => match option_env!("LOCALBASE") {
+ Some(dir) => PathBuf::from(dir),
+ None => bug!("can't determine value for sysroot"),
+ }
Index: patches/patch-src_librustc_trans_cabi_x86_rs
===================================================================
RCS file: patches/patch-src_librustc_trans_cabi_x86_rs
diff -N patches/patch-src_librustc_trans_cabi_x86_rs
--- patches/patch-src_librustc_trans_cabi_x86_rs 6 Dec 2016 22:39:49
-0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,15 +0,0 @@
-$OpenBSD: patch-src_librustc_trans_cabi_x86_rs,v 1.1 2016/12/06 22:39:49
juanfra Exp $
-Add i686-unknown-openbsd target.
-https://github.com/rust-lang/rust/pull/38086
---- src/librustc_trans/cabi_x86.rs.orig Sun Dec 4 07:00:09 2016
-+++ src/librustc_trans/cabi_x86.rs Sun Dec 4 07:00:43 2016
-@@ -25,7 +25,8 @@ pub fn compute_abi_info(ccx: &CrateContext, fty: &mut
- // http://www.angelcode.com/dev/callconv/callconv.html
- // Clang's ABI handling is in lib/CodeGen/TargetInfo.cpp
- let t = &ccx.sess().target.target;
-- if t.options.is_like_osx || t.options.is_like_windows {
-+ if t.options.is_like_osx || t.options.is_like_windows
-+ || t.options.is_like_openbsd {
- match llsize_of_alloc(ccx, fty.ret.ty) {
- 1 => fty.ret.cast = Some(Type::i8(ccx)),
- 2 => fty.ret.cast = Some(Type::i16(ccx)),
Index: patches/patch-src_librustdoc_test_rs
===================================================================
RCS file: /cvs/ports/lang/rust/patches/patch-src_librustdoc_test_rs,v
retrieving revision 1.6
diff -u -p -r1.6 patch-src_librustdoc_test_rs
--- patches/patch-src_librustdoc_test_rs 26 Dec 2016 13:52:46 -0000
1.6
+++ patches/patch-src_librustdoc_test_rs 12 Feb 2017 05:49:24 -0000
@@ -1,14 +1,14 @@
$OpenBSD: patch-src_librustdoc_test_rs,v 1.6 2016/12/26 13:52:46 landry Exp $
-fallback to CFG_PREFIX as default sysroot.
---- src/librustdoc/test.rs.orig Sun Dec 18 00:40:11 2016
-+++ src/librustdoc/test.rs Wed Dec 21 11:18:23 2016
-@@ -62,9 +62,16 @@ pub fn run(input: &str,
+fallback to LOCALBASE as default sysroot.
+--- src/librustdoc/test.rs.orig Fri Jan 20 21:38:38 2017
++++ src/librustdoc/test.rs Mon Jan 30 20:13:43 2017
+@@ -59,9 +59,16 @@ pub fn run(input: &str,
let input_path = PathBuf::from(input);
let input = config::Input::File(input_path.clone());
+ let sysroot = match env::current_exe().ok() {
+ Some(mut p) => { p.pop(); p.pop(); p }
-+ None => match option_env!("CFG_PREFIX") {
++ None => match option_env!("LOCALBASE") {
+ Some(dir) => PathBuf::from(dir),
+ None => panic!("can't determine value for sysroot"),
+ }
@@ -21,13 +21,13 @@ fallback to CFG_PREFIX as default sysroo
search_paths: libs.clone(),
crate_types: vec![config::CrateTypeDylib],
externs: externs.clone(),
-@@ -181,9 +188,16 @@ fn runtest(test: &str, cratename: &str, cfgs: Vec<Stri
+@@ -167,9 +174,16 @@ fn runtest(test: &str, cratename: &str, cfgs: Vec<Stri
};
let outputs = OutputTypes::new(&[(OutputType::Exe, None)]);
+ let sysroot = match env::current_exe().ok() {
+ Some(mut p) => { p.pop(); p.pop(); p }
-+ None => match option_env!("CFG_PREFIX") {
++ None => match option_env!("LOCALBASE") {
+ Some(dir) => PathBuf::from(dir),
+ None => panic!("can't determine value for sysroot"),
+ }
Index: patches/patch-src_libstd_sys_unix_os_rs
===================================================================
RCS file: /cvs/ports/lang/rust/patches/patch-src_libstd_sys_unix_os_rs,v
retrieving revision 1.4
diff -u -p -r1.4 patch-src_libstd_sys_unix_os_rs
--- patches/patch-src_libstd_sys_unix_os_rs 26 Dec 2016 13:52:46 -0000
1.4
+++ patches/patch-src_libstd_sys_unix_os_rs 12 Feb 2017 05:49:24 -0000
@@ -1,8 +1,8 @@
$OpenBSD: patch-src_libstd_sys_unix_os_rs,v 1.4 2016/12/26 13:52:46 landry Exp
$
argv0 isn't suitable as current_exe() in all cases.
---- src/libstd/sys/unix/os.rs.orig Sun Dec 18 00:40:11 2016
-+++ src/libstd/sys/unix/os.rs Wed Dec 21 11:18:23 2016
-@@ -245,13 +245,14 @@ pub fn current_exe() -> io::Result<PathBuf> {
+--- src/libstd/sys/unix/os.rs.orig Fri Jan 20 21:38:38 2017
++++ src/libstd/sys/unix/os.rs Mon Jan 30 20:13:43 2017
+@@ -240,13 +240,14 @@ pub fn current_exe() -> io::Result<PathBuf> {
argv.set_len(argv_len as usize);
if argv[0].is_null() {
return Err(io::Error::new(io::ErrorKind::Other,
Index: patches/patch-src_llvm_include_llvm_ExecutionEngine_RTDyldMemoryManager_h
===================================================================
RCS file:
patches/patch-src_llvm_include_llvm_ExecutionEngine_RTDyldMemoryManager_h
diff -N
patches/patch-src_llvm_include_llvm_ExecutionEngine_RTDyldMemoryManager_h
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_llvm_include_llvm_ExecutionEngine_RTDyldMemoryManager_h
12 Feb 2017 05:49:24 -0000
@@ -0,0 +1,13 @@
+$OpenBSD$
+https://github.com/llvm-mirror/llvm/commit/420bc5679ccfb76b41a47be8a4bf05ececf0cae5
+--- src/llvm/include/llvm/ExecutionEngine/RTDyldMemoryManager.h.orig Mon Feb
6 20:14:30 2017
++++ src/llvm/include/llvm/ExecutionEngine/RTDyldMemoryManager.h Mon Feb
6 20:14:41 2017
+@@ -72,7 +72,7 @@ class RTDyldMemoryManager : public MCJITMemoryManager,
+ }
+
+ void deregisterEHFrames(uint8_t *Addr, uint64_t LoadAddr, size_t Size)
override {
+- registerEHFramesInProcess(Addr, Size);
++ deregisterEHFramesInProcess(Addr, Size);
+ }
+
+ /// This method returns the address of the specified function or variable in
Index: patches/patch-src_llvm_include_llvm_Support_Threading_h
===================================================================
RCS file:
/cvs/ports/lang/rust/patches/patch-src_llvm_include_llvm_Support_Threading_h,v
retrieving revision 1.1
diff -u -p -r1.1 patch-src_llvm_include_llvm_Support_Threading_h
--- patches/patch-src_llvm_include_llvm_Support_Threading_h 2 Feb 2017
08:02:50 -0000 1.1
+++ patches/patch-src_llvm_include_llvm_Support_Threading_h 12 Feb 2017
05:49:25 -0000
@@ -1,4 +1,5 @@
$OpenBSD: patch-src_llvm_include_llvm_Support_Threading_h,v 1.1 2017/02/02
08:02:50 landry Exp $
+https://github.com/llvm-mirror/llvm/commit/f92d91a710f48a26e44451f18f0081b6af0670b7
--- src/llvm/include/llvm/Support/Threading.h.orig Wed Dec 21 00:36:08 2016
+++ src/llvm/include/llvm/Support/Threading.h Sun Jan 29 09:20:53 2017
@@ -20,11 +20,11 @@
Index: patches/patch-src_llvm_lib_CodeGen_TargetLoweringBase_cpp
===================================================================
RCS file:
/cvs/ports/lang/rust/patches/patch-src_llvm_lib_CodeGen_TargetLoweringBase_cpp,v
retrieving revision 1.1
diff -u -p -r1.1 patch-src_llvm_lib_CodeGen_TargetLoweringBase_cpp
--- patches/patch-src_llvm_lib_CodeGen_TargetLoweringBase_cpp 2 Feb 2017
08:02:50 -0000 1.1
+++ patches/patch-src_llvm_lib_CodeGen_TargetLoweringBase_cpp 12 Feb 2017
05:49:25 -0000
@@ -1,4 +1,5 @@
$OpenBSD: patch-src_llvm_lib_CodeGen_TargetLoweringBase_cpp,v 1.1 2017/02/02
08:02:50 landry Exp $
+https://github.com/llvm-mirror/llvm/commit/06e3fec531cb51bd6bfdc0171dd2676be355e76b
--- src/llvm/lib/CodeGen/TargetLoweringBase.cpp.orig Sun Jan 29 09:06:57 2017
+++ src/llvm/lib/CodeGen/TargetLoweringBase.cpp Sun Jan 29 09:07:29 2017
@@ -1818,9 +1818,7 @@ Value *TargetLoweringBase::getIRStackGuard(IRBuilder<>
Index:
patches/patch-src_llvm_lib_Transforms_InstCombine_InstCombineLoadStoreAlloca_cpp
===================================================================
RCS file:
patches/patch-src_llvm_lib_Transforms_InstCombine_InstCombineLoadStoreAlloca_cpp
diff -N
patches/patch-src_llvm_lib_Transforms_InstCombine_InstCombineLoadStoreAlloca_cpp
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++
patches/patch-src_llvm_lib_Transforms_InstCombine_InstCombineLoadStoreAlloca_cpp
12 Feb 2017 05:49:25 -0000
@@ -0,0 +1,33 @@
+$OpenBSD$
+https://github.com/llvm-mirror/llvm/commit/7e79c454db01898586ecb6444ec8bb4ee19dd0a0
+https://github.com/llvm-mirror/llvm/commit/e0af6c9240d5634766925c71a492ef48b5ca3538
+--- src/llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp.orig
Tue Jan 31 01:33:14 2017
++++ src/llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp Tue Feb
7 09:35:55 2017
+@@ -587,6 +587,13 @@ static Instruction *unpackLoadToAggregate(InstCombiner
+ UndefValue::get(T), NewLoad, 0, Name));
+ }
+
++ // Bail out if the array is too large. Ideally we would like to optimize
++ // arrays of arbitrary size but this has a terrible impact on compile
time.
++ // The threshold here is chosen arbitrarily, maybe needs a little bit of
++ // tuning.
++ if (NumElements > 1024)
++ return nullptr;
++
+ const DataLayout &DL = IC.getDataLayout();
+ auto EltSize = DL.getTypeAllocSize(ET);
+ auto Align = LI.getAlignment();
+@@ -1088,6 +1095,13 @@ static bool unpackStoreToAggregate(InstCombiner &IC, S
+ combineStoreToNewValue(IC, SI, V);
+ return true;
+ }
++
++ // Bail out if the array is too large. Ideally we would like to optimize
++ // arrays of arbitrary size but this has a terrible impact on compile
time.
++ // The threshold here is chosen arbitrarily, maybe needs a little bit of
++ // tuning.
++ if (NumElements > 1024)
++ return false;
+
+ const DataLayout &DL = IC.getDataLayout();
+ auto EltSize = DL.getTypeAllocSize(AT->getElementType());
Index: patches/patch-src_test_run-pass_backtrace_rs
===================================================================
RCS file: patches/patch-src_test_run-pass_backtrace_rs
diff -N patches/patch-src_test_run-pass_backtrace_rs
--- patches/patch-src_test_run-pass_backtrace_rs 26 Dec 2016 13:52:46
-0000 1.4
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,14 +0,0 @@
-$OpenBSD: patch-src_test_run-pass_backtrace_rs,v 1.4 2016/12/26 13:52:46
landry Exp $
-Skip run-pass/backtrace as libbacktrace is disabled on openbsd.
---- src/test/run-pass/backtrace.rs.orig Sun Dec 18 00:40:12 2016
-+++ src/test/run-pass/backtrace.rs Wed Dec 21 11:18:23 2016
-@@ -103,7 +103,8 @@ fn runtest(me: &str) {
- }
-
- fn main() {
-- if cfg!(windows) && cfg!(target_env = "gnu") {
-+ if (cfg!(windows) && cfg!(target_env = "gnu")) ||
-+ cfg!(target_os = "openbsd") {
- return
- }
-
Index: patches/patch-src_tools_compiletest_src_runtest_rs
===================================================================
RCS file: patches/patch-src_tools_compiletest_src_runtest_rs
diff -N patches/patch-src_tools_compiletest_src_runtest_rs
--- patches/patch-src_tools_compiletest_src_runtest_rs 26 Dec 2016 13:52:46
-0000 1.4
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,13 +0,0 @@
-$OpenBSD: patch-src_tools_compiletest_src_runtest_rs,v 1.4 2016/12/26 13:52:46
landry Exp $
-use gmake to run-make testsuite
---- src/tools/compiletest/src/runtest.rs.orig Sun Dec 18 00:40:12 2016
-+++ src/tools/compiletest/src/runtest.rs Wed Dec 21 11:18:23 2016
-@@ -2095,7 +2095,7 @@ actual:\n\
- }
- self.create_dir_racy(&tmpdir);
-
-- let mut cmd = Command::new("make");
-+ let mut cmd = Command::new("gmake");
- cmd.current_dir(&self.testpaths.file)
- .env("TARGET", &self.config.target)
- .env("PYTHON", &self.config.docck_python)
Index: patches/patch-src_tools_tidy_src_main_rs
===================================================================
RCS file: patches/patch-src_tools_tidy_src_main_rs
diff -N patches/patch-src_tools_tidy_src_main_rs
--- patches/patch-src_tools_tidy_src_main_rs 26 Dec 2016 13:52:46 -0000
1.2
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,20 +0,0 @@
-$OpenBSD: patch-src_tools_tidy_src_main_rs,v 1.2 2016/12/26 13:52:46 landry
Exp $
-Disable cargo_lock check: it requires the source directory to be a git clone.
---- src/tools/tidy/src/main.rs.orig Sun Dec 18 00:40:12 2016
-+++ src/tools/tidy/src/main.rs Wed Dec 21 11:19:24 2016
-@@ -35,7 +35,6 @@ mod style;
- mod errors;
- mod features;
- mod cargo;
--mod cargo_lock;
- mod pal;
-
- fn main() {
-@@ -48,7 +47,6 @@ fn main() {
- errors::check(&path, &mut bad);
- cargo::check(&path, &mut bad);
- features::check(&path, &mut bad);
-- cargo_lock::check(&path, &mut bad);
- pal::check(&path, &mut bad);
-
- if bad {
Index: pkg/PFRAG.amd64-main
===================================================================
RCS file: pkg/PFRAG.amd64-main
diff -N pkg/PFRAG.amd64-main
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ pkg/PFRAG.amd64-main 12 Feb 2017 05:49:25 -0000
@@ -0,0 +1,100 @@
+@comment $OpenBSD$
+lib/libarena-11d7496c1faa8f76.so
+lib/libflate-a8279fa2f6625419.so
+lib/libfmt_macros-10dfa937d2fe5c00.so
+lib/libgetopts-f74de694632384de.so
+lib/libgraphviz-c2d48e0f4bad1295.so
+lib/liblog-5002f73d22f7a1aa.so
+lib/libproc_macro-fbf63c74ca24f125.so
+lib/libproc_macro_plugin-be32bcfae263bde7.so
+lib/libproc_macro_tokens-244bfeffc389dcf0.so
+lib/librustc-267fc3d198c686a2.so
+lib/librustc_back-38c2e5829acdfc74.so
+lib/librustc_borrowck-af3ac447ccff4e15.so
+lib/librustc_const_eval-7a3e50024b7472c7.so
+lib/librustc_const_math-abd215dffdbabf1d.so
+lib/librustc_data_structures-54ee9a822776d8d3.so
+lib/librustc_driver-f5b0d66ecb075790.so
+lib/librustc_errors-a0fd4a6fc59694fe.so
+lib/librustc_incremental-ad6213e413d93d69.so
+lib/librustc_lint-9c42dfccb8e5c4f1.so
+lib/librustc_llvm-bd563f262cb6e7d7.so
+lib/librustc_metadata-ea3c7d71b3ca2416.so
+lib/librustc_mir-6bd1d141a7e1c49a.so
+lib/librustc_passes-28fc5c4962e30ca9.so
+lib/librustc_platform_intrinsics-17ad1c6dae8b1e9e.so
+lib/librustc_plugin-347e1af40d9c26f2.so
+lib/librustc_privacy-a8763b07b8c65561.so
+lib/librustc_resolve-488de9adf3074d4e.so
+lib/librustc_save_analysis-1c6fbbcd89a94902.so
+lib/librustc_trans-51b2cd883b363bf4.so
+lib/librustc_typeck-584a1008ee0d838f.so
+lib/librustdoc-07610a6055695b47.so
+lib/libserialize-a930b687569b724c.so
+lib/libstd-0c545809ddd8d99a.so
+lib/libsyntax-2e575cebb9c46c42.so
+lib/libsyntax_ext-e7cb7897960b516e.so
+lib/libsyntax_pos-4e1c6aa1e472225c.so
+lib/libterm-2b3a96551eff82ef.so
+lib/libtest-52fc9063d398d946.so
+lib/rustlib/x86_64-unknown-openbsd/
+lib/rustlib/x86_64-unknown-openbsd/lib/
+lib/rustlib/x86_64-unknown-openbsd/lib/liballoc-189be59357c40ef1.rlib
+lib/rustlib/x86_64-unknown-openbsd/lib/liballoc_jemalloc-b17d834994e7f5bc.rlib
+lib/rustlib/x86_64-unknown-openbsd/lib/liballoc_system-d030adf06849e07e.rlib
+lib/rustlib/x86_64-unknown-openbsd/lib/libarena-11d7496c1faa8f76.so
+lib/rustlib/x86_64-unknown-openbsd/lib/libcollections-a9cadd0b1050da27.rlib
+lib/rustlib/x86_64-unknown-openbsd/lib/libcompiler_builtins-aa54e6bd858df95d.rlib
+lib/rustlib/x86_64-unknown-openbsd/lib/libcore-3d76228e567222b4.rlib
+lib/rustlib/x86_64-unknown-openbsd/lib/libflate-a8279fa2f6625419.so
+lib/rustlib/x86_64-unknown-openbsd/lib/libfmt_macros-10dfa937d2fe5c00.so
+lib/rustlib/x86_64-unknown-openbsd/lib/libgetopts-f74de694632384de.rlib
+lib/rustlib/x86_64-unknown-openbsd/lib/libgetopts-f74de694632384de.so
+lib/rustlib/x86_64-unknown-openbsd/lib/libgraphviz-c2d48e0f4bad1295.so
+lib/rustlib/x86_64-unknown-openbsd/lib/liblibc-34d0efa8c3e9d691.rlib
+lib/rustlib/x86_64-unknown-openbsd/lib/liblog-5002f73d22f7a1aa.rlib
+lib/rustlib/x86_64-unknown-openbsd/lib/liblog-5002f73d22f7a1aa.so
+lib/rustlib/x86_64-unknown-openbsd/lib/libpanic_abort-91e5e10fcaf20196.rlib
+lib/rustlib/x86_64-unknown-openbsd/lib/libpanic_unwind-44b8efc271069340.rlib
+lib/rustlib/x86_64-unknown-openbsd/lib/libproc_macro-fbf63c74ca24f125.so
+lib/rustlib/x86_64-unknown-openbsd/lib/libproc_macro_plugin-be32bcfae263bde7.so
+lib/rustlib/x86_64-unknown-openbsd/lib/libproc_macro_tokens-244bfeffc389dcf0.so
+lib/rustlib/x86_64-unknown-openbsd/lib/librand-06f790a0a1f0b94c.rlib
+lib/rustlib/x86_64-unknown-openbsd/lib/librustc-267fc3d198c686a2.so
+lib/rustlib/x86_64-unknown-openbsd/lib/librustc_back-38c2e5829acdfc74.so
+lib/rustlib/x86_64-unknown-openbsd/lib/librustc_bitflags-3b5ccd101d5c60d6.rlib
+lib/rustlib/x86_64-unknown-openbsd/lib/librustc_borrowck-af3ac447ccff4e15.so
+lib/rustlib/x86_64-unknown-openbsd/lib/librustc_const_eval-7a3e50024b7472c7.so
+lib/rustlib/x86_64-unknown-openbsd/lib/librustc_const_math-abd215dffdbabf1d.so
+lib/rustlib/x86_64-unknown-openbsd/lib/librustc_data_structures-54ee9a822776d8d3.so
+lib/rustlib/x86_64-unknown-openbsd/lib/librustc_driver-f5b0d66ecb075790.so
+lib/rustlib/x86_64-unknown-openbsd/lib/librustc_errors-a0fd4a6fc59694fe.so
+lib/rustlib/x86_64-unknown-openbsd/lib/librustc_incremental-ad6213e413d93d69.so
+lib/rustlib/x86_64-unknown-openbsd/lib/librustc_lint-9c42dfccb8e5c4f1.so
+lib/rustlib/x86_64-unknown-openbsd/lib/librustc_llvm-bd563f262cb6e7d7.so
+lib/rustlib/x86_64-unknown-openbsd/lib/librustc_metadata-ea3c7d71b3ca2416.so
+lib/rustlib/x86_64-unknown-openbsd/lib/librustc_mir-6bd1d141a7e1c49a.so
+lib/rustlib/x86_64-unknown-openbsd/lib/librustc_passes-28fc5c4962e30ca9.so
+lib/rustlib/x86_64-unknown-openbsd/lib/librustc_platform_intrinsics-17ad1c6dae8b1e9e.so
+lib/rustlib/x86_64-unknown-openbsd/lib/librustc_plugin-347e1af40d9c26f2.so
+lib/rustlib/x86_64-unknown-openbsd/lib/librustc_privacy-a8763b07b8c65561.so
+lib/rustlib/x86_64-unknown-openbsd/lib/librustc_resolve-488de9adf3074d4e.so
+lib/rustlib/x86_64-unknown-openbsd/lib/librustc_save_analysis-1c6fbbcd89a94902.so
+lib/rustlib/x86_64-unknown-openbsd/lib/librustc_trans-51b2cd883b363bf4.so
+lib/rustlib/x86_64-unknown-openbsd/lib/librustc_typeck-584a1008ee0d838f.so
+lib/rustlib/x86_64-unknown-openbsd/lib/librustdoc-07610a6055695b47.so
+lib/rustlib/x86_64-unknown-openbsd/lib/libserialize-a930b687569b724c.rlib
+lib/rustlib/x86_64-unknown-openbsd/lib/libserialize-a930b687569b724c.so
+lib/rustlib/x86_64-unknown-openbsd/lib/libstd-0c545809ddd8d99a.rlib
+lib/rustlib/x86_64-unknown-openbsd/lib/libstd-0c545809ddd8d99a.so
+lib/rustlib/x86_64-unknown-openbsd/lib/libstd_shim-37df37c63c5c7120.rlib
+lib/rustlib/x86_64-unknown-openbsd/lib/libstd_unicode-ce23b51752d53bab.rlib
+lib/rustlib/x86_64-unknown-openbsd/lib/libsyntax-2e575cebb9c46c42.so
+lib/rustlib/x86_64-unknown-openbsd/lib/libsyntax_ext-e7cb7897960b516e.so
+lib/rustlib/x86_64-unknown-openbsd/lib/libsyntax_pos-4e1c6aa1e472225c.so
+lib/rustlib/x86_64-unknown-openbsd/lib/libterm-2b3a96551eff82ef.rlib
+lib/rustlib/x86_64-unknown-openbsd/lib/libterm-2b3a96551eff82ef.so
+lib/rustlib/x86_64-unknown-openbsd/lib/libtest-52fc9063d398d946.rlib
+lib/rustlib/x86_64-unknown-openbsd/lib/libtest-52fc9063d398d946.so
+lib/rustlib/x86_64-unknown-openbsd/lib/libtest_shim-632b142c0882347f.rlib
+lib/rustlib/x86_64-unknown-openbsd/lib/libunwind-eb1a1348ca3a0294.rlib
Index: pkg/PFRAG.b32-doc
===================================================================
RCS file: pkg/PFRAG.b32-doc
diff -N pkg/PFRAG.b32-doc
--- pkg/PFRAG.b32-doc 6 Dec 2016 22:39:49 -0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,163 +0,0 @@
-@comment $OpenBSD: PFRAG.b32-doc,v 1.1 2016/12/06 22:39:49 juanfra Exp $
-share/doc/rust/html/libc/b32/
-share/doc/rust/html/libc/b32/c_long.t.html
-share/doc/rust/html/libc/b32/c_ulong.t.html
-share/doc/rust/html/libc/b32/type.c_long.html
-share/doc/rust/html/libc/b32/type.c_ulong.html
-share/doc/rust/html/libc/bsd/b32/
-share/doc/rust/html/libc/bsd/b32/c_long.t.html
-share/doc/rust/html/libc/bsd/b32/c_ulong.t.html
-share/doc/rust/html/libc/bsd/b32/type.c_long.html
-share/doc/rust/html/libc/bsd/b32/type.c_ulong.html
-share/doc/rust/html/libc/bsd/netbsdlike/b32/
-share/doc/rust/html/libc/bsd/netbsdlike/b32/c_long.t.html
-share/doc/rust/html/libc/bsd/netbsdlike/b32/c_ulong.t.html
-share/doc/rust/html/libc/bsd/netbsdlike/b32/type.c_long.html
-share/doc/rust/html/libc/bsd/netbsdlike/b32/type.c_ulong.html
-share/doc/rust/html/libc/bsd/netbsdlike/openbsdlike/b32/
-share/doc/rust/html/libc/bsd/netbsdlike/openbsdlike/b32/c_long.t.html
-share/doc/rust/html/libc/bsd/netbsdlike/openbsdlike/b32/c_ulong.t.html
-share/doc/rust/html/libc/bsd/netbsdlike/openbsdlike/b32/type.c_long.html
-share/doc/rust/html/libc/bsd/netbsdlike/openbsdlike/b32/type.c_ulong.html
-share/doc/rust/html/libc/bsd/netbsdlike/openbsdlike/other/b32/
-share/doc/rust/html/libc/bsd/netbsdlike/openbsdlike/other/b32/c_long.t.html
-share/doc/rust/html/libc/bsd/netbsdlike/openbsdlike/other/b32/c_ulong.t.html
-share/doc/rust/html/libc/bsd/netbsdlike/openbsdlike/other/b32/type.c_long.html
-share/doc/rust/html/libc/bsd/netbsdlike/openbsdlike/other/b32/type.c_ulong.html
-share/doc/rust/html/libc/bsd/netbsdlike/other/b32/
-share/doc/rust/html/libc/bsd/netbsdlike/other/b32/c_long.t.html
-share/doc/rust/html/libc/bsd/netbsdlike/other/b32/c_ulong.t.html
-share/doc/rust/html/libc/bsd/netbsdlike/other/b32/type.c_long.html
-share/doc/rust/html/libc/bsd/netbsdlike/other/b32/type.c_ulong.html
-share/doc/rust/html/libc/bsd/openbsdlike/b32/
-share/doc/rust/html/libc/bsd/openbsdlike/b32/c_long.t.html
-share/doc/rust/html/libc/bsd/openbsdlike/b32/c_ulong.t.html
-share/doc/rust/html/libc/bsd/openbsdlike/b32/type.c_long.html
-share/doc/rust/html/libc/bsd/openbsdlike/b32/type.c_ulong.html
-share/doc/rust/html/libc/bsd/openbsdlike/other/b32/
-share/doc/rust/html/libc/bsd/openbsdlike/other/b32/c_long.t.html
-share/doc/rust/html/libc/bsd/openbsdlike/other/b32/c_ulong.t.html
-share/doc/rust/html/libc/bsd/openbsdlike/other/b32/type.c_long.html
-share/doc/rust/html/libc/bsd/openbsdlike/other/b32/type.c_ulong.html
-share/doc/rust/html/libc/bsd/other/b32/
-share/doc/rust/html/libc/bsd/other/b32/c_long.t.html
-share/doc/rust/html/libc/bsd/other/b32/c_ulong.t.html
-share/doc/rust/html/libc/bsd/other/b32/type.c_long.html
-share/doc/rust/html/libc/bsd/other/b32/type.c_ulong.html
-share/doc/rust/html/libc/netbsdlike/b32/
-share/doc/rust/html/libc/netbsdlike/b32/c_long.t.html
-share/doc/rust/html/libc/netbsdlike/b32/c_ulong.t.html
-share/doc/rust/html/libc/netbsdlike/b32/type.c_long.html
-share/doc/rust/html/libc/netbsdlike/b32/type.c_ulong.html
-share/doc/rust/html/libc/netbsdlike/openbsdlike/b32/
-share/doc/rust/html/libc/netbsdlike/openbsdlike/b32/c_long.t.html
-share/doc/rust/html/libc/netbsdlike/openbsdlike/b32/c_ulong.t.html
-share/doc/rust/html/libc/netbsdlike/openbsdlike/b32/type.c_long.html
-share/doc/rust/html/libc/netbsdlike/openbsdlike/b32/type.c_ulong.html
-share/doc/rust/html/libc/netbsdlike/openbsdlike/other/b32/
-share/doc
-share/doc/rust/html/std/sys/ext/fs/trait.OpenOptionsExt.html
-share/doc/rust/html/std/sys/ext/fs/trait.PermissionsExt.html
-share/doc/rust/html/std/sys/ext/index.html
-share/doc/rust/html/std/sys/ext/io/
-share/doc/rust/html/std/sys/ext/io/AsRawFd.t.html
-share/doc/rust/html/std/sys/ext/io/FromRawFd.t.html
-share/doc/rust/html/std/sys/ext/io/IntoRawFd.t.html
-share/doc/rust/html/std/sys/ext/io/RawFd.t.html
-share/doc/rust/html/std/sys/ext/io/index.html
-share/doc/rust/html/std/sys/ext/io/trait.AsRawFd.html
-share/doc/rust/html/std/sys/ext/io/trait.FromRawFd.html
-share/doc/rust/html/std/sys/ext/io/trait.IntoRawFd.html
-share/doc/rust/html/std/sys/ext/io/type.RawFd.html
-share/doc/rust/html/std/sys/ext/net/
-share/doc/rust/html/std/sys/ext/net/Incoming.t.html
-share/doc/rust/html/std/sys/ext/net/SocketAddr.t.html
-share/doc/rust/html/std/sys/ext/net/UnixDatagram.t.html
-share/doc/rust/html/std/sys/ext/net/UnixListener.t.html
-share/doc/rust/html/std/sys/ext/net/UnixStream.t.html
-share/doc/rust/html/std/sys/ext/net/index.html
-share/doc/rust/html/std/sys/ext/net/struct.Incoming.html
-share/doc/rust/html/std/sys/ext/net/struct.SocketAddr.html
-share/doc/rust/html/std/sys/ext/net/struct.UnixDatagram.html
-share/doc/rust/html/std/sys/ext/net/struct.UnixListener.html
-share/doc/rust/html/std/sys/ext/net/struct.UnixStream.html
-share/doc/rust/html/std/sys/ext/prelude/
-share/doc/rust/html/std/sys/ext/prelude/index.html
-share/doc/rust/html/std/sys/ext/process/
-share/doc/rust/html/std/sys/ext/process/CommandExt.t.html
-share/doc/rust/html/std/sys/ext/process/ExitStatusExt.t.html
-share/doc/rust/html/std/sys/ext/process/index.html
-share/doc/rust/html/std/sys/ext/process/trait.CommandExt.html
-share/doc/rust/html/std/sys/ext/process/trait.ExitStatusExt.html
-share/doc/rust/html/std/sys/ext/raw/
-share/doc/rust/html/std/sys/ext/raw/blkcnt_t.t.html
-share/doc/rust/html/std/sys/ext/raw/blksize_t.t.html
-share/doc/rust/html/std/sys/ext/raw/dev_t.t.html
-share/doc/rust/html/std/sys/ext/raw/gid_t.t.html
-share/doc/rust/html/std/sys/ext/raw/index.html
-share/doc/rust/html/std/sys/ext/raw/ino_t.t.html
-share/doc/rust/html/std/sys/ext/raw/mode_t.t.html
-share/doc/rust/html/std/sys/ext/raw/nlink_t.t.html
-share/doc/rust/html/std/sys/ext/raw/off_t.t.html
-share/doc/rust/html/std/sys/ext/raw/pid_t.t.html
-share/doc/rust/html/std/sys/ext/raw/pthread_t.t.html
-share/doc/rust/html/std/sys/ext/raw/time_t.t.html
-share/doc/rust/html/std/sys/ext/raw/type.blkcnt_t.html
-share/doc/rust/html/std/sys/ext/raw/type.blksize_t.html
-share/doc/rust/html/std/sys/ext/raw/type.dev_t.html
-share/doc/rust/html/std/sys/ext/raw/type.gid_t.html
-share/doc/rust/html/std/sys/ext/raw/type.ino_t.html
-share/doc/rust/html/std/sys/ext/raw/type.mode_t.html
-share/doc/rust/html/std/sys/ext/raw/type.nlink_t.html
-share/doc/rust/html/std/sys/ext/raw/type.off_t.html
-share/doc/rust/html/std/sys/ext/raw/type.pid_t.html
-share/doc/rust/html/std/sys/ext/raw/type.pthread_t.html
-share/doc/rust/html/std/sys/ext/raw/type.time_t.html
-share/doc/rust/html/std/sys/ext/raw/type.uid_t.html
-share/doc/rust/html/std/sys/ext/raw/uid_t.t.html
-share/doc/rust/html/std/sys/ext/thread/
-share/doc/rust/html/std/sys/ext/thread/JoinHandleExt.t.html
-share/doc/rust/html/std/sys/ext/thread/RawPthread.t.html
-share/doc/rust/html/std/sys/ext/thread/index.html
-share/doc/rust/html/std/sys/ext/thread/trait.JoinHandleExt.html
-share/doc/rust/html/std/sys/ext/thread/type.RawPthread.html
share/doc/rust/html/std/sys/imp/
share/doc/rust/html/std/sys/imp/ext/
share/doc/rust/html/std/sys/imp/ext/ffi/
@@ -23411,29 +4827,11 @@ share/doc/rust/html/std/sys/imp/ext/proc
share/doc/rust/html/std/sys/imp/ext/process/trait.CommandExt.html
share/doc/rust/html/std/sys/imp/ext/process/trait.ExitStatusExt.html
share/doc/rust/html/std/sys/imp/ext/raw/
-share/doc/rust/html/std/sys/imp/ext/raw/blkcnt_t.t.html
-share/doc/rust/html/std/sys/imp/ext/raw/blksize_t.t.html
-share/doc/rust/html/std/sys/imp/ext/raw/dev_t.t.html
share/doc/rust/html/std/sys/imp/ext/raw/gid_t.t.html
share/doc/rust/html/std/sys/imp/ext/raw/index.html
-share/doc/rust/html/std/sys/imp/ext/raw/ino_t.t.html
-share/doc/rust/html/std/sys/imp/ext/raw/mode_t.t.html
-share/doc/rust/html/std/sys/imp/ext/raw/nlink_t.t.html
-share/doc/rust/html/std/sys/imp/ext/raw/off_t.t.html
share/doc/rust/html/std/sys/imp/ext/raw/pid_t.t.html
-share/doc/rust/html/std/sys/imp/ext/raw/pthread_t.t.html
-share/doc/rust/html/std/sys/imp/ext/raw/time_t.t.html
-share/doc/rust/html/std/sys/imp/ext/raw/type.blkcnt_t.html
-share/doc/rust/html/std/sys/imp/ext/raw/type.blksize_t.html
-share/doc/rust/html/std/sys/imp/ext/raw/type.dev_t.html
share/doc/rust/html/std/sys/imp/ext/raw/type.gid_t.html
-share/doc/rust/html/std/sys/imp/ext/raw/type.ino_t.html
-share/doc/rust/html/std/sys/imp/ext/raw/type.mode_t.html
-share/doc/rust/html/std/sys/imp/ext/raw/type.nlink_t.html
-share/doc/rust/html/std/sys/imp/ext/raw/type.off_t.html
share/doc/rust/html/std/sys/imp/ext/raw/type.pid_t.html
-share/doc/rust/html/std/sys/imp/ext/raw/type.pthread_t.html
-share/doc/rust/html/std/sys/imp/ext/raw/type.time_t.html
share/doc/rust/html/std/sys/imp/ext/raw/type.uid_t.html
share/doc/rust/html/std/sys/imp/ext/raw/uid_t.t.html
share/doc/rust/html/std/sys/imp/ext/thread/
@@ -23565,7 +4963,92 @@ share/doc/rust/html/std/vec/struct.IntoI
share/doc/rust/html/std/vec/struct.Vec.html
share/doc/rust/html/std/write.m.html
share/doc/rust/html/std/writeln.m.html
+share/doc/rust/html/std_unicode/
+share/doc/rust/html/std_unicode/char/
+share/doc/rust/html/std_unicode/char/CharTryFromError.t.html
+share/doc/rust/html/std_unicode/char/DecodeUtf16.t.html
+share/doc/rust/html/std_unicode/char/DecodeUtf16Error.t.html
+share/doc/rust/html/std_unicode/char/DecodeUtf8.t.html
+share/doc/rust/html/std_unicode/char/EscapeDebug.t.html
+share/doc/rust/html/std_unicode/char/EscapeDefault.t.html
+share/doc/rust/html/std_unicode/char/EscapeUnicode.t.html
+share/doc/rust/html/std_unicode/char/MAX.v.html
+share/doc/rust/html/std_unicode/char/REPLACEMENT_CHARACTER.v.html
+share/doc/rust/html/std_unicode/char/ToLowercase.t.html
+share/doc/rust/html/std_unicode/char/ToUppercase.t.html
+share/doc/rust/html/std_unicode/char/UNICODE_VERSION.v.html
+share/doc/rust/html/std_unicode/char/constant.MAX.html
+share/doc/rust/html/std_unicode/char/constant.REPLACEMENT_CHARACTER.html
+share/doc/rust/html/std_unicode/char/constant.UNICODE_VERSION.html
+share/doc/rust/html/std_unicode/char/decode_utf16.v.html
+share/doc/rust/html/std_unicode/char/decode_utf8.v.html
+share/doc/rust/html/std_unicode/char/fn.decode_utf16.html
+share/doc/rust/html/std_unicode/char/fn.decode_utf8.html
+share/doc/rust/html/std_unicode/char/fn.from_digit.html
+share/doc/rust/html/std_unicode/char/fn.from_u32.html
+share/doc/rust/html/std_unicode/char/fn.from_u32_unchecked.html
+share/doc/rust/html/std_unicode/char/from_digit.v.html
+share/doc/rust/html/std_unicode/char/from_u32.v.html
+share/doc/rust/html/std_unicode/char/from_u32_unchecked.v.html
+share/doc/rust/html/std_unicode/char/index.html
+share/doc/rust/html/std_unicode/char/sidebar-items.js
+share/doc/rust/html/std_unicode/char/struct.CharTryFromError.html
+share/doc/rust/html/std_unicode/char/struct.DecodeUtf16.html
+share/doc/rust/html/std_unicode/char/struct.DecodeUtf16Error.html
+share/doc/rust/html/std_unicode/char/struct.DecodeUtf8.html
+share/doc/rust/html/std_unicode/char/struct.EscapeDebug.html
+share/doc/rust/html/std_unicode/char/struct.EscapeDefault.html
+share/doc/rust/html/std_unicode/char/struct.EscapeUnicode.html
+share/doc/rust/html/std_unicode/char/struct.ToLowercase.html
+share/doc/rust/html/std_unicode/char/struct.ToUppercase.html
+share/doc/rust/html/std_unicode/derived_property/
+share/doc/rust/html/std_unicode/derived_property/Case_Ignorable.v.html
+share/doc/rust/html/std_unicode/derived_property/Cased.v.html
+share/doc/rust/html/std_unicode/derived_property/fn.Case_Ignorable.html
+share/doc/rust/html/std_unicode/derived_property/fn.Cased.html
+share/doc/rust/html/std_unicode/derived_property/index.html
+share/doc/rust/html/std_unicode/derived_property/sidebar-items.js
+share/doc/rust/html/std_unicode/index.html
+share/doc/rust/html/std_unicode/property/
+share/doc/rust/html/std_unicode/property/Pattern_White_Space.v.html
+share/doc/rust/html/std_unicode/property/fn.Pattern_White_Space.html
+share/doc/rust/html/std_unicode/property/index.html
+share/doc/rust/html/std_unicode/property/sidebar-items.js
+share/doc/rust/html/std_unicode/sidebar-items.js
+share/doc/rust/html/std_unicode/str/
+share/doc/rust/html/std_unicode/str/SplitWhitespace.t.html
+share/doc/rust/html/std_unicode/str/UnicodeStr.t.html
+share/doc/rust/html/std_unicode/str/Utf16Encoder.t.html
+share/doc/rust/html/std_unicode/str/fn.is_utf16.html
+share/doc/rust/html/std_unicode/str/fn.utf8_char_width.html
+share/doc/rust/html/std_unicode/str/index.html
+share/doc/rust/html/std_unicode/str/is_utf16.v.html
+share/doc/rust/html/std_unicode/str/sidebar-items.js
+share/doc/rust/html/std_unicode/str/struct.SplitWhitespace.html
+share/doc/rust/html/std_unicode/str/struct.Utf16Encoder.html
+share/doc/rust/html/std_unicode/str/trait.UnicodeStr.html
+share/doc/rust/html/std_unicode/str/utf8_char_width.v.html
+share/doc/rust/html/std_unicode/tables/
+share/doc/rust/html/std_unicode/tables/UNICODE_VERSION.v.html
+share/doc/rust/html/std_unicode/tables/constant.UNICODE_VERSION.html
+share/doc/rust/html/std_unicode/tables/derived_property/
+share/doc/rust/html/std_unicode/tables/derived_property/Case_Ignorable.v.html
+share/doc/rust/html/std_unicode/tables/derived_property/Cased.v.html
+share/doc/rust/html/std_unicode/tables/derived_property/fn.Case_Ignorable.html
+share/doc/rust/html/std_unicode/tables/derived_property/fn.Cased.html
+share/doc/rust/html/std_unicode/tables/property/
+share/doc/rust/html/std_unicode/tables/property/Pattern_White_Space.v.html
+share/doc/rust/html/std_unicode/tables/property/fn.Pattern_White_Space.html
+share/doc/rust/html/std_unicode/u_str/
+share/doc/rust/html/std_unicode/u_str/SplitWhitespace.t.html
+share/doc/rust/html/std_unicode/u_str/UnicodeStr.t.html
+share/doc/rust/html/std_unicode/u_str/Utf16Encoder.t.html
+share/doc/rust/html/std_unicode/u_str/fn.is_utf16.html
+share/doc/rust/html/std_unicode/u_str/fn.utf8_char_width.html
+share/doc/rust/html/std_unicode/u_str/is_utf16.v.html
+share/doc/rust/html/std_unicode/u_str/struct.SplitWhitespace.html
+share/doc/rust/html/std_unicode/u_str/struct.Utf16Encoder.html
+share/doc/rust/html/std_unicode/u_str/trait.UnicodeStr.html
+share/doc/rust/html/std_unicode/u_str/utf8_char_width.v.html
share/doc/rust/html/tutorial.html
share/doc/rust/html/version_info.html
-%%b32%%
-%%b64%%
Index: pkg/PLIST-main
===================================================================
RCS file: /cvs/ports/lang/rust/pkg/PLIST-main,v
retrieving revision 1.11
diff -u -p -r1.11 PLIST-main
--- pkg/PLIST-main 26 Dec 2016 13:52:46 -0000 1.11
+++ pkg/PLIST-main 12 Feb 2017 05:49:27 -0000
@@ -2,109 +2,14 @@
bin/rust-gdb
@bin bin/rustc
@bin bin/rustdoc
-lib/libarena-${RUST_HASH}.so
-lib/libflate-${RUST_HASH}.so
-lib/libfmt_macros-${RUST_HASH}.so
-lib/libgetopts-${RUST_HASH}.so
-lib/libgraphviz-${RUST_HASH}.so
-lib/liblog-${RUST_HASH}.so
-lib/libproc_macro-${RUST_HASH}.so
-lib/libproc_macro_plugin-${RUST_HASH}.so
-lib/libproc_macro_tokens-${RUST_HASH}.so
-lib/librustc-${RUST_HASH}.so
-lib/librustc_back-${RUST_HASH}.so
-lib/librustc_borrowck-${RUST_HASH}.so
-lib/librustc_const_eval-${RUST_HASH}.so
-lib/librustc_const_math-${RUST_HASH}.so
-lib/librustc_data_structures-${RUST_HASH}.so
-lib/librustc_driver-${RUST_HASH}.so
-lib/librustc_errors-${RUST_HASH}.so
-lib/librustc_incremental-${RUST_HASH}.so
-lib/librustc_lint-${RUST_HASH}.so
-lib/librustc_llvm-${RUST_HASH}.so
-lib/librustc_metadata-${RUST_HASH}.so
-lib/librustc_mir-${RUST_HASH}.so
-lib/librustc_passes-${RUST_HASH}.so
-lib/librustc_platform_intrinsics-${RUST_HASH}.so
-lib/librustc_plugin-${RUST_HASH}.so
-lib/librustc_privacy-${RUST_HASH}.so
-lib/librustc_resolve-${RUST_HASH}.so
-lib/librustc_save_analysis-${RUST_HASH}.so
-lib/librustc_trans-${RUST_HASH}.so
-lib/librustc_typeck-${RUST_HASH}.so
-lib/librustdoc-${RUST_HASH}.so
-lib/libserialize-${RUST_HASH}.so
-lib/libstd-${RUST_HASH}.so
-lib/libsyntax-${RUST_HASH}.so
-lib/libsyntax_ext-${RUST_HASH}.so
-lib/libsyntax_pos-${RUST_HASH}.so
-lib/libterm-${RUST_HASH}.so
-lib/libtest-${RUST_HASH}.so
lib/rustlib/
-lib/rustlib/components
lib/rustlib/etc/
lib/rustlib/etc/debugger_pretty_printers_common.py
lib/rustlib/etc/gdb_load_rust_pretty_printers.py
lib/rustlib/etc/gdb_rust_pretty_printing.py
-lib/rustlib/manifest-rust-docs
-lib/rustlib/manifest-rust-std-${TRIPLE_ARCH}
-lib/rustlib/manifest-rustc
-lib/rustlib/${TRIPLE_ARCH}/
-lib/rustlib/${TRIPLE_ARCH}/lib/
-lib/rustlib/${TRIPLE_ARCH}/lib/liballoc-${RUST_HASH}.rlib
-lib/rustlib/${TRIPLE_ARCH}/lib/liballoc_system-${RUST_HASH}.rlib
-lib/rustlib/${TRIPLE_ARCH}/lib/libarena-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/libcollections-${RUST_HASH}.rlib
-lib/rustlib/${TRIPLE_ARCH}/lib/libcompiler_builtins-${RUST_HASH}.rlib
-lib/rustlib/${TRIPLE_ARCH}/lib/libcore-${RUST_HASH}.rlib
-lib/rustlib/${TRIPLE_ARCH}/lib/libflate-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/libfmt_macros-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/libgetopts-${RUST_HASH}.rlib
-lib/rustlib/${TRIPLE_ARCH}/lib/libgetopts-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/libgraphviz-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/liblibc-${RUST_HASH}.rlib
-lib/rustlib/${TRIPLE_ARCH}/lib/liblog-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/libpanic_abort-${RUST_HASH}.rlib
-lib/rustlib/${TRIPLE_ARCH}/lib/libpanic_unwind-${RUST_HASH}.rlib
-lib/rustlib/${TRIPLE_ARCH}/lib/libproc_macro-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/libproc_macro_plugin-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/libproc_macro_tokens-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/librand-${RUST_HASH}.rlib
-lib/rustlib/${TRIPLE_ARCH}/lib/librustc-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/librustc_back-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/librustc_bitflags-${RUST_HASH}.rlib
-lib/rustlib/${TRIPLE_ARCH}/lib/librustc_borrowck-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/librustc_const_eval-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/librustc_const_math-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/librustc_data_structures-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/librustc_driver-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/librustc_errors-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/librustc_incremental-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/librustc_lint-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/librustc_llvm-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/librustc_metadata-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/librustc_mir-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/librustc_passes-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/librustc_platform_intrinsics-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/librustc_plugin-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/librustc_privacy-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/librustc_resolve-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/librustc_save_analysis-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/librustc_trans-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/librustc_typeck-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/librustc_unicode-${RUST_HASH}.rlib
-lib/rustlib/${TRIPLE_ARCH}/lib/librustdoc-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/libserialize-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/libstd-${RUST_HASH}.rlib
-lib/rustlib/${TRIPLE_ARCH}/lib/libstd-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/libsyntax-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/libsyntax_ext-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/libsyntax_pos-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/libterm-${RUST_HASH}.rlib
-lib/rustlib/${TRIPLE_ARCH}/lib/libterm-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/libtest-${RUST_HASH}.rlib
-lib/rustlib/${TRIPLE_ARCH}/lib/libtest-${RUST_HASH}.so
-lib/rustlib/${TRIPLE_ARCH}/lib/libunwind-${RUST_HASH}.rlib
+lib/rustlib/etc/lldb_rust_formatters.py
+%%amd64%%
+%%i386%%
@man man/man1/rustc.1
@man man/man1/rustdoc.1
share/doc/rust/