Page MenuHomeFreeBSD

D5766.id14675.diff
No OneTemporary

D5766.id14675.diff

Index: lang/rust-nightly/Makefile
===================================================================
--- lang/rust-nightly/Makefile
+++ lang/rust-nightly/Makefile
@@ -2,7 +2,7 @@
# $FreeBSD$
PORTNAME= rust-nightly
-PORTVERSION= 1.3.0.20150703
+PORTVERSION= 1.9.0.20160318
CATEGORIES= lang
MASTER_SITES= http://static.rust-lang.org/stage0-snapshots/:bootstrap
DISTFILES= ${RUST_BOOT}:bootstrap
@@ -10,21 +10,9 @@
${DISTFILE_compiler_rt} \
${DISTFILE_hoedown} \
${DISTFILE_jemalloc} \
+ ${DISTFILE_liblibc} \
${DISTFILE_rust_installer}
-USE_GITHUB= yes
-GH_ACCOUNT= rust-lang
-GH_PROJECT= rust \
- compiler-rt:compiler_rt \
- hoedown:hoedown \
- jemalloc:jemalloc \
- rust-installer:rust_installer
-GH_TAGNAME= 7b148381c7 \
- 58ab642:compiler_rt \
- 238c4d5:hoedown \
- e24a1a0:jemalloc \
- 8e4f8ea:rust_installer
-
MAINTAINER= dumbbell@FreeBSD.org
COMMENT= Language with a focus on memory safety and concurrency
@@ -37,6 +25,21 @@
ONLY_FOR_ARCHS= amd64
ONLY_FOR_ARCHS_REASON= requires prebuilt bootstrap compiler
+USE_GITHUB= yes
+GH_ACCOUNT= rust-lang
+GH_PROJECT= rust \
+ compiler-rt:compiler_rt \
+ hoedown:hoedown \
+ jemalloc:jemalloc \
+ libc:liblibc \
+ rust-installer:rust_installer
+GH_TAGNAME= 235d77457d \
+ 57315f7:compiler_rt \
+ 4638c60:hoedown \
+ aab1c0a:jemalloc \
+ 2278a54:liblibc \
+ c37d374:rust_installer
+
# FIXME: The bootstrapped rustc adds -L/usr/local/lib in front of
# the LDFLAGS. When stage0's rustc is linked, it picks the installed
# librust*so and fails.
@@ -44,8 +47,9 @@
rust-nightly
CONFLICTS_INSTALL= rust-nightly
-RUST_BOOT= rust-stage0-${RUST_BOOT_SIG}.tar.bz2
-RUST_BOOT_SIG= 2015-05-24-ba0e1cd-freebsd-x86_64-370db40613f5c08563ed7e38357826dd42d4e0f8
+RUST_BOOT= rust-stage0-${RUST_BOOT_SIG_${ARCH}}.tar.bz2
+
+RUST_BOOT_SIG_amd64= 2016-02-17-4d3eebf-freebsd-x86_64-f38991fbb81c1cd8d0bbda396f98f13a55b42804
# Rust's libraries are named librustc_${component}-${RUST_VSN_HASH}.so.
# The hash depends on Rust version and, if the channel is not "stable",
@@ -55,7 +59,11 @@
RUST_VSN_HASH!= /usr/bin/printf '%s' ${RUST_VSN}-${RUST_CHANNEL} | /sbin/md5 -q | cut -c 1-8
PLIST_SUB+= RUST_VSN_HASH=${RUST_VSN_HASH}
-PLIST_SUB+= RUST_TARGET=x86_64-unknown-${OPSYS:tl}
+# Rust's target arch string is different from *BSD arch strings
+RUST_ARCH_amd64= x86_64
+RUST_ARCH_i386= i686
+RUST_TARGET= ${RUST_ARCH_${ARCH}}-unknown-${OPSYS:tl}
+PLIST_SUB+= RUST_TARGET=${RUST_TARGET}
USES= gmake libedit python:2,build
HAS_CONFIGURE= yes
@@ -72,9 +80,11 @@
MAKE_ARGS+= VERBOSE=1
.endif
-OPTIONS_DEFINE= LLNEXTGEN
+OPTIONS_DEFINE= GDB LLNEXTGEN
+GDB_DESC= Install ports gdb (necessary for debugging rust programs)
LLNEXTGEN_DESC= Build with grammar verification
+GDB_RUN_DEPENDS= ${LOCALBASE}/bin/gdb:${PORTSDIR}/devel/gdb
LLNEXTGEN_BUILD_DEPENDS= LLnextgen:${PORTSDIR}/devel/llnextgen
.include <bsd.port.options.mk>
@@ -114,42 +124,54 @@
${MV} ${WRKSRC_hoedown} ${WRKSRC}/src/rt/hoedown)
@(${RMDIR} ${WRKSRC}/src/jemalloc && \
${MV} ${WRKSRC_jemalloc} ${WRKSRC}/src/jemalloc)
+ @(${RMDIR} ${WRKSRC}/src/liblibc && \
+ ${MV} ${WRKSRC_liblibc} ${WRKSRC}/src/liblibc)
@(${RMDIR} ${WRKSRC}/src/rust-installer && \
${MV} ${WRKSRC_rust_installer} ${WRKSRC}/src/rust-installer)
@${MKDIR} ${WRKSRC}/dl
${LN} -sf ${DISTDIR}/${RUST_BOOT} ${WRKSRC}/dl
- (cd ${WRKSRC} && find . -type d -exec chmod 0755 {} \;)
+ (cd ${WRKSRC} && ${FIND} . -type d -exec ${CHMOD} 0755 {} \;)
post-patch:
@${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|' \
${WRKSRC}/mk/main.mk
+ @${REINPLACE_CMD} -e 's|gdb|${LOCALBASE}/bin/gdb|' \
+ ${WRKSRC}/src/etc/rust-gdb
# In case the previous "make stage" failed, this ensures rust's
# install.sh won't backup previously staged files before reinstalling
# new ones. Otherwise, the staging directory is polluted with unneeded
# files.
pre-install:
- @if test -f ${STAGEDIR}${PREFIX}/lib/rustlib/manifest-rustc; then \
+.for f in manifest-rustc manifest-rust-std-${RUST_TARGET}
+ @if test -f ${STAGEDIR}${PREFIX}/lib/rustlib/${f}; then \
${SED} -E -e 's,^(dir|file:),${STAGEDIR},' \
- < ${STAGEDIR}${PREFIX}/lib/rustlib/manifest-rustc \
+ < ${STAGEDIR}${PREFIX}/lib/rustlib/${f} \
| ${XARGS} ${RM}; \
fi
+.endfor
@${RM} \
${STAGEDIR}${PREFIX}/lib/rustlib/components \
${STAGEDIR}${PREFIX}/lib/rustlib/manifest-rustc \
+ ${STAGEDIR}${PREFIX}/lib/rustlib/manifest-rust-std-${RUST_TARGET} \
${STAGEDIR}${PREFIX}/lib/rustlib/rust-installer-version \
${STAGEDIR}${PREFIX}/lib/rustlib/uninstall.sh
post-install:
- @${RM} ${STAGEDIR}${PREFIX}/lib/rustlib/install.log
+.for f in manifest-rustc manifest-rust-std-${RUST_TARGET}
@${REINPLACE_CMD} -e 's|${STAGEDIR}||' \
- ${STAGEDIR}${PREFIX}/lib/rustlib/manifest-rustc
- @${RM} ${STAGEDIR}${PREFIX}/lib/rustlib/manifest-rustc.bak
+ ${STAGEDIR}${PREFIX}/lib/rustlib/${f}
+ @${RM} ${STAGEDIR}${PREFIX}/lib/rustlib/${f}.bak
+.endfor
+ @${RM} ${STAGEDIR}${PREFIX}/lib/rustlib/install.log
@${STRIP_CMD} \
${STAGEDIR}${PREFIX}/bin/rustc \
${STAGEDIR}${PREFIX}/bin/rustdoc \
${STAGEDIR}${PREFIX}/lib/*.so \
${STAGEDIR}${PREFIX}/lib/rustlib/*/lib/*.so
+# FIXME: Static libraries in lib/rustlib/*/lib/*.rlib are not stripped,
+# but they contain non-object files which make strip(1) unhappy.
+
.if ${PORT_OPTIONS:MDOCS}
@${MV} ${STAGEDIR}${PREFIX}/share/doc/rust ${STAGEDIR}${DOCSDIR}
.endif
Index: lang/rust-nightly/distinfo
===================================================================
--- lang/rust-nightly/distinfo
+++ lang/rust-nightly/distinfo
@@ -1,12 +1,14 @@
-SHA256 (rust-stage0-2015-05-24-ba0e1cd-freebsd-x86_64-370db40613f5c08563ed7e38357826dd42d4e0f8.tar.bz2) = 454530016c6a2f033de5fdfa6086a8caf78a597b99519f1b9a2ecbdd18b001eb
-SIZE (rust-stage0-2015-05-24-ba0e1cd-freebsd-x86_64-370db40613f5c08563ed7e38357826dd42d4e0f8.tar.bz2) = 13137436
-SHA256 (rust-lang-rust-1.3.0.20150703-7b148381c7_GH0.tar.gz) = 3df365a30727ffb733fe1cc20545b04eac7be20461c5bf3a51fc95b880a5fcf4
-SIZE (rust-lang-rust-1.3.0.20150703-7b148381c7_GH0.tar.gz) = 6490885
-SHA256 (rust-lang-compiler-rt-58ab642_GH0.tar.gz) = 5553488bae570271b7faf9f112b2594bb70d802d3d071f9ab0e37919e6327f98
-SIZE (rust-lang-compiler-rt-58ab642_GH0.tar.gz) = 1938952
-SHA256 (rust-lang-hoedown-238c4d5_GH0.tar.gz) = e2e62b68cc4ea415c6d584f5e97a4b94f60023acde30345ec7bd68aa52739368
-SIZE (rust-lang-hoedown-238c4d5_GH0.tar.gz) = 60652
-SHA256 (rust-lang-jemalloc-e24a1a0_GH0.tar.gz) = c50c61eae80772cbc7af0905110c30fcea267a57bbc930df115bd4a647a5e2e1
-SIZE (rust-lang-jemalloc-e24a1a0_GH0.tar.gz) = 398919
-SHA256 (rust-lang-rust-installer-8e4f8ea_GH0.tar.gz) = c865d4d2542e2a6588d928857caf910e201e32e200005c485964717bde7970aa
-SIZE (rust-lang-rust-installer-8e4f8ea_GH0.tar.gz) = 14602
+SHA256 (rust-stage0-2016-02-17-4d3eebf-freebsd-x86_64-f38991fbb81c1cd8d0bbda396f98f13a55b42804.tar.bz2) = 6123aa870918555835623548e7edbf79480cd754c649fda844dc3c14e4e142f2
+SIZE (rust-stage0-2016-02-17-4d3eebf-freebsd-x86_64-f38991fbb81c1cd8d0bbda396f98f13a55b42804.tar.bz2) = 15922558
+SHA256 (rust-lang-rust-1.9.0.20160318-235d77457d_GH0.tar.gz) = 6833cab6dc2c34a23cdabd565cb950b4e22f2606337c1d9f36c1a9e038eb4192
+SIZE (rust-lang-rust-1.9.0.20160318-235d77457d_GH0.tar.gz) = 5696553
+SHA256 (rust-lang-compiler-rt-57315f7_GH0.tar.gz) = d84fb1afd630c8dd9cca4fb37c4aa90b0b1ee95a7da04439ac109bcb2b63de3a
+SIZE (rust-lang-compiler-rt-57315f7_GH0.tar.gz) = 2170312
+SHA256 (rust-lang-hoedown-4638c60_GH0.tar.gz) = c27c4fd8d24082ea6ced012dfefced9b4b2a3b90383b68276f08569803fe0c84
+SIZE (rust-lang-hoedown-4638c60_GH0.tar.gz) = 65837
+SHA256 (rust-lang-jemalloc-aab1c0a_GH0.tar.gz) = cc218c8b704b336a1eb562d58e1311937e3765c83018d00a6c3891a5a87e886a
+SIZE (rust-lang-jemalloc-aab1c0a_GH0.tar.gz) = 469834
+SHA256 (rust-lang-libc-2278a54_GH0.tar.gz) = ee3ef64b8c59f2545d6b096f218d5362f713fb61ca0aa24f95b3e6c3dc30769a
+SIZE (rust-lang-libc-2278a54_GH0.tar.gz) = 84299
+SHA256 (rust-lang-rust-installer-c37d374_GH0.tar.gz) = 7cc41029b14de023dd4f250b332470c98cf9d1a77d174a20e93d78d07e4255f1
+SIZE (rust-lang-rust-installer-c37d374_GH0.tar.gz) = 19267
Index: lang/rust-nightly/pkg-plist
===================================================================
--- lang/rust-nightly/pkg-plist
+++ lang/rust-nightly/pkg-plist
@@ -13,8 +13,11 @@
lib/librustc_borrowck-%%RUST_VSN_HASH%%.so
lib/librustc_data_structures-%%RUST_VSN_HASH%%.so
lib/librustc_driver-%%RUST_VSN_HASH%%.so
+lib/librustc_front-%%RUST_VSN_HASH%%.so
lib/librustc_lint-%%RUST_VSN_HASH%%.so
lib/librustc_llvm-%%RUST_VSN_HASH%%.so
+lib/librustc_mir-%%RUST_VSN_HASH%%.so
+lib/librustc_platform_intrinsics-%%RUST_VSN_HASH%%.so
lib/librustc_privacy-%%RUST_VSN_HASH%%.so
lib/librustc_resolve-%%RUST_VSN_HASH%%.so
lib/librustc_trans-%%RUST_VSN_HASH%%.so
@@ -33,6 +36,8 @@
lib/rustlib/rust-installer-version
lib/rustlib/uninstall.sh
lib/rustlib/%%RUST_TARGET%%/lib/liballoc-%%RUST_VSN_HASH%%.rlib
+lib/rustlib/%%RUST_TARGET%%/lib/liballoc_jemalloc-%%RUST_VSN_HASH%%.rlib
+lib/rustlib/%%RUST_TARGET%%/lib/liballoc_system-%%RUST_VSN_HASH%%.rlib
lib/rustlib/%%RUST_TARGET%%/lib/libarena-%%RUST_VSN_HASH%%.rlib
lib/rustlib/%%RUST_TARGET%%/lib/libarena-%%RUST_VSN_HASH%%.so
lib/rustlib/%%RUST_TARGET%%/lib/libcollections-%%RUST_VSN_HASH%%.rlib
@@ -48,7 +53,6 @@
lib/rustlib/%%RUST_TARGET%%/lib/liblibc-%%RUST_VSN_HASH%%.rlib
lib/rustlib/%%RUST_TARGET%%/lib/liblog-%%RUST_VSN_HASH%%.rlib
lib/rustlib/%%RUST_TARGET%%/lib/liblog-%%RUST_VSN_HASH%%.so
-lib/rustlib/%%RUST_TARGET%%/lib/libmorestack.a
lib/rustlib/%%RUST_TARGET%%/lib/librand-%%RUST_VSN_HASH%%.rlib
lib/rustlib/%%RUST_TARGET%%/lib/librbml-%%RUST_VSN_HASH%%.rlib
lib/rustlib/%%RUST_TARGET%%/lib/librbml-%%RUST_VSN_HASH%%.so
@@ -58,8 +62,11 @@
lib/rustlib/%%RUST_TARGET%%/lib/librustc_borrowck-%%RUST_VSN_HASH%%.so
lib/rustlib/%%RUST_TARGET%%/lib/librustc_data_structures-%%RUST_VSN_HASH%%.so
lib/rustlib/%%RUST_TARGET%%/lib/librustc_driver-%%RUST_VSN_HASH%%.so
+lib/rustlib/%%RUST_TARGET%%/lib/librustc_front-%%RUST_VSN_HASH%%.so
lib/rustlib/%%RUST_TARGET%%/lib/librustc_lint-%%RUST_VSN_HASH%%.so
lib/rustlib/%%RUST_TARGET%%/lib/librustc_llvm-%%RUST_VSN_HASH%%.so
+lib/rustlib/%%RUST_TARGET%%/lib/librustc_mir-%%RUST_VSN_HASH%%.so
+lib/rustlib/%%RUST_TARGET%%/lib/librustc_platform_intrinsics-%%RUST_VSN_HASH%%.so
lib/rustlib/%%RUST_TARGET%%/lib/librustc_privacy-%%RUST_VSN_HASH%%.so
lib/rustlib/%%RUST_TARGET%%/lib/librustc_resolve-%%RUST_VSN_HASH%%.so
lib/rustlib/%%RUST_TARGET%%/lib/librustc_trans-%%RUST_VSN_HASH%%.so

File Metadata

Mime Type
text/plain
Expires
Tue, Feb 3, 4:22 AM (7 h, 39 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
28420987
Default Alt Text
D5766.id14675.diff (10 KB)

Event Timeline