Magellan Linux

Contents of /trunk/extras/mozilla-thunderbird/mozilla-thunderbird-2.0.0.22-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2886 - (show annotations) (download)
Sun Jul 12 22:28:02 2009 UTC (14 years, 10 months ago) by niro
File size: 7761 byte(s)
-added UP2DATE
1 # $Id$
2
3 PNAME="mozilla-thunderbird"
4 PVER="2.0.0.22"
5 PBUILD="r1"
6
7 PCATEGORIE="net-mail"
8 STATE="unstable"
9
10 DESCRIPTION="Thunderbird is Mozilla's next generation e-mail client."
11 HOMEPAGE="http://www.mozilla.org/products/thunderbird/"
12
13 DEPEND=">= x11-libs/libXrender-0.9
14 >= x11-libs/libXt-1
15 >= x11-libs/libXmu-1
16 >= sys-libs/zlib-1.2.3
17 >= media-libs/libmng-1.0.10
18 >= media-libs/fontconfig-2.6
19 >= media-libs/libjpeg-6b
20 >= media-libs/libpng-1.2.34
21 >= dev-libs/glib2-2.20
22 >= dev-libs/expat-2
23 >= dev-libs/libidl-0.8.13
24 >= app-arch/zip-3
25 >= app-arch/unzip-5.52
26 >= x11-libs/pango-1.24
27 >= x11-libs/gtk2+-2.16
28 >= x11-libs/cairo-1.8
29 >= app-crypt/gnupg-2
30 >= dev-libs/nspr-4.8
31 >= dev-libs/nss-3.12.3"
32
33 SDEPEND=">= x11-proto/xineramaproto-1
34 >= dev-util/pkgconfig-0.23
35 >= sys-dev/autoconf-4
36 >= sys-dev/automake-3
37 >= sys-apps/sed-4"
38
39 SRCFILE="thunderbird-${PVER}-source.tar.bz2"
40 SRCDIR="${BUILDDIR}/mozilla"
41
42 SRC_ENIGMAIL="enigmail-0.95.7.tar.gz"
43
44 sminclude mozilla mtools
45
46 SRC_URI=(
47 ftp://ftp.mozilla.org/pub/mozilla.org/${PNAME/mozilla-/}/releases/${PVER}/source/${SRCFILE}
48 http://www.mozilla-enigmail.org/download/source/${SRC_ENIGMAIL}
49 mirror://${PNAME}/${SRCFILE}
50 mirror://${PNAME}/${SRC_ENIGMAIL}
51 mirror://${PNAME}/menu/thunderbird.png
52 mirror://${PNAME}/menu/thunderbird.desktop
53 mirror://${PNAME}/mozilla-firefox-1.5.0-embed-typeaheadfind.patch
54 mirror://${PNAME}/mozilla-firefox-1.5.0.11-pkgconfig.patch
55 mirror://${PNAME}/mozilla-firefox-2.0.0.5-libdeps.patch
56 mirror://${PNAME}/mozilla-firefox-2.0.0.5-asneeded.patch
57 mirror://${PNAME}/mozilla-firefox-2.0.0.5-respect-host-variable.patch
58 mirror://${PNAME}/mozilla-firefox-2.0.0.5-rpath-3.patch
59 mirror://${PNAME}/mozilla-firefox-2.0.0.5-pango-cursor.patch
60 mirror://${PNAME}/mozilla-thunderbird-2.0.0.6-language.patch
61 )
62
63 UP2DATE="updatecmd ftp://ftp.mozilla.org/pub/mozilla.org/${PNAME/mozilla-/}/releases/latest/source | sed 's:-source::' | lasttarball"
64
65 # we are building thunderbird
66 export MOZ_CO_PROJECT=mail
67
68 # set by configure (plus USE_AUTOCONF=1), but useful for NSPR
69 export MOZILLA_CLIENT=1
70 export BUILD_OPT=1
71 export NO_STATIC_LIB=1
72 export USE_PTHREADS=1
73
74 # now strip optimization from CFLAGS so it doesn't end up in the
75 # compile string
76 export CFLAGS="${CFLAGS/-O*/}"
77 export CXXFLAGS="${CFLAGS}"
78
79 # needed to build without warnings on gcc-3
80 export CXXFLAGS="${CXXFLAGS} -Wno-deprecated"
81
82 src_prepare()
83 {
84 munpack ${SRCFILE} || die
85
86 # enigmail plugin
87 munpack ${SRC_ENIGMAIL} ${SRCDIR}/mailnews/extensions ||die
88 cd ${SRCDIR}
89
90 # patches, patches, patches
91
92 # fix linking issues against pango
93 # https://bugzilla.mozilla.org/show_bug.cgi?id=344821
94 mpatch mozilla-firefox-2.0.0.5-libdeps.patch || die
95
96 # use as-needed with newer binutils
97 # https://bugzilla.mozilla.org/show_bug.cgi?id=311236
98 mpatch mozilla-firefox-2.0.0.5-asneeded.patch || die
99
100 # fixes typeahead and gtk fixes for embeded firefox browsers
101 mpatch mozilla-firefox-1.5.0-embed-typeaheadfind.patch || die
102
103 # fix pkgconfig pathes
104 mpatch mozilla-firefox-1.5.0.11-pkgconfig.patch || die
105
106 # fix some compile issues on multilib systems
107 mpatch mozilla-firefox-2.0.0.5-respect-host-variable.patch || die
108 mpatch mozilla-firefox-2.0.0.5-rpath-3.patch || die
109
110 # fix pango-cursor issues
111 mpatch mozilla-firefox-2.0.0.5-pango-cursor.patch || die
112
113 # enable variable languages via environment vars
114 mpatch mozilla-thunderbird-2.0.0.6-language.patch || die
115
116 export WANT_AUTOCONF="2.1"
117 autoconf || die
118
119 # rebuild makefiles
120 cd ${SRCDIR}/mailnews/extensions/enigmail || die
121 makemake2 || die
122 }
123
124 src_compile()
125 {
126 cd ${SRCDIR}
127
128 # setup .mozconfig
129 cp mail/config/mozconfig .mozconfig || die
130
131 # where shall the files go ?
132 mozconf_add --with-default-mozilla-five-home=/usr/$(mlibdir)/mozilla-thunderbird
133
134 # set optimization level based on CFLAGS
135 if [[ ${ARCH} = x86_64 ]]
136 then
137 # opts may cause segfaults on 64bit arches
138 mozconf_add --enable-optimize=-O1
139 export CFLAGS="${CFLAGS} -fPIC"
140 export CXXFLAGS="${CXXFLAGS} -fPIC"
141 else
142 mozconf_add --enable-optimize=-O2
143 fi
144
145 # enable compat mode for plugins build with gcc2
146 mozconf_add --enable-old-abi-compat-wrappers
147
148 # we don't need the installer
149 mozconf_add --disable-installer
150
151 # issue all warnings demanded by strict ANSI C
152 mozconf_add --disable-pedantic
153
154 # enable crypto support (Personal Security Manager)
155 mozconf_add --enable-crypto
156
157 # want system jpeg, pngm, zlib, nspr and nss
158 mozconf_add --with-system-jpeg
159 mozconf_add --with-system-png
160 mozconf_add --with-system-zlib
161 mozconf_add --with-system-nspr
162 mozconf_add --with-system-nss
163
164 # enable gtk2 as default
165 mozconf_add --enable-default-toolkit=gtk2
166
167 # no ipv6 support
168 mozconf_add --enable-ipv6
169
170 # want xinerama
171 mozconf_add --enable-xinerama
172
173 # no xprint ?
174 mozconf_add --disable-xprint
175
176 # >= firefox-1.0.7 should use xft + pango, svg with cairo
177 mozconf_add --disable-freetype2
178 mozconf_add --enable-xft
179 mozconf_add --enable-pango
180 mozconf_add --enable-system-cairo
181 mozconf_add --enable-svg
182 mozconf_add --enable-canvas
183
184 # enable all image encoders
185 mozconf_add --enable-image-encoder=all
186
187 # disable debug build && enable stripping
188 mozconf_add --disable-debug
189 mozconf_add --disable-tests
190 mozconf_add --enable-reorder
191 mozconf_add --enable-strip
192 mozconf_add --enable-strip-libs
193
194 if [[ ${ARCH} = i*86 ]]
195 then
196 # optimze build for x86
197 mozconf_add --enable-elf-dynstr-gc
198 fi
199
200 # no ldap
201 mozconf_add --disable-ldap
202 mozconf_add --disable-ldap-experimental
203
204 # enable default extensions
205 mozconf_add --enable-extensions=default
206
207 # resolve multiple --enable-extensions down to one
208 rebuild_extension_list
209
210 # now run configure
211 mconfigure || die
212
213 # removes extraneous CFLAGS
214 # to reduce RAM requirements while compiling
215 mozilla_remove_cflags || die
216
217 mmake || die
218
219 # enigmail doesn't like visibility_hidden, so we remove the macros
220 rm config/gcc_hidden.h || die
221 touch config/gcc_hidden.h || die
222
223 # build enigmail
224 mmake -j1 -C mailnews/extensions/enigmail || die
225 }
226
227 src_install()
228 {
229 cd ${SRCDIR}
230
231 # needed directories
232 minstalldir /usr/bin || die
233 minstalldir /usr/$(mlibdir)/pkgconfig || die
234 minstalldir /usr/$(mlibdir)/mozilla-thunderbird || die
235 minstalldir /usr/share/applications || die
236
237 # install binaries
238 cp -RL --no-preserve=links ${SRCDIR}/dist/bin/* \
239 ${BINDIR}/usr/$(mlibdir)/mozilla-thunderbird || die
240
241 # fix permissions
242 mchown -R root:root /usr/$(mlibdir)/mozilla-thunderbird || die
243
244 # bins
245 mlink /usr/$(mlibdir)/mozilla-thunderbird/thunderbird /usr/bin/thunderbird || die
246
247 # vendor information
248 msetpref general.useragent.vendor Magellan-Linux || die
249
250 # disable app.update in default config
251 msetpref app.update.auto false || die
252 msetpref app.update.enabled false || die
253 msetpref app.update.autoInstallEnabled false || die
254
255 # install pkgconfig files (at last needed by epiphany)
256 minstallfile build/unix/thunderbird-\*.pc /usr/$(mlibdir)/pkgconfig || die
257
258 # menu entries
259 minstallpixmap thunderbird.png || die
260 minstallfile -s thunderbird.desktop /usr/share/applications || die
261 }
262
263 postinstall()
264 {
265 # update environment; needed for REGXPCOM
266 env-rebuild
267 source ${MROOT}/etc/profile
268
269 # thunderbirds mozilla_five_home
270 export MOZILLA_FIVE_HOME="${MROOT}/usr/$(mlibdir)/mozilla-thunderbird"
271
272 # register thunderbird
273 echo "Registering Components and Chrome..."
274
275 HOME=~root LD_LIBRARY_PATH=${MOZILLA_FIVE_HOME} ${MOZILLA_FIVE_HOME}/regxpcom
276 # HOME=~root LD_LIBRARY_PATH=${MOZILLA_FIVE_HOME} ${MOZILLA_FIVE_HOME}/regchrome
277
278 # fix permissions of component registry
279 chmod 0644 ${MOZILLA_FIVE_HOME}/components/compreg.dat
280
281 # fix directory permissions
282 find ${MOZILLA_FIVE_HOME}/ -type d -perm 0700 -exec chmod 0755 {} \; || :
283
284 # fix permissions on chrome files
285 find ${MOZILLA_FIVE_HOME}/chrome/ -name '*.rdf' -exec chmod 0644 {} \; || :
286 }

Properties

Name Value
svn:keywords Id