aboutsummaryrefslogtreecommitdiffstats
path: root/www/libxul/Makefile
blob: 4d25d010c9f65037d4324e745fe4a4ad917f6161 (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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
# Created by: Michael Johnson <ahze@FreeBSD.org>
# $FreeBSD$

PORTNAME=   libxul
DISTVERSION=    31.2.0
CATEGORIES?=    www devel
MASTER_SITES=   MOZILLA/firefox/releases/${DISTVERSION}esr/source
DISTNAME=   firefox-${DISTVERSION}esr.source

MAINTAINER?=    gecko@FreeBSD.org
COMMENT?=   Mozilla runtime package that can be used to bootstrap XUL+XPCOM apps

BUILD_DEPENDS=  nspr>=4.10.6:${PORTSDIR}/devel/nspr \
        nss>=3.16.2:${PORTSDIR}/security/nss \
        libevent2>=2.0.21_2:${PORTSDIR}/devel/libevent2 \
        cairo>=1.12.16_1,2:${PORTSDIR}/graphics/cairo \
        soundtouch>=1.8.0:${PORTSDIR}/audio/soundtouch \
        harfbuzz>=0.9.25:${PORTSDIR}/print/harfbuzz \
        graphite2>=1.2.4:${PORTSDIR}/graphics/graphite2 \
        libvorbis>=1.3.4:${PORTSDIR}/audio/libvorbis \
        opus>=1.1:${PORTSDIR}/audio/opus \
        libvpx>=1.3.0:${PORTSDIR}/multimedia/libvpx \
        sqlite3>=3.8.4.2:${PORTSDIR}/databases/sqlite3 \
        ${PYTHON_PKGNAMEPREFIX}sqlite3>0:${PORTSDIR}/databases/py-sqlite3 \
        v4l_compat>0:${PORTSDIR}/multimedia/v4l_compat \
        autoconf-2.13:${PORTSDIR}/devel/autoconf213 \
        zip:${PORTSDIR}/archivers/zip \
        unzip:${PORTSDIR}/archivers/unzip

LIB_DEPENDS=    libv4l2.so:${PORTSDIR}/multimedia/libv4l

WRKSRC=     ${WRKDIR}/mozilla-esr31
CONFLICTS=  libxul-1.9.*

WANT_GNOME= yes
USE_QT5=    # empty
QT_NONSTANDARD= yes
WANT_PERL=  yes
ALL_TARGET= default
GNU_CONFIGURE=  yes
USE_GL=     gl
USES=       dos2unix pathfix tar:bzip2
DOS2UNIX_FILES= media/webrtc/trunk/webrtc/system_wrappers/source/spreadsortlib/spreadsort.hpp
MAKE_ENV=   SKIP_GRE_REGISTRATION=1 mozappdir=${PREFIX}/lib/${MOZILLA}
LDFLAGS+=   -Wl,-rpath,${PREFIX}/lib/${MOZ_RPATH}
USE_LDCONFIG=   ${PREFIX}/lib/${MOZILLA}

MOZ_OPTIONS?=   --enable-application=xulrunner
USE_GECKO=  gecko
CPE_PRODUCT=    firefox_esr
OBJDIR_BUILD=   # in-tree build broken after bug 789837
MOZILLA_EXEC_NAME=xulrunner
USE_MOZILLA=    # empty
MOZILLA_PLIST_DIRS= bin include lib share/idl libdata
MOZ_PKGCONFIG_FILES=    libxul-embedding libxul mozilla-js \
            mozilla-plugin

.include "${.CURDIR}/../../www/firefox/Makefile.options"
.include <bsd.port.pre.mk>

.if ${USE_MOZILLA:M-nss}
MOZ_PKGCONFIG_FILES+=   mozilla-nss
.endif

# avoid clang 3.2/3.3 crash in js/src/jsgc.cpp on refillFreeList<(js::AllowGC)1>
# To be removed when 9.2R goes EOL. http://llvm.org/PR15840
.if ${ARCH} == i386 && ${CHOSEN_COMPILER_TYPE} == clang && ${COMPILER_VERSION:M3[23]}
. if ${PORT_OPTIONS:MOPTIMIZED_CFLAGS}
BROKEN=     Cannot build with OPTIMIZED_CFLAGS option due to \
        a ${CHOSEN_COMPILER_TYPE} bug: unset the option or \
        use FAVORITE_COMPILER=gcc in Makefile.local/make.conf
# apply workaround only for -O2 or greater
. elif ${CXXFLAGS:M-O*} && ! ${CXXFLAGS:M-O[01]}
.  if ${MACHINE_CPU:Msse2}
CXXFLAGS+=  -msse2
.  else
CXXFLAGS+=  -O1
.  endif
. endif
.endif

.if ${PORT_OPTIONS:MALSA}
RUN_DEPENDS+=   alsa-lib>=1.0.27.2_1:${PORTSDIR}/audio/alsa-lib
.endif

.if ${PORT_OPTIONS:MGSTREAMER}
RUN_DEPENDS+=   gstreamer1-libav>=1.2.4_1:${PORTSDIR}/multimedia/gstreamer1-libav
.endif

.if ${PORT_OPTIONS:MTEST}
BROKEN=     stage-package fails with ValueError: no path specified
.endif

post-patch:
    @${REINPLACE_CMD} -e '/MOZPNG/s/=[0-9]*/=10511/' \
        ${WRKSRC}/configure.in
    @${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|g' \
        ${WRKSRC}/xulrunner/stub/nsXULStub.cpp

pre-configure:
    (cd ${WRKSRC} && ${LOCALBASE}/bin/autoconf-2.13)
    (cd ${WRKSRC}/js/src/ && ${LOCALBASE}/bin/autoconf-2.13)

post-build:
    @${REINPLACE_CMD} -e "s|\(Libs:.*\)\($$\)|\1 -Wl,-rpath,${PREFIX}/lib/${MOZ_RPATH}\2| ; \
        s|%sdkdir%|%sdkdir%/sdk|g ; \
        s|%%MOZ_LIBDIR%%|${PREFIX}/lib/${MOZILLA}|g" \
        ${WRKSRC}/xulrunner/installer/*.pc.in || ${TRUE}

.include <bsd.port.post.mk>