/[packages]/cauldron/firefox/current/SPECS/firefox.spec
ViewVC logotype

Annotation of /cauldron/firefox/current/SPECS/firefox.spec

Parent Directory Parent Directory | Revision Log Revision Log


Revision 284631 - (hide annotations) (download)
Mon Aug 27 22:51:21 2012 UTC (11 years, 7 months ago) by dmorgan
File size: 14482 byte(s)
SILENT: readd P14
1 blino 20612 #
2     # WARNING, READ FIRST:
3     #
4     # This is a special package that needs special treatment. Due to the amount of
5     # security updates it needs, it's common to ship new upstream versions instead of patching.
6     # That means this package MUST be BUILDABLE for stable official releases.
7     # This also means only STABLE upstream releases, NO betas.
8     # This is a discussed topic. Please, do not flame it again.
9    
10 dmorgan 207054 # Stay on ESR for stable releases and for cauldron before mageia2 .
11 dmorgan 284628 %define major 15.0
12 blino 20612 %define ff_epoch 0
13     # (tpg) set version HERE !!!
14 dmorgan 272584 %define realver %{major}
15 lmenut 130942 %define firefox_appid \{ec8030f7-c20a-464f-9b0e-13a3a9e97384\}
16 dmorgan 127856
17 blino 20612 # (tpg) MOZILLA_FIVE_HOME
18 fwang 206843 %define mozillalibdir %{_libdir}/%{name}-%{major}
19 blino 20612 %define pluginsdir %{_libdir}/mozilla/plugins
20    
21     # libxul.so is provided by libxulrunnner2.0.
22     %define _requires_exceptions libxul.so
23    
24     # this seems fragile, so require the exact version or later (#58754)
25     %define sqlite3_version %(pkg-config --modversion sqlite3 &>/dev/null && pkg-config --modversion sqlite3 2>/dev/null || echo 0)
26 lmenut 130942 %define nss_version %(pkg-config --modversion nss &>/dev/null && pkg-config --modversion nss 2>/dev/null || echo 0)
27 tv 211809 %define nspr_version %(pkg-config --modversion nspr &>/dev/null && pkg-config --modversion nspr 2>/dev/null |sed -e 's!\.0!!' || echo 0)
28 blino 20612
29     %define _use_syshunspell 1
30    
31 dmorgan 284628 %define release %mkrel 1
32 blino 20612
33 dmorgan 272584 %define update_channel release
34 dmorgan 256220
35 blino 20612 Summary: Next generation web browser
36     Name: firefox
37 fwang 206843 Version: %{major}
38 blino 20612 Epoch: %{ff_epoch}
39     Release: %{release}
40     License: MPLv1+
41     Group: Networking/WWW
42 tv 45608 Url: http://www.mozilla.com/firefox/
43 ahmad 75375 %if 0%{?prel}
44 blino 20612 Source0: ftp://ftp.mozilla.org/pub/mozilla.org/%{name}/releases/%{realver}/source/%{name}-%{realver}%prel.source.tar.bz2
45 ahmad 75375 %else
46 dmorgan 256939 Source0: ftp://ftp.mozilla.org/pub/mozilla.org/%{name}/releases/%{realver}/source/%{name}-%{realver}.source.tar.bz2
47 ahmad 75375 %endif
48 blino 20612 Source4: %{name}.desktop
49     Source9: kde.js
50 fwang 133091 Patch1: firefox-6.0-lang.patch
51 dmorgan 127856 Patch2: firefox-vendor.patch
52 blino 20612 Patch3: mozilla-firefox-1.5.0.6-systemproxy.patch
53 fwang 223798 Patch4: firefox-10.0-nss-binary.patch
54 blino 20612 # (OpenSuse) add patch to make firefox always use /usr/bin/firefox when "make firefox
55     # the default web browser" is used fix mdv bug#58784
56 fwang 133095 Patch5: firefox-6.0-appname.patch
57 fwang 149203 Patch6: firefox-7.0-fix-str-fmt.patch
58 dmorgan 127856 Patch7: mozilla-firefox-run-mozilla.patch
59     Patch8: firefox-disable-check-default-browser.patch
60 dmorgan 284629 Patch9: firefox-5.0-asciidel.patch
61 dmorgan 127856 Patch10: firefox-3.5.3-default-mail-handler.patch
62     # Patches for kde integration of FF
63     Patch11: firefox-kde.patch
64     Patch12: mozilla-kde.patch
65 dmorgan 249717 Patch13: firefox-13-fix-nspr-include.patch
66     Patch14: firefox-13-fix-cairo-build.patch
67 rtp 79029 Patch34: xulrunner_nojit.patch
68 dmorgan 284628 # (cjw) make youtube show a green light for html5 h.264 support (?)
69     Patch35: iceape-2.11-gstreamer-h264-avc1.42001E.patch
70     # (cjw) use system virtualenv
71     Patch36: iceape-2.12-system-virtualenv.patch
72     # (cjw) from hg: fix segfault in gstreamer video playback code, see https://bugzilla.mozilla.org/show_bug.cgi?id=761030
73     Patch37: iceape-2.12-b8c6c7c773c3-gstreamer-video-segfault.patch
74     # (cjw) make system-nss and system-nspr options work again (...)
75     Patch38: firefox-15b2-native-nss-nspr.patch
76 blino 20612 BuildRequires: gtk+2-devel
77     BuildRequires: unzip
78     BuildRequires: zip
79 fwang 133282 BuildRequires: libxinerama-devel
80 fwang 164134 BuildRequires: libxscrnsaver-devel
81 blino 20612 BuildRequires: libjpeg-devel
82 fwang 142362 BuildRequires: libpng-devel >= 2:1.4
83 blino 20612 BuildRequires: zlib-devel
84     BuildRequires: glib2-devel
85     BuildRequires: libIDL2-devel
86     BuildRequires: makedepend
87 dmorgan 134679 BuildRequires: nss-devel >= 2:3.12.10
88 dmorgan 127866 BuildRequires: nss-static-devel
89 dmorgan 134676 BuildRequires: nspr-devel >= 2:4.8.9
90 blino 20612 BuildRequires: startup-notification-devel
91     BuildRequires: dbus-glib-devel
92     BuildRequires: python
93 fwang 184892 BuildRequires: sqlite3-devel >= 3.7.7.1
94 rtp 79029 %ifnarch %arm %mips
95 blino 20612 BuildRequires: valgrind
96 rtp 79029 BuildRequires: java-rpmbuild
97 dmorgan 114215 BuildRequires: yasm >= 1.0.1
98 rtp 79029 %endif
99     %ifarch %arm
100     BuildRequires: libffi-devel
101     %endif
102 dmorgan 137463 BuildRequires: rootcerts >= 1:20110830.00
103 blino 20612 BuildRequires: libxt-devel
104     %if %_use_syshunspell
105     BuildRequires: hunspell-devel
106     %endif
107     BuildRequires: doxygen
108 ahmad 130766 # BuildRequires: xulrunner-devel >= %xulrunner_version%{?prel:-0.%prel}
109     BuildRequires: pkgconfig(libproxy-1.0)
110     BuildRequires: pkgconfig(alsa)
111 blino 20612 BuildRequires: wget
112     BuildRequires: libnotify-devel
113 ahmad 48246 BuildRequires: cairo-devel >= 1.10
114 blino 20612 BuildRequires: mesagl-devel
115 ahmad 75100 BuildRequires: libvpx-devel
116 rtp 79029 BuildRequires: autoconf2.1
117 dmorgan 127865 BuildRequires: libiw-devel
118 dmorgan 284628 BuildRequires: python-virtualenv
119     BuildRequires: gstreamer0.10-devel
120     BuildRequires: libgstreamer0.10-plugins-base-devel
121     BuildRequires: pkgconfig(opus)
122 lmenut 130942
123 ahmad 75375 %if 0%{?prel}
124 blino 20612 Provides: %{name} = %{epoch}:%{realver}-0.%{prel}
125 ahmad 75375 %else
126     Provides: %{name} = %{epoch}:%{realver}
127 blino 20612 %endif
128 lmenut 130942 Provides: mozilla-firefox = %{epoch}:%{version}-%{release}
129 blino 20612 Provides: webclient
130 lmenut 130942
131     Requires: %{mklibname sqlite3_ 0} >= %{sqlite3_version}
132     Requires: %{mklibname nss 3} >= 2:%{nss_version}
133     Requires: %{mklibname nspr 4} >= 2:%{nspr_version}
134 blino 20612 Requires: indexhtml
135     Requires: xdg-utils
136 lmenut 130942 # fixes bug #42096
137     Requires: mailcap
138 fwang 211783 Suggests: hunspell-en
139 fwang 205048 Suggests: %{_lib}canberra0
140     Suggests: %{_lib}cups2
141 ahmad 75375 Obsoletes: firefox-ext-weave-sync
142 fwang 211782 Obsoletes: firefox-beta < 11
143 blino 20612
144     %description
145     The award-winning Web browser is now faster, more secure, and fully customizable
146 tv 45609 to your online life. With Firefox(R), we've added powerful new features that
147 blino 20612 make your online experience even better. It is an 'open source' product which is
148     freely available, and is acquiring a growing proportion of international web
149     browser usage.
150    
151     Firefox claims to offer a more secure web browsing experience than other products,
152     with better protection against spyware and other Internet-based security threats.
153     It includes all the standard features of a modern web browser, like Internet
154     searching, tracking recently visited sites, setting up shortcuts to favourite
155     sites, customising the software behaviour and so on. Firefox also includes
156     features like 'tabbed browsing' (opening several web sites as sections within the
157     same window) and methods for controlling pop-up windows, cookies and downloaded
158     files.
159    
160     %package devel
161     Summary: Development files for %{name}
162     Group: Development/Other
163 fwang 215462 Obsoletes: firefox-beta-devel < 11
164 blino 20612
165     %description devel
166     Files and macros mainly for building Firefox extensions.
167    
168     %prep
169 dmorgan 263350 %setup -qn mozilla-%update_channel
170 dmorgan 116916 %patch1 -p1 -b .lang
171 dmorgan 127856 %patch2 -p1 -b .vendor
172 lmenut 130942 #patch3 -p1 -b .systemproxy
173 fwang 223798 %patch4 -p0 -b .nss
174 lmenut 130942 %patch5 -p1 -b .appname
175 blino 20612 # It was disabled because firefox3 hangs when using soundwrapper
176 dmorgan 127856 #patch7 -p1
177 dmorgan 252897 %patch8 -p1 -b .disable-software-update
178 dmorgan 284629 %patch9 -p1 -b .ascii
179 dmorgan 127856 %patch10 -p1 -b .default-mail-handler
180 dmorgan 284631 %patch14 -p1
181 dmorgan 249717
182 blino 20612 ## KDE INTEGRATION
183 dmorgan 206634 # Disable kde integration , need refactoring
184 fwang 260908 #patch11 -p1 -b .kde
185     #patch12 -p1 -b .kdemoz
186 blino 20612 # install kde.js
187 dmorgan 276610 #install -m 644 %{SOURCE9} browser/app/profile/kde.js
188 blino 20612
189 rtp 79029 %ifarch %arm
190     %if "%{_target_cpu}" != "armv7l"
191     %patch34 -p1
192     %endif
193     %endif
194 dmorgan 284628 %patch35 -p2 -b .h264-youtube-ok
195     %patch36 -p2 -b .system-virtualenv
196     %patch37 -p1 -b .gstreamer-crash
197     %patch38 -p1 -b .system-nss-nspr
198    
199 rtp 79029 pushd js/src
200     autoconf-2.13
201     popd
202     autoconf-2.13
203    
204 dmorgan 127856 # needed to regenerate certdata.c
205     pushd security/nss/lib/ckfw/builtins
206     perl ./certdata.perl < /etc/pki/tls/mozilla/certdata.txt
207     popd
208    
209 blino 20612 %build
210 fwang 149200 export MOZCONFIG=`pwd`/mozconfig
211 dmorgan 127856 cat << EOF > $MOZCONFIG
212     mk_add_options MOZILLA_OFFICIAL=1
213     mk_add_options BUILD_OFFICIAL=1
214     mk_add_options MOZ_MAKE_FLAGS="%{_smp_mflags}"
215     mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../obj
216 fwang 132978 ac_add_options --host=%{_host}
217     ac_add_options --target=%{_target_platform}
218 fwang 205048 ac_add_options --enable-optimize="%{optflags}"
219 dmorgan 127856 ac_add_options --prefix="%{_prefix}"
220     ac_add_options --libdir="%{_libdir}"
221     ac_add_options --sysconfdir="%{_sysconfdir}"
222     ac_add_options --mandir="%{_mandir}"
223     ac_add_options --includedir="%{_includedir}"
224     ac_add_options --datadir="%{_datadir}"
225     ac_add_options --with-system-nspr
226     ac_add_options --with-system-nss
227     ac_add_options --with-system-zlib
228 fwang 133280 ac_add_options --with-system-libvpx
229     ac_add_options --enable-webm
230 lmenut 130942 ac_add_options --enable-gio
231     ac_add_options --disable-gnomevfs
232 dmorgan 127856 ac_add_options --disable-updater
233     ac_add_options --disable-tests
234     ac_add_options --disable-debug
235     #ac_add_options --enable-chrome-format=jar
236     #ac_add_options --enable-update-channel=beta
237     ac_add_options --enable-official-branding
238     ac_add_options --enable-libproxy
239 fwang 142362 ac_add_options --with-system-png
240 dmorgan 127856 ac_add_options --with-system-jpeg
241     ac_add_options --enable-system-cairo
242     ac_add_options --enable-system-sqlite
243 lmenut 130942 ac_add_options --enable-startup-notification
244 fwang 133282 ac_add_options --enable-xinerama
245 dmorgan 127856 ac_add_options --with-distribution-id=org.mageia
246     ac_add_options --disable-crashreporter
247 dmorgan 263350 ac_add_options --enable-update-channel=%{update_channel}
248 dmorgan 276864 ac_add_options --enable-gstreamer
249 rtp 79029 %ifarch %arm
250     %if "%{_target_cpu}" != "armv7l"
251 dmorgan 127856 ac_add_options --disable-methodjit
252     ac_add_options --disable-tracejit
253 rtp 79029 %endif
254 dmorgan 127856 ac_add_options --enable-system-ffi
255 rtp 79029 %endif
256     %ifnarch %arm %mips
257 dmorgan 127856 ac_add_options --with-valgrind
258     ac_add_options --with-java-include-path=%{java_home}/include
259     ac_add_options --with-java-bin-path=%{java_home}/bin
260 dmorgan 284628 ac_add_options --enable-opus
261 rtp 79029 %endif
262 blino 20612
263 dmorgan 127856 EOF
264    
265 blino 20612 %__perl -p -i -e 's|\-0|\-9|g' config/make-jars.pl
266    
267 fwang 133345 export LDFLAGS="%ldflags"
268 dmorgan 127856 make -f client.mk build
269 blino 20612
270     %install
271 ahmad 75100 rm -rf %{buildroot}
272 blino 20612
273 dmorgan 127856 make -C %{_builddir}/obj/browser/installer STRIP=/bin/true
274 blino 20612
275 dmorgan 127856 # Copy files to buildroot
276     %{__mkdir_p} %{buildroot}%{mozillalibdir}
277     cp -rf %{_builddir}/obj/dist/firefox/* %{buildroot}%{mozillalibdir}
278 blino 20612
279 dmorgan 127856 %{__mkdir_p} %{buildroot}%{_bindir}
280     ln -sf %{mozillalibdir}/firefox %{buildroot}%{_bindir}/firefox
281     pushd %{buildroot}%{_bindir}
282     ln -sf firefox mozilla-firefox
283     popd
284 tv 110649
285 lmenut 130942 # Create and own %_libdir/mozilla/plugins & firefox extensions directories
286     %{__mkdir_p} %{buildroot}%{pluginsdir}
287     %{__mkdir_p} %{buildroot}%{_libdir}/mozilla/extensions/%{firefox_appid}
288     %{__mkdir_p} %{buildroot}%{_datadir}/mozilla/extensions/%{firefox_appid}
289 blino 20612
290     # (tpg) desktop entry
291     %{__mkdir_p} %{buildroot}%{_datadir}/applications
292     install -m 644 %{SOURCE4} %{buildroot}%{_datadir}/applications/%{name}.desktop
293    
294     # (tpg) icons
295 dmorgan 127856 %{__cp} %{buildroot}%{mozillalibdir}/chrome/icons/default/default16.png %{buildroot}/%{mozillalibdir}/icons/
296 colin 130660 for i in 16 22 24 32 48 256; do
297     # (cg) Not all icon sizes are installed with make install, so just redo it here.
298 tv 133105 %{__install} -m 644 browser/branding/official/default$i.png %{buildroot}%{mozillalibdir}/chrome/icons/default/default$i.png
299 blino 20612 %{__mkdir_p} %{buildroot}%{_iconsdir}/hicolor/"$i"x"$i"/apps
300 colin 130660 ln -sf %{mozillalibdir}/chrome/icons/default/default$i.png %{buildroot}%{_iconsdir}/hicolor/"$i"x"$i"/apps/%{name}.png ;
301 blino 20612 done
302 colin 130660 %{__mkdir_p} %{buildroot}{%{_liconsdir},%{_iconsdir},%{_miconsdir}}
303     ln -sf %{mozillalibdir}/chrome/icons/default/default48.png %{buildroot}%{_liconsdir}/%{name}.png
304     ln -sf %{mozillalibdir}/chrome/icons/default/default32.png %{buildroot}%{_iconsdir}/%{name}.png
305 dmorgan 130666 ln -sf %{mozillalibdir}/chrome/icons/default/default16.png %{buildroot}%{_miconsdir}/%{name}.png
306 blino 20612
307 dmorgan 127856 # exclusions
308     rm -f %{buildroot}%{mozillalibdir}/README.txt
309     rm -f %{buildroot}%{mozillalibdir}/removed-files
310     rm -f %{buildroot}%{mozillalibdir}/precomplete
311    
312 doktor5000 170221 # this file is only used when creating a new user profile
313 blino 20612 install -D -m644 browser/app/profile/prefs.js %{buildroot}%{mozillalibdir}/defaults/profile/prefs.js
314     cat << EOF >> %{buildroot}%{mozillalibdir}/defaults/profile/prefs.js
315     user_pref("browser.EULA.override", true);
316     user_pref("browser.shell.checkDefaultBrowser", false);
317 rda 76933 user_pref("browser.startup.homepage", "file:///usr/share/indexhtml/index.html");
318 blino 20612 user_pref("app.update.auto", false);
319     user_pref("app.update.enabled", false);
320     user_pref("app.update.autoInstallEnabled", false);
321 lmenut 130942 user_pref("browser.showQuitWarning", true);
322 blino 20612 EOF
323    
324 fwang 223187 # display icon for Firefox button
325     %{__mkdir_p} %{buildroot}%{mozillalibdir}/defaults/profile/chrome
326 dmorgan 225217 cat << EOF > %{buildroot}%{mozillalibdir}/defaults/profile/chrome/userChrome.css
327 fwang 223187 #appmenu-toolbar-button {
328     list-style-image: url("chrome://branding/content/icon16.png");
329     }
330     EOF
331    
332 doktor5000 170221 # files in this directory are read on every startup, and can change/add
333     # preferences for existing profiles
334     # extensions.autoDisableScopes is a new preference added in firefox 8
335     # it defines "scopes" where newly installed addons are disabled by default
336     # this is an additive bit field, and the value defaults to 15 (1+2+4+8)
337     # we need to remove system scope (8) from it so language packs and other addons
338     # which are installed systemwide won't get marked as 3rd party and disabled
339     # documentation: http://kb.mozillazine.org/About:config_entries#Extensions.
340     # or in toolkit/mozapps/extensions/AddonManager.jsm
341     # we also need to disable the "disable addon selection dialog"
342     cat << EOF > %{buildroot}%{mozillalibdir}/defaults/pref/mga.js
343     pref("extensions.autoDisableScopes", 0);
344     pref("extensions.shownSelectionUI", true);
345     EOF
346    
347 ahmad 130766 # use the system myspell dictionaries
348     rm -fr %{buildroot}%{mozillalibdir}/dictionaries
349 fwang 211783 ln -s %{_datadir}/hunspell %{buildroot}%{mozillalibdir}/dictionaries
350 ahmad 130766
351 lmenut 130942 # (lm) touch and %ghost bookmarks.html to a proper uninstall
352     touch %{buildroot}%{mozillalibdir}/defaults/profile/bookmarks.html
353    
354 blino 20612 %find_lang %{name}
355    
356     mkdir -p %{buildroot}%{_sys_macros_dir}
357     cat <<FIN >%{buildroot}%{_sys_macros_dir}/%{name}.macros
358     # Macros from %{name} package
359     %%firefox_major %{major}
360     %%firefox_epoch %{ff_epoch}
361 fwang 248940 %%firefox_version %{major}%{?prel:-0.%prel}
362 blino 20612 %%firefox_mozillapath %{mozillalibdir}
363     %%firefox_pluginsdir %{pluginsdir}
364 tv 45614 %%firefox_appid \{ec8030f7-c20a-464f-9b0e-13a3a9e97384\}
365     %%firefox_extdir %%(if [ "%%_target_cpu" = "noarch" ]; then echo %%{_datadir}/mozilla/extensions/%%{firefox_appid}; else echo %%{_libdir}/mozilla/extensions/%%{firefox_appid}; fi)
366 blino 20612 FIN
367    
368 ahmad 130766 %pre
369     if [ -d %{mozillalibdir}/dictionaries ]; then
370     rm -fr %{mozillalibdir}/dictionaries
371     fi
372 dmorgan 127856
373 blino 20612 %post
374     if [ ! -r /etc/sysconfig/oem ]; then
375     case `grep META_CLASS /etc/sysconfig/system` in
376     *powerpack) bookmark="mozilla-powerpack.html" ;;
377     *desktop) bookmark="mozilla-one.html";;
378     *) bookmark="mozilla-download.html";;
379     esac
380 lmenut 130942 ln -s -f ../../../../share/mga/bookmarks/mozilla/$bookmark %{mozillalibdir}/defaults/profile/bookmarks.html
381 blino 20612 fi
382    
383     %files -f %{name}.lang
384     %{_bindir}/%{name}
385     %{_bindir}/mozilla-firefox
386     %{_iconsdir}/hicolor/*/apps/*.png
387 colin 130660 %{_miconsdir}/%{name}.png
388     %{_iconsdir}/%{name}.png
389     %{_liconsdir}/%{name}.png
390 blino 20612 %{_datadir}/applications/*.desktop
391 fwang 206849 %{_libdir}/%{name}-%{major}*
392 lmenut 130942 %ghost %{mozillalibdir}/defaults/profile/bookmarks.html
393 blino 20612 %dir %{_libdir}/mozilla
394     %dir %{pluginsdir}
395 lmenut 130942 %dir %{_libdir}/mozilla/extensions/%{firefox_appid}
396     %dir %{_datadir}/mozilla/extensions/%{firefox_appid}
397 blino 20612
398     %files devel
399     %{_sys_macros_dir}/%{name}.macros

  ViewVC Help
Powered by ViewVC 1.1.30