xulrunner/mozilla-xulrunner22.spec
branchfirefox6
changeset 318 1fb357225f09
parent 317 5d9ea1c5e50e
child 319 8ce04c60cbcc
equal deleted inserted replaced
317:5d9ea1c5e50e 318:1fb357225f09
     1 #
       
     2 # spec file for package mozilla-xulrunner22
       
     3 #
       
     4 # Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
       
     5 #               2006-2011 Wolfgang Rosenauer
       
     6 #
       
     7 # All modifications and additions to the file contributed by third parties
       
     8 # remain the property of their copyright owners, unless otherwise agreed
       
     9 # upon. The license for this file, and modifications and additions to the
       
    10 # file, is the same license as for the pristine package itself (unless the
       
    11 # license for the pristine package is not an Open Source License, in which
       
    12 # case the license is the MIT License). An "Open Source License" is a
       
    13 # license that conforms to the Open Source Definition (Version 1.9)
       
    14 # published by the Open Source Initiative.
       
    15 
       
    16 # Please submit bugfixes or comments via http://bugs.opensuse.org/
       
    17 #
       
    18 
       
    19 # norootforbuild
       
    20 
       
    21 
       
    22 Name:           mozilla-xulrunner22
       
    23 BuildRequires:  autoconf213 gcc-c++ libcurl-devel libgnomeui-devel libidl-devel libnotify-devel python startup-notification-devel zip pkg-config fdupes hunspell-devel yasm Mesa-devel nss-shared-helper-devel
       
    24 # needed for brp-check-bytecode-version (jar, fastjar would do as well)
       
    25 BuildRequires:  unzip
       
    26 %if %suse_version > 1110
       
    27 BuildRequires:  libiw-devel
       
    28 BuildRequires:  libproxy-devel
       
    29 %else
       
    30 BuildRequires:  wireless-tools
       
    31 %endif
       
    32 License:        MPLv1.1 or GPLv2+ or LGPLv2+
       
    33 Version:        2.2a
       
    34 Release:        1
       
    35 %define         releasedate 2011041100
       
    36 %define         version_internal 2.2a1pre
       
    37 %define         apiversion 2.2
       
    38 %define         uaweight 220000
       
    39 Summary:        Mozilla Runtime Environment 2.2
       
    40 Url:            http://www.mozilla.org
       
    41 Group:          Productivity/Other
       
    42 Provides:       gecko22
       
    43 # this is needed to match this package with the kde4 helper package without the main package
       
    44 # having a hard requirement on the kde4 package
       
    45 %define kde_helper_version 6
       
    46 Provides:       mozilla-kde4-version = %{kde_helper_version}
       
    47 %ifarch %ix86
       
    48 Provides:       mozilla-xulrunner22-32bit = %{version}-%{release}
       
    49 %endif
       
    50 Source:         xulrunner-source-%{version}.tar.bz2
       
    51 Source1:        l10n-%{version}.tar.bz2
       
    52 Source2:        find-external-requires.sh
       
    53 Source3:        %{name}-rpmlintrc
       
    54 Source4:        xulrunner-openSUSE-prefs.js
       
    55 Source5:        add-plugins.sh.in
       
    56 Source6:        create-tar.sh
       
    57 Source7:        baselibs.conf
       
    58 Source8:        toolkit-lockdown.js
       
    59 Source9:        compare-locales.tar.bz2
       
    60 Patch1:         toolkit-download-folder.patch
       
    61 Patch2:         mozilla-pkgconfig.patch
       
    62 Patch3:         idldir.patch
       
    63 Patch4:         mozilla-nongnome-proxies.patch
       
    64 Patch5:         mozilla-prefer_plugin_pref.patch
       
    65 Patch6:         mozilla-shared-nss-db.patch
       
    66 Patch7:         mozilla-kde.patch
       
    67 Patch8:         mozilla-cairo-lcd.patch
       
    68 # PATCH-FEATURE-SLED FATE#302023, FATE#302024
       
    69 Patch9:         mozilla-gconf-backend.patch
       
    70 Patch10:         gecko-lockdown.patch
       
    71 Patch11:        toolkit-ui-lockdown.patch
       
    72 # ---
       
    73 Patch12:        mozilla-cpuid.patch
       
    74 Patch13:        mozilla-language.patch
       
    75 Patch14:        mozilla-gio.patch
       
    76 Patch15:        mozilla-cairo-return.patch
       
    77 Patch16:        mozilla-ntlm-full-path.patch
       
    78 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
       
    79 Requires:       mozilla-js22 = %{version}
       
    80 Requires(post):  update-alternatives coreutils
       
    81 Requires(preun): update-alternatives coreutils
       
    82 ### build configuration ###
       
    83 %define has_system_nspr  1
       
    84 %define has_system_nss   1
       
    85 %define has_system_cairo 0
       
    86 %define localize 1
       
    87 %ifarch ppc ppc64 s390 s390x ia64
       
    88 %define crashreporter    0
       
    89 %define plugincontainer  0
       
    90 %else
       
    91 %define crashreporter    1
       
    92 %define plugincontainer  1
       
    93 %endif
       
    94 ### configuration end ###
       
    95 %define _use_internal_dependency_generator 0
       
    96 %define __find_requires sh %{SOURCE2}
       
    97 %global provfind sh -c "grep -Ev 'mozsqlite3|dbusservice|unixprint' | %__find_provides"
       
    98 %global __find_provides %provfind
       
    99 %if %has_system_nspr
       
   100 BuildRequires:  mozilla-nspr-devel
       
   101 Requires:       mozilla-nspr >= %(rpm -q --queryformat '%{VERSION}' mozilla-nspr)
       
   102 %endif
       
   103 %if %has_system_nss
       
   104 BuildRequires:  mozilla-nss-devel >= 3.12.8
       
   105 Requires:       mozilla-nss >= %(rpm -q --queryformat '%{VERSION}' mozilla-nss)
       
   106 %endif
       
   107 Recommends:     %{name}-gnome
       
   108 
       
   109 %description
       
   110 XULRunner is a single installable package that can be used to bootstrap
       
   111 multiple XUL+XPCOM applications that are as rich as Firefox and
       
   112 Thunderbird.
       
   113 
       
   114 
       
   115 %package -n mozilla-js22
       
   116 License:        MPLv1.1 or GPLv2+ or LGPLv2+
       
   117 Summary:        Mozilla JS 1.8.5 engine
       
   118 Group:          Productivity/Other
       
   119 
       
   120 %description -n mozilla-js22
       
   121 JavaScript is the Netscape-developed object scripting language used in millions
       
   122 of web pages and server applications worldwide. Netscape's JavaScript is a
       
   123 superset of the ECMA-262 Edition 3 (ECMAScript) standard scripting language,
       
   124 with only mild differences from the published standard.
       
   125 
       
   126 
       
   127 %package devel
       
   128 License:        MPLv1.1 or GPLv2+ or LGPLv2+
       
   129 Summary:        XULRunner/Gecko SDK 2.0
       
   130 Group:          Development/Libraries/Other
       
   131 %if %has_system_nspr
       
   132 Requires:       mozilla-nspr-devel >= %(rpm -q --queryformat '%{VERSION}' mozilla-nspr-devel)
       
   133 %endif
       
   134 %if %has_system_nss
       
   135 Requires:       mozilla-nss-devel >= %(rpm -q --queryformat '%{VERSION}' mozilla-nss-devel)
       
   136 %endif
       
   137 Requires:       %{name} = %{version}
       
   138 
       
   139 %description devel
       
   140 Software Development Kit to embed XUL or Gecko into other applications.
       
   141 
       
   142 %if %localize
       
   143 
       
   144 %package translations-common
       
   145 License:        MPLv1.1 or GPLv2+ or LGPLv2+
       
   146 Summary:        Common translations for XULRunner 2.0
       
   147 Group:          System/Localization
       
   148 Requires:       %{name} = %{version}
       
   149 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)
       
   150 Obsoletes:      %{name}-translations < %{version}-%{release}
       
   151 
       
   152 %description translations-common
       
   153 XULRunner is a single installable package that can be used to bootstrap
       
   154 multiple XUL+XPCOM applications that are as rich as Firefox and
       
   155 Thunderbird.
       
   156 
       
   157 This package contains the most common languages but en-US which is
       
   158 delivered in the main package.
       
   159 
       
   160 
       
   161 %package translations-other
       
   162 License:        MPLv1.1 or GPLv2+ or LGPLv2+
       
   163 Summary:        Extra translations for XULRunner 2.0
       
   164 Group:          System/Localization
       
   165 Requires:       %{name} = %{version}
       
   166 Provides:       locale(%{name}:af;ak;ast;be;bg;bn_BD;br;bs;cy;el;en_ZA;eo;es_MX;et;eu;fa;fy_NL;ga_IE;gd;gl;gu_IN;he;hi_IN;hr;hy_AM;id;is;kk;kn;ku;lg;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;zu)
       
   167 Obsoletes:      %{name}-translations < %{version}-%{release}
       
   168 
       
   169 %description translations-other
       
   170 XULRunner is a single installable package that can be used to bootstrap
       
   171 multiple XUL+XPCOM applications that are as rich as Firefox and
       
   172 Thunderbird.
       
   173 
       
   174 This package contains rarely used languages.
       
   175 %endif
       
   176 
       
   177 %package gnome
       
   178 License:        MPLv1.1 or GPLv2+ or LGPLv2+
       
   179 Summary:        XULRunner components depending on gnome-vfs
       
   180 Group:          Productivity/Other
       
   181 Requires:       %{name} = %{version}-%{release}
       
   182 Requires(post): coreutils
       
   183 
       
   184 %description gnome
       
   185 This subpackage contains the Gnome components which rely on certain
       
   186 Gnome subsystems to be installed. They are recommended for full
       
   187 desktop integration but not mandatory for small disk footprint
       
   188 KDE installations for example.
       
   189 
       
   190 
       
   191 %if %crashreporter
       
   192 %package buildsymbols
       
   193 License:        MPLv1.1 or GPLv2+ or LGPLv2+
       
   194 Summary:        Breakpad buildsymbols for %{name}
       
   195 Group:          Development/Debug
       
   196 
       
   197 %description buildsymbols
       
   198 This subpackage contains the Breakpad created and compatible debugging
       
   199 symbols meant for upload to Mozilla's crash collector database.
       
   200 %endif
       
   201 
       
   202 %prep
       
   203 %setup -n mozilla -q -b 1 -b 9
       
   204 %patch1 -p1
       
   205 %patch2 -p1
       
   206 %patch3 -p1
       
   207 %patch4 -p1
       
   208 %patch5 -p1
       
   209 %patch6 -p1
       
   210 %patch7 -p1
       
   211 %patch8 -p1
       
   212 #%patch9 -p1
       
   213 #%patch10 -p1
       
   214 #%patch11 -p1
       
   215 %if %suse_version < 1120
       
   216 #%patch12 -p1
       
   217 %endif
       
   218 %patch13 -p1
       
   219 %patch14 -p1
       
   220 %patch15 -p1
       
   221 %patch16 -p1
       
   222 
       
   223 %build
       
   224 kdehelperversion=$(cat toolkit/xre/nsKDEUtils.cpp | grep '#define KMOZILLAHELPER_VERSION' | cut -d ' ' -f 3)
       
   225 if test "$kdehelperversion" != %{kde_helper_version}; then
       
   226   echo fix kde helper version in the .spec file
       
   227   exit 1
       
   228 fi
       
   229 source other-licenses/branding/firefox/configure.sh
       
   230 unset MOZ_APP_DISPLAYNAME
       
   231 export MOZ_UA_BUILDID
       
   232 MOZ_APP_DIR=%{_libdir}/xulrunner-%{version_internal}
       
   233 export MOZ_BUILD_DATE=%{releasedate}
       
   234 export CFLAGS="$RPM_OPT_FLAGS -Os -fno-strict-aliasing"
       
   235 %ifarch ppc64
       
   236 export CFLAGS="$CFLAGS -mminimal-toc"
       
   237 %endif
       
   238 export CXXFLAGS="$CFLAGS"
       
   239 export LDFLAGS="-Wl,-rpath -Wl,${MOZ_APP_DIR}"
       
   240 export MOZCONFIG=$RPM_BUILD_DIR/mozconfig
       
   241 export MOZILLA_OFFICIAL=1
       
   242 export BUILD_OFFICIAL=1
       
   243 export MOZ_MILESTONE_RELEASE=1
       
   244 #
       
   245 cat << EOF > $MOZCONFIG
       
   246 mk_add_options MOZILLA_OFFICIAL=1
       
   247 mk_add_options BUILD_OFFICIAL=1
       
   248 mk_add_options MOZ_MILESTONE_RELEASE=1
       
   249 mk_add_options MOZ_MAKE_FLAGS=%{?jobs:-j%jobs}
       
   250 mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../obj
       
   251 . \$topsrcdir/xulrunner/config/mozconfig
       
   252 ac_add_options --prefix=%{_prefix}
       
   253 ac_add_options --libdir=%{_libdir}
       
   254 ac_add_options --sysconfdir=%{_sysconfdir}
       
   255 ac_add_options --mandir=%{_mandir}
       
   256 ac_add_options --includedir=%{_includedir}
       
   257 ac_add_options --enable-optimize
       
   258 ac_add_options --enable-extensions=default
       
   259 #ac_add_options --with-system-jpeg # mozilla uses internal libjpeg-turbo now
       
   260 #ac_add_options --with-system-png  # no APNG support
       
   261 ac_add_options --with-system-zlib
       
   262 ac_add_options --with-l10n-base=../l10n
       
   263 ac_add_options --disable-tests
       
   264 ac_add_options --disable-mochitest
       
   265 ac_add_options --disable-installer
       
   266 ac_add_options --disable-updater
       
   267 ac_add_options --disable-javaxpcom
       
   268 ac_add_options --enable-startup-notification
       
   269 ac_add_options --enable-url-classifier
       
   270 ac_add_options --enable-system-hunspell
       
   271 ac_add_options --enable-shared-js
       
   272 #ac_add_options --enable-debug
       
   273 EOF
       
   274 %if %suse_version > 1130
       
   275 cat << EOF >> $MOZCONFIG
       
   276 ac_add_options --disable-gnomevfs
       
   277 ac_add_options --enable-gio
       
   278 EOF
       
   279 %endif
       
   280 %if %has_system_nspr
       
   281 cat << EOF >> $MOZCONFIG
       
   282 ac_add_options --with-system-nspr
       
   283 EOF
       
   284 %endif
       
   285 %if %has_system_nss
       
   286 cat << EOF >> $MOZCONFIG
       
   287 ac_add_options --with-system-nss
       
   288 EOF
       
   289 %endif
       
   290 %if %has_system_cairo
       
   291 cat << EOF >> $MOZCONFIG
       
   292 ac_add_options --enable-system-cairo
       
   293 EOF
       
   294 %endif
       
   295 %if %suse_version > 1110
       
   296 cat << EOF >> $MOZCONFIG
       
   297 ac_add_options --enable-libproxy
       
   298 EOF
       
   299 %endif
       
   300 %if ! %crashreporter
       
   301 cat << EOF >> $MOZCONFIG
       
   302 ac_add_options --disable-crashreporter
       
   303 EOF
       
   304 %endif
       
   305 %if ! %plugincontainer
       
   306 cat << EOF >> $MOZCONFIG
       
   307 # Chromium IPC is not ported to Power,S/390 and Itanium (currently just x86,x86_64 and arm)
       
   308 ac_add_options --disable-ipc
       
   309 EOF
       
   310 %endif
       
   311 make -f client.mk build
       
   312 
       
   313 %install
       
   314 cd ../obj
       
   315 %makeinstall STRIP=/bin/true
       
   316 # remove some executable permissions
       
   317 find $RPM_BUILD_ROOT%{_includedir}/xulrunner-%{version_internal} \
       
   318      -type f -perm -111 -exec chmod a-x {} \;
       
   319 find $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal}/ \
       
   320      -name "*.js" -o -name "*.xpm" -o -name "*.png" | xargs chmod a-x
       
   321 mkdir -p $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal}/extensions
       
   322 # fixing SDK dynamic libs (symlink instead of copy)
       
   323 rm $RPM_BUILD_ROOT%{_libdir}/xulrunner-devel-%{version_internal}/sdk/lib/*.so
       
   324 ln -sf ../../../xulrunner-%{version_internal}/libmozjs.so \
       
   325        $RPM_BUILD_ROOT%{_libdir}/xulrunner-devel-%{version_internal}/sdk/lib/
       
   326 ln -sf ../../../xulrunner-%{version_internal}/libxpcom.so \
       
   327        $RPM_BUILD_ROOT%{_libdir}/xulrunner-devel-%{version_internal}/sdk/lib/
       
   328 ln -sf ../../../xulrunner-%{version_internal}/libxul.so \
       
   329        $RPM_BUILD_ROOT%{_libdir}/xulrunner-devel-%{version_internal}/sdk/lib/
       
   330 # include basic buildenv for xulapps to use
       
   331 mkdir -p $RPM_BUILD_ROOT%{_datadir}/xulrunner-%{version_internal}
       
   332 pushd ..
       
   333 # this list has been compiled by trial and error for prism
       
   334 tar --exclude=*.cpp --exclude=*.mm \
       
   335    -cvjf $RPM_BUILD_ROOT%{_datadir}/xulrunner-%{version_internal}/mozilla-src.tar.bz2 \
       
   336     mozilla/configure.in mozilla/Makefile.in mozilla/client.py mozilla/allmakefiles.sh \
       
   337     mozilla/config mozilla/client.mk mozilla/aclocal.m4 mozilla/build mozilla/js/src/* \
       
   338     mozilla/testing mozilla/toolkit/mozapps/installer mozilla/probes mozilla/memory \
       
   339     mozilla/toolkit/xre mozilla/nsprpub/config mozilla/tools mozilla/xpcom/build
       
   340 popd
       
   341 # XPI example
       
   342 #cp -rL dist/xpi-stage/simple $RPM_BUILD_ROOT/%{_libdir}/xulrunner-%{version_internal}/
       
   343 # preferences
       
   344 cp %{SOURCE4} $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal}/defaults/pref/all-openSUSE.js
       
   345 cp %{SOURCE8} $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal}/defaults/pref/lockdown.js
       
   346 # install add-plugins.sh
       
   347 sed "s:%%PROGDIR:%{_libdir}/xulrunner-%{version_internal}:g" \
       
   348   %{SOURCE5} > $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal}/add-plugins.sh
       
   349 chmod 755 $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal}/add-plugins.sh
       
   350 # ghosts
       
   351 touch $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal}/global.reginfo
       
   352 # install additional locales
       
   353 %if %localize
       
   354 rm -f %{_tmppath}/translations.*
       
   355 touch %{_tmppath}/translations.{common,other}
       
   356 for locale in $(awk '{ print $1; }' ../mozilla/browser/locales/shipped-locales); do
       
   357   case $locale in
       
   358    ja-JP-mac|en-US|bn-IN)
       
   359       ;;
       
   360    *)
       
   361       pushd $RPM_BUILD_DIR/compare-locales
       
   362       PYTHONPATH=lib \
       
   363         scripts/compare-locales -m ../l10n-merged/$locale \
       
   364 	../mozilla/toolkit/locales/l10n.ini ../l10n $locale
       
   365       popd
       
   366       LOCALE_MERGEDIR=../l10n-merged \
       
   367       make -C toolkit/locales libs-$locale
       
   368       cp dist/xpi-stage/locale-$locale/chrome/$locale.jar \
       
   369          $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal}/chrome
       
   370       cp dist/xpi-stage/locale-$locale/chrome/$locale.manifest \
       
   371          $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal}/chrome
       
   372       # check against the fixed common list and sort into the right filelist
       
   373       _matched=0
       
   374       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
       
   375         [ "$_match" = "$locale" ] && _matched=1
       
   376       done
       
   377       [ $_matched -eq 1 ] && _l10ntarget=common || _l10ntarget=other
       
   378       echo %{_libdir}/xulrunner-%{version_internal}/chrome/$locale.jar \
       
   379          >> %{_tmppath}/translations.$_l10ntarget
       
   380       echo %{_libdir}/xulrunner-%{version_internal}/chrome/$locale.manifest \
       
   381          >> %{_tmppath}/translations.$_l10ntarget
       
   382   esac
       
   383 done
       
   384 %endif
       
   385 # API symlink
       
   386 ln -sf xulrunner-%{version_internal} $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{apiversion}
       
   387 # compat links
       
   388 %if 0%{?ga_version:1}
       
   389 touch $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{ga_version}
       
   390 %endif
       
   391 # excludes
       
   392 %if %suse_version < 1120
       
   393 rm -f $RPM_BUILD_ROOT%{_bindir}/xulrunner
       
   394 %endif
       
   395 rm -f $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal}/updater
       
   396 rm -f $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal}/update.locale
       
   397 rm -f $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal}/LICENSE
       
   398 rm -f $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal}/README.txt
       
   399 rm -f $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal}/dictionaries/en-US*
       
   400 rm -f $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal}/nspr-config
       
   401 # fdupes
       
   402 %fdupes $RPM_BUILD_ROOT%{_includedir}/xulrunner-%{version_internal}/
       
   403 %fdupes $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal}/
       
   404 # create breakpad debugsymbols
       
   405 %if %crashreporter
       
   406 SYMBOLS_NAME="xulrunner-%{version}-%{release}.%{_arch}-%{suse_version}-symbols"
       
   407 make buildsymbols \
       
   408   SYMBOL_INDEX_NAME="$SYMBOLS_NAME.txt" \
       
   409   SYMBOL_FULL_ARCHIVE_BASENAME="$SYMBOLS_NAME-full" \
       
   410   SYMBOL_ARCHIVE_BASENAME="$SYMBOLS_NAME"
       
   411 if [ -e dist/*symbols.zip ]; then
       
   412   mkdir -p $RPM_BUILD_ROOT%{_datadir}/mozilla/
       
   413   cp dist/*symbols.zip $RPM_BUILD_ROOT%{_datadir}/mozilla/
       
   414 fi
       
   415 %endif
       
   416 
       
   417 %clean
       
   418 rm -rf $RPM_BUILD_ROOT
       
   419 %if %localize
       
   420 rm -rf %{_tmppath}/translations.*
       
   421 %endif
       
   422 
       
   423 %post
       
   424 /usr/sbin/update-alternatives --install %{_bindir}/xulrunner \
       
   425   xulrunner %{_libdir}/xulrunner-%{apiversion}/xulrunner %{uaweight} || :
       
   426 %{_libdir}/xulrunner-%{apiversion}/add-plugins.sh > /dev/null 2>&1
       
   427 exit 0
       
   428 
       
   429 %posttrans
       
   430 # needed for updates which transition directory to symlink
       
   431 %if 0%{?ga_version:1}
       
   432 test -d %{_libdir}/xulrunner-%{ga_version} && rm -rf %{_libdir}/xulrunner-%{ga_version}
       
   433 ln -sf xulrunner-%{version_internal} %{_libdir}/xulrunner-%{ga_version}
       
   434 %endif
       
   435 [ -e %{_libdir}/xulrunner-%{version_internal}/add-plugins.sh ] && \
       
   436   %{_libdir}/xulrunner-%{version_internal}/add-plugins.sh > /dev/null 2>&1
       
   437 exit 0
       
   438 
       
   439 %preun
       
   440 if [ "$1" = "0" ]; then # deinstallation
       
   441   # that's not quite nice since old versions should be removed on update as well
       
   442   # but that's problematic for updates w/o raising the version number
       
   443   /usr/sbin/update-alternatives --remove xulrunner %{_libdir}/xulrunner-%{apiversion}/xulrunner
       
   444 fi
       
   445 rm -f %{_libdir}/xulrunner-%{version_internal}/dictionaries/*
       
   446 exit 0
       
   447 
       
   448 %triggerin -- myspell-dictionary
       
   449 %{_libdir}/xulrunner-%{version_internal}/add-plugins.sh > /dev/null 2>&1
       
   450 exit 0
       
   451 
       
   452 %triggerpostun -- myspell-dictionary
       
   453 %{_libdir}/xulrunner-%{version_internal}/add-plugins.sh > /dev/null 2>&1
       
   454 exit 0
       
   455 
       
   456 %files
       
   457 %defattr(-,root,root)
       
   458 %dir %{_libdir}/xulrunner-%{version_internal}/
       
   459 %dir %{_libdir}/xulrunner-%{version_internal}/chrome/
       
   460 %dir %{_libdir}/xulrunner-%{version_internal}/dictionaries/
       
   461 %dir %{_libdir}/xulrunner-%{version_internal}/extensions/
       
   462 %{_libdir}/xulrunner-%{version_internal}/chrome/en-US.*
       
   463 %{_libdir}/xulrunner-%{version_internal}/chrome/pippki.*
       
   464 %{_libdir}/xulrunner-%{version_internal}/chrome/toolkit.*
       
   465 %{_libdir}/xulrunner-%{version_internal}/chrome/icons/
       
   466 %{_libdir}/xulrunner-%{version_internal}/components/
       
   467 %exclude %{_libdir}/xulrunner-%{version_internal}/components/libmozgnome.so
       
   468 %if %suse_version <= 1130
       
   469 %exclude %{_libdir}/xulrunner-%{version_internal}/components/libnkgnomevfs.so
       
   470 %endif
       
   471 %{_libdir}/xulrunner-%{version_internal}/defaults/
       
   472 %{_libdir}/xulrunner-%{version_internal}/greprefs.js
       
   473 %{_libdir}/xulrunner-%{version_internal}/icons/
       
   474 %{_libdir}/xulrunner-%{version_internal}/modules/
       
   475 %{_libdir}/xulrunner-%{version_internal}/plugins/
       
   476 %{_libdir}/xulrunner-%{version_internal}/res/
       
   477 %{_libdir}/xulrunner-%{version_internal}/*.so
       
   478 %exclude %{_libdir}/xulrunner-%{version_internal}/libmozjs.so
       
   479 %{_libdir}/xulrunner-%{version_internal}/add-plugins.sh
       
   480 %{_libdir}/xulrunner-%{version_internal}/chrome.manifest
       
   481 %{_libdir}/xulrunner-%{version_internal}/dependentlibs.list
       
   482 %{_libdir}/xulrunner-%{version_internal}/mozilla-xremote-client
       
   483 %if %plugincontainer
       
   484 %{_libdir}/xulrunner-%{version_internal}/plugin-container
       
   485 %endif
       
   486 %{_libdir}/xulrunner-%{version_internal}/run-mozilla.sh
       
   487 %{_libdir}/xulrunner-%{version_internal}/xulrunner
       
   488 %{_libdir}/xulrunner-%{version_internal}/xulrunner-bin
       
   489 %{_libdir}/xulrunner-%{version_internal}/xulrunner-stub
       
   490 %{_libdir}/xulrunner-%{version_internal}/platform.ini
       
   491 # crashreporter files
       
   492 %if %crashreporter
       
   493 %{_libdir}/xulrunner-%{version_internal}/crashreporter
       
   494 %{_libdir}/xulrunner-%{version_internal}/crashreporter.ini
       
   495 %{_libdir}/xulrunner-%{version_internal}/Throbber-small.gif
       
   496 %endif
       
   497 # ghosts
       
   498 %ghost %{_libdir}/xulrunner-%{version_internal}/global.reginfo
       
   499 %if %suse_version >= 1120
       
   500 %ghost %{_bindir}/xulrunner
       
   501 %endif
       
   502 # API symlink
       
   503 %{_libdir}/xulrunner-%{apiversion}
       
   504 # compat symlinks
       
   505 %if 0%{?ga_version:1}
       
   506 %ghost %{_libdir}/xulrunner-%{ga_version}
       
   507 %endif
       
   508 
       
   509 %files -n mozilla-js22
       
   510 %defattr(-,root,root)
       
   511 %dir %{_libdir}/xulrunner-%{version_internal}/
       
   512 %{_libdir}/xulrunner-%{apiversion}
       
   513 %{_libdir}/xulrunner-%{version_internal}/libmozjs.so
       
   514 
       
   515 %files devel
       
   516 %defattr(-,root,root)
       
   517 %{_libdir}/xulrunner-%{version_internal}/xpcshell
       
   518 %{_libdir}/xulrunner-%{version_internal}/xpidl
       
   519 %{_libdir}/xulrunner-%{version_internal}/xpt_dump
       
   520 %{_libdir}/xulrunner-%{version_internal}/xpt_link
       
   521 %{_libdir}/xulrunner-devel-%{version_internal}/
       
   522 # FIXME symlink dynamic libs below sdk/lib
       
   523 %attr(644,root,root) %{_libdir}/pkgconfig/*
       
   524 %{_includedir}/xulrunner-%{version_internal}/
       
   525 %{_datadir}/xulrunner-%{version_internal}/
       
   526 
       
   527 %files gnome
       
   528 %defattr(-,root,root)
       
   529 %dir %{_libdir}/xulrunner-%{version_internal}/
       
   530 %dir %{_libdir}/xulrunner-%{version_internal}/components/
       
   531 %{_libdir}/xulrunner-%{version_internal}/components/libmozgnome.so
       
   532 %if %suse_version <= 1130
       
   533 %{_libdir}/xulrunner-%{version_internal}/components/libnkgnomevfs.so
       
   534 %endif
       
   535 
       
   536 %if %localize
       
   537 %files translations-common -f %{_tmppath}/translations.common
       
   538 %defattr(-,root,root)
       
   539 %dir %{_libdir}/xulrunner-%{version_internal}/
       
   540 %dir %{_libdir}/xulrunner-%{version_internal}/chrome/
       
   541 
       
   542 %files translations-other -f %{_tmppath}/translations.other
       
   543 %defattr(-,root,root)
       
   544 %dir %{_libdir}/xulrunner-%{version_internal}/
       
   545 %dir %{_libdir}/xulrunner-%{version_internal}/chrome/
       
   546 %endif
       
   547 
       
   548 %if %crashreporter
       
   549 %files buildsymbols
       
   550 %defattr(-,root,root)
       
   551 %{_datadir}/mozilla/
       
   552 %endif
       
   553 
       
   554 %changelog