Hello community, here is the log from the commit of package xulrunner.1355 for openSUSE:12.1:Update checked in at 2013-02-22 13:34:40 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:12.1:Update/xulrunner.1355 (Old) and /work/SRC/openSUSE:12.1:Update/.xulrunner.1355.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "xulrunner.1355", Maintainer is "" Changes: -------- New Changes file: --- /dev/null 2013-02-09 11:18:20.872010756 +0100 +++ /work/SRC/openSUSE:12.1:Update/.xulrunner.1355.new/xulrunner.changes 2013-02-22 13:34:44.000000000 +0100 @@ -0,0 +1,470 @@ +------------------------------------------------------------------- +Sat Feb 16 17:38:21 UTC 2013 - wr@rosenauer.org + +- update to 17.0.3esr (bnc#804248) + * MFSA 2013-21/CVE-2013-0783 + Miscellaneous memory safety hazards + * MFSA 2013-24/CVE-2013-0773 (bmo#809652) + Web content bypass of COW and SOW security wrappers + * MFSA 2013-25/CVE-2013-0774 (bmo#827193) + Privacy leak in JavaScript Workers + * MFSA 2013-26/CVE-2013-0775 (bmo#831095) + Use-after-free in nsImageLoadingContent + * MFSA 2013-27/CVE-2013-0776 (bmo#796475) + Phishing on HTTPS connection through malicious proxy + * MFSA 2013-28/CVE-2013-0780/CVE-2013-0782 + Use-after-free, out of bounds read, and buffer overflow issues + found using Address Sanitizer + +------------------------------------------------------------------- +Sat Jan 5 14:46:06 UTC 2013 - wr@rosenauer.org + +- update to 17.0.2esr (bnc#796895) + * MFSA 2013-01/CVE-2013-0749/CVE-2013-0769/CVE-2013-0770 + Miscellaneous memory safety hazards + * MFSA 2013-02/CVE-2013-0760/CVE-2013-0762/CVE-2013-0766/CVE-2013-0767 + CVE-2013-0761/CVE-2013-0763/CVE-2013-0771/CVE-2012-5829 + Use-after-free and buffer overflow issues found using Address Sanitizer + * MFSA 2013-03/CVE-2013-0768 (bmo#815795) + Buffer Overflow in Canvas + * MFSA 2013-04/CVE-2012-0759 (bmo#802026) + URL spoofing in addressbar during page loads + * MFSA 2013-05/CVE-2013-0744 (bmo#814713) + Use-after-free when displaying table with many columns and column groups + * MFSA 2013-07/CVE-2013-0764 (bmo#804237) + Crash due to handling of SSL on threads + * MFSA 2013-08/CVE-2013-0745 (bmo#794158) + AutoWrapperChanger fails to keep objects alive during garbage collection + * MFSA 2013-09/CVE-2013-0746 (bmo#816842) + Compartment mismatch with quickstubs returned values + * MFSA 2013-10/CVE-2013-0747 (bmo#733305) + Event manipulation in plugin handler to bypass same-origin policy + * MFSA 2013-11/CVE-2013-0748 (bmo#806031) + Address space layout leaked in XBL objects + * MFSA 2013-12/CVE-2013-0750 (bmo#805121) + Buffer overflow in Javascript string concatenation + * MFSA 2013-13/CVE-2013-0752 (bmo#805024) + Memory corruption in XBL with XML bindings containing SVG + * MFSA 2013-14/CVE-2013-0757 (bmo#813901) + Chrome Object Wrapper (COW) bypass through changing prototype + * MFSA 2013-15/CVE-2013-0758 (bmo#813906) + Privilege escalation through plugin objects + * MFSA 2013-16/CVE-2013-0753 (bmo#814001) + Use-after-free in serializeToStream + * MFSA 2013-17/CVE-2013-0754 (bmo#814026) + Use-after-free in ListenerManager + * MFSA 2013-18/CVE-2013-0755 (bmo#814027) + Use-after-free in Vibrate + * MFSA 2013-19/CVE-2013-0756 (bmo#814029) + Use-after-free in Javascript Proxy objects +- requires NSS 3.14.1 (MFSA 2013-20, CVE-2013-0743) +- build on SLE11 + * mozilla-gcc43-enums.patch + * mozilla-gcc43-template_hacks.patch + * mozilla-gcc43-templates_instantiation.patch + +------------------------------------------------------------------- +Thu Nov 29 20:04:34 UTC 2012 - wr@rosenauer.org + +- update to 17.0.1 + * regression/compatibility fixes + +------------------------------------------------------------------- +Tue Nov 20 20:15:23 UTC 2012 - wr@rosenauer.org + +- update to 17.0 (bnc#790140) + * MFSA 2012-91/CVE-2012-5842/CVE-2012-5843 + Miscellaneous memory safety hazards + * MFSA 2012-92/CVE-2012-4202 (bmo#758200) + Buffer overflow while rendering GIF images + * MFSA 2012-93/CVE-2012-4201 (bmo#747607) + evalInSanbox location context incorrectly applied + * MFSA 2012-94/CVE-2012-5836 (bmo#792857) + Crash when combining SVG text on path with CSS + * MFSA 2012-95/CVE-2012-4203 (bmo#765628) + Javascript: URLs run in privileged context on New Tab page + * MFSA 2012-96/CVE-2012-4204 (bmo#778603) + Memory corruption in str_unescape + * MFSA 2012-97/CVE-2012-4205 (bmo#779821) + XMLHttpRequest inherits incorrect principal within sandbox + * MFSA 2012-99/CVE-2012-4208 (bmo#798264) + XrayWrappers exposes chrome-only properties when not in chrome + compartment + * MFSA 2012-100/CVE-2012-5841 (bmo#805807) + Improper security filtering for cross-origin wrappers + * MFSA 2012-101/CVE-2012-4207 (bmo#801681) + Improper character decoding in HZ-GB-2312 charset + * MFSA 2012-102/CVE-2012-5837 (bmo#800363) + Script entered into Developer Toolbar runs with chrome privileges + * MFSA 2012-103/CVE-2012-4209 (bmo#792405) + Frames can shadow top.location + * MFSA 2012-104/CVE-2012-4210 (bmo#796866) + CSS and HTML injection through Style Inspector + * MFSA 2012-105/CVE-2012-4214/CVE-2012-4215/CVE-2012-4216/ + CVE-2012-5829/CVE-2012-5839/CVE-2012-5840/CVE-2012-4212/ + CVE-2012-4213/CVE-2012-4217/CVE-2012-4218 + Use-after-free and buffer overflow issues found using Address + Sanitizer + * MFSA 2012-106/CVE-2012-5830/CVE-2012-5833/CVE-2012-5835/CVE-2012-5838 + Use-after-free, buffer overflow, and memory corruption issues + found using Address Sanitizer +- rebased patches +- disabled WebRTC since build is broken (bmo#776877) + +------------------------------------------------------------------- +Wed Oct 24 08:28:49 UTC 2012 - wr@rosenauer.org + +- update to 16.0.2 (bnc#786522) + * MFSA 2012-90/CVE-2012-4194/CVE-2012-4195/CVE-2012-4196 + (bmo#800666, bmo#793121, bmo#802557) + Fixes for Location object issues + +------------------------------------------------------------------- +Thu Oct 11 01:50:19 UTC 2012 - wr@rosenauer.org + +- update to 16.0.1 (bnc#783533) + * MFSA 2012-88/CVE-2012-4191 (bmo#798045) + Miscellaneous memory safety hazards + * MFSA 2012-89/CVE-2012-4192/CVE-2012-4193 (bmo#799952, bmo#720619) + defaultValue security checks not applied + +------------------------------------------------------------------- +Sun Oct 7 21:41:01 UTC 2012 - wr@rosenauer.org + +- update to 16.0 (bnc#783533) + * MFSA 2012-74/CVE-2012-3982/CVE-2012-3983 + Miscellaneous memory safety hazards + * MFSA 2012-75/CVE-2012-3984 (bmo#575294) + select element persistance allows for attacks + * MFSA 2012-76/CVE-2012-3985 (bmo#655649) + Continued access to initial origin after setting document.domain + * MFSA 2012-77/CVE-2012-3986 (bmo#775868) + Some DOMWindowUtils methods bypass security checks + * MFSA 2012-79/CVE-2012-3988 (bmo#725770) + DOS and crash with full screen and history navigation + * MFSA 2012-80/CVE-2012-3989 (bmo#783867) + Crash with invalid cast when using instanceof operator + * MFSA 2012-81/CVE-2012-3991 (bmo#783260) + GetProperty function can bypass security checks + * MFSA 2012-82/CVE-2012-3994 (bmo#765527) + top object and location property accessible by plugins + * MFSA 2012-83/CVE-2012-3993/CVE-2012-4184 (bmo#768101, bmo#780370) + Chrome Object Wrapper (COW) does not disallow acces to privileged + functions or properties + * MFSA 2012-84/CVE-2012-3992 (bmo#775009) + Spoofing and script injection through location.hash + * MFSA 2012-85/CVE-2012-3995/CVE-2012-4179/CVE-2012-4180/ + CVE-2012-4181/CVE-2012-4182/CVE-2012-4183 + Use-after-free, buffer overflow, and out of bounds read issues + found using Address Sanitizer + * MFSA 2012-86/CVE-2012-4185/CVE-2012-4186/CVE-2012-4187/ + CVE-2012-4188 + Heap memory corruption issues found using Address Sanitizer + * MFSA 2012-87/CVE-2012-3990 (bmo#787704) + Use-after-free in the IME State Manager +- requires NSPR 4.9.2 +- removed upstreamed mozilla-crashreporter-restart-args.patch +- updated translations-other with new languages + +------------------------------------------------------------------- +Sun Aug 26 13:48:04 UTC 2012 - wr@rosenauer.org + +- update to 15.0 (bnc#777588) + * MFSA 2012-57/CVE-2012-1970 + Miscellaneous memory safety hazards + * MFSA 2012-58/CVE-2012-1972/CVE-2012-1973/CVE-2012-1974/CVE-2012-1975 + CVE-2012-1976/CVE-2012-3956/CVE-2012-3957/CVE-2012-3958/CVE-2012-3959 + CVE-2012-3960/CVE-2012-3961/CVE-2012-3962/CVE-2012-3963/CVE-2012-3964 + Use-after-free issues found using Address Sanitizer + * MFSA 2012-59/CVE-2012-1956 (bmo#756719) + Location object can be shadowed using Object.defineProperty + * MFSA 2012-60/CVE-2012-3965 (bmo#769108) + Escalation of privilege through about:newtab + * MFSA 2012-61/CVE-2012-3966 (bmo#775794, bmo#775793) + Memory corruption with bitmap format images with negative height + * MFSA 2012-62/CVE-2012-3967/CVE-2012-3968 + WebGL use-after-free and memory corruption + * MFSA 2012-63/CVE-2012-3969/CVE-2012-3970 + SVG buffer overflow and use-after-free issues + * MFSA 2012-64/CVE-2012-3971 + Graphite 2 memory corruption + * MFSA 2012-65/CVE-2012-3972 (bmo#746855) + Out-of-bounds read in format-number in XSLT + * MFSA 2012-66/CVE-2012-3973 (bmo#757128) + HTTPMonitor extension allows for remote debugging without explicit + activation + * MFSA 2012-68/CVE-2012-3975 (bmo#770684) + DOMParser loads linked resources in extensions when parsing ++++ 273 more lines (skipped) ++++ between /dev/null ++++ and /work/SRC/openSUSE:12.1:Update/.xulrunner.1355.new/xulrunner.changes New: ---- add-plugins.sh.in baselibs.conf compare-locales.tar.bz2 create-tar.sh find-external-requires.sh l10n-17.0.3.tar.bz2 mozilla-gcc43-enums.patch mozilla-gcc43-template_hacks.patch mozilla-gcc43-templates_instantiation.patch mozilla-idldir.patch mozilla-language.patch mozilla-nongnome-proxies.patch mozilla-ntlm-full-path.patch mozilla-pkgconfig.patch mozilla-ppc.patch mozilla-prefer_plugin_pref.patch mozilla-sle11.patch source-stamp.txt toolkit-download-folder.patch xulrunner-17.0.3-source.tar.bz2 xulrunner-openSUSE-prefs.js xulrunner-rpmlintrc xulrunner.changes xulrunner.spec ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ xulrunner.spec ++++++ # # spec file for package xulrunner # # Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany. # 2006-2013 Wolfgang Rosenauer # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # Name: xulrunner BuildRequires: Mesa-devel BuildRequires: autoconf213 BuildRequires: dbus-1-glib-devel BuildRequires: fdupes BuildRequires: gcc-c++ BuildRequires: hunspell-devel BuildRequires: libcurl-devel BuildRequires: libgnomeui-devel BuildRequires: libidl-devel BuildRequires: libnotify-devel BuildRequires: nss-shared-helper-devel BuildRequires: pkg-config BuildRequires: python BuildRequires: startup-notification-devel BuildRequires: unzip BuildRequires: xorg-x11-libXt-devel BuildRequires: yasm BuildRequires: zip %if %suse_version > 1110 BuildRequires: libiw-devel BuildRequires: libproxy-devel %else BuildRequires: wireless-tools %endif BuildRequires: mozilla-nspr-devel >= 4.9.4 BuildRequires: mozilla-nss-devel >= 3.14.1 Version: 17.0.3 Release: 0 %define releasedate 2013021500 %define version_internal 17.0.3 %define apiversion 17 %define uaweight 1700003 Summary: Mozilla Runtime Environment License: MPL-2.0 Group: Productivity/Other Url: http://www.mozilla.org/ Provides: gecko %ifarch %ix86 Provides: xulrunner-32bit = %{version}-%{release} %endif Source: xulrunner-%{version}-source.tar.bz2 Source1: l10n-%{version}.tar.bz2 Source2: find-external-requires.sh Source3: %{name}-rpmlintrc Source4: xulrunner-openSUSE-prefs.js Source5: add-plugins.sh.in Source6: create-tar.sh Source7: baselibs.conf Source8: source-stamp.txt Source9: compare-locales.tar.bz2 Patch1: toolkit-download-folder.patch Patch2: mozilla-pkgconfig.patch Patch3: mozilla-idldir.patch Patch4: mozilla-nongnome-proxies.patch Patch5: mozilla-prefer_plugin_pref.patch Patch6: mozilla-language.patch Patch7: mozilla-ntlm-full-path.patch Patch9: mozilla-sle11.patch Patch14: mozilla-ppc.patch # SLE11 patches Patch20: mozilla-gcc43-enums.patch Patch21: mozilla-gcc43-template_hacks.patch Patch22: mozilla-gcc43-templates_instantiation.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build Requires: mozilla-js = %{version} Requires(post): update-alternatives coreutils Requires(preun): update-alternatives coreutils ### build configuration ### %define has_system_nspr 1 %define has_system_nss 1 %define has_system_cairo 0 %define localize 0 %ifarch ppc ppc64 s390 s390x ia64 %arm %define crashreporter 0 %else %define crashreporter 1 %endif ### configuration end ### %define _use_internal_dependency_generator 0 %define __find_requires sh %{SOURCE2} %global provfind sh -c "grep -Ev 'mozsqlite3|dbusservice|unixprint' | %__find_provides" %global __find_provides %provfind %if %has_system_nspr Requires: mozilla-nspr >= %(rpm -q --queryformat '%{VERSION}' mozilla-nspr) %endif %if %has_system_nss Requires: mozilla-nss >= %(rpm -q --queryformat '%{VERSION}' mozilla-nss) %endif %description XULRunner is a single installable package that can be used to bootstrap multiple XUL+XPCOM applications that are as rich as Firefox and Thunderbird. %package -n mozilla-js Summary: Mozilla JS engine Group: Productivity/Other %description -n mozilla-js JavaScript is the Netscape-developed object scripting language used in millions of web pages and server applications worldwide. Netscape's JavaScript is a superset of the ECMA-262 Edition 3 (ECMAScript) standard scripting language, with only mild differences from the published standard. %package devel Summary: XULRunner/Gecko SDK Group: Development/Libraries/Other %if %has_system_nspr Requires: mozilla-nspr-devel >= %(rpm -q --queryformat '%{VERSION}' mozilla-nspr-devel) %endif %if %has_system_nss Requires: mozilla-nss-devel >= %(rpm -q --queryformat '%{VERSION}' mozilla-nss-devel) %endif Requires: %{name} = %{version} %description devel Software Development Kit to embed XUL or Gecko into other applications. %if %localize %package translations-common Summary: Common translations for XULRunner Group: System/Localization Requires: %{name} = %{version} Provides: locale(%{name}:ar;ca;cs;da;de;en_GB;es_AR;es_CL;es_ES;fi;fr;hu;it;ja;ko;nb_NO;nl;pl;pt_BR;pt_PT;ru;sv_SE;zh_CN;zh_TW) Obsoletes: %{name}-translations < %{version}-%{release} %description translations-common XULRunner is a single installable package that can be used to bootstrap multiple XUL+XPCOM applications that are as rich as Firefox and Thunderbird. This package contains the most common languages but en-US which is delivered in the main package. %package translations-other Summary: Extra translations for XULRunner Group: System/Localization Requires: %{name} = %{version} Provides: locale(%{name}:ach;af;ak;as;ast;be;bg;bn_BD;bn_IN;br;bs;csb;cy;el;en_ZA;eo;es_MX;et;eu;fa;ff;fy_NL;ga_IE;gd;gl;gu_IN;he;hi_IN;hr;hy_AM;id;is;kk;km;kn;ku;lg;lij;lt;lv;mai;mk;ml;mr;nn_NO;nso;or;pa_IN;rm;ro;si;sk;sl;son;sq;sr;ta;ta_LK;te;th;tr;uk;vi;zu) Obsoletes: %{name}-translations < %{version}-%{release} %description translations-other XULRunner is a single installable package that can be used to bootstrap multiple XUL+XPCOM applications that are as rich as Firefox and Thunderbird. This package contains rarely used languages. %endif %if %crashreporter %package buildsymbols Summary: Breakpad buildsymbols for %{name} Group: Development/Debug %description buildsymbols This subpackage contains the Breakpad created and compatible debugging symbols meant for upload to Mozilla's crash collector database. %endif %prep %setup -n mozilla -q -b 1 -b 9 %patch1 -p1 %patch2 -p1 %patch3 -p1 %patch4 -p1 %patch5 -p1 %patch6 -p1 %patch7 -p1 %if %suse_version < 1120 %patch9 -p1 %endif %patch14 -p1 # SLE patches %if %suse_version <= 1110 %patch20 -p1 %patch21 -p1 %patch22 -p1 %endif %build # no need to add build time to binaries modified="$(sed -n '/^----/n;s/ - .*$//;p;q' "%{_sourcedir}/%{name}.changes")" DATE="\"$(date -d "${modified}" "+%%b %%e %%Y")\"" TIME="\"$(date -d "${modified}" "+%%R")\"" find . -regex ".*\.c\|.*\.cpp\|.*\.h" -exec sed -i "s/__DATE__/${DATE}/g;s/__TIME__/${TIME}/g" {} + # MOZ_APP_DIR=%{_libdir}/xulrunner-%{version_internal} export MOZ_BUILD_DATE=%{releasedate} export CFLAGS="$RPM_OPT_FLAGS -Os -fno-strict-aliasing" %ifarch ppc64 export CFLAGS="$CFLAGS -mminimal-toc" %endif export LDFLAGS=" -Wl,-rpath -Wl,${MOZ_APP_DIR}" %ifarch %arm # debug symbols require too much memory during build export CFLAGS="${CFLAGS/-g/}" LDFLAGS+="-Wl,--reduce-memory-overheads -Wl,--no-keep-memory" %endif export CXXFLAGS="$CFLAGS" export MOZCONFIG=$RPM_BUILD_DIR/mozconfig export MOZILLA_OFFICIAL=1 export BUILD_OFFICIAL=1 export MOZ_MILESTONE_RELEASE=1 # cat << EOF > $MOZCONFIG mk_add_options MOZILLA_OFFICIAL=1 mk_add_options BUILD_OFFICIAL=1 mk_add_options MOZ_MILESTONE_RELEASE=1 mk_add_options MOZ_MAKE_FLAGS=%{?jobs:-j%jobs} mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../obj . \$topsrcdir/xulrunner/config/mozconfig ac_add_options --prefix=%{_prefix} ac_add_options --libdir=%{_libdir} ac_add_options --sysconfdir=%{_sysconfdir} ac_add_options --mandir=%{_mandir} ac_add_options --includedir=%{_includedir} ac_add_options --enable-optimize ac_add_options --enable-extensions=default #ac_add_options --with-system-jpeg # mozilla uses internal libjpeg-turbo now #ac_add_options --with-system-png # no APNG support ac_add_options --with-system-zlib ac_add_options --with-l10n-base=$RPM_BUILD_DIR/l10n ac_add_options --disable-tests ac_add_options --disable-mochitest ac_add_options --disable-installer ac_add_options --disable-updater ac_add_options --disable-javaxpcom ac_add_options --enable-system-hunspell ac_add_options --enable-startup-notification ac_add_options --enable-shared-js ac_add_options --disable-webrtc # does not build with system NSPR #ac_add_options --enable-debug EOF %if %suse_version > 1130 cat << EOF >> $MOZCONFIG ac_add_options --disable-gnomevfs ac_add_options --enable-gio EOF %endif %if %has_system_nspr cat << EOF >> $MOZCONFIG ac_add_options --with-system-nspr EOF %endif %if %has_system_nss cat << EOF >> $MOZCONFIG ac_add_options --with-system-nss EOF %endif %if %has_system_cairo cat << EOF >> $MOZCONFIG ac_add_options --enable-system-cairo EOF %endif %if %suse_version > 1110 cat << EOF >> $MOZCONFIG ac_add_options --enable-libproxy EOF %endif %if ! %crashreporter cat << EOF >> $MOZCONFIG ac_add_options --disable-crashreporter EOF %endif # S/390 %ifarch s390 s390x cat << EOF >> $MOZCONFIG ac_add_options --disable-jemalloc EOF %endif # ARM %ifarch %arm cat << EOF >> $MOZCONFIG %ifarch armv7l armv7hl ac_add_options --with-arch=armv7-a ac_add_options --with-float-abi=hard ac_add_options --with-fpu=vfpv3-d16 ac_add_options --with-thumb=yes ac_add_options --disable-debug %endif %ifarch armv5tel ac_add_options --with-arch=armv5te ac_add_options --with-float-abi=soft ac_add_options --with-thumb=no %endif EOF %endif make -f client.mk build %install cd ../obj # preferences (to package in omni.jar) cp %{SOURCE4} dist/bin/defaults/pref/all-openSUSE.js %makeinstall STRIP=/bin/true # xpt.py is not executable chmod a+x $RPM_BUILD_ROOT%{_libdir}/xulrunner-devel-%{version_internal}/sdk/bin/*.py # remove some executable permissions find $RPM_BUILD_ROOT%{_includedir}/xulrunner-%{version_internal} \ -type f -perm -111 -exec chmod a-x {} \; find $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal}/ \ -name "*.js" -o -name "*.xpm" -o -name "*.png" | xargs chmod a-x # remove mkdir.done files from installed base find $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal} -name ".mkdir.done" | xargs rm mkdir -p $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal}/extensions # fixing SDK dynamic libs (symlink instead of copy) rm $RPM_BUILD_ROOT%{_libdir}/xulrunner-devel-%{version_internal}/sdk/lib/*.so ln -sf ../../../xulrunner-%{version_internal}/libmozjs.so \ $RPM_BUILD_ROOT%{_libdir}/xulrunner-devel-%{version_internal}/sdk/lib/ ln -sf ../../../xulrunner-%{version_internal}/libxpcom.so \ $RPM_BUILD_ROOT%{_libdir}/xulrunner-devel-%{version_internal}/sdk/lib/ ln -sf ../../../xulrunner-%{version_internal}/libxul.so \ $RPM_BUILD_ROOT%{_libdir}/xulrunner-devel-%{version_internal}/sdk/lib/ # include basic buildenv for xulapps to use mkdir -p $RPM_BUILD_ROOT%{_datadir}/xulrunner-%{version_internal} pushd .. # this list has been compiled by trial and error for prism tar --exclude=*.cpp --exclude=*.mm \ -cvjf $RPM_BUILD_ROOT%{_datadir}/xulrunner-%{version_internal}/mozilla-src.tar.bz2 \ mozilla/configure.in mozilla/Makefile.in mozilla/client.py mozilla/allmakefiles.sh \ mozilla/config mozilla/client.mk mozilla/aclocal.m4 mozilla/build mozilla/js/src/* \ mozilla/testing mozilla/toolkit/mozapps/installer mozilla/probes mozilla/memory \ mozilla/toolkit/xre mozilla/nsprpub/config mozilla/tools mozilla/xpcom/build popd # install add-plugins.sh sed "s:%%PROGDIR:%{_libdir}/xulrunner-%{version_internal}:g" \ %{SOURCE5} > $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal}/add-plugins.sh chmod 755 $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal}/add-plugins.sh # ghosts touch $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal}/global.reginfo # install additional locales %if %localize rm -f %{_tmppath}/translations.* touch %{_tmppath}/translations.{common,other} for locale in $(awk '{ print $1; }' ../mozilla/browser/locales/shipped-locales); do case $locale in ja-JP-mac|en-US) ;; *) pushd $RPM_BUILD_DIR/compare-locales PYTHONPATH=lib \ scripts/compare-locales -m ../l10n-merged/$locale \ ../mozilla/toolkit/locales/l10n.ini ../l10n $locale popd LOCALE_MERGEDIR=$RPM_BUILD_DIR/l10n-merged/$locale \ make -C toolkit/locales langpack-$locale cp dist/xpi-stage/locale-$locale \ $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal}/extensions/langpack-$locale@firefox.mozilla.org # remove prefs and profile defaults from langpack rm -rf $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal}/extensions/langpack-$locale@firefox.mozilla.org/defaults # check against the fixed common list and sort into the right filelist _matched=0 for _match in ar ca cs da de en-GB es-AR es-CL es-ES fi fr hu it ja ko nb-NO nl pl pt-BR pt-PT ru sv-SE zh-CN zh-TW; do [ "$_match" = "$locale" ] && _matched=1 done [ $_matched -eq 1 ] && _l10ntarget=common || _l10ntarget=other echo %{_libdir}/xulrunner-%{version_internal}/extensions/langpack-$locale@firefox.mozilla.org \ \ >> %{_tmppath}/translations.$_l10ntarget esac done %endif # API symlink ln -sf xulrunner-%{version_internal} $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{apiversion} # compat links %if 0%{?ga_version:1} touch $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{ga_version} %endif # excludes %if %suse_version < 1120 rm -f $RPM_BUILD_ROOT%{_bindir}/xulrunner %endif rm -f $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal}/updater rm -f $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal}/update.locale rm -f $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal}/LICENSE rm -f $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal}/README.txt rm -f $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal}/dictionaries/en-US* rm -f $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal}/nspr-config rm -f $RPM_BUILD_ROOT%{_libdir}/pkgconfig/mozilla-plugin.pc # fdupes %fdupes $RPM_BUILD_ROOT%{_includedir}/xulrunner-%{version_internal}/ %fdupes $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal}/ # create breakpad debugsymbols %if %crashreporter SYMBOLS_NAME="xulrunner-%{version}-%{release}.%{_arch}-%{suse_version}-symbols" make buildsymbols \ SYMBOL_INDEX_NAME="$SYMBOLS_NAME.txt" \ SYMBOL_FULL_ARCHIVE_BASENAME="$SYMBOLS_NAME-full" \ SYMBOL_ARCHIVE_BASENAME="$SYMBOLS_NAME" if [ -e dist/*symbols.zip ]; then mkdir -p $RPM_BUILD_ROOT%{_datadir}/mozilla/ cp dist/*symbols.zip $RPM_BUILD_ROOT%{_datadir}/mozilla/ fi %endif %clean rm -rf $RPM_BUILD_ROOT %if %localize rm -rf %{_tmppath}/translations.* %endif %post /usr/sbin/update-alternatives --install %{_bindir}/xulrunner \ xulrunner %{_libdir}/xulrunner-%{apiversion}/xulrunner %{uaweight} || : %{_libdir}/xulrunner-%{apiversion}/add-plugins.sh > /dev/null 2>&1 exit 0 %posttrans # needed for updates which transition directory to symlink %if 0%{?ga_version:1} test -d %{_libdir}/xulrunner-%{ga_version} && rm -rf %{_libdir}/xulrunner-%{ga_version} ln -sf xulrunner-%{version_internal} %{_libdir}/xulrunner-%{ga_version} %endif [ -e %{_libdir}/xulrunner-%{version_internal}/add-plugins.sh ] && \ %{_libdir}/xulrunner-%{version_internal}/add-plugins.sh > /dev/null 2>&1 exit 0 %preun if [ "$1" = "0" ]; then # deinstallation # that's not quite nice since old versions should be removed on update as well # but that's problematic for updates w/o raising the version number /usr/sbin/update-alternatives --remove xulrunner %{_libdir}/xulrunner-%{apiversion}/xulrunner fi rm -f %{_libdir}/xulrunner-%{version_internal}/dictionaries/* exit 0 %triggerin -- myspell-dictionary %{_libdir}/xulrunner-%{version_internal}/add-plugins.sh > /dev/null 2>&1 exit 0 %triggerpostun -- myspell-dictionary %{_libdir}/xulrunner-%{version_internal}/add-plugins.sh > /dev/null 2>&1 exit 0 %files %defattr(-,root,root) %dir %{_libdir}/xulrunner-%{version_internal}/ %dir %{_libdir}/xulrunner-%{version_internal}/chrome/ %dir %{_libdir}/xulrunner-%{version_internal}/dictionaries/ %dir %{_libdir}/xulrunner-%{version_internal}/extensions/ %{_libdir}/xulrunner-%{version_internal}/chrome/icons/ %{_libdir}/xulrunner-%{version_internal}/components/ %{_libdir}/xulrunner-%{version_internal}/plugins/ %{_libdir}/xulrunner-%{version_internal}/*.so %exclude %{_libdir}/xulrunner-%{version_internal}/libmozjs.so %{_libdir}/xulrunner-%{version_internal}/add-plugins.sh %{_libdir}/xulrunner-%{version_internal}/chrome.manifest %{_libdir}/xulrunner-%{version_internal}/dependentlibs.list %{_libdir}/xulrunner-%{version_internal}/mozilla-xremote-client %{_libdir}/xulrunner-%{version_internal}/plugin-container %{_libdir}/xulrunner-%{version_internal}/xulrunner %{_libdir}/xulrunner-%{version_internal}/xulrunner-stub %{_libdir}/xulrunner-%{version_internal}/platform.ini %{_libdir}/xulrunner-%{version_internal}/omni.ja %{_libdir}/xulrunner-%{version_internal}/README.xulrunner # crashreporter files %if %crashreporter %{_libdir}/xulrunner-%{version_internal}/crashreporter %{_libdir}/xulrunner-%{version_internal}/crashreporter.ini %{_libdir}/xulrunner-%{version_internal}/Throbber-small.gif %endif # ghosts %ghost %{_libdir}/xulrunner-%{version_internal}/global.reginfo %if %suse_version >= 1120 %ghost %{_bindir}/xulrunner %endif # API symlink (already in mozilla-js) #%{_libdir}/xulrunner-%{apiversion} # compat symlinks %if 0%{?ga_version:1} %ghost %{_libdir}/xulrunner-%{ga_version} %endif %files -n mozilla-js %defattr(-,root,root) %dir %{_libdir}/xulrunner-%{version_internal}/ %{_libdir}/xulrunner-%{apiversion} %{_libdir}/xulrunner-%{version_internal}/libmozjs.so %files devel %defattr(-,root,root) %{_libdir}/xulrunner-devel-%{version_internal}/ # FIXME symlink dynamic libs below sdk/lib %attr(644,root,root) %{_libdir}/pkgconfig/* %{_includedir}/xulrunner-%{version_internal}/ %{_datadir}/xulrunner-%{version_internal}/ %if %localize %files translations-common -f %{_tmppath}/translations.common %defattr(-,root,root) %dir %{_libdir}/xulrunner-%{version_internal}/ %dir %{_libdir}/xulrunner-%{version_internal}/chrome/ %files translations-other -f %{_tmppath}/translations.other %defattr(-,root,root) %dir %{_libdir}/xulrunner-%{version_internal}/ %dir %{_libdir}/xulrunner-%{version_internal}/chrome/ %endif %if %crashreporter %files buildsymbols %defattr(-,root,root) %{_datadir}/mozilla/ %endif %changelog ++++++ add-plugins.sh.in ++++++ #! /bin/sh # Copyright (c) 2008 Wolfgang Rosenauer. All rights reserved. # # check if we are started as root # only one of UID and USER must be set correctly if test "$UID" != 0 -a "$USER" != root; then echo "You must be root to start $0." exit 1 fi PREFIX="%PROGDIR" # dictionaries MYSPELL=/usr/share/myspell MOZ_SPELL=$PREFIX/dictionaries if [ -d $MOZ_SPELL ] ; then if [ -d $MYSPELL ] ; then for dict in $MYSPELL/??[-_]??.aff ; do # check is it is really the file or it is a string which contain '??_??' if ! [ -e $dict ] ; then continue fi # the dict file name dict_file=`echo ${dict##*/}` # the dict file has a valid name lang=`echo ${dict_file:0:2}` country=`echo ${dict_file:3:2}` # check for .dic file if [ ! -r $MYSPELL/${lang}[-_]${country}.dic ] ; then continue fi # create links if [ ! -r $MOZ_SPELL/${lang}[-_]${country}.aff ] ; then ln -sf $MYSPELL/${lang}[-_]${country}.aff \ $MOZ_SPELL/${lang}-${country}.aff fi if [ ! -r $MOZ_SPELL/${lang}[-_]${country}.dic ] ; then ln -sf $MYSPELL/${lang}[-_]${country}.dic \ $MOZ_SPELL/${lang}-${country}.dic fi done echo "-> added myspell dictionaries" fi # remove broken links for dict in $MOZ_SPELL/*.{aff,dic} ; do if ! [ -r $dict ] ; then rm -f $dict fi done fi ++++++ baselibs.conf ++++++ xulrunner +/usr/lib(64)?/xulrunner-.* +/etc/gre.d/.* requires "mozilla-js-<targettype>" mozilla-js xulrunner-translations-common +/usr/lib(64)?/xulrunner-.* requires "xulrunner-<targettype> = <version>" supplements "packageand(xulrunner-translations-common:xulrunner-<targettype>)" xulrunner-translations-other +/usr/lib(64)?/xulrunner-.* requires "xulrunner-<targettype> = <version>" supplements "packageand(xulrunner-translations-other:xulrunner-<targettype>)" ++++++ create-tar.sh ++++++ #!/bin/bash CHANNEL="esr17" BRANCH="releases/mozilla-$CHANNEL" RELEASE_TAG="FIREFOX_17_0_3esr_RELEASE" VERSION="17.0.3" # mozilla echo "cloning $BRANCH..." hg clone http://hg.mozilla.org/$BRANCH mozilla pushd mozilla [ "$RELEASE_TAG" == "default" ] || hg update -r $RELEASE_TAG # get repo and source stamp echo -n "REV=" > ../source-stamp.txt hg -R . parent --template="{node|short}\n" >> ../source-stamp.txt echo -n "REPO=" >> ../source-stamp.txt hg showconfig paths.default 2>/dev/null | head -n1 | sed -e "s/^ssh:/http:/" >> ../source-stamp.txt popd echo "creating archive..." tar cjf xulrunner-$VERSION-source.tar.bz2 --exclude=.hgtags --exclude=.hgignore --exclude=.hg --exclude=CVS mozilla # l10n echo "fetching locales..." test ! -d l10n && mkdir l10n for locale in $(awk '{ print $1; }' mozilla/browser/locales/shipped-locales); do case $locale in ja-JP-mac|en-US) ;; *) echo "fetching $locale ..." hg clone http://hg.mozilla.org/releases/l10n/mozilla-release/$locale l10n/$locale [ "$RELEASE_TAG" == "default" ] || hg -R l10n/$locale up -C -r $RELEASE_TAG ;; esac done echo "creating l10n archive..." tar cjf l10n-$VERSION.tar.bz2 --exclude=.hgtags --exclude=.hgignore --exclude=.hg l10n # compare-locales echo "creating compare-locales" hg clone http://hg.mozilla.org/build/compare-locales tar cjf compare-locales.tar.bz2 --exclude=.hgtags --exclude=.hgignore --exclude=.hg compare-locales ++++++ find-external-requires.sh ++++++ #!/bin/sh # Finds requirements provided outside of the current file set filelist=$( sed "s/[]['\"*?{}]/\\\\\&/g" ) provides=$( echo "$filelist" | /usr/lib/rpm/find-provides ) echo "$filelist" \ | /usr/lib/rpm/find-requires \ | grep -F -v "$provides" \ | sort -u ++++++ mozilla-gcc43-enums.patch ++++++ # HG changeset patch # Parent 6d0e0f7dc4cf04f1d08f8b4f8e9312ac05928608 remove trailing commas in enum definitions as these are unpalatable for gcc (4.3.4) in pedantic mode diff --git a/media/webrtc/trunk/src/common_types.h b/media/webrtc/trunk/src/common_types.h --- a/media/webrtc/trunk/src/common_types.h +++ b/media/webrtc/trunk/src/common_types.h @@ -342,17 +342,17 @@ enum TelephoneEventDetectionMethods enum NsModes // type of Noise Suppression { kNsUnchanged = 0, // previously set mode kNsDefault, // platform default kNsConference, // conferencing default kNsLowSuppression, // lowest suppression kNsModerateSuppression, kNsHighSuppression, - kNsVeryHighSuppression, // highest suppression + kNsVeryHighSuppression // highest suppression }; enum AgcModes // type of Automatic Gain Control { kAgcUnchanged = 0, // previously set mode kAgcDefault, // platform default // adaptive mode for use when analog volume control exists (e.g. for // PC softphone) @@ -367,17 +367,17 @@ enum AgcModes // type o // EC modes enum EcModes // type of Echo Control { kEcUnchanged = 0, // previously set mode kEcDefault, // platform default kEcConference, // conferencing default (aggressive AEC) kEcAec, // Acoustic Echo Cancellation - kEcAecm, // AEC mobile + kEcAecm // AEC mobile }; // AECM modes enum AecmModes // mode of AECM { kAecmQuietEarpieceOrHeadset = 0, // Quiet earpiece or headset use kAecmEarpiece, // most earpiece use @@ -416,43 +416,43 @@ enum NetEqModes // NetEQ pla // Optimized trade-off between low delay and jitter robustness for two-way // communication. kNetEqDefault = 0, // Improved jitter robustness at the cost of increased delay. Can be // used in one-way communication. kNetEqStreaming = 1, // Optimzed for decodability of fax signals rather than for perceived audio // quality. - kNetEqFax = 2, + kNetEqFax = 2 }; enum NetEqBgnModes // NetEQ Background Noise (BGN) configurations { // BGN is always on and will be generated when the incoming RTP stream // stops (default). kBgnOn = 0, // The BGN is faded to zero (complete silence) after a few seconds. kBgnFade = 1, // BGN is not used at all. Silence is produced after speech extrapolation // has faded. - kBgnOff = 2, + kBgnOff = 2 }; enum OnHoldModes // On Hold direction { kHoldSendAndPlay = 0, // Put both sending and playing in on-hold state. kHoldSendOnly, // Put only sending in on-hold state. kHoldPlayOnly // Put only playing in on-hold state. }; enum AmrMode { kRfc3267BwEfficient = 0, kRfc3267OctetAligned = 1, - kRfc3267FileStorage = 2, + kRfc3267FileStorage = 2 }; // ================================================================== // Video specific types // ================================================================== // Raw video types enum RawVideoType ++++++ mozilla-gcc43-template_hacks.patch ++++++ # HG changeset patch # Parent 993c5b5a44ca18c5273b74c75704b418c2477d28 bmo#783505 - bump gcc version required for building without template hacks diff --git a/js/src/jstypedarray.cpp b/js/src/jstypedarray.cpp --- a/js/src/jstypedarray.cpp +++ b/js/src/jstypedarray.cpp @@ -1404,17 +1404,17 @@ class TypedArrayTemplate // retrieves a given Value, probably from a slot on the object. template<Value ValueGetter(JSObject *obj)> static JSBool Getter(JSContext *cx, unsigned argc, Value *vp) { CallArgs args = CallArgsFromVp(argc, vp); // FIXME: Hack to keep us building with gcc 4.2. Remove this once we // drop support for gcc 4.2. See bug 783505 for the details. -#if defined(__GNUC__) && __GNUC_MINOR__ <= 2 +#if defined(__GNUC__) && __GNUC_MINOR__ <= 3 return CallNonGenericMethod(cx, IsThisClass, GetterImpl<ValueGetter>, args); #else return CallNonGenericMethod<ThisTypeArray::IsThisClass, ThisTypeArray::GetterImpl<ValueGetter> >(cx, args); #endif } // Define an accessor for a read-only property that invokes a native getter ++++++ mozilla-gcc43-templates_instantiation.patch ++++++ # HG changeset patch # Parent 2e78665a1ab70f4dc3884965428bda14da684ef6 bmo#732340 - explicitly instantiate templates diff --git a/gfx/harfbuzz/src/hb-ot-layout.cc b/gfx/harfbuzz/src/hb-ot-layout.cc --- a/gfx/harfbuzz/src/hb-ot-layout.cc +++ b/gfx/harfbuzz/src/hb-ot-layout.cc @@ -479,8 +479,12 @@ hb_ot_layout_position_lookup (hb_font_t return hb_ot_layout_from_face (font->face)->gpos->position_lookup (&c, lookup_index); } void hb_ot_layout_position_finish (hb_font_t *font, hb_buffer_t *buffer, hb_bool_t zero_width_attached_marks) { GPOS::position_finish (font, buffer, zero_width_attached_marks); } + +template int SortedArrayOf<Record<LangSys> >::search<unsigned int>(unsigned int const &) const; +template int SortedArrayOf<Record<Script> >::search<unsigned int>(unsigned int const &) const; +template int SortedArrayOf<IntType<unsigned short> >::search<unsigned int>(unsigned int const &) const; ++++++ mozilla-idldir.patch ++++++ # HG changeset patch # Parent 2b6d21723804b8b5a73a2fe675ee9ce25f788229 # User Wolfgang Rosenauer <wr@rosenauer.org> Install IDL files to includedir instead of /usr/share/idl diff --git a/config/baseconfig.mk b/config/baseconfig.mk --- a/config/baseconfig.mk +++ b/config/baseconfig.mk @@ -1,12 +1,12 @@ INCLUDED_AUTOCONF_MK = 1 includedir := $(includedir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) -idldir = $(datadir)/idl/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) +idldir = $(includedir) installdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel-$(MOZ_APP_VERSION) DIST = $(DEPTH)/dist # We do magic with OBJ_SUFFIX in config.mk, the following ensures we don't # manually use it before config.mk inclusion _OBJ_SUFFIX := $(OBJ_SUFFIX) OBJ_SUFFIX = $(error config/config.mk needs to be included before using OBJ_SUFFIX) ++++++ mozilla-language.patch ++++++ # HG changeset patch # User Wolfgang Rosenauer <wr@rosenauer.org> # Parent 0d6917b8f28f6e0398dbf329dda4932ba4f997c2 Bug 583793 - Firefox interface language set to LANG, ignores LANGUAGE diff --git a/intl/locale/src/nsLocaleService.cpp b/intl/locale/src/nsLocaleService.cpp --- a/intl/locale/src/nsLocaleService.cpp +++ b/intl/locale/src/nsLocaleService.cpp @@ -160,16 +160,17 @@ nsLocaleService::nsLocaleService(void) nsRefPtr<nsLocale> resultLocale(new nsLocale()); NS_ENSURE_TRUE(resultLocale, ); #ifdef MOZ_WIDGET_QT const char* lang = QLocale::system().name().toAscii(); #else // Get system configuration const char* lang = getenv("LANG"); + const char* language = getenv("LANGUAGE"); #endif nsAutoString xpLocale, platformLocale; nsAutoString category, category_platform; int i; for( i = 0; i < LocaleListLength; i++ ) { nsresult result; @@ -188,16 +189,21 @@ nsLocaleService::nsLocaleService(void) } else { CopyASCIItoUTF16(lang, platformLocale); result = nsPosixLocale::GetXPLocale(lang, xpLocale); } } if (NS_FAILED(result)) { return; } + // LANGUAGE is overriding LC_MESSAGES + if (i == LC_MESSAGES && language && *language) { + CopyASCIItoUTF16(language, platformLocale); + result = nsPosixLocale::GetXPLocale(language, xpLocale); + } resultLocale->AddCategory(category, xpLocale); resultLocale->AddCategory(category_platform, platformLocale); } mSystemLocale = do_QueryInterface(resultLocale); mApplicationLocale = do_QueryInterface(resultLocale); #endif // XP_UNIX #ifdef XP_OS2 ++++++ mozilla-nongnome-proxies.patch ++++++ From: Wolfgang Rosenauer Subject: Do not use gconf for proxy settings if not running within Gnome Index: toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp =================================================================== RCS file: /cvsroot/mozilla/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp,v retrieving revision 1.1 diff --git a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp b/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp --- a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp +++ b/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp @@ -74,22 +74,28 @@ private: nsresult SetProxyResultFromGSettings(const char* aKeyBase, const char* aType, nsACString& aResult); }; NS_IMPL_ISUPPORTS1(nsUnixSystemProxySettings, nsISystemProxySettings) nsresult nsUnixSystemProxySettings::Init() { - mSchemeProxySettings.Init(5); - mGConf = do_GetService(NS_GCONFSERVICE_CONTRACTID); - mGSettings = do_GetService(NS_GSETTINGSSERVICE_CONTRACTID); - if (mGSettings) { - mGSettings->GetCollectionForSchema(NS_LITERAL_CSTRING("org.gnome.system.proxy"), - getter_AddRefs(mProxySettings)); + // If this is a GNOME session, load gconf and try to use its preferences. + // If gconf is not available (which would be stupid) we'll proceed as if + // this was not a GNOME session, using *_PROXY environment variables. + const char* sessionType = PR_GetEnv("DESKTOP_SESSION"); + if (sessionType && !strcmp(sessionType, "gnome")) { + mSchemeProxySettings.Init(5); + mGConf = do_GetService(NS_GCONFSERVICE_CONTRACTID); + mGSettings = do_GetService(NS_GSETTINGSSERVICE_CONTRACTID); + if (mGSettings) { + mGSettings->GetCollectionForSchema(NS_LITERAL_CSTRING("org.gnome.system.proxy"), + getter_AddRefs(mProxySettings)); + } } return NS_OK; } bool nsUnixSystemProxySettings::IsProxyMode(const char* aMode) { ++++++ mozilla-ntlm-full-path.patch ++++++ # HG changeset patch # User Petr Cerny <pcerny@novell.com> # Parent 7308e4a7c1f769f4bbbc90870b849cadd99495a6 Bug 634334 - call to the ntlm_auth helper fails diff --git a/extensions/auth/nsAuthSambaNTLM.cpp b/extensions/auth/nsAuthSambaNTLM.cpp --- a/extensions/auth/nsAuthSambaNTLM.cpp +++ b/extensions/auth/nsAuthSambaNTLM.cpp @@ -168,17 +168,17 @@ static uint8_t* ExtractMessage(const nsA nsresult nsAuthSambaNTLM::SpawnNTLMAuthHelper() { const char* username = PR_GetEnv("USER"); if (!username) return NS_ERROR_FAILURE; const char* const args[] = { - "ntlm_auth", + "/usr/bin/ntlm_auth", "--helper-protocol", "ntlmssp-client-1", "--use-cached-creds", "--username", username, nullptr }; bool isOK = SpawnIOChild(const_cast<char* const*>(args), &mChildPID, &mFromChildFD, &mToChildFD); if (!isOK) ++++++ mozilla-pkgconfig.patch ++++++ From: Wolfgang Rosenauer Subject: pkgconfig tuning diff --git a/xulrunner/installer/Makefile.in b/xulrunner/installer/Makefile.in --- a/xulrunner/installer/Makefile.in +++ b/xulrunner/installer/Makefile.in @@ -39,16 +39,19 @@ ifndef MOZ_PLATFORM_MAEMO GENERATE_CACHE = 1 endif include $(topsrcdir)/toolkit/mozapps/installer/signing.mk include $(topsrcdir)/toolkit/mozapps/installer/packager.mk # Add pkg-config files to the install:: target +# the apilibdir always ends with 1.9 as every patch update will provide a link +apilibdir = $(dir $(installdir))xulrunner-17 + pkg_config_files = \ libxul.pc \ libxul-embedding.pc \ mozilla-js.pc \ mozilla-plugin.pc \ $(NULL) ifdef MOZ_NATIVE_NSPR @@ -76,16 +79,17 @@ pkg_config_files += mozilla-nss.pc endif %.pc: $(srcdir)/%.pc.in $(GLOBAL_DEPS) cat $< | sed \ -e "s|%prefix%|$(prefix)|" \ -e "s|%includedir%|$(includedir)|" \ -e "s|%idldir%|$(idldir)|" \ -e "s|%sdkdir%|$(sdkdir)|" \ + -e "s|%libdir%|$(apilibdir)|" \ -e "s|%MOZ_APP_NAME%|$(MOZ_APP_NAME)|" \ -e "s|%MOZILLA_VERSION%|$(MOZ_APP_VERSION)|" \ -e "s|%WCHAR_CFLAGS%|$(WCHAR_CFLAGS)|" \ -e "s|%FULL_NSPR_LIBS%|$(FULL_NSPR_LIBS)|" \ -e "s|%FULL_NSPR_CFLAGS%|$(FULL_NSPR_CFLAGS)|" \ -e "s|%NSPR_NAME%|$(NSPR_NAME)|" \ -e "s|%NSPR_VERSION%|$(NSPR_VERSION)|" \ -e "s|%MOZ_XUL_LINK%|$(MOZ_XUL_LINK)|" \ diff --git a/xulrunner/installer/libxul-embedding.pc.in b/xulrunner/installer/libxul-embedding.pc.in --- a/xulrunner/installer/libxul-embedding.pc.in +++ b/xulrunner/installer/libxul-embedding.pc.in @@ -1,10 +1,11 @@ prefix=%prefix% sdkdir=%sdkdir% includedir=%includedir% idldir=%idldir% Name: libxul-embedding Description: Static library for version-independent embedding of the Mozilla runtime Version: %MOZILLA_VERSION% -Libs: -L${sdkdir}/lib -lxpcomglue -ldl +Requires: %NSPR_NAME% >= %NSPR_VERSION% +Libs: -L${sdkdir}/sdk/lib -lxpcomglue -ldl Cflags: -DXPCOM_GLUE -I${includedir} %WCHAR_CFLAGS% diff --git a/xulrunner/installer/libxul.pc.in b/xulrunner/installer/libxul.pc.in --- a/xulrunner/installer/libxul.pc.in +++ b/xulrunner/installer/libxul.pc.in @@ -1,10 +1,11 @@ prefix=%prefix% sdkdir=%sdkdir% +libdir=%libdir% includedir=%includedir% idldir=%idldir% Name: libxul Description: The Mozilla Runtime and Embedding Engine Version: %MOZILLA_VERSION% Requires: %NSPR_NAME% >= %NSPR_VERSION% Libs: -L${sdkdir}/lib %MOZ_XUL_LINK% diff --git a/xulrunner/installer/mozilla-js.pc.in b/xulrunner/installer/mozilla-js.pc.in --- a/xulrunner/installer/mozilla-js.pc.in +++ b/xulrunner/installer/mozilla-js.pc.in @@ -1,10 +1,11 @@ prefix=%prefix% sdkdir=%sdkdir% +libdir=%libdir% includedir=%includedir% Name: JavaScript Description: The Mozilla JavaScript Library Version: %MOZILLA_VERSION% Requires: %NSPR_NAME% >= %NSPR_VERSION% -Libs: -L${sdkdir}/lib %MOZ_JS_LINK% +Libs: -Wl,-rpath,${libdir} -L${sdkdir}/lib %MOZ_JS_LINK% Cflags: -I${includedir} -DXP_UNIX -DJS_THREADSAFE ++++++ mozilla-ppc.patch ++++++ # HG changeset patch # Parent 58ae98c85e39def96a90cb21c90e871f41a03a71 # User Wolfgang Rosenauer <wr@rosenauer.org> Bug 746112 - RegExp hang on ppc64 in execute. Bug 750620 - Make double-conversion portable to exotic architectures. TM: mozilla15 diff --git a/js/src/yarr/YarrInterpreter.h b/js/src/yarr/YarrInterpreter.h --- a/js/src/yarr/YarrInterpreter.h +++ b/js/src/yarr/YarrInterpreter.h @@ -162,17 +162,17 @@ struct ByteTerm { , m_invert(invert) { atom.characterClass = characterClass; atom.quantityType = QuantifierFixedCount; atom.quantityCount = 1; inputPosition = inputPos; } - ByteTerm(Type type, unsigned subpatternId, ByteDisjunction* parenthesesInfo, bool capture, int inputPos) + ByteTerm(Type type, unsigned subpatternId, ByteDisjunction* parenthesesInfo, bool capture, int inputPos) __attribute__((noinline)) : type(type) , m_capture(capture) , m_invert(false) { atom.subpatternId = subpatternId; atom.parenthesesDisjunction = parenthesesInfo; atom.quantityType = QuantifierFixedCount; atom.quantityCount = 1; @@ -183,17 +183,17 @@ struct ByteTerm { : type(type) , m_capture(false) , m_invert(invert) { atom.quantityType = QuantifierFixedCount; atom.quantityCount = 1; } - ByteTerm(Type type, unsigned subpatternId, bool capture, bool invert, int inputPos) + ByteTerm(Type type, unsigned subpatternId, bool capture, bool invert, int inputPos) __attribute__((noinline)) : type(type) , m_capture(capture) , m_invert(invert) { atom.subpatternId = subpatternId; atom.quantityType = QuantifierFixedCount; atom.quantityCount = 1; inputPosition = inputPos; diff --git a/js/src/yarr/YarrPattern.h b/js/src/yarr/YarrPattern.h --- a/js/src/yarr/YarrPattern.h +++ b/js/src/yarr/YarrPattern.h @@ -166,17 +166,17 @@ struct PatternTerm { , m_capture(false) , m_invert(invert) { characterClass = charClass; quantityType = QuantifierFixedCount; quantityCount = 1; } - PatternTerm(Type type, unsigned subpatternId, PatternDisjunction* disjunction, bool capture = false, bool invert = false) + PatternTerm(Type type, unsigned subpatternId, PatternDisjunction* disjunction, bool capture = false, bool invert = false) __attribute__((noinline)) : type(type) , m_capture(capture) , m_invert(invert) { parentheses.disjunction = disjunction; parentheses.subpatternId = subpatternId; parentheses.isCopy = false; parentheses.isTerminal = false; diff --git a/memory/mozjemalloc/jemalloc.c b/memory/mozjemalloc/jemalloc.c --- a/memory/mozjemalloc/jemalloc.c +++ b/memory/mozjemalloc/jemalloc.c @@ -1086,17 +1086,19 @@ struct arena_s { static unsigned ncpus; #endif /* * When MALLOC_STATIC_SIZES is defined most of the parameters * controlling the malloc behavior are defined as compile-time constants * for best performance and cannot be altered at runtime. */ +#if !(defined(__powerpc__)) #define MALLOC_STATIC_SIZES 1 +#endif #ifdef MALLOC_STATIC_SIZES /* * VM page size. It must divide the runtime CPU page size or the code * will abort. */ #define pagesize_2pow ((size_t) 12) diff --git a/mfbt/double-conversion/utils.h b/mfbt/double-conversion/utils.h --- a/mfbt/double-conversion/utils.h +++ b/mfbt/double-conversion/utils.h @@ -50,17 +50,17 @@ // the result is equal to 89255e-22. // The best way to test this, is to create a division-function and to compare // the output of the division with the expected result. (Inlining must be // disabled.) // On Linux,x86 89255e-22 != Div_double(89255.0/1e22) #if defined(_M_X64) || defined(__x86_64__) || \ defined(__ARMEL__) || defined(__avr32__) || \ defined(__hppa__) || defined(__ia64__) || \ - defined(__mips__) || defined(__powerpc__) || \ + defined(__mips__) || defined(__powerpc__) || defined(__powerpc64__) || \ defined(__sparc__) || defined(__sparc) || defined(__s390__) || \ defined(__SH4__) || defined(__alpha__) || \ defined(_MIPS_ARCH_MIPS32R2) #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1 #elif defined(_M_IX86) || defined(__i386__) || defined(__i386) #if defined(_WIN32) // Windows uses a 64bit wide floating point stack. #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1 ++++++ mozilla-prefer_plugin_pref.patch ++++++ From: Ubuntu Subject: introduce a pref to prefer certain plugins for mime-types diff --git a/dom/plugins/base/nsPluginHost.cpp b/dom/plugins/base/nsPluginHost.cpp --- a/dom/plugins/base/nsPluginHost.cpp +++ b/dom/plugins/base/nsPluginHost.cpp @@ -1588,17 +1588,51 @@ nsPluginHost::FindPluginForType(const ch if (!aMimeType) { return nullptr; } LoadPlugins(); InfallibleTArray<nsPluginTag*> matchingPlugins; + char *preferredPluginPath = NULL; + nsCAutoString mimetypePrefString ("modules.plugins.mimetype."); + mimetypePrefString.Append(aMimeType); + const char *mimetypePrefChar = mimetypePrefString.get(); + nsAdoptingCString pluginPath = Preferences::GetCString(mimetypePrefChar); + preferredPluginPath = (char*) pluginPath.get(); + nsPluginTag *plugin = mPlugins; + + if(preferredPluginPath) { + while (plugin) { + if (!aCheckEnabled || plugin->IsEnabled()) { + if (0 == PL_strcasecmp(plugin->mFileName.get(), preferredPluginPath) || + 0 == PL_strcasecmp(plugin->mFullPath.get(), preferredPluginPath)) { + matchingPlugins.AppendElement(plugin); + } + } + plugin = plugin->mNext; + } + + // now lets search for substrings + plugin = mPlugins; + while (plugin) { + if (!aCheckEnabled || plugin->IsEnabled()) { + if (nullptr != PL_strstr(plugin->mFileName.get(), preferredPluginPath) || + nullptr != PL_strstr(plugin->mFullPath.get(), preferredPluginPath)) { + matchingPlugins.AppendElement(plugin); + } + } + plugin = plugin->mNext; + } + + return FindPreferredPlugin(matchingPlugins); + } + while (plugin) { if (!aCheckEnabled || plugin->IsEnabled()) { int32_t mimeCount = plugin->mMimeTypes.Length(); for (int32_t i = 0; i < mimeCount; i++) { if (0 == PL_strcasecmp(plugin->mMimeTypes[i].get(), aMimeType)) { matchingPlugins.AppendElement(plugin); break; } ++++++ mozilla-sle11.patch ++++++ Subject: Patches needed to build on SLE11/11.1 References: https://bugzilla.mozilla.org/show_bug.cgi?id=513422 diff --git a/xpcom/glue/SSE.cpp b/xpcom/glue/SSE.cpp --- a/xpcom/glue/SSE.cpp +++ b/xpcom/glue/SSE.cpp @@ -44,26 +44,77 @@ namespace { // SSE.h has parallel #ifs which declare MOZILLA_SSE_HAVE_CPUID_DETECTION. // We can't declare these functions in the header file, however, because // <intrin.h> conflicts with <windows.h> on MSVC 2005, and some files want to // include both SSE.h and <windows.h>. #ifdef HAVE_CPUID_H // cpuid.h is available on gcc 4.3 and higher on i386 and x86_64 -#include <cpuid.h> +//#include <cpuid.h> enum CPUIDRegister { eax = 0, ebx = 1, ecx = 2, edx = 3 }; +#ifdef __i386__ +#define _my_cpuid(level, a, b, c, d) \ + __asm__ ("xchg{l}\t{%%}ebx, %1\n\t" \ + "cpuid\n\t" \ + "xchg{l}\t{%%}ebx, %1\n\t" \ + : "=a" (a), "=r" (b), "=c" (c), "=d" (d) \ + : "0" (level)) +#else +#define _my_cpuid(level, a, b, c, d) \ + __asm__ ("cpuid\n\t" \ + : "=a" (a), "=b" (b), "=c" (c), "=d" (d) \ + : "0" (level)) +#endif + +static __inline unsigned int +my_cpuid_max (unsigned int __ext, unsigned int *__sig) +{ + unsigned int __eax, __ebx, __ecx, __edx; + +#ifdef __i386__ + __asm__ ("pushf{l|d}\n\t" + "pushf{l|d}\n\t" + "pop{l}\t%0\n\t" + "mov{l}\t{%0, %1|%1, %0}\n\t" + "xor{l}\t{%2, %0|%0, %2}\n\t" + "push{l}\t%0\n\t" + "popf{l|d}\n\t" + "pushf{l|d}\n\t" + "pop{l}\t%0\n\t" + "popf{l|d}\n\t" + : "=&r" (__eax), "=&r" (__ebx) + : "i" (0x00200000)); + + if (!((__eax ^ __ebx) & 0x00200000)) + return 0; +#endif + + /* Host supports cpuid. Return highest supported cpuid input value. */ + _my_cpuid (__ext, __eax, __ebx, __ecx, __edx); + + if (__sig) + *__sig = __ebx; + + return __eax; +} + static bool has_cpuid_bit(unsigned int level, CPUIDRegister reg, unsigned int bit) { unsigned int regs[4]; - return __get_cpuid(level, ®s[0], ®s[1], ®s[2], ®s[3]) && - (regs[reg] & bit); + + unsigned int __ext = level & 0x80000000; + if (my_cpuid_max(__ext, 0) < level) + return false; + + _my_cpuid(level, regs[0], regs[1], regs[2], regs[3]); + return !!(unsigned(regs[reg]) & bit); } #elif defined(_MSC_VER) && _MSC_VER >= 1400 && (defined(_M_IX86) || defined(_M_AMD64)) // MSVC 2005 or newer on x86-32 or x86-64 #include <intrin.h> enum CPUIDRegister { eax = 0, ebx = 1, ecx = 2, edx = 3 }; ++++++ source-stamp.txt ++++++ REV=05f89cd1150a REPO=http://hg.mozilla.org/releases/mozilla-esr17 ++++++ toolkit-download-folder.patch ++++++ From: Wolfgang Rosenauer Subject: Don't use localized Downloads unless XDG is set up References: https://bugzilla.novell.com/show_bug.cgi?id=501724 diff --git a/browser/components/preferences/main.js b/browser/components/preferences/main.js --- a/browser/components/preferences/main.js +++ b/browser/components/preferences/main.js @@ -344,7 +344,7 @@ var gMainPane = { // With 3.0, a new desktop folder - 'Downloads' was introduced for // platforms and versions that don't support a default system downloads // folder. See nsDownloadManager for details. - downloadFolder.label = bundlePreferences.getString("downloadsFolderName"); + downloadFolder.label = "Downloads"; iconUrlSpec = fph.getURLSpecFromFile(this._indexToFolder(1)); } else { // 'Desktop' diff --git a/toolkit/components/downloads/nsDownloadManager.cpp b/toolkit/components/downloads/nsDownloadManager.cpp --- a/toolkit/components/downloads/nsDownloadManager.cpp +++ b/toolkit/components/downloads/nsDownloadManager.cpp @@ -1269,8 +1269,10 @@ nsDownloadManager::GetDefaultDownloadsDi // XDG user dir spec, with a fallback to Home/Downloads nsXPIDLString folderName; - mBundle->GetStringFromName(NS_LITERAL_STRING("downloadsFolder").get(), - getter_Copies(folderName)); + // We don't want localized "Downloads" unless XDG is used + //mBundle->GetStringFromName(NS_LITERAL_STRING("downloadsFolder").get(), + // getter_Copies(folderName)); + folderName.AssignLiteral("Downloads"); #if defined (XP_MACOSX) rv = dirService->Get(NS_OSX_DEFAULT_DOWNLOAD_DIR, ++++++ xulrunner-openSUSE-prefs.js ++++++ // openSUSE overrides for default settings pref("layout.word_select.stop_at_punctuation", false); pref("intl.locale.matchOS", true); ++++++ xulrunner-rpmlintrc ++++++ addFilter("no-jar-manifest") -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org