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