Index: head/lang/rust/Makefile =================================================================== --- head/lang/rust/Makefile (revision 362629) +++ head/lang/rust/Makefile (revision 362630) @@ -1,69 +1,63 @@ # Created by: Jyun-Yan You # $FreeBSD$ PORTNAME= rust PORTVERSION= 0.11.0 CATEGORIES= lang MASTER_SITES= http://static.rust-lang.org/dist/:src \ - http://static.rust-lang.org/stage0-snapshots/:boot + http://static.rust-lang.org/stage0-snapshots/:bootstrap DISTFILES= ${RUST_SOURCE}:src \ - ${RUST_BOOT}:boot + ${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 + RUST_SOURCE= ${DISTNAME}${EXTRACT_SUFX} RUST_BOOT= rust-stage0-${RUST_BOOT_SIG}.tar.bz2 RUST_BOOT_SIG= 2014-06-21-db9af1d-freebsd-x86_64-ef2bd0fc0b0efa2bd6f5c1eaa60a2ec8df533254 -RUST_TARGET= x86_64-unknown-freebsd -ONLY_FOR_ARCHS= amd64 +USES= gmake perl5 HAS_CONFIGURE= yes +CONFIGURE_ARGS= --disable-valgrind --disable-docs \ + --enable-clang --mandir=${MANPREFIX}/man USE_LDCONFIG= yes -USES= gmake perl5 USE_PERL5= build USE_PYTHON= yes USE_PYTHON_BUILD= 2 +MAKE_ARGS= ARCH=x86_64 +.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 -LIB_DEPENDS+= libexecinfo.so:${PORTSDIR}/devel/libexecinfo - .if ${OPSYS} == FreeBSD && ${OSVERSION} < 1000000 BROKEN= Only compiles on FreeBSD 10 and 11 .endif -.if ${PORT_OPTIONS:MLLNEXTGEN} -BUILD_DEPENDS+= LLnextgen:${PORTSDIR}/devel/llnextgen -.endif - -CC= clang -CXX= clang++ -CONFIGURE_ARGS+= --disable-valgrind --disable-docs \ - --enable-clang --mandir=${MANPREFIX}/man -MAKE_ARGS+= CC="${CC}" CXX="${CXX}" ARCH=x86_64 - post-extract: - ${MKDIR} ${WRKSRC}/${RUST_TARGET} && \ - cd ${WRKSRC}/${RUST_TARGET} && \ - ${TAR} -xf ${DISTDIR}/${RUST_BOOT} && \ - ${MV} rust-stage0 stage0 + @${MKDIR} ${WRKSRC}/dl + ${LN} -sf ${DISTDIR}/${RUST_BOOT} ${WRKSRC}/dl -post-patch: - ${REINPLACE_CMD} -e '/get-snapshot.py $$(CFG_BUILD)/d' ${WRKSRC}/mk/stage0.mk - post-install: @${RM} ${STAGEDIR}${PREFIX}/lib/rustlib/manifest - ${STRIP_CMD} `${GREP} -v -e '^@dirrm' -e '^man' -e 'rlib$$' ${PLIST} | ${SED} 's:^:${STAGEDIR}${PREFIX}/:g'` + @${STRIP_CMD} `${GREP} -v -e '^@dirrm' -e '^man' -e 'rlib$$' \ + ${PLIST} | ${SED} 's:^:${STAGEDIR}${PREFIX}/:'` .include Index: head/lang/rust/files/patch-mk_platform.mk =================================================================== --- head/lang/rust/files/patch-mk_platform.mk (revision 362629) +++ head/lang/rust/files/patch-mk_platform.mk (nonexistent) @@ -1,11 +0,0 @@ ---- mk/platform.mk.orig 2014-07-03 11:11:37.699489136 +0200 -+++ mk/platform.mk 2014-07-03 11:13:34.454205727 +0200 -@@ -562,7 +562,7 @@ - CFG_LIB_GLOB_x86_64-unknown-freebsd=lib$(1)-*.so - CFG_LIB_DSYM_GLOB_x86_64-unknown-freebsd=$(1)-*.dylib.dSYM - CFG_CFLAGS_x86_64-unknown-freebsd := -I/usr/local/include $(CFLAGS) --CFG_GCCISH_CFLAGS_x86_64-unknown-freebsd := -Wall -Werror -g -fPIC -I/usr/local/include $(CFLAGS) -+CFG_GCCISH_CFLAGS_x86_64-unknown-freebsd := -Wall -g -fPIC -I/usr/local/include $(CFLAGS) - CFG_GCCISH_LINK_FLAGS_x86_64-unknown-freebsd := -shared -fPIC -g -pthread -lrt - CFG_GCCISH_DEF_FLAG_x86_64-unknown-freebsd := -Wl,--export-dynamic,--dynamic-list= - CFG_GCCISH_PRE_LIB_FLAGS_x86_64-unknown-freebsd := -Wl,-whole-archive Property changes on: head/lang/rust/files/patch-mk_platform.mk ___________________________________________________________________ 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/pkg-descr =================================================================== --- head/lang/rust/pkg-descr (revision 362629) +++ head/lang/rust/pkg-descr (revision 362630) @@ -1,8 +1,16 @@ -Rust is a curly-brace, block-structured expression language. -It visually resembles the C language family, but differs significantly -in syntactic and semantic details. Its design is oriented toward -concerns of "programming in the large", that is, -of creating and maintaining boundaries - both abstract and operational - -that preserve large-system integrity, availability and concurrency. +Rust is a systems programming language that runs blazingly fast, prevents +almost all crashes, and eliminates data races. Some of its features: + + - Algebraic data types, type inference + - Pattern matching and closures + - Concurrency without data races + - Guaranteed memory safety + - Optional garbage collection + - Zero-cost abstractions + - Minimal runtime + - Efficient C bindings + +Rust is currently work-in-progress. Its development is driven by Mozilla +with help of large open source community. WWW: http://www.rust-lang.org/