/[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 304073 - (hide annotations) (download)
Wed Oct 10 07:24:38 2012 UTC (11 years, 5 months ago) by tv
File size: 14111 byte(s)
disable KDE integration (breaks build)
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 303841 %define major 16.0
14 blino 20612 %define ff_epoch 0
15     # (tpg) set version HERE !!!
16 dmorgan 272584 %define realver %{major}
17 lmenut 130942 %define firefox_appid \{ec8030f7-c20a-464f-9b0e-13a3a9e97384\}
18 dmorgan 127856
19 blino 20612 # (tpg) MOZILLA_FIVE_HOME
20 fwang 206843 %define mozillalibdir %{_libdir}/%{name}-%{major}
21 blino 20612 %define pluginsdir %{_libdir}/mozilla/plugins
22    
23     # libxul.so is provided by libxulrunnner2.0.
24     %define _requires_exceptions libxul.so
25    
26     # this seems fragile, so require the exact version or later (#58754)
27     %define sqlite3_version %(pkg-config --modversion sqlite3 &>/dev/null && pkg-config --modversion sqlite3 2>/dev/null || echo 0)
28 lmenut 130942 %define nss_version %(pkg-config --modversion nss &>/dev/null && pkg-config --modversion nss 2>/dev/null || echo 0)
29 tv 211809 %define nspr_version %(pkg-config --modversion nspr &>/dev/null && pkg-config --modversion nspr 2>/dev/null |sed -e 's!\.0!!' || echo 0)
30 blino 20612
31     %define _use_syshunspell 1
32    
33 tv 303841 %define release %mkrel 1
34 blino 20612
35 dmorgan 272584 %define update_channel release
36 dmorgan 256220
37 blino 20612 Summary: Next generation web browser
38     Name: firefox
39 fwang 206843 Version: %{major}
40 blino 20612 Epoch: %{ff_epoch}
41     Release: %{release}
42     License: MPLv1+
43     Group: Networking/WWW
44 tv 45608 Url: http://www.mozilla.com/firefox/
45 ahmad 75375 %if 0%{?prel}
46 blino 20612 Source0: ftp://ftp.mozilla.org/pub/mozilla.org/%{name}/releases/%{realver}/source/%{name}-%{realver}%prel.source.tar.bz2
47 ahmad 75375 %else
48 dmorgan 256939 Source0: ftp://ftp.mozilla.org/pub/mozilla.org/%{name}/releases/%{realver}/source/%{name}-%{realver}.source.tar.bz2
49 ahmad 75375 %endif
50 blino 20612 Source4: %{name}.desktop
51     Source9: kde.js
52 fwang 133091 Patch1: firefox-6.0-lang.patch
53 dmorgan 127856 Patch2: firefox-vendor.patch
54 blino 20612 Patch3: mozilla-firefox-1.5.0.6-systemproxy.patch
55 fwang 223798 Patch4: firefox-10.0-nss-binary.patch
56 blino 20612 # (OpenSuse) add patch to make firefox always use /usr/bin/firefox when "make firefox
57     # the default web browser" is used fix mdv bug#58784
58 fwang 133095 Patch5: firefox-6.0-appname.patch
59 fwang 149203 Patch6: firefox-7.0-fix-str-fmt.patch
60 dmorgan 127856 Patch7: mozilla-firefox-run-mozilla.patch
61     Patch8: firefox-disable-check-default-browser.patch
62 dmorgan 284629 Patch9: firefox-5.0-asciidel.patch
63 dmorgan 127856 Patch10: firefox-3.5.3-default-mail-handler.patch
64     # Patches for kde integration of FF
65     Patch11: firefox-kde.patch
66     Patch12: mozilla-kde.patch
67 dmorgan 249717 Patch13: firefox-13-fix-nspr-include.patch
68     Patch14: firefox-13-fix-cairo-build.patch
69 rtp 79029 Patch34: xulrunner_nojit.patch
70 dmorgan 284628 # (cjw) use system virtualenv
71     Patch36: iceape-2.12-system-virtualenv.patch
72 blino 20612 BuildRequires: gtk+2-devel
73     BuildRequires: unzip
74     BuildRequires: zip
75 fwang 133282 BuildRequires: libxinerama-devel
76 fwang 164134 BuildRequires: libxscrnsaver-devel
77 blino 20612 BuildRequires: libjpeg-devel
78 fwang 142362 BuildRequires: libpng-devel >= 2:1.4
79 blino 20612 BuildRequires: zlib-devel
80     BuildRequires: glib2-devel
81     BuildRequires: libIDL2-devel
82     BuildRequires: makedepend
83 dmorgan 134679 BuildRequires: nss-devel >= 2:3.12.10
84 dmorgan 127866 BuildRequires: nss-static-devel
85 dmorgan 134676 BuildRequires: nspr-devel >= 2:4.8.9
86 blino 20612 BuildRequires: startup-notification-devel
87     BuildRequires: dbus-glib-devel
88     BuildRequires: python
89 fwang 184892 BuildRequires: sqlite3-devel >= 3.7.7.1
90 rtp 79029 %ifnarch %arm %mips
91 blino 20612 BuildRequires: valgrind
92 rtp 79029 BuildRequires: java-rpmbuild
93 dmorgan 114215 BuildRequires: yasm >= 1.0.1
94 rtp 79029 %endif
95     %ifarch %arm
96     BuildRequires: libffi-devel
97     %endif
98 dmorgan 137463 BuildRequires: rootcerts >= 1:20110830.00
99 blino 20612 BuildRequires: libxt-devel
100     %if %_use_syshunspell
101     BuildRequires: hunspell-devel
102     %endif
103     BuildRequires: doxygen
104 ahmad 130766 # BuildRequires: xulrunner-devel >= %xulrunner_version%{?prel:-0.%prel}
105     BuildRequires: pkgconfig(libproxy-1.0)
106     BuildRequires: pkgconfig(alsa)
107 blino 20612 BuildRequires: wget
108     BuildRequires: libnotify-devel
109 ahmad 48246 BuildRequires: cairo-devel >= 1.10
110 blino 20612 BuildRequires: mesagl-devel
111 ahmad 75100 BuildRequires: libvpx-devel
112 rtp 79029 BuildRequires: autoconf2.1
113 dmorgan 127865 BuildRequires: libiw-devel
114 dmorgan 284628 BuildRequires: python-virtualenv
115     BuildRequires: gstreamer0.10-devel
116     BuildRequires: libgstreamer0.10-plugins-base-devel
117     BuildRequires: pkgconfig(opus)
118 lmenut 130942
119 ahmad 75375 %if 0%{?prel}
120 blino 20612 Provides: %{name} = %{epoch}:%{realver}-0.%{prel}
121 ahmad 75375 %else
122     Provides: %{name} = %{epoch}:%{realver}
123 blino 20612 %endif
124 lmenut 130942 Provides: mozilla-firefox = %{epoch}:%{version}-%{release}
125 blino 20612 Provides: webclient
126 lmenut 130942
127     Requires: %{mklibname sqlite3_ 0} >= %{sqlite3_version}
128     Requires: %{mklibname nss 3} >= 2:%{nss_version}
129     Requires: %{mklibname nspr 4} >= 2:%{nspr_version}
130 blino 20612 Requires: indexhtml
131     Requires: xdg-utils
132 lmenut 130942 # fixes bug #42096
133     Requires: mailcap
134 fwang 211783 Suggests: hunspell-en
135 fwang 205048 Suggests: %{_lib}canberra0
136     Suggests: %{_lib}cups2
137 ahmad 75375 Obsoletes: firefox-ext-weave-sync
138 fwang 211782 Obsoletes: firefox-beta < 11
139 blino 20612
140     %description
141     The award-winning Web browser is now faster, more secure, and fully customizable
142 tv 45609 to your online life. With Firefox(R), we've added powerful new features that
143 blino 20612 make your online experience even better. It is an 'open source' product which is
144     freely available, and is acquiring a growing proportion of international web
145     browser usage.
146    
147     Firefox claims to offer a more secure web browsing experience than other products,
148     with better protection against spyware and other Internet-based security threats.
149     It includes all the standard features of a modern web browser, like Internet
150     searching, tracking recently visited sites, setting up shortcuts to favourite
151     sites, customising the software behaviour and so on. Firefox also includes
152     features like 'tabbed browsing' (opening several web sites as sections within the
153     same window) and methods for controlling pop-up windows, cookies and downloaded
154     files.
155    
156     %package devel
157     Summary: Development files for %{name}
158     Group: Development/Other
159 fwang 215462 Obsoletes: firefox-beta-devel < 11
160 blino 20612
161     %description devel
162     Files and macros mainly for building Firefox extensions.
163    
164     %prep
165 dmorgan 263350 %setup -qn mozilla-%update_channel
166 dmorgan 116916 %patch1 -p1 -b .lang
167 dmorgan 127856 %patch2 -p1 -b .vendor
168 lmenut 130942 #patch3 -p1 -b .systemproxy
169 fwang 223798 %patch4 -p0 -b .nss
170 lmenut 130942 %patch5 -p1 -b .appname
171 blino 20612 # It was disabled because firefox3 hangs when using soundwrapper
172 dmorgan 127856 #patch7 -p1
173 dmorgan 252897 %patch8 -p1 -b .disable-software-update
174 dmorgan 284629 %patch9 -p1 -b .ascii
175 dmorgan 127856 %patch10 -p1 -b .default-mail-handler
176 dmorgan 284631 %patch14 -p1
177 dmorgan 249717
178 blino 20612 ## KDE INTEGRATION
179 dmorgan 206634 # Disable kde integration , need refactoring
180 tv 304073 #patch11 -p1 -b .kde
181     #patch12 -p1 -b .kdemoz
182 blino 20612
183 rtp 79029 %ifarch %arm
184     %if "%{_target_cpu}" != "armv7l"
185     %patch34 -p1
186     %endif
187     %endif
188 dmorgan 284628 %patch36 -p2 -b .system-virtualenv
189    
190 rtp 79029 pushd js/src
191     autoconf-2.13
192     popd
193     autoconf-2.13
194    
195 dmorgan 127856 # needed to regenerate certdata.c
196     pushd security/nss/lib/ckfw/builtins
197     perl ./certdata.perl < /etc/pki/tls/mozilla/certdata.txt
198     popd
199    
200 blino 20612 %build
201 fwang 149200 export MOZCONFIG=`pwd`/mozconfig
202 dmorgan 127856 cat << EOF > $MOZCONFIG
203     mk_add_options MOZILLA_OFFICIAL=1
204     mk_add_options BUILD_OFFICIAL=1
205     mk_add_options MOZ_MAKE_FLAGS="%{_smp_mflags}"
206     mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../obj
207 fwang 132978 ac_add_options --host=%{_host}
208     ac_add_options --target=%{_target_platform}
209 fwang 205048 ac_add_options --enable-optimize="%{optflags}"
210 dmorgan 127856 ac_add_options --prefix="%{_prefix}"
211     ac_add_options --libdir="%{_libdir}"
212     ac_add_options --sysconfdir="%{_sysconfdir}"
213     ac_add_options --mandir="%{_mandir}"
214     ac_add_options --includedir="%{_includedir}"
215     ac_add_options --datadir="%{_datadir}"
216     ac_add_options --with-system-nspr
217     ac_add_options --with-system-nss
218     ac_add_options --with-system-zlib
219 fwang 133280 ac_add_options --with-system-libvpx
220     ac_add_options --enable-webm
221 lmenut 130942 ac_add_options --enable-gio
222     ac_add_options --disable-gnomevfs
223 dmorgan 127856 ac_add_options --disable-updater
224     ac_add_options --disable-tests
225     ac_add_options --disable-debug
226     #ac_add_options --enable-chrome-format=jar
227     #ac_add_options --enable-update-channel=beta
228     ac_add_options --enable-official-branding
229     ac_add_options --enable-libproxy
230 fwang 142362 ac_add_options --with-system-png
231 dmorgan 127856 ac_add_options --with-system-jpeg
232     ac_add_options --enable-system-cairo
233     ac_add_options --enable-system-sqlite
234 lmenut 130942 ac_add_options --enable-startup-notification
235 fwang 133282 ac_add_options --enable-xinerama
236 dmorgan 127856 ac_add_options --with-distribution-id=org.mageia
237     ac_add_options --disable-crashreporter
238 dmorgan 263350 ac_add_options --enable-update-channel=%{update_channel}
239 dmorgan 276864 ac_add_options --enable-gstreamer
240 rtp 79029 %ifarch %arm
241     %if "%{_target_cpu}" != "armv7l"
242 dmorgan 127856 ac_add_options --disable-methodjit
243     ac_add_options --disable-tracejit
244 rtp 79029 %endif
245 dmorgan 127856 ac_add_options --enable-system-ffi
246 rtp 79029 %endif
247     %ifnarch %arm %mips
248 dmorgan 127856 ac_add_options --with-valgrind
249     ac_add_options --with-java-include-path=%{java_home}/include
250     ac_add_options --with-java-bin-path=%{java_home}/bin
251 dmorgan 284628 ac_add_options --enable-opus
252 rtp 79029 %endif
253 blino 20612
254 dmorgan 127856 EOF
255    
256 blino 20612 %__perl -p -i -e 's|\-0|\-9|g' config/make-jars.pl
257    
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     cat << EOF > %{buildroot}%{mozillalibdir}/defaults/pref/mga.js
336     pref("extensions.autoDisableScopes", 0);
337     pref("extensions.shownSelectionUI", true);
338     EOF
339    
340 ahmad 130766 # use the system myspell dictionaries
341     rm -fr %{buildroot}%{mozillalibdir}/dictionaries
342 fwang 211783 ln -s %{_datadir}/hunspell %{buildroot}%{mozillalibdir}/dictionaries
343 ahmad 130766
344 lmenut 130942 # (lm) touch and %ghost bookmarks.html to a proper uninstall
345     touch %{buildroot}%{mozillalibdir}/defaults/profile/bookmarks.html
346    
347 blino 20612 %find_lang %{name}
348    
349     mkdir -p %{buildroot}%{_sys_macros_dir}
350     cat <<FIN >%{buildroot}%{_sys_macros_dir}/%{name}.macros
351     # Macros from %{name} package
352     %%firefox_major %{major}
353     %%firefox_epoch %{ff_epoch}
354 fwang 248940 %%firefox_version %{major}%{?prel:-0.%prel}
355 blino 20612 %%firefox_mozillapath %{mozillalibdir}
356     %%firefox_pluginsdir %{pluginsdir}
357 tv 45614 %%firefox_appid \{ec8030f7-c20a-464f-9b0e-13a3a9e97384\}
358     %%firefox_extdir %%(if [ "%%_target_cpu" = "noarch" ]; then echo %%{_datadir}/mozilla/extensions/%%{firefox_appid}; else echo %%{_libdir}/mozilla/extensions/%%{firefox_appid}; fi)
359 blino 20612 FIN
360    
361 ahmad 130766 %pre
362     if [ -d %{mozillalibdir}/dictionaries ]; then
363     rm -fr %{mozillalibdir}/dictionaries
364     fi
365 dmorgan 127856
366 blino 20612 %post
367     if [ ! -r /etc/sysconfig/oem ]; then
368     case `grep META_CLASS /etc/sysconfig/system` in
369     *powerpack) bookmark="mozilla-powerpack.html" ;;
370     *desktop) bookmark="mozilla-one.html";;
371     *) bookmark="mozilla-download.html";;
372     esac
373 lmenut 130942 ln -s -f ../../../../share/mga/bookmarks/mozilla/$bookmark %{mozillalibdir}/defaults/profile/bookmarks.html
374 blino 20612 fi
375    
376     %files -f %{name}.lang
377     %{_bindir}/%{name}
378     %{_bindir}/mozilla-firefox
379     %{_iconsdir}/hicolor/*/apps/*.png
380 colin 130660 %{_miconsdir}/%{name}.png
381     %{_iconsdir}/%{name}.png
382     %{_liconsdir}/%{name}.png
383 blino 20612 %{_datadir}/applications/*.desktop
384 fwang 206849 %{_libdir}/%{name}-%{major}*
385 lmenut 130942 %ghost %{mozillalibdir}/defaults/profile/bookmarks.html
386 blino 20612 %dir %{_libdir}/mozilla
387     %dir %{pluginsdir}
388 lmenut 130942 %dir %{_libdir}/mozilla/extensions/%{firefox_appid}
389     %dir %{_datadir}/mozilla/extensions/%{firefox_appid}
390 blino 20612
391     %files devel
392     %{_sys_macros_dir}/%{name}.macros

  ViewVC Help
Powered by ViewVC 1.1.30