blob: 462dd96449d5ba711b255cde16827191c17bf0bd (
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
|
#!/usr/bin/make -f
# -*- makefile -*-
export SHELL=/bin/bash
export MOZCONFIG=$(shell pwd)/debian/mozconfig
export MOZ_NOSPAM:=1
export MOZ_SOURCE_REPO=https://github.com/WaterfoxCo/Waterfox
export MOZ_SOURCE_CHANGESET=$(shell awk -F ': ' '/^commit:/ {print $$2; exit}' ../SOURCES/waterfox-g.obsinfo)
export WF_VERSION=$(shell awk -F ': ' '/^version:/ {print "G"$$2; exit}' ../SOURCES/waterfox-g.obsinfo)
export TODAY_DATE=$(shell date +%Y-%m-%d)
export LC_ALL=C.UTF-8
LDFLAGS += -Wl,--no-keep-memory -Wl,--no-mmap-output-file
distrelease := $(shell lsb_release -sc)
ifeq ($(distrelease),$(filter $(distrelease),stretch xenial))
LDFLAGS += -static-libstdc++
endif
export LDFLAGS
export JOBS=$(shell echo $(shell grep -c ^processor /proc/cpuinfo)\/2 | bc)
export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=system
export DEB_BUILD_MAINT_OPTIONS = optimize=-lto
%:
dh $@
override_dh_auto_clean:
dh_auto_clean
find . -name '*.pyc' -delete
override_dh_auto_build:
# Upstream modifies version_display.txt using script included in GitHub Actions (version=git_tag),
# without patching. Debhelper won't allow us to do that by same way and
# patching won't be much convenient, so we need to create new files.
mkdir -p $$(pwd)/debian/app_version
cp $$(pwd)/browser/config/version.txt $$(pwd)/debian/app_version/version.txt
echo $$WF_VERSION > $$(pwd)/debian/app_version/version_display.txt
# Build browser
# LTO needs more open files
ulimit -n 4096; xvfb-run -a -n 97 -s "-screen 0 1920x1080x24" ./mach build
# Build langpacks
mkdir -p $$(pwd)/extensions
# langpack-build can not be done in parallel easily (see https://bugzilla.mozilla.org/show_bug.cgi?id=1660943)
# Therefore, we have to have a separate obj-dir for each language
# We do this, by creating a mozconfig-template with the necessary switches
# and a placeholder obj-dir, which gets copied and modified for each language
sed -r '/^(ja-JP-mac|en-US|)$$/d;s/ .*$$//' debian/locales.shipped | cut -f1 -d":" \
| xargs -n 1 -P $$JOBS -I {} /bin/sh -c 'locale=$$1; cp debian/mozconfig_LANG mozconfig_$$locale; sed -i "s|obj_LANG|obj_$$locale|" mozconfig_$$locale; export MOZCONFIG=mozconfig_$$locale; ./mach build config/nsinstall langpack-$$locale; cp -L ../obj_$$locale/dist/linux-*/xpi/waterfox-g-$$WF_VERSION.$$locale.langpack.xpi \
$$(pwd)/extensions/langpack-$$locale@l10n.waterfox.net.xpi' -- {}
override_dh_auto_install:
chmod +x $$(pwd)/debian/waterfox-g-bin.sh
DESTDIR=$$(pwd)/debian/waterfox-g ./mach install
rm -rf $$(pwd)/debian/waterfox-g/usr/lib/waterfox-g/dictionaries
rm -rf $$(pwd)/debian/waterfox-g/usr/lib/waterfox-g/waterfox-g-bin
sed -i "s/__DATE__/$$TODAY_DATE/g" $$(pwd)/debian/waterfox-g.appdata.xml.in
sed -e "s/__VERSION__/$$WF_VERSION/g" $$(pwd)/debian/waterfox-g.appdata.xml.in > $$(pwd)/debian/waterfox-g/usr/share/metainfo/waterfox-g.appdata.xml
mv $$(pwd)/debian/waterfox-g-wayland-bin.sh $$(pwd)/debian/waterfox-g-wayland/usr/bin/waterfox-g-wayland
override_dh_shlibdeps:
dh_shlibdeps -l /usr/lib/waterfox-g/waterfox-g
override_dh_strip_nondeterminism:
dh_strip_nondeterminism -Xdebian/waterfox-g/usr/lib/waterfox-g/browser/features/formautofill@mozilla.org.xpi
|