115 lines
3.7 KiB
Makefile

# $OpenBSD: Makefile,v 1.253 2017/08/24 09:45:23 sthen Exp $
COMMENT-main = Mozilla e-mail, rss and usenet client
COMMENT-lightning = Mozilla Thunderbird calendar extension
# Don't forget to bump mail/thunderbird-i18n after updates.
MOZILLA_VERSION = 52.2.1
MOZILLA_BRANCH = release
MOZILLA_PROJECT = thunderbird
MOZILLA_CODENAME = mail
EXTRACT_SUFX = .tar.xz
MULTI_PACKAGES = -main -lightning
PKGNAME-main = ${PKGNAME}
PKGNAME-lightning = lightning-5.4.2.1
EPOCH-lightning = 0
REVISION-lightning = 0
REVISION-main = 2
HOMEPAGE = http://www.mozilla.org/thunderbird/
SO_VERSION = 32.0
# NOTE: Must bump minor version if any shlib's are removed from the
# components dir to avoid pkg_add -r issues.
MOZILLA_LIBS = ldap60 ldif60 lgpllibs mozgtk mozsqlite3 prldap60 xul
CATEGORIES= mail news
# MPL
PERMIT_PACKAGE_CDROM= Yes
MODULES = www/mozilla devel/gettext lang/python
MODPY_RUNDEP = No
COMPILER = clang
MODCLANG_ARCHS = amd64 i386
MOZILLA_USE_BUNDLED_LIBEVENT = Yes
# firefox >= 46 defaults to gtk+3
MOZILLA_USE_GTK3 = Yes
# use bundled sqlite which has SQLITE_ENABLE_FTS3_TOKENIZER (#1252937)
MOZILLA_USE_BUNDLED_SQLITE = Yes
NO_TEST = Yes
CONFIGURE_STYLE = simple
CONFIGURE_ARGS += --prefix=${PREFIX}
# SQLITE_CFLAGS is set from pkgconfig, but it's not used for all files that need it, e.g.
# mailnews/build/nsMailModule.cpp pulls in mailnews/extensions/fts3/src/nsFts3Tokenizer.h
# and .../fts3/src/fts3_tokenizer.h which fails to find sqlite3.h.
CONFIGURE_ENV = CPPFLAGS="-I${LOCALBASE}/include"
LIB_DEPENDS-lightning = STEM->=${MOZILLA_VERSION:S/b/beta/}:${BUILD_PKGPATH},-main
WANTLIB-lightning = lib/${MOZILLA_PROJECT}-${MOZILLA_VER}/xul \
c m $(COMPILER_LIBCXX) nspr4 plc4 plds4 pthread
WANTLIB += X11-xcb pixman-1 pthread-stubs xcb xcb-shm
# build lightning xpi
CONFIGURE_ARGS += --enable-calendar
# to be able to link when building with clang on i386
.if ${MACHINE_ARCH} == "i386"
CONFIGURE_ARGS += --disable-debug-symbols
.endif
# bug 857628
CONFIGURE_ARGS += --enable-pie
ALL_TARGET = default
GNU_ARCH = ${MACHINE_ARCH:S/amd64/x86_64/}
# guid for gdata-provider comes from em:id in install.rdf
GUIDS = gdata-provider {a62ef8ec-5fdc-40c2-873c-223b8a6925cc} #\
# lightning {e2fda1a4-762b-4020-b5ad-a41df1933103}
EXTDIR = ${PREFIX}/lib/${MOZILLA_PROJECT}-${MOZILLA_VER}/extensions/
CONFIGURE_ENV+=MOZCONFIG=${WRKSRC}/mozilla/.mozconfig
# MOZCONFIG is mandatory now even if empty ?
post-patch:
touch ${WRKSRC}/mozilla/.mozconfig
post-install:
.for xpi guid in ${GUIDS}
cp ${WRKBUILD}/dist/xpi-stage/${xpi}*.xpi ${EXTDIR}/${guid}.xpi
.endfor
mv ${PREFIX}/lib/${MOZILLA_PROJECT}-${MOZILLA_VER}/distribution/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103} \
${EXTDIR}
rmdir ${PREFIX}/lib/${MOZILLA_PROJECT}-${MOZILLA_VER}/distribution/extensions/
# install prefs
${SUBST_DATA} ${FILESDIR}/all-openbsd.js \
${PREFIX}/lib/${MOZILLA_PROJECT}-${MOZILLA_VER}/defaults/pref/all-openbsd.js
# install distribution.ini file
${INSTALL_DATA_DIR} ${PREFIX}/lib/${MOZILLA_PROJECT}-${MOZILLA_VER}/distribution
echo "[Global]\nid=OpenBSD\nversion=${OSREV}\nabout=Packaged by ${MAINTAINER}\n" > \
${PREFIX}/lib/${MOZILLA_PROJECT}-${MOZILLA_VER}/distribution/distribution.ini
# install desktop file
${INSTALL_DATA_DIR} ${PREFIX}/share/applications/ ; \
${SUBST_DATA} ${FILESDIR}/${MOZILLA_PROJECT}.desktop \
${PREFIX}/share/applications/${MOZILLA_PROJECT}.desktop ; \
# install icon for desktop file
${INSTALL_DATA_DIR} ${PREFIX}/share/pixmaps/
${INSTALL_DATA} ${PREFIX}/lib/${MOZILLA_PROJECT}-${MOZILLA_VER}/chrome/icons/default/default256.png \
${PREFIX}/share/pixmaps/${MOZILLA_PROJECT}.png
# remove useless empty dirs ?
rm -Rf ${PREFIX}/lib/${MOZILLA_PROJECT}-${MOZILLA_VER}/modules/
.include <bsd.port.mk>