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

  ViewVC Help
Powered by ViewVC 1.1.30