]> gitweb @ CieloNegro.org - pkgsrc-firefox3.git/blob - Makefile
Initial revision of the upstream www/firefox3
[pkgsrc-firefox3.git] / Makefile
1 # $NetBSD: Makefile,v 1.19 2009/01/21 21:12:24 reed Exp $
2
3 MOZILLA=                firefox3        # allow coexisting with firefox2
4 COMMENT=                Lightweight gecko-based web browser
5
6 PKG_DESTDIR_SUPPORT=    user-destdir
7
8 MOZILLA_USE_GTK2=       # yes
9 MOZILLA_USE_XFT=        YES
10
11 INSTALLATION_DIRS=      lib/pkgconfig share/applications share/pixmaps
12
13 CHECK_PORTABILITY_SKIP= security/nss/tests/libpkix/libpkix.sh
14
15 BUILDLINK_API_DEPENDS.cairo+=   cairo>=1.6.4
16
17 # Pull in standard firefox build framework, and override some things below.
18 # This include must appear first, to ensure that USE_LANGUAGES is set
19 # correctly before mk/compiler.mk may be loaded.
20 .include "../../www/firefox/Makefile-firefox.common"
21
22 MAINTAINER=             tnn@NetBSD.org
23 MOZ_VER=                3.0.5
24 PKGREVISION=            2
25
26 XPTCFILES:=             ${XPTCFILES:C,^,../../firefox3/files/,}
27 DESCR_SRC=              ${.CURDIR}/../../www/firefox/DESCR
28
29 DISTINFO_FILE=          ${.CURDIR}/../../www/firefox3/distinfo
30 PATCHDIR=               ${.CURDIR}/../../www/firefox3/patches
31
32 .PHONY: copy-pkgconfig
33 post-extract: copy-pkgconfig
34 copy-pkgconfig:
35         cp ${.CURDIR}/../../www/firefox3/files/*.pc ${WRKSRC:Q}/build/unix
36
37 SUBST_CLASSES+=         fix-pc
38 SUBST_STAGE.fix-pc=     pre-configure
39 SUBST_MESSAGE.fix-pc=   Substituting prefix in pkg-config files.
40 SUBST_FILES.fix-pc+=    build/unix/*.pc
41 SUBST_SED.fix-pc=       -e 's,@PREFIX@,${PREFIX},g'
42
43 # Need this to be able to reuse existing firefox pkgsrc infrastructure
44 .PHONY: create-dummy-c-sdk
45 pre-configure: create-dummy-c-sdk
46 create-dummy-c-sdk:
47         mkdir -p ${WRKSRC:Q}/directory/c-sdk
48         touch ${WRKSRC:Q}/directory/c-sdk/configure.in
49
50 # Makefiles sometimes call "rm -f" without more arguments. Kludge around ...
51 .PHONY: create-rm-wrapper
52 pre-configure: create-rm-wrapper
53 create-rm-wrapper:
54         printf '#!/bin/sh\n[ "$$*" = "-f" ] && exit 0\nexec /bin/rm $$@\n' > \
55           ${WRAPPER_DIR}/bin/rm
56         chmod +x ${WRAPPER_DIR}/bin/rm
57
58 # Link browser.xpt
59 .PHONY: stage-package
60 post-build: stage-package
61 stage-package:
62         cd ${WRKSRC}/browser/installer && \
63           ${SETENV} ${MAKE_ENV} ${MAKE_PROGRAM} stage-package
64         cp ${WRKSRC}/dist/firefox/components/browser.xpt \
65            ${WRKSRC}/dist/bin/components/browser.xpt
66
67 .if !empty(PKG_OPTIONS:Mmozilla-jemalloc)
68 PLIST_SUBST+=           JEMALLOC=
69 SCRIPTS_ENV+=           JEMALLOC=
70 .PHONY: install-libjemalloc
71 post-install: install-libjemalloc
72 install-libjemalloc:
73         ${INSTALL_LIB} ${WRKSRC}/dist/lib/libjemalloc.${SO_SUFFIX} \
74           ${DESTDIR}${PREFIX}/lib/${MOZILLA}/libjemalloc.${SO_SUFFIX}
75 .else
76 PLIST_SUBST+=           JEMALLOC="@comment "
77 SCRIPTS_ENV+=           JEMALLOC="@comment "
78 .endif
79
80 .if !empty(PKG_OPTIONS:Mofficial-mozilla-branding)
81 MOZILLA_NAME=   Firefox 3
82 MOZILLA_ICON=   ${WRKSRC}/other-licenses/branding/firefox/default48.png
83 .else
84 MOZILLA_NAME=   Minefield 3
85 MOZILLA_ICON=   ${WRKSRC}/browser/branding/unofficial/default48.png
86 .endif
87
88 .PHONY: install-desktop
89 post-install: install-desktop
90 install-desktop:
91         ${SED}                                                  \
92                 -e 's|@MOZILLA@|${MOZILLA}|g'                   \
93                 -e 's|@MOZILLA_NAME@|${MOZILLA_NAME}|g'         \
94                 -e 's|@FIREFOX_ICON@|${MOZILLA}.png|g'          \
95                 <${.CURDIR}/../../www/firefox3/files/${MOZILLA}.desktop.in \
96                 >${WRKDIR}/${MOZILLA}.desktop
97         ${INSTALL_DATA} ${WRKDIR}/${MOZILLA}.desktop            \
98             ${DESTDIR}${PREFIX}/share/applications/${MOZILLA}.desktop
99         ${INSTALL_DATA} ${MOZILLA_ICON}                         \
100             ${DESTDIR}${PREFIX}/share/pixmaps/${MOZILLA}.png
101
102 INSTALLATION_DIRS+=     lib/${MOZILLA}/modules
103
104 # configure says: "Can't use system PNG because it doesn't have APNG support"
105 CONFIGURE_ARGS+=        --without-system-png
106 # Override www/firefox's idea of toolkit
107 CONFIGURE_ARGS+=        --enable-default-toolkit=cairo-gtk2
108 # Is dbus support useful for anything?
109 CONFIGURE_ARGS+=        --disable-dbus
110 # Avoids needing curl on Linux
111 CONFIGURE_ARGS+=        --disable-crashreporter
112
113 PYTHON_FOR_BUILD_ONLY=  yes
114 .include "../../lang/python/application.mk"
115 CONFIGURE_ENV+=         PYTHON=${PYTHONBIN:Q}
116
117 CONFIGURE_ARGS+=        --enable-system-sqlite
118 BUILDLINK_API_DEPENDS.sqlite3+= sqlite3>=3.5.9
119 .include "../../databases/sqlite3/buildlink3.mk"
120
121 .include "../../mk/bsd.pkg.mk"