summaryrefslogtreecommitdiffstats
path: root/main/firefox/APKBUILD
blob: b162a198df427ba97189ad687769185d2233a27d (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
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
# Contributor: William Pitcock <nenolod@dereferenced.org>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=firefox
pkgver=18.0.2
_pkgver=$pkgver
_xulver=$pkgver
pkgrel=0
pkgdesc="firefox web browser"
url="http://www.firefox.com"
arch="all"
license="GPL LGPL MPL"
depends="xulrunner>=${_xulver}"
makedepends="xulrunner-dev>=${_xulver}

	     nspr-dev
	     nss-dev
	     gtk+-dev
             mesa-dev
             dbus-glib-dev
             alsa-lib-dev
             libvorbis-dev
             libogg-dev
             libtheora-dev
             wireless-tools-dev
             libnotify-dev
             libevent-dev
	     libvpx-dev
             libxt-dev
             libjpeg-turbo-dev
             bzip2-dev
             hunspell-dev
             startup-notification-dev
             sqlite-dev
             libidl-dev

	     autoconf2.13

	     python
	     zip
	     yasm

	     autoconf
	     automake
	     libtool

	     paxctl"
install=""
subpackages=""
source="http://releases.mozilla.org/pub/mozilla.org/${pkgname}/releases/${pkgver}/source/${pkgname}-${_pkgver}.source.tar.bz2
	mozconfig
	firefox-5.0-asciidel.patch
	duckduckgo.patch
	firefox.desktop
	firefox-safe.desktop"

options="!strip"

_builddir="${srcdir}/mozilla-release"
_mozappdir=/usr/lib/firefox-$pkgver

prepare() {
	local i

	cd "$_builddir"

	for i in $source; do
		case $i in
		*.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
		esac
	done

	cp "${srcdir}/mozconfig" .mozconfig
	echo "ac_add_options --with-libxul-sdk=$(pkg-config --variable=sdkdir libxul)" >> .mozconfig
	echo "ac_add_options --enable-debug-symbols" >> .mozconfig
	echo "ac_add_options --disable-install-strip" >>.mozconfig
}

build() {
	cd "$_builddir"

	# mozilla's buildsystem is on drugs
	export CFLAGS="$(echo $CFLAGS | sed -e 's/-Wall//' -e 's/-fexceptions/-fno-exceptions/g')"
	export CXXFLAGS="$CFLAGS"

#	export LDFLAGS="-Wl,-rpath,${_mozappdir}"
	make -j1 -f client.mk build \
		STRIP="/bin/true" \
		MOZ_MAKE_FLAGS="$MAKEOPTS" || return 1
}

package() {
	cd "$_builddir"
	make -j1 -f client.mk install \
		DESTDIR="$pkgdir" \
		MOZ_MAKE_FLAGS="$MAKEOPTS" \
		|| return 1

	install -m755 -d ${pkgdir}/usr/share/applications
	install -m755 -d ${pkgdir}/usr/share/pixmaps
	install -m644 "$_builddir"/browser/branding/official/default48.png \
		${pkgdir}/usr/share/pixmaps/firefox.png || return 1
	install -m644 ${srcdir}/firefox.desktop ${pkgdir}/usr/share/applications/firefox.desktop
	install -m644 ${srcdir}/firefox-safe.desktop ${pkgdir}/usr/share/applications/firefox-safe.desktop

	# firefox currently does not work with mprotect. disable it for now
	paxctl -c -m "$pkgdir"/$_mozappdir/firefox || return 1

	# xulrunner stub launcher has changed to using a symlink overlay...
	# go figure
	ln -sf /usr/lib/xulrunner-${_xulver} ${pkgdir}/$_mozappdir/xulrunner

	# launcher as symlink is broken from firefox-7.0
	rm "$pkgdir"/usr/bin/firefox || return 1
	cat > "$pkgdir"/usr/bin/firefox << __EOF__
#!/bin/sh

exec $_mozappdir/firefox "\$@"
__EOF__
	chmod 755 "$pkgdir"/usr/bin/firefox
}

md5sums="a7a20f52a3ffdd8d2fafa8a1a1db49c7  firefox-18.0.2.source.tar.bz2
98bcd8b2d33037f12ca513882fc5d831  mozconfig
2328df219e042f6aaec361cbf83cf9e9  firefox-5.0-asciidel.patch
7341e290faecd9a827c4d580142699a5  duckduckgo.patch
ba96924ece1d77453e462429037a2ce5  firefox.desktop
6f38a5899034b7786cb1f75ad42032b8  firefox-safe.desktop"
sha256sums="6aa2cd33903d612cf569e2824a6168feb6209f09fb3ca730ec10236da49bd236  firefox-18.0.2.source.tar.bz2
0988b03a0532293fbacfd995cdc93df2a10b873cebf4912e1a96cb86f2321312  mozconfig
e1e5b6ab3337a6af5c74be392d32fccfa315191191c622dac4f660157ebf4e7a  firefox-5.0-asciidel.patch
034587def9ddd665cc67ebf03db1aae25749ed646e7e8d5758e1278fc75a0f8e  duckduckgo.patch
b571c4a49884a3c98806246c9cc3e60c73d5a8f4aeb7f96217db0be1d6210eda  firefox.desktop
4b6de45753856a890f4482055666e77f9b01bdfb7e0df08bafaa3a4d9937eed3  firefox-safe.desktop"
sha512sums="c9be9d7328fe614059f895879351a48a3083f4a7ac1eb22eab3af8e94c432ad06d4f8a7295c2b843c4a289e463fcbd2dc389c8bc8018c5d8c666929a82214e54  firefox-18.0.2.source.tar.bz2
f5a3842a04d3fbf433f70fbbbefbf8ee2fce2f25fa041bf4920f99c8842c8a16e0aeaf44e64af14cffcb743c8816ba7aebbbe13e07d0b17ee6a50dbad8f7f645  mozconfig
9ccc74883fa4f3861a5ddde1af9c3c0d151fda8ff64df979ee0565ecd2013a875894e5670a0c1d0a28fbb81fb88759777ce7fcb196e582caeb903c760859a1b1  firefox-5.0-asciidel.patch
d6907d87c14647e3670aef7d55140990e9132f852a097cdc82f4f6f3c6676f1cb6b4ec5aba40d6bec8e9ad45af5e90c9572c1d11c22f2e96bb1bbf3e1bbbefb0  duckduckgo.patch
f3b7c3e804ce04731012a46cb9e9a6b0769e3772aef9c0a4a8c7520b030fdf6cd703d5e9ff49275f14b7d738fe82a0a4fde3bc3219dff7225d5db0e274987454  firefox.desktop
5dcb6288d0444a8a471d669bbaf61cdb1433663eff38b72ee5e980843f5fc07d0d60c91627a2c1159215d0ad77ae3f115dcc5fdfe87e64ca704b641aceaa44ed  firefox-safe.desktop"