Gentoo Archives: gentoo-commits

From: Lars Wendler <polynomial-c@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/mozilla:master commit in: www-client/seamonkey/
Date: Wed, 01 Jan 2014 20:14:54
Message-Id: 1388607264.a197496ec663ff24aa5e4ffca393237407542ec1.polynomial-c@gentoo
1 commit: a197496ec663ff24aa5e4ffca393237407542ec1
2 Author: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
3 AuthorDate: Wed Jan 1 20:14:24 2014 +0000
4 Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
5 CommitDate: Wed Jan 1 20:14:24 2014 +0000
6 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/mozilla.git;a=commit;h=a197496e
7
8 seamonkey: removed 2.22.1 version.
9
10 ---
11 www-client/seamonkey/seamonkey-2.22.1.ebuild | 366 ---------------------------
12 1 file changed, 366 deletions(-)
13
14 diff --git a/www-client/seamonkey/seamonkey-2.22.1.ebuild b/www-client/seamonkey/seamonkey-2.22.1.ebuild
15 deleted file mode 100644
16 index c72970d..0000000
17 --- a/www-client/seamonkey/seamonkey-2.22.1.ebuild
18 +++ /dev/null
19 @@ -1,366 +0,0 @@
20 -# Copyright 1999-2013 Gentoo Foundation
21 -# Distributed under the terms of the GNU General Public License v2
22 -# $Header: /var/cvsroot/gentoo-x86/www-client/seamonkey/seamonkey-2.21-r1.ebuild,v 1.3 2013/10/28 07:51:57 polynomial-c Exp $
23 -
24 -EAPI="3"
25 -WANT_AUTOCONF="2.1"
26 -
27 -# This list can be updated with scripts/get_langs.sh from the mozilla overlay
28 -MOZ_LANGS=(be ca cs de en en-GB en-US es-AR es-ES fi fr gl hu it ja lt nb-NO nl
29 - pl pt-PT ru sk sv-SE tr uk zh-CN zh-TW)
30 -
31 -MOZ_PV="${PV/_pre*}"
32 -MOZ_PV="${MOZ_PV/_alpha/a}"
33 -MOZ_PV="${MOZ_PV/_beta/b}"
34 -MOZ_PV="${MOZ_PV/_rc/rc}"
35 -MOZ_P="${P}"
36 -MY_MOZ_P="${PN}-${MOZ_PV}"
37 -
38 -if [[ ${PV} == *_pre* ]] ; then
39 - MOZ_FTP_URI="ftp://ftp.mozilla.org/pub/${PN}/candidates/${MOZ_PV}-candidates/build${PV##*_pre}"
40 - MOZ_LANGPACK_PREFIX="linux-i686/xpi/"
41 - # And the langpack stuff stays at eclass defaults
42 -else
43 - MOZ_FTP_URI="ftp://ftp.mozilla.org/pub/${PN}/releases/${MOZ_PV}"
44 - MOZ_LANGPACK_PREFIX="langpack/${MY_MOZ_P}."
45 - MOZ_LANGPACK_SUFFIX=".langpack.xpi"
46 -fi
47 -
48 -inherit check-reqs flag-o-matic toolchain-funcs eutils mozconfig-3 multilib pax-utils fdo-mime autotools mozextension nsplugins mozlinguas
49 -
50 -PATCHFF="firefox-25.0-patches-0.3"
51 -PATCH="${PN}-2.14-patches-01"
52 -EMVER="1.6"
53 -
54 -DESCRIPTION="Seamonkey Web Browser"
55 -HOMEPAGE="http://www.seamonkey-project.org"
56 -
57 -if [[ ${PV} == *_pre* ]] ; then
58 - # pre-releases. No need for arch teams to change KEYWORDS here.
59 -
60 - KEYWORDS=""
61 -else
62 - # This is where arch teams should change the KEYWORDS.
63 -
64 - KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
65 -fi
66 -
67 -SLOT="0"
68 -LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
69 -IUSE="+chatzilla +crypt gstreamer +ipc +jit minimal pulseaudio +roaming selinux system-cairo system-icu system-jpeg system-sqlite"
70 -
71 -SRC_URI="${SRC_URI}
72 - ${MOZ_FTP_URI}/source/${MY_MOZ_P}.source.tar.bz2 -> ${P}.source.tar.bz2
73 - http://dev.gentoo.org/~anarchy/mozilla/patchsets/${PATCHFF}.tar.xz
74 - http://dev.gentoo.org/~polynomial-c/mozilla/patchsets/${PATCH}.tar.xz
75 - crypt? ( http://www.enigmail.net/download/source/enigmail-${EMVER}.tar.gz )"
76 -
77 -ASM_DEPEND=">=dev-lang/yasm-1.1"
78 -
79 -# Mesa 7.10 needed for WebGL + bugfixes
80 -RDEPEND=">=dev-libs/nss-3.15.3
81 - >=dev-libs/nspr-4.10.2
82 - >=dev-libs/glib-2.26:2
83 - >=media-libs/mesa-7.10
84 - >=media-libs/libpng-1.5.17[apng]
85 - >=x11-libs/pango-1.14.0
86 - >=x11-libs/gtk+-2.14:2
87 - virtual/libffi
88 - gstreamer? ( media-plugins/gst-plugins-meta:0.10[ffmpeg] )
89 - system-cairo? ( >=x11-libs/cairo-1.12[X] )
90 - system-icu? ( >=dev-libs/icu-0.51.1 )
91 - system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
92 - system-sqlite? ( >=dev-db/sqlite-3.7.17:3[secure-delete,debug=] )
93 - >=media-libs/libvpx-1.0.0
94 - crypt? ( >=app-crypt/gnupg-1.4 )
95 - kernel_linux? ( media-libs/alsa-lib )
96 - pulseaudio? ( media-sound/pulseaudio )
97 - selinux? ( sec-policy/selinux-mozilla )"
98 -
99 -DEPEND="${RDEPEND}
100 - !elibc_glibc? ( dev-libs/libexecinfo )
101 - >=sys-devel/binutils-2.16.1
102 - virtual/pkgconfig
103 - amd64? ( ${ASM_DEPEND}
104 - virtual/opengl )
105 - x86? ( ${ASM_DEPEND}
106 - virtual/opengl )"
107 -
108 -if [[ ${PV} == *beta* ]] ; then
109 - S="${WORKDIR}/comm-beta"
110 -else
111 - S="${WORKDIR}/comm-release"
112 -fi
113 -
114 -pkg_setup() {
115 - if [[ ${PV} == *_pre* ]] ; then
116 - ewarn "You're using an unofficial release of ${PN}. Don't file any bug in"
117 - ewarn "Gentoo's Bugtracker against this package in case it breaks for you."
118 - ewarn "Those belong to upstream: https://bugzilla.mozilla.org"
119 - fi
120 -
121 - moz_pkgsetup
122 -
123 - # Ensure we have enough disk space to compile
124 - if use debug || use test ; then
125 - CHECKREQS_DISK_BUILD="8G"
126 - else
127 - CHECKREQS_DISK_BUILD="4G"
128 - fi
129 - check-reqs_pkg_setup
130 -}
131 -
132 -src_unpack() {
133 - unpack ${A}
134 -
135 - # Unpack language packs
136 - mozlinguas_src_unpack
137 -}
138 -
139 -src_prepare() {
140 - # Apply our patches
141 - EPATCH_SUFFIX="patch" \
142 - EPATCH_FORCE="yes" \
143 - epatch "${WORKDIR}/seamonkey"
144 -
145 - # browser patches go here
146 - pushd "${S}"/mozilla &>/dev/null || die
147 - EPATCH_EXCLUDE="2000-firefox_gentoo_install_dirs.patch" \
148 - EPATCH_SUFFIX="patch" \
149 - EPATCH_FORCE="yes" \
150 - epatch "${WORKDIR}/firefox"
151 - popd &>/dev/null || die
152 - # drop -Wl,--build-id from LDFLAGS, bug #465466
153 -
154 - # Shell scripts sometimes contain DOS line endings; bug 391889
155 - grep -rlZ --include="*.sh" $'\r$' . |
156 - while read -r -d $'\0' file ; do
157 - einfo edos2unix "${file}"
158 - edos2unix "${file}" || die
159 - done
160 -
161 - if use crypt ; then
162 - mv "${WORKDIR}"/enigmail "${S}"/mailnews/extensions/enigmail
163 - #pushd "${S}"/mailnews/extensions/enigmail &>/dev/null || die
164 -
165 - #popd &>/dev/null || die
166 - fi
167 -
168 - # Allow user to apply any additional patches without modifing ebuild
169 - epatch_user
170 -
171 - local ms="${S}/mozilla"
172 -
173 - # Enable gnomebreakpad
174 - if use debug ; then
175 - sed -i -e "s:GNOME_DISABLE_CRASH_DIALOG=1:GNOME_DISABLE_CRASH_DIALOG=0:g" \
176 - "${ms}"/build/unix/run-mozilla.sh || die "sed failed!"
177 - fi
178 -
179 - # Ensure that are plugins dir is enabled as default
180 - sed -i -e "s:/usr/lib/mozilla/plugins:/usr/lib/nsbrowser/plugins:" \
181 - "${ms}"/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 32bit!"
182 - sed -i -e "s:/usr/lib64/mozilla/plugins:/usr/lib64/nsbrowser/plugins:" \
183 - "${ms}"/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 64bit!"
184 -
185 - # Don't exit with error when some libs are missing which we have in
186 - # system.
187 - sed '/^MOZ_PKG_FATAL_WARNINGS/s@= 1@= 0@' \
188 - -i "${S}"/suite/installer/Makefile.in || die
189 - # Don't error out when there's no files to be removed:
190 - sed 's@\(xargs rm\)$@\1 -f@' \
191 - -i "${ms}"/toolkit/mozapps/installer/packager.mk || die
192 -
193 - eautoreconf
194 - cd "${S}"/mozilla || die
195 - eautoconf
196 - cd js/src || die
197 - eautoconf
198 -}
199 -
200 -src_configure() {
201 - MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
202 - MEXTENSIONS="default"
203 -
204 - ####################################
205 - #
206 - # mozconfig, CFLAGS and CXXFLAGS setup
207 - #
208 - ####################################
209 -
210 - mozconfig_init
211 - mozconfig_config
212 -
213 - # It doesn't compile on alpha without this LDFLAGS
214 - use alpha && append-ldflags "-Wl,--no-relax"
215 -
216 - if use chatzilla ; then
217 - MEXTENSIONS+=",irc"
218 - else
219 - MEXTENSIONS+=",-irc"
220 - fi
221 - if ! use roaming ; then
222 - MEXTENSIONS+=",-sroaming"
223 - fi
224 -
225 - # We must force enable jemalloc 3 threw .mozconfig
226 - echo "export MOZ_JEMALLOC=1" >> ${S}/.mozconfig
227 -
228 - mozconfig_annotate '' --enable-jemalloc
229 - mozconfig_annotate '' --enable-replace-malloc
230 - mozconfig_annotate '' --prefix="${EPREFIX}"/usr
231 - mozconfig_annotate '' --libdir="${EPREFIX}"/usr/$(get_libdir)
232 - mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}"
233 - mozconfig_annotate '' --disable-gconf
234 - mozconfig_annotate '' --enable-jsd
235 - mozconfig_annotate '' --enable-canvas
236 - mozconfig_annotate '' --with-system-png
237 - mozconfig_annotate '' --enable-system-ffi
238 -
239 - # Other sm-specific settings
240 - mozconfig_annotate '' --with-default-mozilla-five-home=${MOZILLA_FIVE_HOME}
241 -
242 - mozconfig_annotate '' --target="${CTARGET:-${CHOST}}"
243 - mozconfig_annotate '' --build="${CTARGET:-${CHOST}}"
244 - mozconfig_annotate '' --enable-safe-browsing
245 -
246 - mozconfig_use_enable gstreamer
247 - mozconfig_use_enable pulseaudio
248 - mozconfig_use_enable system-cairo
249 - mozconfig_use_enable system-sqlite
250 - mozconfig_use_with system-jpeg
251 - mozconfig_use_with system-icu
252 - mozconfig_use_enable system-icu intl-api
253 - # Feature is know to cause problems on hardened
254 - mozconfig_use_enable jit ion
255 -
256 - # Use an objdir to keep things organized.
257 - echo "mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/seamonk" \
258 - >> "${S}"/.mozconfig
259 -
260 - # Finalize and report settings
261 - mozconfig_final
262 -
263 - # Work around breakage in makeopts with --no-print-directory
264 - MAKEOPTS="${MAKEOPTS/--no-print-directory/}"
265 -
266 - if [[ $(gcc-major-version) -lt 4 ]] ; then
267 - append-cxxflags -fno-stack-protector
268 - elif [[ $(gcc-major-version) -gt 4 || $(gcc-minor-version) -gt 3 ]] ; then
269 - if use amd64 || use x86 ; then
270 - append-flags -mno-avx
271 - fi
272 - fi
273 -}
274 -
275 -src_compile() {
276 - CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \
277 - MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL}" \
278 - emake -f client.mk || die
279 -
280 - # Only build enigmail extension if conditions are met.
281 - if use crypt ; then
282 - cd "${S}"/mailnews/extensions/enigmail || die
283 - ./makemake -r 2&> /dev/null
284 - cd "${S}"/seamonk/mailnews/extensions/enigmail
285 - emake || die "make enigmail failed"
286 - emake xpi || die "make enigmail xpi failed"
287 - fi
288 -}
289 -
290 -src_install() {
291 - MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
292 - DICTPATH="\"${EPREFIX}/usr/share/myspell\""
293 -
294 - local emid obj_dir="seamonk"
295 - cd "${S}/${obj_dir}"
296 -
297 - # Pax mark xpcshell for hardened support, only used for startupcache creation.
298 - pax-mark m "${S}/${obj_dir}/mozilla/dist/bin/xpcshell"
299 -
300 - # Copy our preference before omnijar is created.
301 - sed "s|SEAMONKEY_PVR|${PVR}|" "${FILESDIR}"/all-gentoo-1.js > \
302 - "${S}/${obj_dir}/mozilla/dist/bin/defaults/pref/all-gentoo.js" \
303 - || die
304 -
305 - # Set default path to search for dictionaries.
306 - echo "pref(\"spellchecker.dictionary_path\", ${DICTPATH});" \
307 - >> "${S}/${obj_dir}/mozilla/dist/bin/defaults/pref/all-gentoo.js" \
308 - || die
309 -
310 - if ! use libnotify ; then
311 - echo 'pref("browser.download.manager.showAlertOnComplete", false);' \
312 - >> "${S}/${obj_dir}/mozilla/dist/bin/defaults/pref/all-gentoo.js" \
313 - || die
314 - fi
315 -
316 - echo 'pref("extensions.autoDisableScopes", 3);' >> \
317 - "${S}/${obj_dir}/mozilla/dist/bin/defaults/pref/all-gentoo.js" \
318 - || die
319 -
320 - MOZ_MAKE_FLAGS="${MAKEOPTS}" \
321 - emake DESTDIR="${D}" install || die "emake install failed"
322 - cp -f "${FILESDIR}"/icon/${PN}.desktop "${T}" || die
323 -
324 - if use crypt ; then
325 - cd "${T}" || die
326 - unzip "${S}"/${obj_dir}/mozilla/dist/bin/enigmail*.xpi install.rdf || die
327 - emid=$(sed -n '/<em:id>/!d; s/.*\({.*}\).*/\1/; p; q' install.rdf)
328 -
329 - dodir ${MOZILLA_FIVE_HOME}/extensions/${emid} || die
330 - cd "${D}"${MOZILLA_FIVE_HOME}/extensions/${emid} || die
331 - unzip "${S}"/${obj_dir}/mozilla/dist/bin/enigmail*.xpi || die
332 -
333 - cd "${S}" || die
334 - fi
335 -
336 - sed 's|^\(MimeType=.*\)$|\1text/x-vcard;text/directory;application/mbox;message/rfc822;x-scheme-handler/mailto;|' \
337 - -i "${T}"/${PN}.desktop || die
338 - sed 's|^\(Categories=.*\)$|\1Email;|' -i "${T}"/${PN}.desktop \
339 - || die
340 -
341 - # Install language packs
342 - mozlinguas_src_install
343 -
344 - # Add StartupNotify=true bug 290401
345 - if use startup-notification ; then
346 - echo "StartupNotify=true" >> "${T}"/${PN}.desktop
347 - fi
348 -
349 - # Install icon and .desktop for menu entry
350 - newicon "${S}"/suite/branding/nightly/content/icon64.png ${PN}.png \
351 - || die
352 - domenu "${T}"/${PN}.desktop || die
353 -
354 - # Required in order to use plugins and even run seamonkey on hardened.
355 - pax-mark m "${ED}"${MOZILLA_FIVE_HOME}/{seamonkey,seamonkey-bin,plugin-container}
356 -
357 - if use minimal ; then
358 - rm -rf "${ED}"/usr/include "${ED}${MOZILLA_FIVE_HOME}"/{idl,include,lib,sdk}
359 - fi
360 -
361 - # Handle plugins dir through nsplugins.eclass
362 - share_plugins_dir
363 -
364 - doman "${S}"/${obj_dir}/suite/app/${PN}.1 || die
365 -}
366 -
367 -pkg_preinst() {
368 - MOZILLA_FIVE_HOME="${ROOT}/usr/$(get_libdir)/${PN}"
369 -
370 - if [ -d ${MOZILLA_FIVE_HOME}/plugins ] ; then
371 - rm ${MOZILLA_FIVE_HOME}/plugins -rf
372 - fi
373 -}
374 -
375 -pkg_postinst() {
376 - MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
377 -
378 - # Update mimedb for the new .desktop file
379 - fdo-mime_desktop_database_update
380 -
381 - if use chatzilla ; then
382 - elog "chatzilla is now an extension which can be en-/disabled and configured via"
383 - elog "the Add-on manager."
384 - fi
385 -}