summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 7efbe2afc91f03b5bc7055531989726db83a1b4c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
# Maintainer: Brian Bidulock <bidulock@openss7.org>
# Contributor: Kyle Keen <keenerd@gmail.com>

pkgname=seamonkey-gtk2
_pkgname=seamonkey
pkgver=2.49.4
pkgrel=5
pkgdesc="SeaMonkey internet suite (GTK2 version)"
arch=('x86_64' 'i686')
license=('MPL')
depends=('alsa-lib'  'dbus-glib'  'desktop-file-utils'  'gtk2' 'hunspell'  'libevent'  'libnotify'  'libvpx'  'libxt' 'mime-types'  'mozilla-common'  'nss'  'sqlite'  'startup-notification' 'libpulse' 'icu')
provides=("$_pkgname=$pkgver.$pkgrel")
conflicts=("$_pkgname")
makedepends=('unzip' 'zip' 'python2' 'yasm' 'mesa' 'autoconf2.13' 'imake' 'python3' 'gst-plugins-base')
optdepends=('gst-plugins-base: vorbis decoding, ogg demuxing'
            'gst-plugins-bad: aac, vp8 and opus decoding'
            'gst-plugins-good: webm and mp4 demuxing'
            'gst-plugins-ugly: h.264 decoding'
            'networkmanager: Location detection via available WiFi networks')
url="https://www.seamonkey-project.org/"
source=("https://archive.mozilla.org/pub/mozilla.org/seamonkey/releases/$pkgver/source/seamonkey-$pkgver.source.tar.xz"
        mozconfig
        seamonkey-2.0-lang.patch
        patch-bug1435212.xz
        gettid.patch
	no-crmf.diff)
sha256sums=('c8a66774d0a3525698b559fa2c41397186f2de99c5733e35b8eafb0ae5ccc4ee'
            '6ff9fd323eec175eb02cfefd3136c79491c3b40be0b1f899da7c75c2f76259ca'
            'ab19d10fbd6258aec37ab5e5efb12429814b2c24a1193284a48dd654311b4e2e'
            'dce68858694f820a9a1fc2428038a88ea00b4835cea0778734db794fea3bb21a'
            '923154d052f041af15a2495ceb1f76f7c8619fd8bfc66a0bbedfeab2514adf0b'
            'fb85a538044c15471c12cf561d6aa74570f8de7b054a7063ef88ee1bdfc1ccbb')

prepare() {
  cd "$_pkgname-$pkgver"
  cp ../mozconfig .mozconfig
  echo "ac_add_options --enable-default-toolkit=cairo-gtk2" >>.mozconfig
  #patch -Np1 -i ../seamonkey-2.0-lang.patch

  # FS#48404
  #echo "ac_add_options --enable-gstreamer=1.0" >> .mozconfig

  # ffmpeg 4.0 patch from freebsd
  # https://github.com/freebsd/freebsd-ports/blob/master/www/seamonkey/files/patch-bug1435212
  patch -Np1 -d mozilla -i ../../patch-bug1435212

  # https://bugzilla.mozilla.org/show_bug.cgi?id=1533969
  patch -Np1 -i ../gettid.patch

  # Don't exit with error when some libs are missing which we have in
  # system.
  sed -i '/^MOZ_PKG_FATAL_WARNINGS/s@= 1@= 0@' suite/installer/Makefile.in

  # configure script misdetects the preprocessor without an optimization level
  sed -i '/ac_cpp=/s/$CPPFLAGS/& -O2/' configure

  # 2.26 build fix from wgnie (blfs ch 37)
  sed -i 's/$(MOZ_ZLIB_CFLAGS)/& $(MOZ_PIXMAN_CFLAGS)/' config/config.mk

  # work around from FS#54395
  patch -Np1 -d mozilla -i ../../no-crmf.diff
  sed -i "s/'crmf',//" mozilla/security/manager/ssl/moz.build
  sed -i 's/^.*-lcrmf/#&/' mozilla/config/external/nss/crmf/moz.build
  sed -i 's/ -lcrmf"/"/' mozilla/old-configure.in.orig
  sed -i 's/ -lcrmf"/"/' mozilla/old-configure
  sed -i 's/SDK_LIBS = crmf/SDK_LIBS = /' mozilla/config/external/nss/Makefile.in
}

build() {
  cd "$_pkgname-$pkgver"

  export LDFLAGS="$LDFLAGS -Wl,-rpath,/usr/lib/seamonkey-$pkgver"
  export MOZ_MAKE_FLAGS="$MAKEFLAGS"
  unset MAKEFLAGS
  unset CPPFLAGS

  # GCC 6
  CFLAGS+=" -fno-delete-null-pointer-checks -fno-lifetime-dse -fno-schedule-insns2"
  CXXFLAGS+=" -fno-delete-null-pointer-checks -fno-lifetime-dse -fno-schedule-insns2"

  # GCC 9
  CXXFLAGS+=" -Wno-format-overflow"

  make -j1 -f client.mk build
}

package() {
  cd "$_pkgname-$pkgver"

  make -j1 -f client.mk DESTDIR="$pkgdir" INSTALL_SDK= install

  rm -rf "$pkgdir"/usr/lib/seamonkey-$pkgver/{dictionaries,hyphenation}
  ln -s /usr/share/hunspell "$pkgdir/usr/lib/seamonkey-$pkgver/dictionaries"
  ln -s /usr/share/hyphen "$pkgdir/usr/lib/seamonkey-$pkgver/hyphenation"

  install -Dm644 suite/branding/nightly/icons/gtk/seamonkey.png \
                "$pkgdir/usr/share/pixmaps/seamonkey.png"

  install -Dm644 mozilla/toolkit/mozapps/installer/linux/rpm/mozilla.desktop \
                "$pkgdir/usr/share/applications/seamonkey.desktop"
  sed -i 's/@MOZ_APP_DISPLAYNAME@/SeaMonkey internet suite/' \
                "$pkgdir/usr/share/applications/seamonkey.desktop"
  sed -i 's/@MOZ_APP_NAME@/seamonkey/' "$pkgdir/usr/share/applications/seamonkey.desktop"

  rm -f "$pkgdir/usr/lib/pkgconfig/"seamonkey-ns{s,pr}.pc
  #rm -r "$pkgdir"/usr/{include,lib/seamonkey-devel-$pkgver,share/idl}
}