Magellan Linux

Contents of /trunk/extras/mozilla-thunderbird/mozilla-thunderbird-2.0.0.16-r2.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2 - (show annotations) (download)
Fri Oct 10 13:29:42 2008 UTC (15 years, 7 months ago) by niro
File size: 7649 byte(s)
import repo
1 # $Header: /magellan-cvs/smage/mozilla-thunderbird/mozilla-thunderbird-2.0.0.16-r2.smage2,v 1.1 2008/08/13 20:34:06 niro Exp $
2
3 PNAME="mozilla-thunderbird"
4 PVER="2.0.0.16"
5 PBUILD="r2"
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.1
17 >= media-libs/libmng-1.0.10
18 >= media-libs/fontconfig-2.5
19 >= media-libs/libjpeg-6b
20 >= media-libs/libpng-1.2.24
21 >= dev-libs/glib2-2.16
22 >= dev-libs/expat-2
23 >= dev-libs/libidl-0.8.10
24 >= app-arch/zip-2.3
25 >= app-arch/unzip-5.50
26 >= x11-libs/pango-1.20
27 >= x11-libs/gtk2+-2.12
28 >= x11-libs/cairo-1.4
29 >= app-crypt/gnupg-2
30 >= dev-libs/nspr-4.7
31 >= dev-libs/nss-3.11.9"
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 # branding the source with our tags
115 sed -i "s|0000000000|Magellan Linux|" xpfe/global/build.dtd.in || die
116
117 export WANT_AUTOCONF="2.1"
118 autoconf || die
119
120 # rebuild makefiles
121 cd ${SRCDIR}/mailnews/extensions/enigmail || die
122 makemake2 || die
123 }
124
125 src_compile()
126 {
127 cd ${SRCDIR}
128
129 # setup .mozconfig
130 cp mail/config/mozconfig .mozconfig || die
131
132 # where shall the files go ?
133 mozconf_add --with-default-mozilla-five-home=/usr/$(mlibdir)/mozilla-thunderbird
134
135 # set optimization level based on CFLAGS
136 if [[ ${ARCH} = x86_64 ]]
137 then
138 # opts may cause segfaults on 64bit arches
139 mozconf_add --enable-optimize=-O1
140 export CFLAGS="${CFLAGS} -fPIC"
141 export CXXFLAGS="${CXXFLAGS} -fPIC"
142 else
143 mozconf_add --enable-optimize=-O2
144 fi
145
146 # enable compat mode for plugins build with gcc2
147 mozconf_add --enable-old-abi-compat-wrappers
148
149 # we don't need the installer
150 mozconf_add --disable-installer
151
152 # issue all warnings demanded by strict ANSI C
153 mozconf_add --disable-pedantic
154
155 # enable crypto support (Personal Security Manager)
156 mozconf_add --enable-crypto
157
158 # want system jpeg, pngm, zlib, nspr and nss
159 mozconf_add --with-system-jpeg
160 mozconf_add --with-system-png
161 mozconf_add --with-system-zlib
162 mozconf_add --with-system-nspr
163 mozconf_add --with-system-nss
164
165 # enable gtk2 as default
166 mozconf_add --enable-default-toolkit=gtk2
167
168 # no ipv6 support
169 mozconf_add --enable-ipv6
170
171 # want xinerama
172 mozconf_add --enable-xinerama
173
174 # no xprint ?
175 mozconf_add --disable-xprint
176
177 # >= firefox-1.0.7 should use xft + pango, svg with cairo
178 mozconf_add --disable-freetype2
179 mozconf_add --enable-xft
180 mozconf_add --enable-pango
181 mozconf_add --enable-system-cairo
182 mozconf_add --enable-svg
183 mozconf_add --enable-canvas
184
185 # enable all image encoders
186 mozconf_add --enable-image-encoder=all
187
188 # disable debug build && enable stripping
189 mozconf_add --disable-debug
190 mozconf_add --disable-tests
191 mozconf_add --enable-reorder
192 mozconf_add --enable-strip
193 mozconf_add --enable-strip-libs
194
195 if [[ ${ARCH} = i*86 ]]
196 then
197 # optimze build for x86
198 mozconf_add --enable-elf-dynstr-gc
199 fi
200
201 # no ldap
202 mozconf_add --disable-ldap
203 mozconf_add --disable-ldap-experimental
204
205 # enable default extensions
206 mozconf_add --enable-extensions=default
207
208 # resolve multiple --enable-extensions down to one
209 rebuild_extension_list
210
211 # now run configure
212 #ac_cv_visibility_pragma=no mconfigure || die
213 mconfigure || die
214
215 # removes extraneous CFLAGS
216 # to reduce RAM requirements while compiling
217 mozilla_remove_cflags || die
218
219 mmake || die
220
221 # enigmail doesn't like visibility_hidden, so we remove the macros
222 rm config/gcc_hidden.h || die
223 touch config/gcc_hidden.h || die
224
225 # build enigmail
226 mmake -j1 -C mailnews/extensions/enigmail || die
227 }
228
229 src_install()
230 {
231 cd ${SRCDIR}
232
233 # needed directories
234 minstalldir /usr/bin || die
235 minstalldir /usr/$(mlibdir)/pkgconfig || die
236 minstalldir /usr/$(mlibdir)/mozilla-thunderbird || die
237 minstalldir /usr/share/applications || die
238
239 # install binaries
240 cp -RL --no-preserve=links ${SRCDIR}/dist/bin/* \
241 ${BINDIR}/usr/$(mlibdir)/mozilla-thunderbird || die
242
243 # fix permissions
244 mchown -R root:root /usr/$(mlibdir)/mozilla-thunderbird || die
245
246 # bins
247 mlink /usr/$(mlibdir)/mozilla-thunderbird/thunderbird /usr/bin/thunderbird || die
248
249 # install pkgconfig files (at last needed by epiphany)
250 minstallfile build/unix/thunderbird-\*.pc /usr/$(mlibdir)/pkgconfig || die
251
252 # menu entries
253 minstallpixmap thunderbird.png || die
254 minstallfile -s thunderbird.desktop /usr/share/applications || die
255 }
256
257 postinstall()
258 {
259 # update environment; needed for REGXPCOM
260 env-rebuild
261 source ${MROOT}/etc/profile
262
263 # thunderbirds mozilla_five_home
264 export MOZILLA_FIVE_HOME="${MROOT}/usr/$(mlibdir)/mozilla-thunderbird"
265
266 # register thunderbird
267 echo "Registering Components and Chrome..."
268
269 HOME=~root LD_LIBRARY_PATH=${MOZILLA_FIVE_HOME} ${MOZILLA_FIVE_HOME}/regxpcom
270 # HOME=~root LD_LIBRARY_PATH=${MOZILLA_FIVE_HOME} ${MOZILLA_FIVE_HOME}/regchrome
271
272 # fix permissions of component registry
273 chmod 0644 ${MOZILLA_FIVE_HOME}/components/compreg.dat
274
275 # fix directory permissions
276 find ${MOZILLA_FIVE_HOME}/ -type d -perm 0700 -exec chmod 0755 {} \; || :
277
278 # fix permissions on chrome files
279 find ${MOZILLA_FIVE_HOME}/chrome/ -name '*.rdf' -exec chmod 0644 {} \; || :
280 }

Properties

Name Value
svn:keywords Id