xulrunner/xulrunner.spec
branchfirefox31
changeset 799 a2fc8620fb23
parent 796 c9d29e45a974
child 814 354545f01596
equal deleted inserted replaced
798:fae69824abda 799:a2fc8620fb23
    14 # published by the Open Source Initiative.
    14 # published by the Open Source Initiative.
    15 
    15 
    16 # Please submit bugfixes or comments via http://bugs.opensuse.org/
    16 # Please submit bugfixes or comments via http://bugs.opensuse.org/
    17 #
    17 #
    18 
    18 
    19 %define         version_internal 31.2.0
    19 %define version_internal 31.2.0
    20 %define         apiversion 31
    20 %define apiversion 31
    21 %define         uaweight 3120000
    21 %define uaweight 3120000
    22 %define         releasedate 2014101100
    22 %define releasedate 2014101100
    23 
    23 %define shared_js 0
       
    24 %define has_system_nspr  1
       
    25 %define has_system_nss   1
       
    26 %define has_system_cairo 0
       
    27 %define localize         0
       
    28 %ifarch ppc ppc64 s390 s390x ia64 %arm
       
    29 %define crashreporter    0
       
    30 %else
       
    31 %define crashreporter    0
       
    32 %endif
    24 %if %suse_version > 1210
    33 %if %suse_version > 1210
    25 %if %suse_version > 1310
    34 %if %suse_version > 1310
    26 %define gstreamer_ver 1.0
    35 %define gstreamer_ver 1.0
    27 %define gstreamer 1
    36 %define gstreamer 1
    28 %else
    37 %else
    42 BuildRequires:  libidl-devel
    51 BuildRequires:  libidl-devel
    43 BuildRequires:  libnotify-devel
    52 BuildRequires:  libnotify-devel
    44 %if %suse_version > 1140
    53 %if %suse_version > 1140
    45 BuildRequires:  makeinfo
    54 BuildRequires:  makeinfo
    46 %endif
    55 %endif
    47 BuildRequires:  nss-shared-helper-devel
       
    48 BuildRequires:  pkg-config
    56 BuildRequires:  pkg-config
    49 BuildRequires:  python
    57 BuildRequires:  python
    50 BuildRequires:  startup-notification-devel
    58 BuildRequires:  startup-notification-devel
    51 BuildRequires:  unzip
    59 BuildRequires:  unzip
    52 BuildRequires:  xorg-x11-libXt-devel
    60 BuildRequires:  xorg-x11-libXt-devel
    58 %else
    66 %else
    59 BuildRequires:  wireless-tools
    67 BuildRequires:  wireless-tools
    60 %endif
    68 %endif
    61 BuildRequires:  mozilla-nspr-devel >= 4.10.6
    69 BuildRequires:  mozilla-nspr-devel >= 4.10.6
    62 BuildRequires:  mozilla-nss-devel >= 3.16.5
    70 BuildRequires:  mozilla-nss-devel >= 3.16.5
       
    71 BuildRequires:  pkgconfig(libpulse)
    63 %if %suse_version > 1210
    72 %if %suse_version > 1210
    64 BuildRequires:  pkgconfig(gstreamer-%gstreamer_ver)
    73 BuildRequires:  pkgconfig(gstreamer-%gstreamer_ver)
    65 BuildRequires:  pkgconfig(gstreamer-app-%gstreamer_ver)
    74 BuildRequires:  pkgconfig(gstreamer-app-%gstreamer_ver)
    66 BuildRequires:  pkgconfig(gstreamer-plugins-base-%gstreamer_ver)
    75 BuildRequires:  pkgconfig(gstreamer-plugins-base-%gstreamer_ver)
    67 %if 0%{?gstreamer} == 1
    76 %if 0%{?gstreamer} == 1
    72 Requires:       libgstreamer-0_10-0
    81 Requires:       libgstreamer-0_10-0
    73 Recommends:     gstreamer-0_10-fluendo-mp3
    82 Recommends:     gstreamer-0_10-fluendo-mp3
    74 Recommends:     gstreamer-0_10-plugins-ffmpeg
    83 Recommends:     gstreamer-0_10-plugins-ffmpeg
    75 %endif
    84 %endif
    76 %endif
    85 %endif
    77 Version:        31.2.0
    86 Version:        %{version_internal}
    78 Release:        0
    87 Release:        0
    79 Summary:        Mozilla Runtime Environment
    88 Summary:        Mozilla Runtime Environment
    80 License:        MPL-2.0
    89 License:        MPL-2.0
    81 Group:          Productivity/Other
    90 Group:          Productivity/Other
    82 Url:            http://www.mozilla.org/
    91 Url:            http://www.mozilla.org/
    83 Provides:       gecko
    92 Provides:       gecko
    84 %ifarch %ix86
    93 %ifarch %ix86
    85 Provides:       xulrunner-32bit = %{version}-%{release}
    94 Provides:       xulrunner-32bit = %{version}-%{release}
    86 %endif
    95 %endif
    87 Source:         xulrunner-%{version}-source.tar.bz2
    96 Source:         xulrunner-%{version}-source.tar.xz
    88 Source1:        l10n-%{version}.tar.bz2
    97 Source1:        l10n-%{version}.tar.xz
    89 Source2:        find-external-requires.sh
    98 Source2:        find-external-requires.sh
    90 Source3:        %{name}-rpmlintrc
    99 Source3:        %{name}-rpmlintrc
    91 Source4:        xulrunner-openSUSE-prefs.js
   100 Source4:        xulrunner-openSUSE-prefs.js
    92 Source5:        spellcheck.js
   101 Source5:        spellcheck.js
    93 Source6:        create-tar.sh
   102 Source6:        create-tar.sh
    94 Source7:        baselibs.conf
   103 Source7:        baselibs.conf
    95 Source8:        source-stamp.txt
   104 Source8:        source-stamp.txt
    96 Source9:        compare-locales.tar.bz2
   105 Source9:        compare-locales.tar.xz
    97 Patch1:         toolkit-download-folder.patch
   106 Patch1:         toolkit-download-folder.patch
    98 Patch2:         mozilla-nongnome-proxies.patch
   107 Patch2:         mozilla-nongnome-proxies.patch
    99 Patch3:         mozilla-prefer_plugin_pref.patch
   108 Patch3:         mozilla-prefer_plugin_pref.patch
   100 Patch4:         mozilla-shared-nss-db.patch
       
   101 Patch5:         mozilla-kde.patch
       
   102 Patch6:         mozilla-preferences.patch
   109 Patch6:         mozilla-preferences.patch
   103 Patch7:         mozilla-language.patch
   110 Patch7:         mozilla-language.patch
   104 Patch8:         mozilla-ntlm-full-path.patch
   111 Patch8:         mozilla-ntlm-full-path.patch
   105 Patch9:         mozilla-repo.patch
   112 Patch9:         mozilla-repo.patch
   106 Patch10:        mozilla-sle11.patch
   113 Patch10:        mozilla-sle11.patch
   117 Requires:       mozilla-js = %{version}
   124 Requires:       mozilla-js = %{version}
   118 Requires(post):  update-alternatives coreutils
   125 Requires(post):  update-alternatives coreutils
   119 Requires(preun): update-alternatives coreutils
   126 Requires(preun): update-alternatives coreutils
   120 Provides:       xulrunner-esr = %{version}
   127 Provides:       xulrunner-esr = %{version}
   121 Obsoletes:      xulrunner-esr < 24.0
   128 Obsoletes:      xulrunner-esr < 24.0
   122 ### build configuration ###
       
   123 %define has_system_nspr  1
       
   124 %define has_system_nss   1
       
   125 %define has_system_cairo 0
       
   126 %define localize 1
       
   127 %ifarch ppc ppc64 s390 s390x ia64 %arm
       
   128 %define crashreporter    0
       
   129 %else
       
   130 %define crashreporter    1
       
   131 %endif
       
   132 ### configuration end ###
       
   133 %define _use_internal_dependency_generator 0
   129 %define _use_internal_dependency_generator 0
   134 %define __find_requires sh %{SOURCE2}
   130 %define __find_requires sh %{SOURCE2}
   135 %global provfind sh -c "grep -Ev 'mozsqlite3|dbusservice|unixprint' | %__find_provides"
   131 %global provfind sh -c "grep -Ev 'mozsqlite3|dbusservice|unixprint' | %__find_provides"
   136 %global __find_provides %provfind
   132 %global __find_provides %provfind
   137 %if %has_system_nspr
   133 %if %has_system_nspr
   144 %description
   140 %description
   145 XULRunner is a single installable package that can be used to bootstrap
   141 XULRunner is a single installable package that can be used to bootstrap
   146 multiple XUL+XPCOM applications that are as rich as Firefox and
   142 multiple XUL+XPCOM applications that are as rich as Firefox and
   147 Thunderbird.
   143 Thunderbird.
   148 
   144 
   149 
   145 %if 0%{?shared_js} == 1
   150 %package -n mozilla-js
   146 %package -n mozilla-js
   151 Summary:        Mozilla JS engine
   147 Summary:        Mozilla JS engine
   152 Group:          Productivity/Other
   148 Group:          Productivity/Other
   153 
   149 
   154 %description -n mozilla-js
   150 %description -n mozilla-js
   155 JavaScript is the Netscape-developed object scripting language used in millions
   151 JavaScript is the Netscape-developed object scripting language used in millions
   156 of web pages and server applications worldwide. Netscape's JavaScript is a
   152 of web pages and server applications worldwide. Netscape's JavaScript is a
   157 superset of the ECMA-262 Edition 3 (ECMAScript) standard scripting language,
   153 superset of the ECMA-262 Edition 3 (ECMAScript) standard scripting language,
   158 with only mild differences from the published standard.
   154 with only mild differences from the published standard.
       
   155 %endif
   159 
   156 
   160 
   157 
   161 %package devel
   158 %package devel
   162 Summary:        XULRunner/Gecko SDK
   159 Summary:        XULRunner/Gecko SDK
   163 Group:          Development/Libraries/Other
   160 Group:          Development/Libraries/Other
   171 
   168 
   172 %description devel
   169 %description devel
   173 Software Development Kit to embed XUL or Gecko into other applications.
   170 Software Development Kit to embed XUL or Gecko into other applications.
   174 
   171 
   175 %if %localize
   172 %if %localize
   176 
       
   177 %package translations-common
   173 %package translations-common
   178 Summary:        Common translations for XULRunner
   174 Summary:        Common translations for XULRunner
   179 Group:          System/Localization
   175 Group:          System/Localization
   180 Requires:       %{name} = %{version}
   176 Requires:       %{name} = %{version}
   181 Provides:       locale(%{name}:ar;ca;cs;da;de;el;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)
   177 Provides:       locale(%{name}:ar;ca;cs;da;de;el;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)
   204 
   200 
   205 This package contains rarely used languages.
   201 This package contains rarely used languages.
   206 %endif
   202 %endif
   207 
   203 
   208 %if %crashreporter
   204 %if %crashreporter
   209 
       
   210 %package buildsymbols
   205 %package buildsymbols
   211 Summary:        Breakpad buildsymbols for %{name}
   206 Summary:        Breakpad buildsymbols for %{name}
   212 Group:          Development/Debug
   207 Group:          Development/Debug
   213 
   208 
   214 %description buildsymbols
   209 %description buildsymbols
   219 %prep
   214 %prep
   220 %setup -n mozilla -q -b 1 -b 9
   215 %setup -n mozilla -q -b 1 -b 9
   221 %patch1 -p1
   216 %patch1 -p1
   222 %patch2 -p1
   217 %patch2 -p1
   223 %patch3 -p1
   218 %patch3 -p1
   224 %patch4 -p1
       
   225 %patch5 -p1
       
   226 %patch6 -p1
   219 %patch6 -p1
   227 %patch7 -p1
   220 %patch7 -p1
   228 %if %suse_version < 1120
   221 %if %suse_version < 1120
   229 %patch9 -p1
   222 %patch9 -p1
   230 %endif
   223 %endif
   244 TIME="\"$(date -d "${modified}" "+%%R")\""
   237 TIME="\"$(date -d "${modified}" "+%%R")\""
   245 find . -regex ".*\.c\|.*\.cpp\|.*\.h" -exec sed -i "s/__DATE__/${DATE}/g;s/__TIME__/${TIME}/g" {} +
   238 find . -regex ".*\.c\|.*\.cpp\|.*\.h" -exec sed -i "s/__DATE__/${DATE}/g;s/__TIME__/${TIME}/g" {} +
   246 #
   239 #
   247 MOZ_APP_DIR=%{_libdir}/xulrunner-%{version_internal}
   240 MOZ_APP_DIR=%{_libdir}/xulrunner-%{version_internal}
   248 export MOZ_BUILD_DATE=%{releasedate}
   241 export MOZ_BUILD_DATE=%{releasedate}
   249 export CFLAGS="$RPM_OPT_FLAGS -Os -fno-strict-aliasing"
   242 export CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing"
       
   243 %ifarch %ix86
       
   244 export CFLAGS="${CFLAGS} -Os"
       
   245 %endif
   250 %ifarch ppc64
   246 %ifarch ppc64
   251 export CFLAGS="$CFLAGS -mminimal-toc"
   247 export CFLAGS="$CFLAGS -mminimal-toc"
   252 %endif
   248 %endif
   253 export LDFLAGS=" -Wl,-rpath -Wl,${MOZ_APP_DIR}"
   249 export LDFLAGS=" -Wl,-rpath -Wl,${MOZ_APP_DIR}"
   254 %ifarch %arm
   250 %ifarch %arm
   272 ac_add_options --prefix=%{_prefix}
   268 ac_add_options --prefix=%{_prefix}
   273 ac_add_options --libdir=%{_libdir}
   269 ac_add_options --libdir=%{_libdir}
   274 ac_add_options --sysconfdir=%{_sysconfdir}
   270 ac_add_options --sysconfdir=%{_sysconfdir}
   275 ac_add_options --mandir=%{_mandir}
   271 ac_add_options --mandir=%{_mandir}
   276 ac_add_options --includedir=%{_includedir}
   272 ac_add_options --includedir=%{_includedir}
   277 ac_add_options --enable-optimize
   273 ac_add_options --enable-release
       
   274 ac_add_options --enable-stdcxx-compat
       
   275 %ifarch %ix86
       
   276 %if 0%{?suse_version} > 1230
       
   277 ac_add_options --disable-optimize
       
   278 %endif
       
   279 %endif
       
   280 %ifnarch ppc ppc64 ppc64le
       
   281 ac_add_options --enable-elf-hack
       
   282 %endif
   278 ac_add_options --enable-extensions=default
   283 ac_add_options --enable-extensions=default
   279 #ac_add_options --with-system-jpeg # mozilla uses internal libjpeg-turbo now
   284 #ac_add_options --with-system-jpeg # mozilla uses internal libjpeg-turbo now
   280 #ac_add_options --with-system-png  # no APNG support
   285 #ac_add_options --with-system-png  # no APNG support
   281 ac_add_options --with-system-zlib
   286 ac_add_options --with-system-zlib
   282 ac_add_options --with-l10n-base=$RPM_BUILD_DIR/l10n
   287 ac_add_options --with-l10n-base=$RPM_BUILD_DIR/l10n
   285 ac_add_options --disable-installer
   290 ac_add_options --disable-installer
   286 ac_add_options --disable-updater
   291 ac_add_options --disable-updater
   287 ac_add_options --disable-javaxpcom
   292 ac_add_options --disable-javaxpcom
   288 ac_add_options --enable-system-hunspell
   293 ac_add_options --enable-system-hunspell
   289 ac_add_options --enable-startup-notification
   294 ac_add_options --enable-startup-notification
       
   295 %if 0%{?shared_js} == 1
   290 ac_add_options --enable-shared-js
   296 ac_add_options --enable-shared-js
       
   297 %endif
   291 #ac_add_options --enable-debug
   298 #ac_add_options --enable-debug
   292 %if %suse_version > 1130
   299 %if %suse_version > 1130
   293 ac_add_options --disable-gnomevfs
   300 ac_add_options --disable-gnomevfs
   294 ac_add_options --enable-gio
   301 ac_add_options --enable-gio
   295 %endif
   302 %endif
       
   303 %if 0%{?gstreamer} == 1
       
   304 ac_add_options --enable-gstreamer=1.0
       
   305 %endif
   296 %if %suse_version < 1220
   306 %if %suse_version < 1220
   297 ac_add_options --disable-gstreamer
   307 ac_add_options --disable-gstreamer
   298 %endif
   308 %endif
   299 %if %has_system_nspr
   309 %if %has_system_nspr
   300 ac_add_options --with-system-nspr
   310 ac_add_options --with-system-nspr
   316 ac_add_options --disable-neon
   326 ac_add_options --disable-neon
   317 %endif
   327 %endif
   318 %ifnarch %ix86 x86_64
   328 %ifnarch %ix86 x86_64
   319 ac_add_options --disable-webrtc
   329 ac_add_options --disable-webrtc
   320 %endif
   330 %endif
       
   331 EOF
   321 make -f client.mk build
   332 make -f client.mk build
   322 
   333 
   323 %install
   334 %install
   324 cd ../obj
   335 cd ../obj
   325 # preferences (to package in omni.jar)
   336 # preferences (to package in omni.jar)
   336 # remove mkdir.done files from installed base
   347 # remove mkdir.done files from installed base
   337 #find $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal} -name ".mkdir.done" | xargs rm
   348 #find $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal} -name ".mkdir.done" | xargs rm
   338 mkdir -p $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal}/extensions
   349 mkdir -p $RPM_BUILD_ROOT%{_libdir}/xulrunner-%{version_internal}/extensions
   339 # fixing SDK dynamic libs (symlink instead of copy)
   350 # fixing SDK dynamic libs (symlink instead of copy)
   340 rm $RPM_BUILD_ROOT%{_libdir}/xulrunner-devel-%{version_internal}/sdk/lib/*.so
   351 rm $RPM_BUILD_ROOT%{_libdir}/xulrunner-devel-%{version_internal}/sdk/lib/*.so
       
   352 %if 0%{?shared_js} == 1
   341 ln -sf ../../../xulrunner-%{version_internal}/libmozjs.so \
   353 ln -sf ../../../xulrunner-%{version_internal}/libmozjs.so \
   342        $RPM_BUILD_ROOT%{_libdir}/xulrunner-devel-%{version_internal}/sdk/lib/
   354        $RPM_BUILD_ROOT%{_libdir}/xulrunner-devel-%{version_internal}/sdk/lib/
       
   355 %endif
   343 ln -sf ../../../xulrunner-%{version_internal}/libxul.so \
   356 ln -sf ../../../xulrunner-%{version_internal}/libxul.so \
   344        $RPM_BUILD_ROOT%{_libdir}/xulrunner-devel-%{version_internal}/sdk/lib/
   357        $RPM_BUILD_ROOT%{_libdir}/xulrunner-devel-%{version_internal}/sdk/lib/
   345 # include basic buildenv for xulapps to use
   358 # include basic buildenv for xulapps to use
   346 mkdir -p $RPM_BUILD_ROOT%{_datadir}/xulrunner-%{version_internal}
   359 mkdir -p $RPM_BUILD_ROOT%{_datadir}/xulrunner-%{version_internal}
   347 pushd ..
   360 pushd ..
   453 %dir %{_libdir}/xulrunner-%{version_internal}/dictionaries/
   466 %dir %{_libdir}/xulrunner-%{version_internal}/dictionaries/
   454 %dir %{_libdir}/xulrunner-%{version_internal}/extensions/
   467 %dir %{_libdir}/xulrunner-%{version_internal}/extensions/
   455 %{_libdir}/xulrunner-%{version_internal}/chrome/icons/
   468 %{_libdir}/xulrunner-%{version_internal}/chrome/icons/
   456 %{_libdir}/xulrunner-%{version_internal}/components/
   469 %{_libdir}/xulrunner-%{version_internal}/components/
   457 %{_libdir}/xulrunner-%{version_internal}/*.so
   470 %{_libdir}/xulrunner-%{version_internal}/*.so
       
   471 %if 0%{?shared_js} == 1
   458 %exclude %{_libdir}/xulrunner-%{version_internal}/libmozjs.so
   472 %exclude %{_libdir}/xulrunner-%{version_internal}/libmozjs.so
       
   473 %endif
   459 %{_libdir}/xulrunner-%{version_internal}/chrome.manifest
   474 %{_libdir}/xulrunner-%{version_internal}/chrome.manifest
   460 %{_libdir}/xulrunner-%{version_internal}/dependentlibs.list
   475 %{_libdir}/xulrunner-%{version_internal}/dependentlibs.list
   461 %{_libdir}/xulrunner-%{version_internal}/mozilla-xremote-client
   476 %{_libdir}/xulrunner-%{version_internal}/mozilla-xremote-client
   462 %{_libdir}/xulrunner-%{version_internal}/plugin-container
   477 %{_libdir}/xulrunner-%{version_internal}/plugin-container
   463 %{_libdir}/xulrunner-%{version_internal}/xulrunner
   478 %{_libdir}/xulrunner-%{version_internal}/xulrunner
   481 # compat symlinks
   496 # compat symlinks
   482 %if 0%{?ga_version:1}
   497 %if 0%{?ga_version:1}
   483 %ghost %{_libdir}/xulrunner-%{ga_version}
   498 %ghost %{_libdir}/xulrunner-%{ga_version}
   484 %endif
   499 %endif
   485 
   500 
       
   501 %if 0%{?shared_js} == 1
   486 %files -n mozilla-js
   502 %files -n mozilla-js
   487 %defattr(-,root,root)
   503 %defattr(-,root,root)
   488 %dir %{_libdir}/xulrunner-%{version_internal}/
   504 %dir %{_libdir}/xulrunner-%{version_internal}/
   489 %{_libdir}/xulrunner-%{apiversion}
   505 %{_libdir}/xulrunner-%{apiversion}
   490 %{_libdir}/xulrunner-%{version_internal}/libmozjs.so
   506 %{_libdir}/xulrunner-%{version_internal}/libmozjs.so
       
   507 %endif
   491 
   508 
   492 %files devel
   509 %files devel
   493 %defattr(-,root,root)
   510 %defattr(-,root,root)
   494 %{_libdir}/xulrunner-devel-%{version_internal}/
   511 %{_libdir}/xulrunner-devel-%{version_internal}/
   495 %{_libdir}/xulrunner-%{version_internal}/js-gdb.py
   512 %{_libdir}/xulrunner-%{version_internal}/js-gdb.py