Package: release.debian.org Severity: normal Tags: jessie User: release.debian.org@packages.debian.org Usertags: pu I'd like to fix #783082 in jessie. Unfortunately just passing the correct value to --cpu is not enough as this causes the build to fail due gcc stumbling over some assembler code. So we also need to disable some assembler code and use the generic C implementation instead. The changelog is: libav (6:11.3-1+deb8u1) jessie; urgency=medium * Fix use of illegal instruction on i586. (Closes: #783082) - debian/confflags: Pass correct value to --cpu. Thanks to Bernhard Übelacker for the patch. - debian/patches: + 01-configure-disable-i686-for-i586.patch: Upstream patch to disable i686 instructions on i586. + 02-configure-disable-ebx-gcc-4.9.patch: Workaround build failure with gcc 4.9 and newer by disabling the use of ebx in handwritten assembler code. Thanks to Bernhard Übelacker for the initial patch. -- Sebastian Ramacher <sramacher@debian.org> Tue, 05 May 2015 21:59:47 +0200 Full debdiff is attached. Cheers -- Sebastian Ramacher
diff -Nru libav-11.3/debian/changelog libav-11.3/debian/changelog --- libav-11.3/debian/changelog 2015-03-13 23:27:29.000000000 +0100 +++ libav-11.3/debian/changelog 2015-05-05 22:05:20.000000000 +0200 @@ -1,3 +1,17 @@ +libav (6:11.3-1+deb8u1) jessie; urgency=medium + + * Fix use of illegal instruction on i586. (Closes: #783082) + - debian/confflags: Pass correct value to --cpu. Thanks to Bernhard + Übelacker for the patch. + - debian/patches: + + 01-configure-disable-i686-for-i586.patch: Upstream patch to disable + i686 instructions on i586. + + 02-configure-disable-ebx-gcc-4.9.patch: Workaround build failure with + gcc 4.9 and newer by disabling the use of ebx in handwritten assembler + code. Thanks to Bernhard Übelacker for the initial patch. + + -- Sebastian Ramacher <sramacher@debian.org> Tue, 05 May 2015 21:59:47 +0200 + libav (6:11.3-1) unstable; urgency=medium * New upstream release fixing multiple security issues. diff -Nru libav-11.3/debian/confflags libav-11.3/debian/confflags --- libav-11.3/debian/confflags 2015-01-17 19:25:07.000000000 +0100 +++ libav-11.3/debian/confflags 2015-05-05 21:55:15.000000000 +0200 @@ -180,7 +180,7 @@ shared_build_confflags += --disable-static # i386 shared builds must be optimized for 586, cf. #728928, #688384 ifeq ($(DEB_HOST_ARCH),i386) -shared_build_confflags += --cpu=586 +shared_build_confflags += --cpu='i586' endif ## specific to arm architectures diff -Nru libav-11.3/debian/gbp.conf libav-11.3/debian/gbp.conf --- libav-11.3/debian/gbp.conf 2015-01-17 19:25:07.000000000 +0100 +++ libav-11.3/debian/gbp.conf 2015-05-05 21:55:01.000000000 +0200 @@ -1,6 +1,6 @@ [DEFAULT] -upstream-branch = upstream -debian-branch = master +upstream-branch = upstream.jessie +debian-branch = jessie upstream-tag = upstream/%(version)s debian-tag = debian/%(version)s pristine-tar = True diff -Nru libav-11.3/debian/patches/01-configure-disable-i686-for-i586.patch libav-11.3/debian/patches/01-configure-disable-i686-for-i586.patch --- libav-11.3/debian/patches/01-configure-disable-i686-for-i586.patch 1970-01-01 01:00:00.000000000 +0100 +++ libav-11.3/debian/patches/01-configure-disable-i686-for-i586.patch 2015-05-05 21:55:38.000000000 +0200 @@ -0,0 +1,19 @@ +Description: configure: Disable i686 for i586 and lower CPUs +Origin: upstream, + https://git.libav.org/?p=libav.git;a=commit;h=9030c58a780a02fb8256cb75cd39275eaad786d1 +Last-Update: 2015-05-05 + +--- + configure | 1 + + 1 file changed, 1 insertion(+) + +--- a/configure ++++ b/configure +@@ -3282,6 +3282,7 @@ + case $cpu in + i[345]86|pentium) + cpuflags="-march=$cpu" ++ disable i686 + disable mmx + ;; + # targets that do NOT support nopl and conditional mov (cmov) diff -Nru libav-11.3/debian/patches/02-configure-disable-ebx-gcc-4.9.patch libav-11.3/debian/patches/02-configure-disable-ebx-gcc-4.9.patch --- libav-11.3/debian/patches/02-configure-disable-ebx-gcc-4.9.patch 1970-01-01 01:00:00.000000000 +0100 +++ libav-11.3/debian/patches/02-configure-disable-ebx-gcc-4.9.patch 2015-05-05 21:55:49.000000000 +0200 @@ -0,0 +1,25 @@ +Description: Disable ebx_available on i586 +Author: Sebastian Ramacher <sramacher@debian.org>, + Bernhard Übelacker <bernhardu@vr-web.de> +Bug: https://bugzilla.libav.org/show_bug.cgi?id=850 +Bug-Debian: https://bugs.debian.org/783082 +Last-Update: 2015-05-05 + +--- a/configure ++++ b/configure +@@ -3941,6 +3941,15 @@ + check_inline_asm ebx_available '""::"b"(0)' && + check_inline_asm ebx_available '"":::"%ebx"' + ++ # workaround for debian#783082 / libav#850 ++ if enabled gcc; then ++ case $($cc -dumpversion) in ++ 4.9.*|5.*) ++ disable ebx_available ++ ;; ++ esac ++ fi ++ + # check whether xmm clobbers are supported + check_inline_asm xmm_clobbers '"":::"%xmm0"' + diff -Nru libav-11.3/debian/patches/series libav-11.3/debian/patches/series --- libav-11.3/debian/patches/series 2015-01-17 19:25:07.000000000 +0100 +++ libav-11.3/debian/patches/series 2015-05-05 21:55:49.000000000 +0200 @@ -1 +1,3 @@ +01-configure-disable-i686-for-i586.patch +02-configure-disable-ebx-gcc-4.9.patch 03-disable-configuration-warnings.patch
Attachment:
signature.asc
Description: Digital signature