aboutsummaryrefslogtreecommitdiffstats
path: root/lang/phantomjs/Makefile
blob: 89f8122b883e4cddf42b7890b994124715461861 (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
# $FreeBSD$

PORTNAME=   phantomjs
PORTVERSION=    2.0.0
CATEGORIES= lang
MASTER_SITES=   https://bitbucket.org/ariya/phantomjs/downloads/
DISTNAME=   ${PORTNAME}-${PORTVERSION}-source

MAINTAINER= kuriyama@FreeBSD.org
COMMENT=    Minimalistic, headless, WebKit-based, JavaScript-driven tool

LICENSE=    BSD3CLAUSE

BUILD_DEPENDS=  bash:${PORTSDIR}/shells/bash \
        python:${PORTSDIR}/lang/python
LIB_DEPENDS=    libfreetype.so:${PORTSDIR}/print/freetype2 \
        libfontconfig.so:${PORTSDIR}/x11-fonts/fontconfig \
        libicui18n.so:${PORTSDIR}/devel/icu \
        libpng.so:${PORTSDIR}/graphics/png

PROJECTHOST=    phantomjs
USES=       bison:build compiler gmake jpeg perl5 pkgconfig python:build zip
USE_PERL5=  build
USE_RUBY=   yes
RUBY_NO_RUN_DEPENDS=    yes
WRKSRC=     ${WRKDIR}/${PORTNAME}-${PORTVERSION}
PLIST_FILES=    bin/phantomjs
#PATCH_DEBUG=   yes

# NOTE:
#   build.sh --qtwebkit=system requires Qt 5.3.x.  We cannot use it.

# qmake.conf detection is in src/qt/qtbase/configure script.
SPEC=   ${WRKSRC}/src/qt/qtbase/mkspecs
post-extract:
    cd ${SPEC} && ${CP} -r freebsd-g++46 freebsd-g++48
    cd ${SPEC} && ${CP} -r freebsd-g++46 freebsd-g++49
    cd ${SPEC} && ${REINPLACE_CMD} -e 's|46|48|' freebsd-g++48/qmake.conf
    cd ${SPEC} && ${REINPLACE_CMD} -e 's|46|49|' freebsd-g++49/qmake.conf
    ${MKDIR} ${SPEC}/freebsd-clang
    cd ${SPEC} && ${SED} -e 's|\.\./\.\./|../|g' unsupported/freebsd-clang/qmake.conf > freebsd-clang/qmake.conf
    cd ${SPEC} && ${SED} -e 's|\.\./\.\./|../|g' unsupported/freebsd-clang/qplatformdefs.h > freebsd-clang/qplatformdefs.h

_ENV=   CC=${CC} CXX=${CXX} GMAKE=${GMAKE} OSTYPE=freebsd MAKEFLAGS=
#_ENV+= CFLAGS="-g -pipe"
_BLD=   bash -x build.sh --jobs ${MAKE_JOBS_NUMBER} --confirm
do-build:
.if defined(_PHANTOMJS_USE_QT_SYSTEM)
    cd ${WRKSRC} && ${SETENV} ${_ENV} PATH=${PATH}:${QT_BINDIR} ${_BLD} --qt=system --qtwebkit=system
.else
    cd ${WRKSRC} && ${SETENV} ${_ENV} PATH=${PATH} ${_BLD} --qt-config '-no-pch'
.endif

do-install:
    cd ${WRKSRC} && ${INSTALL_PROGRAM} bin/phantomjs ${STAGEDIR}${PREFIX}/bin/

.include <bsd.port.pre.mk>

.if ${ARCH} == "sparc64"
BROKEN=     Does not link on sparc64
.endif

.include <bsd.port.post.mk>