~mozillateam/firefox/firefox-beta.xenial

« back to all changes in this revision

Viewing changes to debian/build/rules.mk

  • Committer: Rico Tzschichholz
  • Date: 2023-03-05 11:51:02 UTC
  • Revision ID: ricotz@ubuntu.com-20230305115102-qitdjtqi67zry9g8
New upstream release from the beta channel (FIREFOX_111_0b8_BUILD1)

Show diffs side-by-side

added added

removed removed

Lines of Context:
45
45
# These normally come from autotools.mk, which we no longer include (because we
46
46
# don't want to run configure)
47
47
DEB_MAKE_INSTALL_TARGET :=
 
48
# Prevent some files from being cleaned to avoid build failures
 
49
DEB_CLEAN_EXCLUDE               := Cargo.toml.orig
48
50
# Don't save debug symbols in firefox-dbg (rely on pkg-create-dbgsym to create
49
51
# ddeb packages for us). This is needed as long as there is a firefox-dbg
50
52
# transitional package
103
105
MOZ_BUILD_PGO = 0
104
106
endif
105
107
 
106
 
LLVM_VERSIONS = 13 12 11 10 8
 
108
LLVM_VERSIONS = 13 12 10 8
107
109
DEB_LLVM_VERSION = $(firstword $(foreach llvm_version, $(LLVM_VERSIONS), \
108
110
        $(if $(shell which clang-$(llvm_version)), $(llvm_version))))
109
111
 
229
231
common-configure-impl:: debian/stamp-mach-configure
230
232
debian/stamp-mach-configure: cbindgen/bin/cbindgen dump_syms/bin/dump_syms
231
233
        $(CURDIR)/mach configure && $(CURDIR)/mach build-backend
232
 
ifneq (,$(filter arm64 armhf i386, $(DEB_HOST_ARCH)))
233
 
    # Conditionally patch the top-level Cargo.toml file to reduce the LTO to
234
 
    # "thin" on selected architectures (armhf and i386) to work around OOM
235
 
    # failures on Launchpad builders.
236
 
    # This is only one half of the workaround,
237
 
    # see also debian/patches/armhf-rustc-thin-lto.patch.
238
 
        cp Cargo.toml Cargo.toml.orig
239
 
        sed -i 's/\[profile.release\]/\[profile.release\]\nlto = "thin"/' Cargo.toml
240
 
endif
241
234
        touch $@
242
235
clean::
243
236
        rm -f debian/stamp-mach-configure
244
 
        if [ -f Cargo.toml.orig ]; then mv Cargo.toml.orig Cargo.toml; fi
245
237
 
246
238
cbindgen/bin/cbindgen: third_party/cbindgen/Cargo.toml
247
239
        export RUST_BACKTRACE=full; \
359
351
pre-build:: debian/config/locales.shipped $(pkgname_subst_files) $(appname_subst_files) mozconfig
360
352
        $(call cmp_auto_generated_file,debian/config/locales.shipped,refresh-supported-locales)
361
353
 
362
 
# Conditionally patch the generated uniffi-js files.
363
 
# https://bugzilla.mozilla.org/show_bug.cgi?id=1803726
364
 
ifneq (,$(filter armhf i386, $(DEB_HOST_ARCH)))
365
 
pre-build:: stamp-uniffi-js
366
 
stamp-uniffi-js: debian/patches/uniffi-js.patch
367
 
        patch -p1 < $<
368
 
        touch $@
 
354
# Conditionally patch the top-level Cargo.toml file to reduce the LTO to "thin"
 
355
# on armhf to work around OOM failures on Launchpad builders. This is only one
 
356
# half of the workaround, see also debian/patches/armhf-rustc-thin-lto.patch.
 
357
ifneq (,$(filter arm64 armhf i386, $(DEB_HOST_ARCH)))
 
358
pre-build:: Cargo.toml.bak
 
359
Cargo.toml.bak: Cargo.toml
 
360
        cp $< $@
 
361
        sed -i 's/\[profile.release\]/\[profile.release\]\nlto = "thin"/' $<
369
362
clean::
370
 
        if [ -f stamp-uniffi-js ]; then patch -p1 -R < debian/patches/uniffi-js.patch; rm stamp-uniffi-js; fi
 
363
        if [ -f Cargo.toml.bak ]; then mv Cargo.toml.bak Cargo.toml; fi
371
364
endif
372
365
 
373
366
EXTRACT_TARBALL = $(firstword $(shell TMPDIR=`mktemp -d`; tar -jxf $(1) -C $$TMPDIR > /dev/null 2>&1; echo $$TMPDIR/`ls $$TMPDIR/ | head -n1`))