Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F143931892
D5766.id14675.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
10 KB
Referenced Files
None
Subscribers
None
D5766.id14675.diff
View Options
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
Details
Attached
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)
Attached To
Mode
D5766: lang/rust-nightly: Update to 1.9.0.20160318
Attached
Detach File
Event Timeline
Log In to Comment