Magellan Linux

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2880 - (hide annotations) (download)
Sun Jul 12 21:37:48 2009 UTC (14 years, 10 months ago) by niro
File size: 7451 byte(s)
auto added: ver bump to 2.0.0.22-r1
1 niro 2880 # $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     # we are building thunderbird
64     export MOZ_CO_PROJECT=mail
65    
66     # set by configure (plus USE_AUTOCONF=1), but useful for NSPR
67     export MOZILLA_CLIENT=1
68     export BUILD_OPT=1
69     export NO_STATIC_LIB=1
70     export USE_PTHREADS=1
71    
72     # now strip optimization from CFLAGS so it doesn't end up in the
73     # compile string
74     export CFLAGS="${CFLAGS/-O*/}"
75     export CXXFLAGS="${CFLAGS}"
76    
77     # needed to build without warnings on gcc-3
78     export CXXFLAGS="${CXXFLAGS} -Wno-deprecated"
79    
80     src_prepare()
81     {
82     munpack ${SRCFILE} || die
83    
84     # enigmail plugin
85     munpack ${SRC_ENIGMAIL} ${SRCDIR}/mailnews/extensions ||die
86     cd ${SRCDIR}
87    
88     # patches, patches, patches
89    
90     # fix linking issues against pango
91     # https://bugzilla.mozilla.org/show_bug.cgi?id=344821
92     mpatch mozilla-firefox-2.0.0.5-libdeps.patch || die
93    
94     # use as-needed with newer binutils
95     # https://bugzilla.mozilla.org/show_bug.cgi?id=311236
96     mpatch mozilla-firefox-2.0.0.5-asneeded.patch || die
97    
98     # fixes typeahead and gtk fixes for embeded firefox browsers
99     mpatch mozilla-firefox-1.5.0-embed-typeaheadfind.patch || die
100    
101     # fix pkgconfig pathes
102     mpatch mozilla-firefox-1.5.0.11-pkgconfig.patch || die
103    
104     # fix some compile issues on multilib systems
105     mpatch mozilla-firefox-2.0.0.5-respect-host-variable.patch || die
106     mpatch mozilla-firefox-2.0.0.5-rpath-3.patch || die
107    
108     # fix pango-cursor issues
109     mpatch mozilla-firefox-2.0.0.5-pango-cursor.patch || die
110    
111     # enable variable languages via environment vars
112     mpatch mozilla-thunderbird-2.0.0.6-language.patch || die
113    
114     export WANT_AUTOCONF="2.1"
115     autoconf || die
116    
117     # rebuild makefiles
118     cd ${SRCDIR}/mailnews/extensions/enigmail || die
119     makemake2 || die
120     }
121    
122     src_compile()
123     {
124     cd ${SRCDIR}
125    
126     # setup .mozconfig
127     cp mail/config/mozconfig .mozconfig || die
128    
129     # where shall the files go ?
130     mozconf_add --with-default-mozilla-five-home=/usr/$(mlibdir)/mozilla-thunderbird
131    
132     # set optimization level based on CFLAGS
133     if [[ ${ARCH} = x86_64 ]]
134     then
135     # opts may cause segfaults on 64bit arches
136     mozconf_add --enable-optimize=-O1
137     export CFLAGS="${CFLAGS} -fPIC"
138     export CXXFLAGS="${CXXFLAGS} -fPIC"
139     else
140     mozconf_add --enable-optimize=-O2
141     fi
142    
143     # enable compat mode for plugins build with gcc2
144     mozconf_add --enable-old-abi-compat-wrappers
145    
146     # we don't need the installer
147     mozconf_add --disable-installer
148    
149     # issue all warnings demanded by strict ANSI C
150     mozconf_add --disable-pedantic
151    
152     # enable crypto support (Personal Security Manager)
153     mozconf_add --enable-crypto
154    
155     # want system jpeg, pngm, zlib, nspr and nss
156     mozconf_add --with-system-jpeg
157     mozconf_add --with-system-png
158     mozconf_add --with-system-zlib
159     mozconf_add --with-system-nspr
160     mozconf_add --with-system-nss
161    
162     # enable gtk2 as default
163     mozconf_add --enable-default-toolkit=gtk2
164    
165     # no ipv6 support
166     mozconf_add --enable-ipv6
167    
168     # want xinerama
169     mozconf_add --enable-xinerama
170    
171     # no xprint ?
172     mozconf_add --disable-xprint
173    
174     # >= firefox-1.0.7 should use xft + pango, svg with cairo
175     mozconf_add --disable-freetype2
176     mozconf_add --enable-xft
177     mozconf_add --enable-pango
178     mozconf_add --enable-system-cairo
179     mozconf_add --enable-svg
180     mozconf_add --enable-canvas
181    
182     # enable all image encoders
183     mozconf_add --enable-image-encoder=all
184    
185     # disable debug build && enable stripping
186     mozconf_add --disable-debug
187     mozconf_add --disable-tests
188     mozconf_add --enable-reorder
189     mozconf_add --enable-strip
190     mozconf_add --enable-strip-libs
191    
192     if [[ ${ARCH} = i*86 ]]
193     then
194     # optimze build for x86
195     mozconf_add --enable-elf-dynstr-gc
196     fi
197    
198     # no ldap
199     mozconf_add --disable-ldap
200     mozconf_add --disable-ldap-experimental
201    
202     # enable default extensions
203     mozconf_add --enable-extensions=default
204    
205     # resolve multiple --enable-extensions down to one
206     rebuild_extension_list
207    
208     # now run configure
209     mconfigure || die
210    
211     # removes extraneous CFLAGS
212     # to reduce RAM requirements while compiling
213     mozilla_remove_cflags || die
214    
215     mmake || die
216    
217     # enigmail doesn't like visibility_hidden, so we remove the macros
218     rm config/gcc_hidden.h || die
219     touch config/gcc_hidden.h || die
220    
221     # build enigmail
222     mmake -j1 -C mailnews/extensions/enigmail || die
223     }
224    
225     src_install()
226     {
227     cd ${SRCDIR}
228    
229     # needed directories
230     minstalldir /usr/bin || die
231     minstalldir /usr/$(mlibdir)/pkgconfig || die
232     minstalldir /usr/$(mlibdir)/mozilla-thunderbird || die
233     minstalldir /usr/share/applications || die
234    
235     # install binaries
236     cp -RL --no-preserve=links ${SRCDIR}/dist/bin/* \
237     ${BINDIR}/usr/$(mlibdir)/mozilla-thunderbird || die
238    
239     # fix permissions
240     mchown -R root:root /usr/$(mlibdir)/mozilla-thunderbird || die
241    
242     # bins
243     mlink /usr/$(mlibdir)/mozilla-thunderbird/thunderbird /usr/bin/thunderbird || die
244    
245     # vendor information
246     msetpref general.useragent.vendor Magellan-Linux || die
247    
248     # install pkgconfig files (at last needed by epiphany)
249     minstallfile build/unix/thunderbird-\*.pc /usr/$(mlibdir)/pkgconfig || die
250    
251     # menu entries
252     minstallpixmap thunderbird.png || die
253     minstallfile -s thunderbird.desktop /usr/share/applications || die
254     }
255    
256     postinstall()
257     {
258     # update environment; needed for REGXPCOM
259     env-rebuild
260     source ${MROOT}/etc/profile
261    
262     # thunderbirds mozilla_five_home
263     export MOZILLA_FIVE_HOME="${MROOT}/usr/$(mlibdir)/mozilla-thunderbird"
264    
265     # register thunderbird
266     echo "Registering Components and Chrome..."
267    
268     HOME=~root LD_LIBRARY_PATH=${MOZILLA_FIVE_HOME} ${MOZILLA_FIVE_HOME}/regxpcom
269     # HOME=~root LD_LIBRARY_PATH=${MOZILLA_FIVE_HOME} ${MOZILLA_FIVE_HOME}/regchrome
270    
271     # fix permissions of component registry
272     chmod 0644 ${MOZILLA_FIVE_HOME}/components/compreg.dat
273    
274     # fix directory permissions
275     find ${MOZILLA_FIVE_HOME}/ -type d -perm 0700 -exec chmod 0755 {} \; || :
276    
277     # fix permissions on chrome files
278     find ${MOZILLA_FIVE_HOME}/chrome/ -name '*.rdf' -exec chmod 0644 {} \; || :
279     }

Properties

Name Value
svn:keywords Id