blob: a78e4b7a068e3c8953c420c43da2c3e1df49b4ba (
plain)
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
67
68
69
70
71
72
73
74
75
|
# Created by: Jyun-Yan You <jyyou@cs.nctu.edu.tw>
# $FreeBSD$
PORTNAME= rust
PORTVERSION= 0.10
CATEGORIES= lang
MASTER_SITES= http://static.rust-lang.org/dist/:src \
http://static.rust-lang.org/stage0-snapshots/:boot
DISTFILES= ${RUST_SOURCE}:src \
${RUST_BOOT}:boot
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
RUST_SOURCE= ${DISTNAME}${EXTRACT_SUFX}
RUST_BOOT= rust-stage0-${RUST_BOOT_SIG}.tar.bz2
RUST_BOOT_SIG= 2014-03-28-b8601a3-freebsd-x86_64-c6b0651b2a90697754920ad381c13f9b7942ab47
RUST_TARGET= x86_64-unknown-freebsd
ONLY_FOR_ARCHS= amd64
HAS_CONFIGURE= yes
USE_LDCONFIG= yes
USES= gmake perl5
USE_PERL5= build
USE_PYTHON= yes
USE_PYTHON_BUILD= 2
OPTIONS_DEFINE= LLNEXTGEN
LLNEXTGEN_DESC= Build with grammar verification
.include <bsd.port.pre.mk>
LIB_DEPENDS+= libexecinfo.so:${PORTSDIR}/devel/libexecinfo
.if ${OPSYS} == FreeBSD
.if ${OSVERSION} < 900044
BROKEN= Only compiles on FreeBSD 9,10 and 11
.endif
.if ${OSVERSION} >= 1000000
BUILD_DEPENDS+= ${LOCALBASE}/lib/compat/libstdc++.so.6:${PORTSDIR}/misc/compat9x
.endif
.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
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'`
.include <bsd.port.post.mk>
|