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

  ViewVC Help
Powered by ViewVC 1.1.30