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

  ViewVC Help
Powered by ViewVC 1.1.30