blob: ad68dea2ec7f3698a7f882ac5483ae8479e8962e (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
# Created by: Jyun-Yan You <jyyou@cs.nctu.edu.tw>
# $FreeBSD$
PORTNAME= rust
PORTVERSION= 0.11.0
PORTREVISION= 1
CATEGORIES= lang
MASTER_SITES= http://static.rust-lang.org/dist/:src \
http://static.rust-lang.org/stage0-snapshots/:bootstrap
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
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
USES= gmake perl5
HAS_CONFIGURE= yes
CONFIGURE_ARGS= --disable-valgrind --disable-docs \
--enable-clang --mandir=${MANPREFIX}/man
USE_LDCONFIG= yes
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 <bsd.port.pre.mk>
.if ${OPSYS} == FreeBSD && ${OSVERSION} < 1000000
BROKEN= Only compiles on FreeBSD 10 and 11
.endif
post-extract:
@${MKDIR} ${WRKSRC}/dl
${LN} -sf ${DISTDIR}/${RUST_BOOT} ${WRKSRC}/dl
post-install:
@${RM} ${STAGEDIR}${PREFIX}/lib/rustlib/manifest
@${STRIP_CMD} `${GREP} -v -e '^@dirrm' -e '^man' -e 'rlib$$' \
${PLIST} | ${SED} 's:^:${STAGEDIR}${PREFIX}/:'`
@${STRIP_CMD} `${GREP} -v -e '^@dirrm' -e '^man' -e 'rlib$$' \
-e '\.a$$' ${PLIST} | ${SED} 's:^:${STAGEDIR}${PREFIX}/:g'`
.include <bsd.port.post.mk>
|