From f4a79cc138ed50022acc85c5ae1f4c10e860b52a Mon Sep 17 00:00:00 2001 From: David Adam Date: Fri, 17 May 2024 23:40:07 +0800 Subject: [PATCH] debian packaging: disable LTO build profile Fixes the build on Ubuntu distributions with aggressive enabling of LTO for all builds. This build profile sets CFLAGS and CXXFLAGS in a way that prevents cargo tests from linking. This manifests as errors like: = note: make[5]: *** read jobs pipe: Bad file descriptor. Stop. make[5]: *** Waiting for unfinished jobs.... lto-wrapper: fatal error: make returned 2 exit status compilation terminated. /usr/bin/ld: error: lto-wrapper failed collect2: error: ld returned 1 exit status --- debian/rules | 3 +++ 1 file changed, 3 insertions(+) diff --git a/debian/rules b/debian/rules index fb3b43cba..f72092e64 100755 --- a/debian/rules +++ b/debian/rules @@ -3,6 +3,9 @@ # Uncomment this to turn on verbose mode. export DH_VERBOSE=1 +# The LTO profile sets CFLAGS/CXXFLAGS which confuse the compilation process; disable it +# LTO is still performed by rustc based on Cargo.toml +export DEB_BUILD_MAINT_OPTIONS=optimize=-lto %: dh $@