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/files/, www-client/seamonkey/
Date: Mon, 24 Jul 2017 14:18:32
Message-Id: 1500905882.77a56afe8fd8e19d6bf7564318c851af76b42df7.polynomial-c@gentoo
1 commit: 77a56afe8fd8e19d6bf7564318c851af76b42df7
2 Author: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
3 AuthorDate: Mon Jul 24 14:05:24 2017 +0000
4 Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
5 CommitDate: Mon Jul 24 14:18:02 2017 +0000
6 URL: https://gitweb.gentoo.org/proj/mozilla.git/commit/?id=77a56afe
7
8 seamonkey: Added latest revision.
9
10 ...ust-contain-fPIC-when-checking-the-linker.patch | 35 +++++++++++
11 www-client/seamonkey/metadata.xml | 72 +++++++++++-----------
12 ...monkey-2.48.ebuild => seamonkey-2.48-r1.ebuild} | 67 ++++++++++----------
13 3 files changed, 106 insertions(+), 68 deletions(-)
14
15 diff --git a/www-client/seamonkey/files/0001-CFLAGS-must-contain-fPIC-when-checking-the-linker.patch b/www-client/seamonkey/files/0001-CFLAGS-must-contain-fPIC-when-checking-the-linker.patch
16 new file mode 100644
17 index 0000000..fe3130e
18 --- /dev/null
19 +++ b/www-client/seamonkey/files/0001-CFLAGS-must-contain-fPIC-when-checking-the-linker.patch
20 @@ -0,0 +1,35 @@
21 +From 4604a80b052456f20187d89e5c3e115ef0bb7251 Mon Sep 17 00:00:00 2001
22 +From: "Jory A. Pratt" <anarchy@g.o>
23 +Date: Mon, 24 Jul 2017 06:10:11 -0500
24 +Subject: [PATCH] CFLAGS must contain -fPIC when checking the linker
25 + https://bugs.gentoo.org/show_bug.cgi?id=607350
26 +
27 +Signed-off-by: Jory A. Pratt <anarchy@g.o>
28 +---
29 + mozilla/build/autoconf/compiler-opts.m4 | 4 ++++
30 + 1 file changed, 4 insertions(+)
31 +
32 +diff --git a/mozilla/build/autoconf/compiler-opts.m4 b/mozilla/build/autoconf/compiler-opts.m4
33 +index c12d400..639e99e 100644
34 +--- a/mozilla/build/autoconf/compiler-opts.m4
35 ++++ b/mozilla/build/autoconf/compiler-opts.m4
36 +@@ -268,6 +268,8 @@ MOZ_ARG_ENABLE_BOOL(pie,
37 +
38 + if test "$GNU_CC" -a -n "$MOZ_PIE"; then
39 + AC_MSG_CHECKING([for PIE support])
40 ++ _SAVE_CFLAGS=$CFLAGS
41 ++ CFLAGS="$CFLAGS -fPIC"
42 + _SAVE_LDFLAGS=$LDFLAGS
43 + LDFLAGS="$LDFLAGS -pie"
44 + AC_TRY_LINK(,,AC_MSG_RESULT([yes])
45 +@@ -275,6 +277,8 @@ if test "$GNU_CC" -a -n "$MOZ_PIE"; then
46 + AC_MSG_RESULT([no])
47 + AC_MSG_ERROR([--enable-pie requires PIE support from the linker.]))
48 + LDFLAGS=$_SAVE_LDFLAGS
49 ++ CFLAGS=$_SAVE_CFLAGS
50 ++
51 + fi
52 +
53 + AC_SUBST(MOZ_PROGRAM_LDFLAGS)
54 +--
55 +2.13.3
56
57 diff --git a/www-client/seamonkey/metadata.xml b/www-client/seamonkey/metadata.xml
58 index 154a2a5..484e981 100644
59 --- a/www-client/seamonkey/metadata.xml
60 +++ b/www-client/seamonkey/metadata.xml
61 @@ -1,40 +1,40 @@
62 <?xml version="1.0" encoding="UTF-8"?>
63 <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
64 <pkgmetadata>
65 -<maintainer type="person">
66 - <email>polynomial-c@g.o</email>
67 - <name>Lars Wendler</name>
68 - </maintainer>
69 -<maintainer type="project">
70 - <email>mozilla@g.o</email>
71 - <name>Gentoo Mozilla Team</name>
72 - </maintainer>
73 -<use>
74 - <flag name="calendar">Build Mozilla's calendar</flag>
75 - <flag name="chatzilla">Build Mozilla's IRC client (default on)</flag>
76 - <flag name="custom-optimization">Build with user-specified compiler optimizations
77 - (-Os, -O0, -O1, -O2, -O3) from CFLAGS (unsupported)</flag>
78 - <flag name="gmp-autoupdate">Allow Gecko Media Plugins (binary blobs) to be automatically
79 - downloaded and kept up-to-date in user profiles</flag>
80 - <flag name="gtk3">Use the cairo-gtk3 rendering engine</flag>
81 - <flag name="ipc">Use inter-process communication between tabs and plugins.
82 - Allows for greater stability in case of plugin crashes</flag>
83 - <flag name="jemalloc">Enable or disable jemalloc</flag>
84 - <flag name="roaming">Build roaming extension support (default on)</flag>
85 - <flag name="skia">Enable the SKIA engine for 2D rendering as an alternative to cairo</flag>
86 - <flag name="system-cairo">Use the system-wide <pkg>x11-libs/cairo</pkg>
87 - instead of bundled.</flag>
88 - <flag name="system-harfbuzz">Use the system-wide <pkg>media-libs/harfbuzz</pkg>
89 - instead of bundled.</flag>
90 - <flag name="system-icu">Use the sytem-wide <pkg>dev-libs/icu</pkg>
91 - instead of bundled.</flag>
92 - <flag name="system-jpeg">Use the system-wide <pkg>media-libs/libjpeg-turbo</pkg>
93 - instead of bundled.</flag>
94 - <flag name="system-libevent">Use the system-wide <pkg>dev-libs/libevent</pkg>
95 - instead of bundled.</flag>
96 - <flag name="system-libvpx">Use the system-wide <pkg>media-libs/libvpx</pkg>
97 - instead of bundled.</flag>
98 - <flag name="system-sqlite">Use the system-wide <pkg>dev-db/sqlite</pkg>
99 - installation with secure-delete enabled</flag>
100 -</use>
101 + <maintainer type="person">
102 + <email>polynomial-c@g.o</email>
103 + <name>Lars Wendler</name>
104 + </maintainer>
105 + <maintainer type="project">
106 + <email>mozilla@g.o</email>
107 + <name>Gentoo Mozilla Team</name>
108 + </maintainer>
109 + <use>
110 + <flag name="calendar">Build Mozilla's calendar</flag>
111 + <flag name="chatzilla">Build Mozilla's IRC client (default on)</flag>
112 + <flag name="custom-optimization">Build with user-specified compiler optimizations
113 + (-Os, -O0, -O1, -O2, -O3) from CFLAGS (unsupported)</flag>
114 + <flag name="gmp-autoupdate">Allow Gecko Media Plugins (binary blobs) to be automatically
115 + downloaded and kept up-to-date in user profiles</flag>
116 + <flag name="gtk3">Use the cairo-gtk3 rendering engine</flag>
117 + <flag name="ipc">Use inter-process communication between tabs and plugins.
118 + Allows for greater stability in case of plugin crashes</flag>
119 + <flag name="jemalloc">Enable or disable jemalloc</flag>
120 + <flag name="roaming">Build roaming extension support (default on)</flag>
121 + <flag name="skia">Enable the SKIA engine for 2D rendering as an alternative to cairo</flag>
122 + <flag name="system-cairo">Use the system-wide <pkg>x11-libs/cairo</pkg>
123 + instead of bundled.</flag>
124 + <flag name="system-harfbuzz">Use the system-wide <pkg>media-libs/harfbuzz</pkg>
125 + instead of bundled.</flag>
126 + <flag name="system-icu">Use the sytem-wide <pkg>dev-libs/icu</pkg>
127 + instead of bundled.</flag>
128 + <flag name="system-jpeg">Use the system-wide <pkg>media-libs/libjpeg-turbo</pkg>
129 + instead of bundled.</flag>
130 + <flag name="system-libevent">Use the system-wide <pkg>dev-libs/libevent</pkg>
131 + instead of bundled.</flag>
132 + <flag name="system-libvpx">Use the system-wide <pkg>media-libs/libvpx</pkg>
133 + instead of bundled.</flag>
134 + <flag name="system-sqlite">Use the system-wide <pkg>dev-db/sqlite</pkg>
135 + installation with secure-delete enabled</flag>
136 + </use>
137 </pkgmetadata>
138
139 diff --git a/www-client/seamonkey/seamonkey-2.48.ebuild b/www-client/seamonkey/seamonkey-2.48-r1.ebuild
140 similarity index 89%
141 rename from www-client/seamonkey/seamonkey-2.48.ebuild
142 rename to www-client/seamonkey/seamonkey-2.48-r1.ebuild
143 index 452ce3d..01fae80 100644
144 --- a/www-client/seamonkey/seamonkey-2.48.ebuild
145 +++ b/www-client/seamonkey/seamonkey-2.48-r1.ebuild
146 @@ -63,11 +63,10 @@ inherit check-reqs flag-o-matic toolchain-funcs eutils mozconfig-v6.51 multilib
147
148 PATCHFF="firefox-51.0-patches-06"
149 PATCH="${PN}-2.46-patches-01"
150 -EMVER="1.9.8.1"
151
152 DESCRIPTION="Seamonkey Web Browser"
153 HOMEPAGE="http://www.seamonkey-project.org"
154 -KEYWORDS="~alpha amd64 ~arm ~ppc ~ppc64 ~x86"
155 +KEYWORDS="~alpha ~amd64 ~arm ~ppc ~ppc64 ~x86"
156
157 SLOT="0"
158 LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
159 @@ -79,7 +78,6 @@ SRC_URI+="
160 https://dev.gentoo.org/~polynomial-c/mozilla/patchsets/${PATCHFF}.tar.xz
161 https://dev.gentoo.org/~axs/mozilla/patchsets/${PATCH}.tar.xz
162 https://dev.gentoo.org/~polynomial-c/mozilla/patchsets/${PATCH}.tar.xz
163 - crypt? ( https://www.enigmail.net/download/source/enigmail-${EMVER}.tar.gz )
164 "
165
166 ASM_DEPEND=">=dev-lang/yasm-1.1"
167 @@ -95,7 +93,9 @@ RDEPEND="
168 app-crypt/pinentry[qt4]
169 )
170 )
171 - =app-crypt/gnupg-1.4* ) )
172 + =app-crypt/gnupg-1.4* )
173 + x11-plugins/enigmail
174 + )
175 jack? ( virtual/jack )
176 "
177
178 @@ -147,6 +147,7 @@ src_unpack() {
179 src_prepare() {
180 # Apply our patches
181 eapply "${WORKDIR}"/seamonkey
182 + eapply "${FILESDIR}/0001-CFLAGS-must-contain-fPIC-when-checking-the-linker.patch" #625992
183
184 # browser patches go here
185 pushd "${S}"/mozilla &>/dev/null || die
186 @@ -262,12 +263,6 @@ src_configure() {
187 # Finalize and report settings
188 mozconfig_final
189
190 - if use crypt ; then
191 - pushd "${WORKDIR}"/enigmail &>/dev/null || die
192 - econf
193 - popd &>/dev/null || die
194 - fi
195 -
196 # Work around breakage in makeopts with --no-print-directory
197 MAKEOPTS="${MAKEOPTS/--no-print-directory/}"
198
199 @@ -289,15 +284,6 @@ src_compile() {
200 emake V=1 -f client.mk
201
202 mozlinguas_src_compile
203 -
204 - # Only build enigmail extension if conditions are met.
205 - if use crypt ; then
206 - einfo "Building enigmail"
207 - pushd "${WORKDIR}"/enigmail &>/dev/null || die
208 - emake -j1
209 - emake xpi
210 - popd &>/dev/null || die
211 - fi
212 }
213
214 src_install() {
215 @@ -337,19 +323,6 @@ src_install() {
216 emake DESTDIR="${D}" install
217 cp "${FILESDIR}"/${PN}.desktop "${T}" || die
218
219 - if use crypt ; then
220 - local em_dir="${WORKDIR}/enigmail/build"
221 - pushd "${T}" &>/dev/null || die
222 - unzip "${em_dir}"/enigmail*.xpi install.rdf || die
223 - emid=$(sed -n '/<em:id>/!d; s/.*\({.*}\).*/\1/; p; q' install.rdf)
224 - #'
225 - dodir ${MOZILLA_FIVE_HOME}/extensions/${emid}
226 - cd "${D}"${MOZILLA_FIVE_HOME}/extensions/${emid} || die
227 - unzip "${em_dir}"/enigmail*.xpi || die
228 -
229 - popd &>/dev/null || die
230 - fi
231 -
232 sed 's|^\(MimeType=.*\)$|\1text/x-vcard;text/directory;application/mbox;message/rfc822;x-scheme-handler/mailto;|' \
233 -i "${T}"/${PN}.desktop || die
234 sed 's|^\(Categories=.*\)$|\1Email;|' -i "${T}"/${PN}.desktop \
235 @@ -374,6 +347,16 @@ src_install() {
236 rm -rf "${ED}"/usr/include "${ED}${MOZILLA_FIVE_HOME}"/{idl,include,lib,sdk}
237 fi
238
239 + if use crypt ; then
240 + emid=$(sed -n '/<em:id>/!d; s/.*\({.*}\).*/\1/; p; q' "${EROOT%/}"/usr/share/enigmail/install.rdf)
241 + if [[ -n ${emid} ]]; then
242 + dosym "${EPREFIX%/}"/usr/share/enigmail ${MOZILLA_FIVE_HOME}/extensions/${emid}
243 + else
244 + eerror "${EPREFIX%/}/usr/share/enigmail/install.rdf: No such file or directory"
245 + die "<EM:ID> tag for x11-plugins/enigmail could not be found!"
246 + fi
247 + fi
248 +
249 if use chatzilla ; then
250 local emid='{59c81df5-4b7a-477b-912d-4e0fdf64e5f2}'
251
252 @@ -407,6 +390,26 @@ pkg_preinst() {
253 if [ -d ${MOZILLA_FIVE_HOME}/plugins ] ; then
254 rm ${MOZILLA_FIVE_HOME}/plugins -rf
255 fi
256 +
257 + # Because PM's dont seem to properly merge a symlink replacing a directory
258 + if use crypt ; then
259 + local emid=$(sed -n '/<em:id>/!d; s/.*\({.*}\).*/\1/; p; q' "${EROOT%/}"/usr/share/enigmail/install.rdf)
260 + local emidpath="${EROOT%/}"${MOZILLA_FIVE_HOME}/extensions/${emid}
261 + if [[ -z ${emid} ]]; then
262 + eerror "${EROOT%/}/usr/share/enigmail/install.rdf: No such file or directory"
263 + die "Could not find enigmail on disk during pkg_preinst()"
264 + fi
265 + if [[ ! -h "${emidpath}" ]] && [[ -d "${emidpath}" ]]; then
266 + if ! rm -R --interactive=never "${emidpath}" ; then
267 + eerror "Could not remove enigmail directory from previous installation,"
268 + eerror "You must remove this by hand and rename the symbolic link yourself:"
269 + eerror
270 + eerror "\t cd ${EPREFIX%/}${MOZILLA_FIVE_HOME}/extensions"
271 + eerror "\t rm -Rf ${emid}"
272 + eerror "\t mv ${emid}.backup* ${emid}"
273 + fi
274 + fi
275 + fi
276 }
277
278 pkg_postinst() {