[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#784383: jessie-pu: package libav/6:11.3-1+deb8u1



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


Reply to: