aboutsummaryrefslogtreecommitdiffstats
path: root/www/firefox3/Makefile
blob: e35f9a66866ccd188d9cc26d010a54ae280596d0 (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
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
# New ports collection makefile for:    phoenix
# Date created:         2002/10/21
# Whom:             Alan Eldridge <alane@FreeBSD.org>
#
# $FreeBSD$
#   $MCom: ports-stable/www/firefox3/Makefile,v 1.11 2008/06/30 16:07:29 mezz Exp $
#

PORTNAME=   firefox
DISTVERSION=    3.0.4
PORTEPOCH=  1
CATEGORIES= www ipv6
MASTER_SITES=   ${MASTER_SITE_MOZILLA}
MASTER_SITE_SUBDIR= ${PORTNAME}/releases/${DISTVERSION}/source
DISTNAME=   ${PORTNAME}-${DISTVERSION}-source

MAINTAINER= gnome@FreeBSD.org
COMMENT=    Web browser based on the browser portion of Mozilla

BUILD_DEPENDS=  nspr>=4.7:${PORTSDIR}/devel/nspr

LATEST_LINK=    firefox3
USE_GECKO=  gecko
MOZ_PKGCONFIG_FILES=    # empty
USE_MOZILLA=    -png -nss -dbm -jpeg
MOZILLA_NAME=   Firefox${MOZILLA_SUFX}
MOZILLA_SUFX=   3
MOZILLA=    ${PORTNAME}${MOZILLA_SUFX}
MOZ_TOOLKIT=    cairo-gtk2
GECKO_PLIST_PRE_DIRS=   lib/${MOZILLA}/bin lib/${MOZILLA}/idl \
            lib/${MOZILLA}/include lib/${MOZILLA}/lib \
            lib/${MOZILLA}/sdk/idl lib/${MOZILLA}/sdk/include

WANT_GNOME= yes
ALL_TARGET= default
CONFIGURE_ENV=  LOCALBASE=${LOCALBASE}
EXTRA_CFLAGS=   -O2
HAS_CONFIGURE=  yes
USE_BZIP2=  yes
USE_GMAKE=  yes
NO_MOZPKGINSTALL=yes

FIREFOX_ICON=       ${MOZILLA}.png
FIREFOX_ICON_SRC=   ${PREFIX}/lib/${MOZILLA}/chrome/icons/default/default48.png
MOZ_OPTIONS=    --program-transform-name='s/firefox/${MOZILLA}/' \
        --with-default-mozilla-five-home=${PREFIX}/lib/${MOZILLA} \
        --enable-svg --enable-svg-renderer=cairo \
        --enable-application=browser \
        --enable-official-branding \
        --enable-canvas --enable-libxul

SYSTEM_PREFS=       ${FAKEDIR}/lib/${MOZILLA}/defaults/pref/firefox.js

OPTIONS=    DBUS "Enable D-BUS support" on \
        NEWTAB "Open external links in a new tab" on \
        SMB "Enable smb:// URI support using gnomevfs" off

.include <bsd.port.pre.mk>

GECKO_PTHREAD_LIBS!=${CC} -dumpspecs | ${GREP} -m 1 '%{\!pg: %{pthread:' | ${SED} -e 's|^.*%{\!pg: %{pthread:|| ; s|}.*$$||' || ${TRUE}

.if ${HAVE_GNOME:Mlibgnomeui}!=""
USE_GNOME+= libgnomeui
MOZ_OPTIONS+=   --enable-gnomeui
.else
MOZ_OPTIONS+=   --disable-gnomeui
.endif

.if defined(WITHOUT_DBUS)
MOZ_OPTIONS+=   --disable-dbus
.else
LIB_DEPENDS+=   dbus-glib-1.2:${PORTSDIR}/devel/dbus-glib
.endif

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

post-extract::
    @${SED} -e 's|@FIREFOX_ICON@|${FIREFOX_ICON}|' -e 's|@MOZILLA@|${MOZILLA}|' \
        -e 's|@MOZILLA_NAME@|${MOZILLA_NAME}|' \
        <${FILESDIR}/firefox.desktop.in >${WRKDIR}/${MOZILLA}.desktop

post-patch:
    ${REINPLACE_CMD} -e 's|%%PTHREAD_LIBS%%|${PTHREAD_LIBS:C/-pthread/${GECKO_PTHREAD_LIBS}/}|' \
        ${WRKSRC}/storage/build/Makefile.in \
        ${WRKSRC}/db/sqlite3/src/Makefile.in
    @${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|' \
        ${WRKSRC}/security/manager/ssl/src/Makefile.in
.for ii in modules/libpref/src/init extensions/sroaming/resources/content/prefs
    @${REINPLACE_CMD} -e '/accessibility.typeaheadfind.enablesound/s/true/false/ ; \
        /dom.disable_window_open_feature.toolbar/s/false/true/' \
        ${WRKSRC}/${ii}/all.js
.endfor
.if ${ARCH} == "sparc64"
    @(cd ${WRKSRC}/xpcom/reflect/xptcall/src/md/unix && \
        ${LN} -s xptcstubs_asm_sparc64_openbsd.s xptcstubs_asm_sparc64_freebsd.s && \
        ${LN} -s xptcstubs_sparc64_openbsd.cpp xptcstubs_sparc64_freebsd.cpp && \
        ${LN} -s xptcinvoke_sparc64_openbsd.cpp xptcinvoke_sparc64_freebsd.cpp) && \
        ${LN} -s xptcinvoke_asm_sparc64_openbsd.s xptcinvoke_asm_sparc64_freebsd.s)
.endif

port-pre-install:
#   ${SED} -e 's|1.9a7|0|' ${WRKSRC}/dist/bin/application.ini ${FAKEDIR}/lib
    ${ECHO_CMD} 'share/applications/${MOZILLA}.desktop' >> ${PLISTF}
    ${ECHO_CMD} "@dirrmtry share/applications" >> ${PLISTD}
    ${ECHO_CMD} 'share/pixmaps/${FIREFOX_ICON}' >> ${PLISTF}
.if !defined(WITHOUT_NEWTAB)
    ${ECHO_CMD} >> ${SYSTEM_PREFS}
    ${ECHO_CMD} "// Open external links in new tab" >> ${SYSTEM_PREFS}
    ${ECHO_CMD} "pref(\"browser.link.open_external\", 3);" \
        >> ${SYSTEM_PREFS}
.endif # !defined(WITHOUT_NEWTAB)

#do-install:
#   if [ ! -L ${PREFIX}/lib/browser_plugins/libjavaplugin_oji.so ]; then \
#       for jpi in ${JPI_LIST}; do \
#           if [ -f $${jpi} ]; then \
#               ${LN} -sf $${jpi} \
#                   ${PREFIX}/lib/browser_plugins/libjavaplugin_oji.so ; \
#               break; \
#           fi; \
#       done; \
#   fi

post-install:
    ${MKDIR} ${PREFIX}/share/applications ${PREFIX}/share/pixmaps
    ${INSTALL_DATA} ${WRKDIR}/${MOZILLA}.desktop ${PREFIX}/share/applications/
    ${MKDIR} ${PREFIX}/lib/${MOZILLA}/chrome/icons/default
    ${LN} -sf ${FIREFOX_ICON_SRC} ${PREFIX}/share/pixmaps/${FIREFOX_ICON}

.include <bsd.port.post.mk>