2003-09-04 08:31:09 +02:00
|
|
|
# New ports collection makefile for: mozilla-thunderbird
|
|
|
|
# Date created: 4 September 2003
|
|
|
|
# Whom: Joe Marcus Clarke <marcus@FreeBSD.org>
|
|
|
|
#
|
|
|
|
# $FreeBSD$
|
|
|
|
#
|
|
|
|
|
|
|
|
PORTNAME= thunderbird
|
2011-11-08 18:35:09 +01:00
|
|
|
DISTVERSION= 8.0
|
2006-12-21 09:20:43 +01:00
|
|
|
CATEGORIES= mail ipv6
|
2010-08-03 22:55:29 +02:00
|
|
|
MASTER_SITES= ${MASTER_SITE_MOZILLA}
|
|
|
|
MASTER_SITE_SUBDIR= ${PORTNAME}/releases/${DISTVERSION}/source
|
|
|
|
DISTNAME= ${PORTNAME}-${DISTVERSION}.source
|
2003-09-04 08:31:09 +02:00
|
|
|
|
2009-05-04 21:23:44 +02:00
|
|
|
MAINTAINER= gecko@FreeBSD.org
|
2003-09-04 08:31:09 +02:00
|
|
|
COMMENT= Mozilla Thunderbird is standalone mail and news that stands above
|
|
|
|
|
2011-07-16 00:20:11 +02:00
|
|
|
BUILD_DEPENDS= nspr>=4.8.7:${PORTSDIR}/devel/nspr \
|
2011-11-08 18:35:09 +01:00
|
|
|
cairo>=1.10.2_1,1:${PORTSDIR}/graphics/cairo \
|
|
|
|
unzip:${PORTSDIR}/archivers/unzip
|
2011-06-30 20:19:48 +02:00
|
|
|
LIB_DEPENDS= execinfo.1:${PORTSDIR}/devel/libexecinfo \
|
|
|
|
event-1.4:${PORTSDIR}/devel/libevent
|
2010-08-03 22:55:29 +02:00
|
|
|
|
2011-09-01 17:26:49 +02:00
|
|
|
CONFLICTS_BUILD= spidermonkey-*
|
|
|
|
|
2010-12-04 08:34:27 +01:00
|
|
|
USE_AUTOTOOLS= autoconf213
|
2010-08-03 22:55:29 +02:00
|
|
|
USE_GECKO= gecko
|
|
|
|
USE_MOZILLA= -png -nss -dbm -jpeg -xft
|
|
|
|
MOZ_TOOLKIT= cairo-gtk2
|
|
|
|
|
|
|
|
MAKE_JOBS_SAFE= yes
|
- Update firefox to 1.5
- Add Makefile.common
o A new build/install system for gecko ports, Makefile.common
includes many generic routines and common tasks.
o Fix ld-run-path in all gecko's by using -Wl,-rpath,${moz_libdir}
thus removing the need to have a startup script for ports that
depend on gecko. [2]
o Use system libm, nss, nspr in all gecko ports
- Add bsd.gecko.mk
o This is the predecessor to WITH_MOZILLA=[mozilla|firefox|...]
with a more robust way of detecting a gecko a end user wishs to
use.
o bsd.gecko.mk abstracts the selection of gecko-based backends. It
allows users and porters to support any available gecko backend
without needing to build many conditional tests. ${USE_GECKO} is the
list of backends that your port can handle, and ${GECKO} is set by
bsd.gecko.mk to be the chosen backend. Users set ${WITH_GECKO} to the
list of gecko backends they want on their system.
Port Makefile example:
USE_GECKO=firefox mozilla seamonkey thunderbird
.include <bsd.port.pre.mk>
.include "${.CURDIR}/../../www/mozilla/bsd.gecko.mk"
End user example:
WITH_GECKO=seamonkey firefox
We highly recommend moving away from using WITH_MOZILLA and switching to
USE/WITH_GECKO.
PR: 89052 [2]
Submitted by: vs [2]
Obtained from: www/firefox
Thanks to: adamw, marcus, and mezz for ideas, bug squashing, and more
sajd from irc.freenode.org/#FreeBSD-Gnome for
pointing out many bugs
2005-11-29 22:12:28 +01:00
|
|
|
WANT_GNOME= yes
|
- Repo copy a lot of changes from www/firefox/Makefile. The best part is that
before it would install in the strange place like this.
${X11BASE}/lib/thunderbird/include/thunderbird-1.0.6
Now it will install in the correct place like firefox:
${X11BASE}/include/thunderbird
Also, get *.pc and idl files install.
- Didn't copy following from www/firefox/Makefile:
* plugins stuff, because it's known cause the stability problem like
crash.
* EXTRA_SCRIPTS=${PORTNAME}.rb, thunderbird doesn't need it.
- Make portlint happier.
- Add Java 5 plugins support. [1]
- Use system's libm (/usr/src/lib/msun), nss, nspr and etc. Also, do
not extract those. Better explain, use external dependencies. [1]
- Teach firefox-config and *.pc files for nspr that will making other
third apps to buildable like epiphany, vlc-devel's mozilla plugins
and etc. Have been tested with full GNOME 2.11.x build too.
- Add four patches: [1]
patch-bugzilla243151:
https://bugzilla.mozilla.org/show_bug.cgi?id=243151
patch-jsosdep:
Fix the FreeBSD define
patch-oji-threads:
64-bit wide pthread_t
patch-xptcinvoke_x86_64_linux:
Setting a possibly uninitialized variable (value).
- Fix a crash that can occur using gtk+-2.7 and possibly 2.6.10 when closing
windows. https://bugzilla.mozilla.org/show_bug.cgi?id=3002 [2]
- Get rid of FIREFOX and FF_VER, best to use PORTNAME and PORTVERSION
varibles that are arleady exist and lesser complicate.
- Change all hardcore of 'thunderbird' to PORTNAME.
- Change a manual loop for patch all.js to find(1), so we can sleep
on it.
Submitted by: mi [1], marcus [2]
Reviewed by: my team, FreeBSD GNOME Team.
2005-08-28 10:00:00 +02:00
|
|
|
ALL_TARGET= default
|
|
|
|
CONFIGURE_ENV= LOCALBASE=${LOCALBASE}
|
2010-08-03 22:55:29 +02:00
|
|
|
MAKE_ENV= PTHREAD_LDFLAGS="${PTHREAD_LIBS}"
|
2003-09-04 08:31:09 +02:00
|
|
|
HAS_CONFIGURE= yes
|
- Repo copy a lot of changes from www/firefox/Makefile. The best part is that
before it would install in the strange place like this.
${X11BASE}/lib/thunderbird/include/thunderbird-1.0.6
Now it will install in the correct place like firefox:
${X11BASE}/include/thunderbird
Also, get *.pc and idl files install.
- Didn't copy following from www/firefox/Makefile:
* plugins stuff, because it's known cause the stability problem like
crash.
* EXTRA_SCRIPTS=${PORTNAME}.rb, thunderbird doesn't need it.
- Make portlint happier.
- Add Java 5 plugins support. [1]
- Use system's libm (/usr/src/lib/msun), nss, nspr and etc. Also, do
not extract those. Better explain, use external dependencies. [1]
- Teach firefox-config and *.pc files for nspr that will making other
third apps to buildable like epiphany, vlc-devel's mozilla plugins
and etc. Have been tested with full GNOME 2.11.x build too.
- Add four patches: [1]
patch-bugzilla243151:
https://bugzilla.mozilla.org/show_bug.cgi?id=243151
patch-jsosdep:
Fix the FreeBSD define
patch-oji-threads:
64-bit wide pthread_t
patch-xptcinvoke_x86_64_linux:
Setting a possibly uninitialized variable (value).
- Fix a crash that can occur using gtk+-2.7 and possibly 2.6.10 when closing
windows. https://bugzilla.mozilla.org/show_bug.cgi?id=3002 [2]
- Get rid of FIREFOX and FF_VER, best to use PORTNAME and PORTVERSION
varibles that are arleady exist and lesser complicate.
- Change all hardcore of 'thunderbird' to PORTNAME.
- Change a manual loop for patch all.js to find(1), so we can sleep
on it.
Submitted by: mi [1], marcus [2]
Reviewed by: my team, FreeBSD GNOME Team.
2005-08-28 10:00:00 +02:00
|
|
|
USE_BZIP2= yes
|
|
|
|
USE_GMAKE= yes
|
2011-06-30 20:19:48 +02:00
|
|
|
USE_GL= gl
|
2003-09-04 08:31:09 +02:00
|
|
|
|
2011-08-16 20:23:05 +02:00
|
|
|
MOZ_PROTOCOLS= http,ftp,file,viewsource,res,data,wyciwyg,websocket
|
- Update firefox to 1.5
- Add Makefile.common
o A new build/install system for gecko ports, Makefile.common
includes many generic routines and common tasks.
o Fix ld-run-path in all gecko's by using -Wl,-rpath,${moz_libdir}
thus removing the need to have a startup script for ports that
depend on gecko. [2]
o Use system libm, nss, nspr in all gecko ports
- Add bsd.gecko.mk
o This is the predecessor to WITH_MOZILLA=[mozilla|firefox|...]
with a more robust way of detecting a gecko a end user wishs to
use.
o bsd.gecko.mk abstracts the selection of gecko-based backends. It
allows users and porters to support any available gecko backend
without needing to build many conditional tests. ${USE_GECKO} is the
list of backends that your port can handle, and ${GECKO} is set by
bsd.gecko.mk to be the chosen backend. Users set ${WITH_GECKO} to the
list of gecko backends they want on their system.
Port Makefile example:
USE_GECKO=firefox mozilla seamonkey thunderbird
.include <bsd.port.pre.mk>
.include "${.CURDIR}/../../www/mozilla/bsd.gecko.mk"
End user example:
WITH_GECKO=seamonkey firefox
We highly recommend moving away from using WITH_MOZILLA and switching to
USE/WITH_GECKO.
PR: 89052 [2]
Submitted by: vs [2]
Obtained from: www/firefox
Thanks to: adamw, marcus, and mezz for ideas, bug squashing, and more
sajd from irc.freenode.org/#FreeBSD-Gnome for
pointing out many bugs
2005-11-29 22:12:28 +01:00
|
|
|
MOZ_GRAPHICS= default,-xbm
|
2011-08-18 12:01:59 +02:00
|
|
|
MOZ_OPTIONS= --program-transform-name='s/thunderbird/${MOZILLA}/' \
|
|
|
|
--with-default-mozilla-five-home=${PREFIX}/lib/${MOZILLA} \
|
2010-08-03 22:55:29 +02:00
|
|
|
--enable-single-profile --disable-profilesharing \
|
|
|
|
--enable-application=mail --enable-official-branding \
|
2011-06-30 20:19:48 +02:00
|
|
|
--disable-updater --disable-necko-wifi \
|
|
|
|
--with-system-libevent=${LOCALBASE}
|
2010-08-03 22:55:29 +02:00
|
|
|
MOZ_MK_OPTIONS= MOZ_MOZ_THUNDERBIRD=1 MAIL_PKG_SHARED=1
|
|
|
|
MOZ_EXPORT= MOZ_THUNDERBIRD=1 MAIL_PKG_SHARED=1
|
|
|
|
MOZ_PKGCONFIG_FILES=
|
|
|
|
|
2011-08-18 12:01:59 +02:00
|
|
|
PORTNAME_ICON= ${MOZILLA}.png
|
2010-08-03 22:55:29 +02:00
|
|
|
PORTNAME_ICON_SRC= ${PREFIX}/lib/${MOZILLA}/chrome/icons/default/default48.png
|
|
|
|
|
|
|
|
SYSTEM_PREFS= ${FAKEDIR}/lib/${PORTNAME}/defaults/pref/${PORTNAME}.js
|
2006-01-12 06:54:32 +01:00
|
|
|
MOZ_PIS_SCRIPTS=moz_pis_S50cleanhome
|
2006-01-08 20:44:30 +01:00
|
|
|
|
2011-09-28 00:23:30 +02:00
|
|
|
OPTIONS= LIGHTNING "Enable calendar extension" off
|
2006-02-01 18:42:43 +01:00
|
|
|
|
2003-09-04 08:31:09 +02:00
|
|
|
.include <bsd.port.pre.mk>
|
|
|
|
|
2011-08-16 20:23:05 +02:00
|
|
|
WRKSRC= ${WRKDIR}/comm-release
|
2010-08-03 22:55:29 +02:00
|
|
|
MOZSRC:= ${WRKSRC}/mozilla
|
|
|
|
|
2011-03-01 23:27:20 +01:00
|
|
|
.if ${ARCH} == powerpc64
|
|
|
|
.if ${OSVERSION} < 900033
|
|
|
|
BROKEN= Needs binutils 2.17.50 to build
|
|
|
|
.else
|
|
|
|
CONFIGURE_ENV+= UNAME_m="powerpc64"
|
|
|
|
CFLAGS+= -mminimal-toc
|
|
|
|
.endif
|
|
|
|
.endif
|
|
|
|
|
2010-08-03 22:55:29 +02:00
|
|
|
.if ${HAVE_GNOME:Mlibgnomeui}!=""
|
|
|
|
USE_GNOME+= libgnomeui
|
|
|
|
MOZ_OPTIONS+= --enable-gnomeui
|
|
|
|
.else
|
|
|
|
MOZ_OPTIONS+= --disable-gnomeui
|
|
|
|
.endif
|
2006-07-06 00:12:13 +02:00
|
|
|
|
2010-08-03 22:55:29 +02:00
|
|
|
.if defined(WITHOUT_DBUS)
|
|
|
|
MOZ_OPTIONS+= --disable-dbus --disable-libnotify
|
|
|
|
.else
|
|
|
|
LIB_DEPENDS+= dbus-glib-1.2:${PORTSDIR}/devel/dbus-glib \
|
2011-08-23 20:39:19 +02:00
|
|
|
notify.4:${PORTSDIR}/devel/libnotify
|
2006-07-06 00:12:13 +02:00
|
|
|
.endif
|
- Repo copy a lot of changes from www/firefox/Makefile. The best part is that
before it would install in the strange place like this.
${X11BASE}/lib/thunderbird/include/thunderbird-1.0.6
Now it will install in the correct place like firefox:
${X11BASE}/include/thunderbird
Also, get *.pc and idl files install.
- Didn't copy following from www/firefox/Makefile:
* plugins stuff, because it's known cause the stability problem like
crash.
* EXTRA_SCRIPTS=${PORTNAME}.rb, thunderbird doesn't need it.
- Make portlint happier.
- Add Java 5 plugins support. [1]
- Use system's libm (/usr/src/lib/msun), nss, nspr and etc. Also, do
not extract those. Better explain, use external dependencies. [1]
- Teach firefox-config and *.pc files for nspr that will making other
third apps to buildable like epiphany, vlc-devel's mozilla plugins
and etc. Have been tested with full GNOME 2.11.x build too.
- Add four patches: [1]
patch-bugzilla243151:
https://bugzilla.mozilla.org/show_bug.cgi?id=243151
patch-jsosdep:
Fix the FreeBSD define
patch-oji-threads:
64-bit wide pthread_t
patch-xptcinvoke_x86_64_linux:
Setting a possibly uninitialized variable (value).
- Fix a crash that can occur using gtk+-2.7 and possibly 2.6.10 when closing
windows. https://bugzilla.mozilla.org/show_bug.cgi?id=3002 [2]
- Get rid of FIREFOX and FF_VER, best to use PORTNAME and PORTVERSION
varibles that are arleady exist and lesser complicate.
- Change all hardcore of 'thunderbird' to PORTNAME.
- Change a manual loop for patch all.js to find(1), so we can sleep
on it.
Submitted by: mi [1], marcus [2]
Reviewed by: my team, FreeBSD GNOME Team.
2005-08-28 10:00:00 +02:00
|
|
|
|
2011-06-30 20:19:48 +02:00
|
|
|
.if ${ARCH} == amd64 || ${ARCH} == i386
|
|
|
|
BUILD_DEPENDS+= yasm:${PORTSDIR}/devel/yasm
|
|
|
|
.endif
|
|
|
|
|
2011-07-04 23:27:06 +02:00
|
|
|
.if defined(WITH_LIGHTNING)
|
|
|
|
MOZ_OPTIONS+= --enable-calendar
|
2011-10-19 17:05:41 +02:00
|
|
|
MOZ_MK_OPTIONS+= MOZ_CO_PROJECT=calendar
|
2011-07-04 23:27:06 +02:00
|
|
|
LIGHTNING_DIR= share/lightning
|
2011-10-19 17:05:41 +02:00
|
|
|
XPI_FILE= ${MOZSRC}/dist/xpi-stage/lightning.xpi
|
|
|
|
XPI_LIBDIR= ${PREFIX}/lib/xpi
|
|
|
|
XPI_ORIG_ID= {e2fda1a4-762b-4020-b5ad-a41df1933103}
|
|
|
|
XPI_ID= lightning@thunderbird.mozilla.org
|
2011-07-04 23:27:06 +02:00
|
|
|
.else
|
|
|
|
MOZ_OPTIONS+= --disable-calendar
|
|
|
|
.endif
|
|
|
|
|
2011-08-16 20:23:05 +02:00
|
|
|
post-extract:
|
2011-08-18 12:01:59 +02:00
|
|
|
@${SED} -e 's|@PORTNAME_ICON@|${PORTNAME_ICON}|;s|@MOZILLA@|${MOZILLA}|' \
|
2010-08-03 22:55:29 +02:00
|
|
|
<${FILESDIR}/thunderbird.desktop.in >${WRKDIR}/${MOZILLA_EXEC_NAME}.desktop
|
2003-09-04 08:31:09 +02:00
|
|
|
|
|
|
|
post-patch:
|
2011-06-30 20:19:48 +02:00
|
|
|
@${GREP} -Flr \"/proc ${MOZSRC}/ipc/chromium/src/base | ${XARGS} ${REINPLACE_CMD} \
|
|
|
|
-e 's|/proc/self/fd|/dev/fd|' \
|
|
|
|
-e 's|/proc["/]|/compat/linux&|'
|
2011-08-18 12:01:59 +02:00
|
|
|
@${REINPLACE_CMD} -e 's|%%PTHREAD_LIBS%%|${PTHREAD_LIBS}|' \
|
2010-08-03 22:55:29 +02:00
|
|
|
${MOZSRC}/storage/build/Makefile.in \
|
2011-06-30 20:19:48 +02:00
|
|
|
${MOZSRC}/toolkit/library/Makefile.in \
|
2010-08-03 22:55:29 +02:00
|
|
|
${MOZSRC}/db/sqlite3/src/Makefile.in
|
2007-04-20 19:35:26 +02:00
|
|
|
@${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|' \
|
2010-08-03 22:55:29 +02:00
|
|
|
${MOZSRC}/security/manager/ssl/src/Makefile.in \
|
|
|
|
${MOZSRC}/js/src/config/mkdepend/Makefile.in \
|
|
|
|
${MOZSRC}/js/src/config/config.mk
|
|
|
|
@${REINPLACE_CMD} -e 's|-lc_r|${PTHREAD_LIBS}|g ; \
|
|
|
|
s|-lpthread|${PTHREAD_LIBS}|g ; \
|
|
|
|
s|echo aout|echo elf|g ; \
|
|
|
|
s|/usr/X11R6|${LOCALBASE}|g' \
|
|
|
|
${MOZSRC}/js/src/configure
|
|
|
|
|
|
|
|
pre-configure:
|
|
|
|
(cd ${WRKSRC} && ${AUTOCONF})
|
|
|
|
(cd ${MOZSRC} && ${AUTOCONF})
|
|
|
|
(cd ${MOZSRC}/js/src/ && ${AUTOCONF})
|
2003-09-04 08:31:09 +02:00
|
|
|
|
2006-12-20 22:37:43 +01:00
|
|
|
port-pre-install:
|
2005-12-03 22:09:56 +01:00
|
|
|
${MKDIR} ${FAKEDIR}/lib/${PORTNAME}/defaults
|
2006-12-20 22:37:43 +01:00
|
|
|
|
|
|
|
pre-install:
|
2006-01-12 06:54:32 +01:00
|
|
|
@${ECHO_CMD} 'share/applications/${PORTNAME}.desktop' >> ${PLIST}
|
2010-08-03 22:55:29 +02:00
|
|
|
@${ECHO_CMD} 'share/pixmaps/${PORTNAME_ICON}' >> ${PLIST}
|
2006-12-20 22:37:43 +01:00
|
|
|
@${ECHO_CMD} '@dirrmtry share/applications' >> ${PLIST}
|
2003-09-04 08:31:09 +02:00
|
|
|
|
2003-12-08 00:22:17 +01:00
|
|
|
post-install:
|
2005-04-26 21:30:55 +02:00
|
|
|
${MKDIR} ${PREFIX}/share/applications
|
2010-08-03 22:55:29 +02:00
|
|
|
${INSTALL_DATA} ${WRKDIR}/${MOZILLA_EXEC_NAME}.desktop ${PREFIX}/share/applications
|
|
|
|
${LN} -sf ${PORTNAME_ICON_SRC} ${PREFIX}/share/pixmaps/${PORTNAME_ICON}
|
2011-07-04 23:27:06 +02:00
|
|
|
.if defined(WITH_LIGHTNING)
|
2011-10-19 17:05:41 +02:00
|
|
|
@${MKDIR} ${XPI_LIBDIR}/${XPI_ID} ${XPI_LIBDIR}/symlinks/thunderbird
|
|
|
|
@(cd ${XPI_LIBDIR}/${XPI_ID}; ${TAR} -xf ${XPI_FILE})
|
|
|
|
@${CHOWN} -R ${SHAREOWN}:${SHAREGRP} ${XPI_LIBDIR}/${XPI_ID}
|
|
|
|
@${REINPLACE_CMD} -i "" "s/${XPI_ORIG_ID}/${XPI_ID}/" ${XPI_LIBDIR}/${XPI_ID}/install.rdf
|
|
|
|
@${CHMOD} -R a+rX,go-w ${XPI_LIBDIR}/${XPI_ID}
|
|
|
|
@${LN} -sf ${XPI_LIBDIR}/${XPI_ID} ${LOCALBASE}/lib/thunderbird/extensions 2>/dev/null || true
|
|
|
|
@${LN} -sf ${XPI_LIBDIR}/${XPI_ID} ${XPI_LIBDIR}/symlinks/thunderbird 2>/dev/null || true
|
|
|
|
@(cd ${XPI_LIBDIR}; ${FIND} ${XPI_ID} -not -type d) | ${SORT} | \
|
|
|
|
${SED} -ne 's,^,lib/xpi/,p' >> ${TMPPLIST}
|
|
|
|
@${ECHO_CMD} 'lib/xpi/symlinks/thunderbird/${XPI_ID}' >> ${TMPPLIST}
|
|
|
|
@${ECHO_CMD} '@exec ${LN} -sf %D/lib/xpi/${XPI_ID} ${LOCALBASE}/lib/thunderbird/extensions 2>/dev/null || true' >> ${TMPPLIST}
|
|
|
|
@${ECHO_CMD} '@unexec ${RM} -f ${LOCALBASE}/lib/thunderbird/extensions/${XPI_ID}' >> ${TMPPLIST}
|
|
|
|
@(cd ${XPI_LIBDIR}; ${FIND} ${XPI_ID} -type d) | ${SORT} -r | \
|
|
|
|
${SED} -ne 's,^,@dirrm lib/xpi/,p' >> ${TMPPLIST}
|
|
|
|
@${ECHO_CMD} '@unexec rmdir %D/lib/xpi/symlinks/thunderbird 2>/dev/null || true' >> ${TMPPLIST}
|
|
|
|
@${ECHO_CMD} '@unexec rmdir %D/lib/xpi/symlinks 2>/dev/null || true' >> ${TMPPLIST}
|
|
|
|
@${ECHO_CMD} '@unexec rmdir %D/lib/xpi 2>/dev/null || true' >> ${TMPPLIST}
|
2011-07-04 23:27:06 +02:00
|
|
|
.endif
|
2003-09-04 08:31:09 +02:00
|
|
|
|
|
|
|
.include <bsd.port.post.mk>
|