Index: head/lang/rust/Makefile =================================================================== --- head/lang/rust/Makefile (revision 395966) +++ head/lang/rust/Makefile (revision 395967) @@ -1,99 +1,104 @@ # Created by: Jyun-Yan You # $FreeBSD$ PORTNAME= rust -PORTVERSION= 1.1.0 +PORTVERSION= 1.2.0 CATEGORIES= lang MASTER_SITES= http://static.rust-lang.org/dist/:src \ http://static.rust-lang.org/stage0-snapshots/:bootstrap DISTNAME= ${PORTNAME}c-${PORTVERSION} DISTFILES= ${RUST_SOURCE}:src \ ${RUST_BOOT}:bootstrap EXTRACT_ONLY= ${RUST_SOURCE} MAINTAINER= ports@FreeBSD.org COMMENT= Language with a focus on memory safety and concurrency LICENSE= APACHE20 \ MIT LICENSE_COMB= dual LICENSE_FILE= ${WRKSRC}/LICENSE-APACHE \ ${WRKSRC}/LICENSE-MIT ONLY_FOR_ARCHS= amd64 ONLY_FOR_ARCHS_REASON= requires prebuilt bootstrap compiler # 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. CONFLICTS_BUILD= rust \ rust-nightly CONFLICTS_INSTALL= rust-nightly RUST_SOURCE= ${DISTNAME}-src${EXTRACT_SUFX} RUST_BOOT= rust-stage0-${RUST_BOOT_SIG}.tar.bz2 -RUST_BOOT_SIG= 2015-04-27-857ef6e-freebsd-x86_64-18925db56f6298cc190d1f41615ab5871de1dda0 +RUST_BOOT_SIG= 2015-05-24-ba0e1cd-freebsd-x86_64-370db40613f5c08563ed7e38357826dd42d4e0f8 -USES= gmake python:2,build +USES= gmake libedit python:2,build HAS_CONFIGURE= yes CONFIGURE_ARGS= --disable-valgrind --disable-docs \ --enable-clang --mandir=${MANPREFIX}/man \ --release-channel=stable +PLIST_SUB+= VSN="62abc69f" # Use LLVM from ports, instead of the copy shipped with rust. LLVM_VER= 36 BUILD_DEPENDS+= llvm${LLVM_VER}>=0:${PORTSDIR}/devel/llvm${LLVM_VER} CONFIGURE_ARGS+=--llvm-root=${LOCALBASE}/llvm${LLVM_VER} .if defined(BATCH) || defined(PACKAGE_BUILDING) MAKE_ARGS+= VERBOSE=1 .endif OPTIONS_DEFINE= LLNEXTGEN LLNEXTGEN_DESC= Build with grammar verification LLNEXTGEN_BUILD_DEPENDS= LLnextgen:${PORTSDIR}/devel/llnextgen .include .if ${OPSYS} == FreeBSD && ${OSVERSION} < 1000000 BROKEN= Only compiles on FreeBSD 10 and 11 .endif .if ${OPSYS} == DragonFly IGNORE= please use lang/rust-dragonfly instead .endif post-extract: @${MKDIR} ${WRKSRC}/dl ${LN} -sf ${DISTDIR}/${RUST_BOOT} ${WRKSRC}/dl (cd ${WRKSRC} && find . -type d -exec chmod 0755 {} \;) + +post-patch: + @${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|' \ + ${WRKSRC}/mk/main.mk # 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 \ ${SED} -E -e 's,^(dir|file:),${STAGEDIR},' \ < ${STAGEDIR}${PREFIX}/lib/rustlib/manifest-rustc \ | ${XARGS} ${RM}; \ fi @${RM} \ ${STAGEDIR}${PREFIX}/lib/rustlib/components \ ${STAGEDIR}${PREFIX}/lib/rustlib/manifest-rustc \ ${STAGEDIR}${PREFIX}/lib/rustlib/rust-installer-version \ ${STAGEDIR}${PREFIX}/lib/rustlib/uninstall.sh post-install: @${RM} ${STAGEDIR}${PREFIX}/lib/rustlib/install.log @${REINPLACE_CMD} -e 's|${STAGEDIR}||' \ ${STAGEDIR}${PREFIX}/lib/rustlib/manifest-rustc @${RM} ${STAGEDIR}${PREFIX}/lib/rustlib/manifest-rustc.bak @${STRIP_CMD} \ ${STAGEDIR}${PREFIX}/bin/rustc \ ${STAGEDIR}${PREFIX}/bin/rustdoc \ ${STAGEDIR}${PREFIX}/lib/*.so \ ${STAGEDIR}${PREFIX}/lib/rustlib/*/lib/*.so .include Index: head/lang/rust/distinfo =================================================================== --- head/lang/rust/distinfo (revision 395966) +++ head/lang/rust/distinfo (revision 395967) @@ -1,4 +1,4 @@ -SHA256 (rustc-1.1.0-src.tar.gz) = cb09f443b37ec1b81fe73c04eb413f9f656859cf7d00bc5088008cbc2a63fa8a -SIZE (rustc-1.1.0-src.tar.gz) = 22241376 -SHA256 (rust-stage0-2015-04-27-857ef6e-freebsd-x86_64-18925db56f6298cc190d1f41615ab5871de1dda0.tar.bz2) = c09d2f622217129b4c5a5ae0b889315606d993c22c3f6ee2ffc06e997940f113 -SIZE (rust-stage0-2015-04-27-857ef6e-freebsd-x86_64-18925db56f6298cc190d1f41615ab5871de1dda0.tar.bz2) = 12915343 +SHA256 (rustc-1.2.0-src.tar.gz) = ea6eb983daf2a073df57186a58f0d4ce0e85c711bec13c627a8c85d51b6a6d78 +SIZE (rustc-1.2.0-src.tar.gz) = 23863924 +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 Index: head/lang/rust/files/patch-src_librustc__back_target_freebsd__base.rs =================================================================== --- head/lang/rust/files/patch-src_librustc__back_target_freebsd__base.rs (revision 395966) +++ head/lang/rust/files/patch-src_librustc__back_target_freebsd__base.rs (nonexistent) @@ -1,12 +0,0 @@ ---- src/librustc_back/target/freebsd_base.rs.orig 2015-05-07 14:37:17 UTC -+++ src/librustc_back/target/freebsd_base.rs -@@ -19,9 +19,6 @@ pub fn opts() -> TargetOptions { - morestack: true, - has_rpath: true, - pre_link_args: vec!( -- "-L/usr/local/lib".to_string(), -- "-L/usr/local/lib/gcc46".to_string(), -- "-L/usr/local/lib/gcc44".to_string(), - ), - - .. Default::default() Property changes on: head/lang/rust/files/patch-src_librustc__back_target_freebsd__base.rs ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/lang/rust/files/patch-configure =================================================================== --- head/lang/rust/files/patch-configure (revision 395966) +++ head/lang/rust/files/patch-configure (revision 395967) @@ -1,24 +1,10 @@ ---- configure.orig 2015-05-13 20:03:52 UTC +--- configure.orig 2015-08-04 19:28:47 UTC +++ configure -@@ -678,7 +678,6 @@ putvar CFG_BOOTSTRAP_KEY +@@ -696,7 +696,6 @@ putvar CFG_BOOTSTRAP_KEY step_msg "looking for build programs" -probe_need CFG_CURLORWGET curl wget - probe_need CFG_PYTHON python2.7 python2.6 python2 python - - python_version=$($CFG_PYTHON -V 2>&1) -@@ -805,13 +804,6 @@ then - putvar CFG_LOCAL_RUST_ROOT + if [ -z "$CFG_PYTHON_PROVIDED" ]; then + probe_need CFG_PYTHON python2.7 python2.6 python2 python fi - --# Force freebsd to build with clang; gcc doesn't like us there --if [ $CFG_OSTYPE = unknown-freebsd ] --then -- step_msg "on FreeBSD, forcing use of clang" -- CFG_ENABLE_CLANG=1 --fi -- - # Force bitrig to build with clang; gcc doesn't like us there - if [ $CFG_OSTYPE = unknown-bitrig ] - then Index: head/lang/rust/files/patch-mk_main.mk =================================================================== --- head/lang/rust/files/patch-mk_main.mk (nonexistent) +++ head/lang/rust/files/patch-mk_main.mk (revision 395967) @@ -0,0 +1,11 @@ +--- mk/main.mk.orig 2015-09-03 11:50:44 UTC ++++ mk/main.mk +@@ -107,7 +107,7 @@ ifneq ($(wildcard $(NON_BUILD_TARGET)),) + CFG_INFO := $(info cfg: non-build target triples $(NON_BUILD_TARGET)) + endif + +-CFG_RUSTC_FLAGS := $(RUSTFLAGS) ++CFG_RUSTC_FLAGS := $(RUSTFLAGS) -L%%LOCALBASE%%/lib + CFG_GCCISH_CFLAGS := + CFG_GCCISH_LINK_FLAGS := + Property changes on: head/lang/rust/files/patch-mk_main.mk ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/lang/rust/pkg-plist =================================================================== --- head/lang/rust/pkg-plist (revision 395966) +++ head/lang/rust/pkg-plist (revision 395967) @@ -1,85 +1,83 @@ bin/rust-gdb bin/rustc bin/rustdoc -lib/libarena-7d23ff90.so -lib/libflate-7d23ff90.so -lib/libfmt_macros-7d23ff90.so -lib/libgetopts-7d23ff90.so -lib/libgraphviz-7d23ff90.so -lib/liblog-7d23ff90.so -lib/librbml-7d23ff90.so -lib/librustc-7d23ff90.so -lib/librustc_back-7d23ff90.so -lib/librustc_borrowck-7d23ff90.so -lib/librustc_driver-7d23ff90.so -lib/librustc_lint-7d23ff90.so -lib/librustc_llvm-7d23ff90.so -lib/librustc_privacy-7d23ff90.so -lib/librustc_resolve-7d23ff90.so -lib/librustc_trans-7d23ff90.so -lib/librustc_typeck-7d23ff90.so -lib/librustc_data_structures-7d23ff90.so -lib/librustdoc-7d23ff90.so -lib/libserialize-7d23ff90.so -lib/libstd-7d23ff90.so -lib/libsyntax-7d23ff90.so -lib/libterm-7d23ff90.so -lib/libtest-7d23ff90.so +lib/libarena-%%VSN%%.so +lib/libflate-%%VSN%%.so +lib/libfmt_macros-%%VSN%%.so +lib/libgetopts-%%VSN%%.so +lib/libgraphviz-%%VSN%%.so +lib/liblog-%%VSN%%.so +lib/librbml-%%VSN%%.so +lib/librustc-%%VSN%%.so +lib/librustc_back-%%VSN%%.so +lib/librustc_borrowck-%%VSN%%.so +lib/librustc_data_structures-%%VSN%%.so +lib/librustc_driver-%%VSN%%.so +lib/librustc_lint-%%VSN%%.so +lib/librustc_llvm-%%VSN%%.so +lib/librustc_privacy-%%VSN%%.so +lib/librustc_resolve-%%VSN%%.so +lib/librustc_trans-%%VSN%%.so +lib/librustc_typeck-%%VSN%%.so +lib/librustdoc-%%VSN%%.so +lib/libserialize-%%VSN%%.so +lib/libstd-%%VSN%%.so +lib/libsyntax-%%VSN%%.so +lib/libterm-%%VSN%%.so +lib/libtest-%%VSN%%.so lib/rustlib/components +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-rustc lib/rustlib/rust-installer-version lib/rustlib/uninstall.sh -lib/rustlib/x86_64-unknown-freebsd/lib/liballoc-7d23ff90.rlib -lib/rustlib/x86_64-unknown-freebsd/lib/libarena-7d23ff90.rlib -lib/rustlib/x86_64-unknown-freebsd/lib/libarena-7d23ff90.so -lib/rustlib/x86_64-unknown-freebsd/lib/libcollections-7d23ff90.rlib +lib/rustlib/x86_64-unknown-freebsd/lib/liballoc-%%VSN%%.rlib +lib/rustlib/x86_64-unknown-freebsd/lib/libarena-%%VSN%%.rlib +lib/rustlib/x86_64-unknown-freebsd/lib/libarena-%%VSN%%.so +lib/rustlib/x86_64-unknown-freebsd/lib/libcollections-%%VSN%%.rlib lib/rustlib/x86_64-unknown-freebsd/lib/libcompiler-rt.a -lib/rustlib/x86_64-unknown-freebsd/lib/libcore-7d23ff90.rlib -lib/rustlib/x86_64-unknown-freebsd/lib/libflate-7d23ff90.rlib -lib/rustlib/x86_64-unknown-freebsd/lib/libflate-7d23ff90.so -lib/rustlib/x86_64-unknown-freebsd/lib/libfmt_macros-7d23ff90.so -lib/rustlib/x86_64-unknown-freebsd/lib/libgetopts-7d23ff90.rlib -lib/rustlib/x86_64-unknown-freebsd/lib/libgetopts-7d23ff90.so -lib/rustlib/x86_64-unknown-freebsd/lib/libgraphviz-7d23ff90.rlib -lib/rustlib/x86_64-unknown-freebsd/lib/libgraphviz-7d23ff90.so -lib/rustlib/x86_64-unknown-freebsd/lib/liblibc-7d23ff90.rlib -lib/rustlib/x86_64-unknown-freebsd/lib/liblog-7d23ff90.rlib -lib/rustlib/x86_64-unknown-freebsd/lib/liblog-7d23ff90.so +lib/rustlib/x86_64-unknown-freebsd/lib/libcore-%%VSN%%.rlib +lib/rustlib/x86_64-unknown-freebsd/lib/libflate-%%VSN%%.rlib +lib/rustlib/x86_64-unknown-freebsd/lib/libflate-%%VSN%%.so +lib/rustlib/x86_64-unknown-freebsd/lib/libfmt_macros-%%VSN%%.so +lib/rustlib/x86_64-unknown-freebsd/lib/libgetopts-%%VSN%%.rlib +lib/rustlib/x86_64-unknown-freebsd/lib/libgetopts-%%VSN%%.so +lib/rustlib/x86_64-unknown-freebsd/lib/libgraphviz-%%VSN%%.rlib +lib/rustlib/x86_64-unknown-freebsd/lib/libgraphviz-%%VSN%%.so +lib/rustlib/x86_64-unknown-freebsd/lib/liblibc-%%VSN%%.rlib +lib/rustlib/x86_64-unknown-freebsd/lib/liblog-%%VSN%%.rlib +lib/rustlib/x86_64-unknown-freebsd/lib/liblog-%%VSN%%.so lib/rustlib/x86_64-unknown-freebsd/lib/libmorestack.a -lib/rustlib/x86_64-unknown-freebsd/lib/librand-7d23ff90.rlib -lib/rustlib/x86_64-unknown-freebsd/lib/librbml-7d23ff90.rlib -lib/rustlib/x86_64-unknown-freebsd/lib/librbml-7d23ff90.so -lib/rustlib/x86_64-unknown-freebsd/lib/librustc-7d23ff90.so -lib/rustlib/x86_64-unknown-freebsd/lib/librustc_back-7d23ff90.so -lib/rustlib/x86_64-unknown-freebsd/lib/librustc_bitflags-7d23ff90.rlib -lib/rustlib/x86_64-unknown-freebsd/lib/librustc_borrowck-7d23ff90.so -lib/rustlib/x86_64-unknown-freebsd/lib/librustc_driver-7d23ff90.so -lib/rustlib/x86_64-unknown-freebsd/lib/librustc_lint-7d23ff90.so -lib/rustlib/x86_64-unknown-freebsd/lib/librustc_llvm-7d23ff90.so -lib/rustlib/x86_64-unknown-freebsd/lib/librustc_privacy-7d23ff90.so -lib/rustlib/x86_64-unknown-freebsd/lib/librustc_resolve-7d23ff90.so -lib/rustlib/x86_64-unknown-freebsd/lib/librustc_trans-7d23ff90.so -lib/rustlib/x86_64-unknown-freebsd/lib/librustc_typeck-7d23ff90.so -lib/rustlib/x86_64-unknown-freebsd/lib/librustdoc-7d23ff90.so -lib/rustlib/x86_64-unknown-freebsd/lib/libserialize-7d23ff90.rlib -lib/rustlib/x86_64-unknown-freebsd/lib/libserialize-7d23ff90.so -lib/rustlib/x86_64-unknown-freebsd/lib/libstd-7d23ff90.rlib -lib/rustlib/x86_64-unknown-freebsd/lib/libstd-7d23ff90.so -lib/rustlib/x86_64-unknown-freebsd/lib/libsyntax-7d23ff90.so -lib/rustlib/x86_64-unknown-freebsd/lib/libterm-7d23ff90.rlib -lib/rustlib/x86_64-unknown-freebsd/lib/libterm-7d23ff90.so -lib/rustlib/x86_64-unknown-freebsd/lib/libtest-7d23ff90.rlib -lib/rustlib/x86_64-unknown-freebsd/lib/libtest-7d23ff90.so -lib/rustlib/x86_64-unknown-freebsd/lib/librustc_data_structures-7d23ff90.so -lib/rustlib/x86_64-unknown-freebsd/lib/librustc_unicode-7d23ff90.rlib +lib/rustlib/x86_64-unknown-freebsd/lib/librand-%%VSN%%.rlib +lib/rustlib/x86_64-unknown-freebsd/lib/librbml-%%VSN%%.rlib +lib/rustlib/x86_64-unknown-freebsd/lib/librbml-%%VSN%%.so +lib/rustlib/x86_64-unknown-freebsd/lib/librustc-%%VSN%%.so +lib/rustlib/x86_64-unknown-freebsd/lib/librustc_back-%%VSN%%.so +lib/rustlib/x86_64-unknown-freebsd/lib/librustc_bitflags-%%VSN%%.rlib +lib/rustlib/x86_64-unknown-freebsd/lib/librustc_borrowck-%%VSN%%.so +lib/rustlib/x86_64-unknown-freebsd/lib/librustc_data_structures-%%VSN%%.so +lib/rustlib/x86_64-unknown-freebsd/lib/librustc_driver-%%VSN%%.so +lib/rustlib/x86_64-unknown-freebsd/lib/librustc_lint-%%VSN%%.so +lib/rustlib/x86_64-unknown-freebsd/lib/librustc_llvm-%%VSN%%.so +lib/rustlib/x86_64-unknown-freebsd/lib/librustc_privacy-%%VSN%%.so +lib/rustlib/x86_64-unknown-freebsd/lib/librustc_resolve-%%VSN%%.so +lib/rustlib/x86_64-unknown-freebsd/lib/librustc_trans-%%VSN%%.so +lib/rustlib/x86_64-unknown-freebsd/lib/librustc_typeck-%%VSN%%.so +lib/rustlib/x86_64-unknown-freebsd/lib/librustc_unicode-%%VSN%%.rlib +lib/rustlib/x86_64-unknown-freebsd/lib/librustdoc-%%VSN%%.so +lib/rustlib/x86_64-unknown-freebsd/lib/libserialize-%%VSN%%.rlib +lib/rustlib/x86_64-unknown-freebsd/lib/libserialize-%%VSN%%.so +lib/rustlib/x86_64-unknown-freebsd/lib/libstd-%%VSN%%.rlib +lib/rustlib/x86_64-unknown-freebsd/lib/libstd-%%VSN%%.so +lib/rustlib/x86_64-unknown-freebsd/lib/libsyntax-%%VSN%%.so +lib/rustlib/x86_64-unknown-freebsd/lib/libterm-%%VSN%%.rlib +lib/rustlib/x86_64-unknown-freebsd/lib/libterm-%%VSN%%.so +lib/rustlib/x86_64-unknown-freebsd/lib/libtest-%%VSN%%.rlib +lib/rustlib/x86_64-unknown-freebsd/lib/libtest-%%VSN%%.so man/man1/rustc.1.gz man/man1/rustdoc.1.gz -@dir lib/rustlib/x86_64-unknown-freebsd/lib -@dir lib/rustlib/x86_64-unknown-freebsd -@dir lib/rustlib %%PORTDOCS%%%%DOCSDIR%%/COPYRIGHT %%PORTDOCS%%%%DOCSDIR%%/LICENSE-APACHE %%PORTDOCS%%%%DOCSDIR%%/LICENSE-MIT %%PORTDOCS%%%%DOCSDIR%%/README.md