d1e2d8755c
Tue Jan 07 13:14:58 UTC 2025 - Tristan Miller <psychonaut@nothingisreal.com> - update to SeaMonkey 2.53.20 * Use Services.focus for bookmarking from mailnews in SeaMonkey bug 1925033. * Replace the Bookmark Manager with the Firefox Library in SeaMonkey: Another followup bug bug 1932731. * Port bug 1458385 - Update SeaMonkey's confvars.sh bug 1913633. * Tidy up channels code in cZ bug 1920565. * Sometimes tag data from an IRC server doesn't contain a pair bug 1923211. * Fix call to updateUsers in network onAway in cZbug 1923213. * Remove unused XTLabelRecord from tree-utils.js in cZbug 1923215. * Remove unused code from connection-xpcom.js in cZbug 1923219. * Remove unusued code from utils.js in cZbug 1923221. * Switch from using arrayContains helper to using JS Array includes method in cZ bug 1923224. * Switch from using arrayIndexOf helper to using JS Array includes and indexOf methods in cZ bug 1923225. * Switch from using arrayRemoveAt and arrayInsertAt helpers to using JS Array splice and unshift methods in cZbug 1923227. * Switch from using stringTrim helper to using JS string trim method in cZ bug 1923229. * Inline newObject function in cZ bug 1924338. * Remove getWindowByType function from cZ bug 1924586. * Inline viewCert function in cZ bug 1924587. * Remove getSpecialDirectory function and use Services.dirsvc in cZ bug 1924588. * Remove getNSSErrorClass function and tidy up NSS related code in cZ bug 1924589. * Tidy message manager code in cZ bug 1924592. * Remove getService helper and tidy up code around its callers in cZ bug 1924595. * Remove use of NSGetModule in cZ bug 1925871. * Tidy up chatzilla-service.js bug 1926406. * Use Intl.DateTimeFormat in cZ's strftime function bug 1927348. * Remove unused code from pref-manager.js in cZ bug 1927370. * Use Services.scriptloader in cZ bug 1927374. * Use more Services in cZ bug 1927376. * Tidy up some Components.* code in static.js in cZ bug 1927377. * Switch to using listbox instead of tree for cZ chat window bug 1927582. * Away status isn't reflected correctly in channel userlist in cZ bug 1928749. * Fix too much recursion and missing variable in cmdSave in cZ bug 1930391. * Replace confirm helper with Services.prompt.confirm in cZ bug 1930396. * Use Services.prompt in confirmEx, prompt and promptPassword helpers in cZ bug 1930540. * Use Services.prompt.alert and remove alert helper in cZ bug 1931705. * Simplify getListFIle in cZ bug 1931707. * Remove various const from file-utils.js in cZ bug 1931708. * Remove unused 2nd argument from mkdir helper in file-utils.js in cZ bug 1931709. * Use LocalFile directly rather via helper fopen in cZ bug 1931710. * Tidy up picker code in file-utils.js in cZ bug 1931712. * Remove unnecessary type attributes in cZ bug 1933043. * Clean up Components usage in cZ bug 1933081. * Remove unused encodeForXMLAttribute function for cZ utils.js bug 1933083. * Move renameProperty helper into lib/irc.js for cZ bug 1933084. * Move formatDateOffset helper into handlers.js in cZ bug 1933085. * Move objectContains helper into command-manager.js in cZ bug 1933086. * Move splitLongWord helper into mungers.js in cZ bug 1933087. * Move randomString helper into commands.js in cZ bug 1933089. * Move Clone helper into commands.js in cZ bug 1933090. * Move equalsObject helper into channels.js in cZ bug 1933092. * Move matchEntry helper into static.js in cZ bug 1933093. * Move getCommonPfx helper to handlers.js in cZ bug 1933342. * Remove some code duplication in getSISize and getSISpeed helpers and improve coding in scaleNumbersBy1024 in cZ bug 1933346. * UI: Link for download of Themes leads to Themes for Thunderbird bug 1656564. * Add ESR 128 links to debugQA bug 1909855. * Port changes needed from |Bug 1476333 - Consolidate the ways that we reference "browser.xul" across the tree| to SeaMonkey bug 1911841. * Switch from boxObject to getBoundingClientRect in utilityOverlay bug 1911844. * Align the SeaMonkey switchToTabHavingURI() call syntax with Firefox and toolkit bug 1925037. * Empty out SeaMonkey's removed-files.in (port bug 1392913) bug 1913579. * Update SeaMonkey installer to register as handler for media types bug 1925023. * Remove obsolete chat services from SeaMonkey address book part2 bug 1909853. * Add UI for browser.display.prefers_color_scheme to the SeaMonkey colors prefpane bug 1909743. * Update SeaMonkey wikipedia icon bug 1925021. * Show specific placeholders for bookmarks and history in SeaMonkey sidebar search bug 1925025. * Adjust dragOver method of tabbrowser.xml to be closer to Firefox version bug 1911845. * Avoid boxObject where appropriate in tabbrowser bug 1911847. * Simplify tab drop indicator code and styling bug 1911848. * SeaMonkey 2.53.20 uses the same backend as Firefox and contains the relevant Firefox 60.8 security fixes. * SeaMonkey 2.53.20 shares most parts of the mail and news code with Thunderbird. Please read the Thunderbird 60.8.0 release notes for specific security fixes in this release. * Additional important security fixes up to Current Firefox 115.19 and Thunderbird 115.19 ESR plus many enhancements have been backported. We will continue to enhance SeaMonkey security in subsequent 2.53.x beta and release versions as fast as we are able to. - Adapt seamonkey-man-page.patch for SeaMonkey 2.53.20 - Adapt seamonkey-GNUmakefile to set MOZBUILD_STATE_PATH and to fix post-configure stamping per https://bugzilla.mozilla.org/show_bug.cgi?id=1692516#c13 - Update minimum build requirements for SeaMonkey 2.53.20 - Remove .mozconfig options no longer recognized in SeaMonkey 2.53.20 - request inclusion in Leap 15.6: https://bugzilla.opensuse.org/show_bug.cgi?id=1235392 OBS-URL: https://build.opensuse.org/package/show/mozilla:Factory/seamonkey?expand=0&rev=70
493 lines
16 KiB
RPMSpec
493 lines
16 KiB
RPMSpec
#
|
|
# spec file for package seamonkey
|
|
#
|
|
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
|
|
# 2006-2018 Wolfgang Rosenauer
|
|
# 2018-2024 Tristan Miller
|
|
#
|
|
# 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 https://bugs.opensuse.org/
|
|
#
|
|
|
|
# upstream default is clang (to use gcc for large parts set to 0)
|
|
%define clang_build 0
|
|
|
|
Name: seamonkey
|
|
BuildRequires: Mesa-devel
|
|
BuildRequires: alsa-devel
|
|
BuildRequires: autoconf213
|
|
BuildRequires: dbus-1-glib-devel
|
|
BuildRequires: fdupes
|
|
# Use GCC 13 on Tumbleweed because builds fail with GCC 14:
|
|
# <https://bugzilla.mozilla.org/show_bug.cgi?id=1916827>
|
|
%if 0%{?suse_version} > 1600
|
|
BuildRequires: gcc13-c++
|
|
%else
|
|
BuildRequires: gcc-c++
|
|
%endif
|
|
BuildRequires: hunspell-devel
|
|
# Using system AV1 decoder depends on pending patch from
|
|
# https://bugzilla.mozilla.org/show_bug.cgi?id=1559213
|
|
#BuildRequires: dav1d5-devel
|
|
BuildRequires: libiw-devel
|
|
BuildRequires: libnotify-devel
|
|
BuildRequires: libproxy-devel
|
|
#BuildRequires: libvpx-devel # Compile errors with 1.10.0
|
|
%if 0%{?suse_version} > 1500 || 0%{?sle_version} >= 150200 && 0%{?is_opensuse}
|
|
BuildRequires: libwebp-devel >= 1.0.0
|
|
# --system-icu builds are failing on Tumbleweed; see https://bugzilla.mozilla.org/show_bug.cgi?id=193317
|
|
#BuildRequires: libicu-devel >= 63.1
|
|
%endif
|
|
BuildRequires: makeinfo
|
|
BuildRequires: memory-constraints
|
|
BuildRequires: python3-base
|
|
BuildRequires: startup-notification-devel
|
|
BuildRequires: unzip
|
|
BuildRequires: update-desktop-files
|
|
BuildRequires: xorg-x11-libXt-devel
|
|
BuildRequires: yasm
|
|
BuildRequires: zip
|
|
BuildRequires: pkgconfig(gdk-x11-2.0)
|
|
BuildRequires: pkgconfig(glib-2.0) >= 2.56
|
|
BuildRequires: pkgconfig(gobject-2.0)
|
|
BuildRequires: pkgconfig(gtk+-2.0) >= 2.24
|
|
BuildRequires: pkgconfig(gtk+-3.0) >= 3.22.30
|
|
BuildRequires: pkgconfig(gtk+-unix-print-2.0)
|
|
BuildRequires: pkgconfig(gtk+-unix-print-3.0)
|
|
BuildRequires: pkgconfig(libffi) > 3.0.9
|
|
BuildRequires: pkgconfig(libpulse)
|
|
BuildRequires: pkgconfig(xcomposite)
|
|
BuildRequires: cargo
|
|
BuildRequires: rust >= 1.47
|
|
BuildRequires: rust-cbindgen
|
|
BuildRequires: git
|
|
BuildRequires: nasm >= 2.13
|
|
#BuildRequires: llvm-devel
|
|
%if 0%{?suse_version} > 1600
|
|
BuildRequires: clang18-devel
|
|
%else
|
|
BuildRequires: clang-devel
|
|
%endif
|
|
Provides: web_browser
|
|
Provides: browser(npapi)
|
|
Version: 2.53.20
|
|
Release: 0
|
|
%define releasedate 20250107000000
|
|
Summary: An integrated web browser, composer, mail/news client, and IRC client
|
|
License: MPL-2.0
|
|
Group: Productivity/Networking/Web/Browsers
|
|
Url: https://www.seamonkey-project.org/
|
|
Source: https://archive.mozilla.org/pub/seamonkey/releases/%{version}/source/seamonkey-%{version}.source.tar.xz
|
|
Source1: seamonkey-desktop.tar.bz2
|
|
Source2: spellcheck.js
|
|
Source3: mozilla.sh.in
|
|
Source4: suse-default-prefs.js
|
|
Source5: https://archive.mozilla.org/pub/seamonkey/releases/%{version}/source/seamonkey-%{version}.source-l10n.tar.xz
|
|
Source7: seamonkey-rpmlintrc
|
|
Source11: seamonkey-appdata.tar.bz2
|
|
Source12: seamonkey-GNUmakefile
|
|
Patch1: mozilla-nongnome-proxies.patch
|
|
Patch2: mozilla-ntlm-full-path.patch
|
|
Patch3: seamonkey-lto.patch
|
|
Patch4: seamonkey-man-page.patch
|
|
Patch5: reproducible.patch
|
|
Patch6: mozilla-bmo531915.patch
|
|
Patch7: mozilla-bmo1896958.patch
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
|
PreReq: /bin/sh coreutils
|
|
Provides: seamonkey-mail = %{version}
|
|
Obsoletes: seamonkey-mail <= 2.0
|
|
Provides: seamonkey-spellchecker = %{version}
|
|
Obsoletes: seamonkey-spellchecker <= 2.0
|
|
# venkman is discontinued and removed (not merged)
|
|
Provides: seamonkey-venkman = %{version}
|
|
Obsoletes: seamonkey-venkman <= 2.29
|
|
Recommends: libcanberra0
|
|
Recommends: libpulse0
|
|
# libavcodec is required for H.264 support but the
|
|
# openSUSE version is currently not able to play H.264
|
|
# therefore the Packman version is required
|
|
# minimum version of libavcodec is 53
|
|
Recommends: libavcodec-full >= 0.10.16
|
|
%define progname %{name}
|
|
%define sources_subdir %{name}-%{version}
|
|
%define prefix /usr
|
|
%define progdir %_libdir/%{progname}
|
|
%define libgssapi libgssapi_krb5.so.2
|
|
### build options
|
|
%define has_system_cairo 0
|
|
%define localize 1
|
|
%define with_chatzilla 1
|
|
%define with_domi 1
|
|
### build options end
|
|
# It no longer makes sense to include separate language packs because these
|
|
# apply only to the main SeaMonkey suite, but not to the integrated Chatzilla
|
|
# or Calendar
|
|
%if %localize
|
|
Provides: seamonkey-translations-common = %{version}
|
|
Obsoletes: seamonkey-translations-common < 2.53.6
|
|
Provides: seamonkey-translations-other = %{version}
|
|
Obsoletes: seamonkey-translations-other < 2.53.6
|
|
Provides: locale(%{name}:cs;de;el;en_GB;es_AR;es_ES;fi;fr;hu;it;ja;ka;nb_NO;nl;pl;pt_BR;pt_PT;ru;sk;sv_SE;zh_CN;zh_TW)
|
|
%endif
|
|
%if 0%{?with_chatzilla} == 0
|
|
Provides: seamonkey-irc = %{version}
|
|
%endif
|
|
%if 0%{?with_domi} == 0
|
|
Provides: seamonkey-dom-inspector = %{version}
|
|
%endif
|
|
%define __provides_exclude ^lib.*\\.so.*$
|
|
%define __requires_exclude ^(libmoz.*|liblgpllibs.*|libxul.*|libld.*|libprldap.*)$
|
|
# the following conditions are always met in Factory by definition
|
|
BuildRequires: mozilla-nspr-devel >= 4.13.1
|
|
PreReq: mozilla-nspr >= %(rpm -q --queryformat '%%{VERSION}' mozilla-nspr)
|
|
%if 0%{?sle_version} != 150500 && 0%{?is_opensuse}
|
|
BuildRequires: mozilla-nss-devel >= 3.28.6
|
|
PreReq: mozilla-nss >= %(rpm -q --queryformat '%%{VERSION}' mozilla-nss)
|
|
%endif
|
|
|
|
%description
|
|
SeaMonkey is an all-in-one Internet application suite containing a web
|
|
browser, an e-mail and newsgroup client with an included web feed
|
|
reader and calendar, an HTML editor and web development tools, and an
|
|
IRC client. SeaMonkey is a successor to the popular Netscape
|
|
Communicator and Mozilla Application Suite, and (unlike its siblings,
|
|
Firefox and Thunderbird) retains Mozilla's more traditional-looking
|
|
interface. Many Thunderbird and (legacy) Firefox extensions are
|
|
compatible with SeaMonkey.
|
|
|
|
%package irc
|
|
Summary: IRC for SeaMonkey
|
|
Group: Productivity/Networking/IRC
|
|
PreReq: %{name} = %{version}
|
|
|
|
%description irc
|
|
An IRC client (Chatzilla) for SeaMonkey.
|
|
|
|
%package venkman
|
|
Summary: The SeaMonkey JavaScript Debugger
|
|
Group: Development/Tools/Debuggers
|
|
PreReq: %{name} = %{version}
|
|
|
|
%description venkman
|
|
A JavaScript debugger for the SeaMonkey web browser.
|
|
|
|
|
|
%package dom-inspector
|
|
Summary: The SeaMonkey DOM Inspector
|
|
Group: Development/Tools/Navigators
|
|
PreReq: %{name} = %{version}
|
|
|
|
%description dom-inspector
|
|
This is a tool that allows you to inspect the DOM for web pages in
|
|
SeaMonkey. This is of great use to people who are doing SeaMonkey
|
|
chrome development or web page development.
|
|
|
|
%if %localize
|
|
|
|
%package translations-common
|
|
Summary: Common translations for SeaMonkey
|
|
Group: System/Localization
|
|
Provides: locale(%{name}:cs;de;el;en_GB;es_AR;es_ES;fi;fr;hu;it;ja;nb_NO;nl;pl;pt_BR;pt_PT;ru;sv_SE;zh_CN;zh_TW)
|
|
PreReq: %{name} = %{version}
|
|
|
|
%description translations-common
|
|
This package contains several optional languages for the user interface
|
|
of SeaMonkey.
|
|
|
|
|
|
%package translations-other
|
|
Summary: Extra translations for SeaMonkey
|
|
Group: System/Localization
|
|
Provides: locale(%{name}:ka;sk)
|
|
PreReq: %{name} = %{version}
|
|
|
|
%description translations-other
|
|
This package contains several optional languages for the user interface
|
|
of SeaMonkey.
|
|
%endif
|
|
|
|
%prep
|
|
|
|
%setup -q -b 1 -b 11 -c
|
|
|
|
mv %{sources_subdir} mozilla
|
|
|
|
%if %localize
|
|
%setup -q -T -D -c -n %{name}-%{version}/l10n -a 5
|
|
%setup -q -T -D
|
|
%endif
|
|
|
|
cd mozilla
|
|
|
|
cp %{SOURCE12} GNUmakefile
|
|
|
|
%patch -P 1 -p1
|
|
%patch -P 2 -p2
|
|
%patch -P 3 -p1
|
|
%patch -P 4 -p0
|
|
%patch -P 5 -p1
|
|
%patch -P 6 -p1
|
|
%patch -P 7 -p1
|
|
|
|
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
|
|
ac_add_options --enable-application=comm/suite
|
|
ac_add_options --libdir=%{_libdir}
|
|
ac_add_options --prefix=%{_prefix}
|
|
ac_add_options --mandir=%{_mandir}
|
|
%if %localize
|
|
ac_add_options --with-l10n-base=$RPM_BUILD_DIR/seamonkey-%{version}/l10n
|
|
%endif
|
|
ac_add_options --disable-tests
|
|
ac_add_options --disable-install-strip
|
|
ac_add_options --enable-release
|
|
ac_add_options --enable-default-toolkit=cairo-gtk3
|
|
|
|
# Removed for SeaMonkey 2.53.20
|
|
#ac_add_options --disable-gconf
|
|
|
|
# Elfhack fails on ix86: https://bugzilla.mozilla.org/show_bug.cgi?id=1706264
|
|
%ifarch aarch64 ppc %arm %ix86
|
|
ac_add_options --disable-elf-hack
|
|
%endif
|
|
|
|
ac_add_options --disable-debug
|
|
|
|
ac_add_options --with-system-nspr
|
|
%if 0%{?sle_version} != 150500 && 0%{?is_opensuse}
|
|
ac_add_options --with-system-nss
|
|
%endif
|
|
ac_add_options --with-system-zlib
|
|
# Removed for SeaMonkey 2.53.20
|
|
#ac_add_options --with-system-bz2
|
|
|
|
%if 0%{?suse_version} > 1600 || 0%{?sle_version} >= 150200 && 0%{?is_opensuse}
|
|
ac_add_options --with-system-webp
|
|
|
|
# --system-icu builds are failing on Tumbleweed; see https://bugzilla.mozilla.org/show_bug.cgi?id=193317
|
|
#ac_add_options --with-system-icu
|
|
%endif
|
|
|
|
# Compile errors with system libvpx-1.10.0
|
|
#ac_add_options --with-system-libvpx
|
|
|
|
# Using system AV1 decoder depends on pending patch from
|
|
# https://bugzilla.mozilla.org/show_bug.cgi?id=1559213
|
|
# ac_add_options --with-system-av1
|
|
|
|
# Mozilla's internal JPEG library is used because of the "turbo" patches
|
|
# that make it more efficient than the stock system libjpeg:
|
|
# https://bugzilla.mozilla.org/show_bug.cgi?id=573948
|
|
#ac_add_options --with-system-jpeg
|
|
|
|
# The stock system libpng lacks support for APNG, whereas Mozilla's
|
|
# internal version suports APNG
|
|
#ac_add_options--with-system-png
|
|
|
|
ac_add_options --disable-crashreporter
|
|
ac_add_options --disable-updater
|
|
# Removed for SeaMonkey 2.53.20
|
|
#ac_add_options --enable-startup-notification
|
|
ac_add_options --enable-alsa
|
|
%if %has_system_cairo
|
|
ac_add_options --enable-system-cairo
|
|
%endif
|
|
ac_add_options --enable-libproxy
|
|
%if 0%{?with_chatzilla}
|
|
ac_add_options --with-irc
|
|
%endif
|
|
%if %with_domi
|
|
ac_add_options --with-dominspector
|
|
%endif
|
|
ac_add_options --enable-calendar
|
|
EOF
|
|
|
|
|
|
%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" {} +
|
|
|
|
# As of 2.53.3, i586 builds are failing due to out-of-memory issues,
|
|
# so we disable LTO. (This workaround is still necessary as of
|
|
# 2.53.7.1.)
|
|
%ifarch %ix86
|
|
%define _lto_cflags %{nil}
|
|
%endif
|
|
#
|
|
# As of 2.53.13, Tumbleweed builds are failing due to the linker
|
|
# issue <https://bugzilla.mozilla.org/show_bug.cgi?id=1778981>
|
|
# so we disable LTO.
|
|
%if 0%{?suse_version} > 1600
|
|
%define _lto_cflags %{nil}
|
|
%endif
|
|
export SUSE_ASNEEDED=0
|
|
export MOZ_BUILD_DATE=%{releasedate}
|
|
export MOZILLA_OFFICIAL=1
|
|
export BUILD_OFFICIAL=1
|
|
|
|
export CFLAGS="%{optflags} -fno-strict-aliasing"
|
|
%if 0%{?clang_build} == 0
|
|
# Use GCC 13 on Tumbleweed because builds fail with GCC 14:
|
|
# <https://bugzilla.mozilla.org/show_bug.cgi?id=1916827>
|
|
%if 0%{?suse_version} > 1600
|
|
export CC=gcc-13
|
|
export CXX=g++-13
|
|
%else
|
|
export CC=gcc
|
|
export CXX=g++
|
|
%endif
|
|
%if 0%{?gcc_version:%{gcc_version}} >= 12
|
|
export CFLAGS="$CFLAGS -fimplicit-constexpr"
|
|
%endif
|
|
%endif
|
|
|
|
if [ $(gcc -dumpversion | awk -F. '{print $1}') -ge 6 ]; then
|
|
export CFLAGS+=" -fno-delete-null-pointer-checks -fno-lifetime-dse -fno-schedule-insns2"
|
|
fi
|
|
%ifarch %arm
|
|
export CFLAGS="${CFLAGS/-g / }"
|
|
%endif
|
|
%ifarch %arm %ix86
|
|
# Limit RAM usage during link
|
|
export LDFLAGS="${LDFLAGS} -Wl,--no-keep-memory -Wl,--reduce-memory-overheads"
|
|
%endif
|
|
%ifarch ppc64 ppc64le
|
|
%if 0%{?clang_build} == 0
|
|
export CFLAGS="$CFLAGS -mminimal-toc"
|
|
%endif
|
|
%endif
|
|
export CXXFLAGS="$CFLAGS"
|
|
|
|
#
|
|
%limit_build -m 2000
|
|
cd mozilla
|
|
make %{?_smp_mflags}
|
|
|
|
%if %localize
|
|
make -j1 locales
|
|
%endif
|
|
#
|
|
|
|
%install
|
|
|
|
cd mozilla
|
|
|
|
make install DESTDIR=$RPM_BUILD_ROOT
|
|
|
|
for ext in $RPM_BUILD_ROOT/%{progdir}/extensions/langpack-*@seamonkey.mozilla.org.xpi
|
|
do
|
|
lang=${ext##*langpack-}
|
|
lang=${lang%@*}
|
|
lang=${lang/-/_}
|
|
echo "%%lang($lang) ${ext#$RPM_BUILD_ROOT}"
|
|
done >../seamonkey.lang
|
|
|
|
# overwrite the mozilla start-script and link it to /usr/bin
|
|
mkdir --parents $RPM_BUILD_ROOT%{_bindir}
|
|
sed "s:%%PREFIX:%{prefix}:g
|
|
s:%%PROGDIR:%{progdir}:g
|
|
s:%%APPNAME:seamonkey:g" \
|
|
%{SOURCE3} > $RPM_BUILD_ROOT%{progdir}/%{progname}.sh
|
|
chmod 755 $RPM_BUILD_ROOT%{progdir}/%{progname}.sh
|
|
ln -sf ../..%{progdir}/%{progname}.sh $RPM_BUILD_ROOT%{_bindir}/%{progname}
|
|
# apply SUSE defaults
|
|
sed -e 's,RPM_VERSION,%{version}-%{release},g
|
|
#s,GSSAPI,%{libgssapi},g' \
|
|
%{SOURCE4} > suse-default-prefs
|
|
cp suse-default-prefs $RPM_BUILD_ROOT%{progdir}/defaults/pref/all-openSUSE.js
|
|
rm suse-default-prefs
|
|
install -m 644 %{SOURCE2} %{buildroot}%{progdir}/defaults/pref/
|
|
# Desktop definition
|
|
mkdir -p $RPM_BUILD_ROOT%{_datadir}/applications
|
|
install -m 644 $RPM_BUILD_DIR/*.desktop \
|
|
$RPM_BUILD_ROOT%{_datadir}/applications
|
|
mkdir -p $RPM_BUILD_ROOT/usr/share/pixmaps/
|
|
install -m 644 $RPM_BUILD_DIR/*.png $RPM_BUILD_ROOT%{_datadir}/pixmaps/
|
|
#
|
|
%suse_update_desktop_file seamonkey Network WebBrowser GTK
|
|
%suse_update_desktop_file seamonkey-mail Network Email GTK
|
|
%suse_update_desktop_file seamonkey-composer Network WebDevelopment GTK
|
|
# excludes
|
|
rm -f $RPM_BUILD_ROOT%{progdir}/license.txt
|
|
rm -f $RPM_BUILD_ROOT%{progdir}/README
|
|
rm -f $RPM_BUILD_ROOT%{progdir}/removed-files
|
|
rm -f $RPM_BUILD_ROOT%{progdir}/run-mozilla.sh
|
|
rm -f $RPM_BUILD_ROOT%{progdir}/seamonkey
|
|
rm -f $RPM_BUILD_ROOT%{progdir}/precomplete
|
|
rm -f $RPM_BUILD_ROOT%{progdir}/updater
|
|
rm -f $RPM_BUILD_ROOT%{progdir}/updater.ini
|
|
rm -f $RPM_BUILD_ROOT%{progdir}/update.locale
|
|
rm -f $RPM_BUILD_ROOT%{progdir}/update-settings.ini
|
|
rm -f $RPM_BUILD_ROOT%{progdir}/icons/updater.png
|
|
rm -f $RPM_BUILD_ROOT%{progdir}/dictionaries/*
|
|
# Some sites use different partitions for /usr/(lib|lib64) and /usr/share. Since you
|
|
# can't create hardlinks across partitions, we'll do this more than once.
|
|
%fdupes $RPM_BUILD_ROOT%{progdir}
|
|
%fdupes $RPM_BUILD_ROOT%{_datadir}
|
|
|
|
#INSTALL APPDATA FILES
|
|
mkdir -p %{buildroot}%{_datadir}/appdata
|
|
install -m0644 -t %{buildroot}%{_datadir}/appdata/ $RPM_BUILD_DIR/*.appdata.xml
|
|
|
|
%files -f seamonkey.lang
|
|
%defattr(-,root,root)
|
|
%{_bindir}/%{progname}
|
|
%dir %{progdir}
|
|
%{progdir}/defaults/
|
|
%dir %{progdir}/dictionaries/
|
|
%dir %{progdir}/extensions/
|
|
%dir %{progdir}/chrome/
|
|
%{progdir}/chrome/icons
|
|
%{progdir}/extensions/modern@themes.mozilla.org.xpi
|
|
%{progdir}/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}.xpi
|
|
%{progdir}/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}.xpi
|
|
%{progdir}/fonts/
|
|
%{progdir}/isp/
|
|
%{progdir}/application.ini
|
|
%{progdir}/blocklist.xml
|
|
%{progdir}/chrome.manifest
|
|
%{progdir}/dependentlibs.list
|
|
%{progdir}/*.so
|
|
%{progdir}/omni.ja
|
|
%{progdir}/platform.ini
|
|
%{progdir}/plugin-container
|
|
%{progdir}/%{progname}.sh
|
|
%{progdir}/seamonkey-bin
|
|
%{progdir}/libmozgtk.so
|
|
%{_datadir}/applications/*.desktop
|
|
%{_datadir}/pixmaps/*.png
|
|
%dir %{_datadir}/appdata
|
|
%{_datadir}/appdata/*.appdata.xml
|
|
%{_mandir}/*/*
|
|
|
|
%if 0%{?with_chatzilla}
|
|
%files irc
|
|
%defattr(-,root,root)
|
|
%{progdir}/extensions/{59c81df5-4b7a-477b-912d-4e0fdf64e5f2}.xpi
|
|
%endif
|
|
|
|
%if 0%{?with_domi}
|
|
%files dom-inspector
|
|
%defattr(-,root,root)
|
|
%{progdir}/extensions/inspector*.xpi
|
|
%endif
|
|
|
|
%changelog
|