summaryrefslogtreecommitdiffstats
path: root/lang/v8/Makefile
blob: 77afb4d505ef6386478c09fa94047bcd1a83a8d2 (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
# Created by: siasia
# $FreeBSD$

PORTNAME=	v8
PORTVERSION=	3.18.5
CATEGORIES=	lang
MASTER_SITES=	LOCAL/vanilla

MAINTAINER=	sunpoet@FreeBSD.org
COMMENT=	Open source JavaScript engine by Google

LICENSE=	BSD3CLAUSE

CONFLICTS_INSTALL=	v8-devel-[0-9]*

ONLY_FOR_ARCHS=	i386 amd64

PORTSCOUT=	limit:^3.18.*

ALL_TARGET=	native
MAKE_ARGS=	library=shared
MAKE_ENV=	CC.host=${CC} CXX.host=${CXX} LINK.host=${CXX} LINK.target=${CXX}
USE_LDCONFIG=	yes
USES=		alias compiler cpe execinfo gmake python:2 shebangfix tar:xz

CPE_VENDOR=	google

SHEBANG_FILES=	build/gyp/gyp
python_OLD_CMD=	${SETENV} python
python_CMD=	${PYTHON_CMD}

.include <bsd.port.pre.mk>

.if ${COMPILER_TYPE} == clang
CXXFLAGS+=	-Wno-nested-anon-types -Wno-unused-function -Wno-unused-private-field
MAKE_ENV+=	LINK=clang++
.if ${COMPILER_VERSION} >= 34
CXXFLAGS+=	-Wno-unused-const-variable
.if ${COMPILER_VERSION} >= 35
CXXFLAGS+=	-Wno-tautological-undefined-compare
.if ${COMPILER_VERSION} >= 36
CXXFLAGS+=	-Wno-unused-local-typedef
.endif
.endif
.endif
.else
MAKE_ARGS+=	strictaliasing=off
USE_GCC=	any
.endif

post-patch:
	@${REINPLACE_CMD} -e 's|test/cctest/cctest.gyp||' ${WRKSRC}/Makefile
	@${REINPLACE_CMD} -e '/test\/cctest\/cctest.gyp/d' ${WRKSRC}/build/all.gyp
	@${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|' ${WRKSRC}/build/common.gypi ${WRKSRC}/tools/gyp/v8.gyp
	@${REINPLACE_CMD} -e 's, | MAP_NORESERVE,,' ${WRKSRC}/src/platform-freebsd.cc
	@${REINPLACE_CMD} -e 's|python|${PYTHON_CMD}|' ${WRKSRC}/tools/gyp/v8.gyp

do-install:
	${INSTALL_PROGRAM} ${WRKSRC}/out/native/d8 ${STAGEDIR}${PREFIX}/bin/d8
	cd ${WRKSRC}/include/ && ${INSTALL_DATA} *.h ${STAGEDIR}${PREFIX}/include/
	${INSTALL_LIB} ${WRKSRC}/out/native/lib.target/libv8.so ${STAGEDIR}${PREFIX}/lib/libv8.so.1
	${LN} -fs ${PREFIX}/lib/libv8.so.1 ${STAGEDIR}${PREFIX}/lib/libv8.so

.include <bsd.port.post.mk>
OpenPOWER on IntegriCloud