mpeg2dec: ftbfs [sparc] function 'arch_accel' can never be inlined because it uses setjmp

Bug #19934 reported by Debian Bug Importer
4
Affects Status Importance Assigned to Milestone
mpeg2dec (Debian)
Fix Released
Unknown
mpeg2dec (Ubuntu)
Invalid
High
Unassigned

Bug Description

Automatically imported from Debian bug report #323134 http://bugs.debian.org/323134

Revision history for this message
Debian Bug Importer (debzilla) wrote :

Automatically imported from Debian bug report #323134 http://bugs.debian.org/323134

Revision history for this message
Debian Bug Importer (debzilla) wrote :

Message-ID: <email address hidden>
Date: Sun, 14 Aug 2005 15:31:46 -0700
From: Blars Blarson <email address hidden>
To: Debian Bug Tracking System <email address hidden>
Subject: mpeg2dec: ftbfs [sparc] function 'arch_accel' can never be inlined because it uses setjmp

Package: mpeg2dec
Version: 0.4.0b-2.1
Severity: serious
Justification: fails to build from source

mpeg2dec failed to build on a sparc buildd, duplicated on my sparc pbuilder.

if /bin/sh ../libtool --mode=compile cc -DHAVE_CONFIG_H -I. -I. -I../include -I../include -I../include -Wall -g -Wall -O3 -fomit-frame-pointer -fno-common -mcpu=ultrasparc -mvis -MT libmpeg2arch_la-cpu_accel.lo -MD -MP -MF ".deps/libmpeg2arch_la-cpu_accel.Tpo" \
  -c -o libmpeg2arch_la-cpu_accel.lo `test -f 'cpu_accel.c' || echo './'`cpu_accel.c; \
then mv -f ".deps/libmpeg2arch_la-cpu_accel.Tpo" ".deps/libmpeg2arch_la-cpu_accel.Plo"; \
else rm -f ".deps/libmpeg2arch_la-cpu_accel.Tpo"; exit 1; \
fi
 cc -DHAVE_CONFIG_H -I. -I. -I../include -I../include -I../include -Wall -g -Wall -O3 -fomit-frame-pointer -fno-common -mcpu=ultrasparc -mvis -MT libmpeg2arch_la-cpu_accel.lo -MD -MP -MF .deps/libmpeg2arch_la-cpu_accel.Tpo -c cpu_accel.c -fPIC -DPIC -o .libs/libmpeg2arch_la-cpu_accel.o
cpu_accel.c: In function 'arch_accel':
cpu_accel.c:161: sorry, unimplemented: function 'arch_accel' can never be inlined because it uses setjmp
make[3]: *** [libmpeg2arch_la-cpu_accel.lo] Error 1
make[3]: Leaving directory `/build/buildd/mpeg2dec-0.4.0b/libmpeg2'
make[2]: *** [all-recursive] Error 1

Revision history for this message
Matt Zimmerman (mdz) wrote :

sparc-specific

Revision history for this message
In , Loïc Minier (lool) wrote : #323134 is pending

tags #323134 + pending
thanks

--
Loïc Minier <email address hidden>
Come, your destiny awaits!

Revision history for this message
In , Loïc Minier (lool) wrote : Fixed in NMU of mpeg2dec 0.4.0b-2.2

tag 323134 + fixed

quit

This message was generated automatically in response to a
non-maintainer upload. The .changes file follows.

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.7
Date: Sat, 17 Sep 2005 11:17:36 +0200
Source: mpeg2dec
Binary: libmpeg2-4-dev mpeg2dec libmpeg2-4
Architecture: source i386
Version: 0.4.0b-2.2
Distribution: unstable
Urgency: high
Maintainer: David I. Lehn <email address hidden>
Changed-By: Loic Minier <email address hidden>
Description:
 libmpeg2-4 - MPEG1 and MPEG2 video decoder library
 libmpeg2-4-dev - libmpeg2 development libraries and headers
 mpeg2dec - Simple libmpeg2 video decoder application
Closes: 323134
Changes:
 mpeg2dec (0.4.0b-2.2) unstable; urgency=high
 .
   * Non-maintainer upload.
   * As discussed with upstream, the source was developped with the 3.x series
     of gcc and optimized quite specifically for gcc 2.95 and 3.x, trying to
     build with gcc 4.0 will probably bring lower performances, and forbids
     usage of -O3; hence Build-depend on gcc-3.4 and build with gcc-3.4, should
     build on m68k and sparc again. (Closes: #323134)
Files:
 03f47a0cf5bb9e4ca9f5e7fb4ca2836d 687 libs optional mpeg2dec_0.4.0b-2.2.dsc
 522d6d8e960ea1f0966445d74d1b52d3 4409 libs optional mpeg2dec_0.4.0b-2.2.diff.gz
 2972ae61722bc276bce241f4dacf3833 79942 libdevel optional libmpeg2-4-dev_0.4.0b-2.2_i386.deb
 344bd6ad8325313364d0c4d3a69738ef 62244 libs optional libmpeg2-4_0.4.0b-2.2_i386.deb
 1a3b53a5ebb49474eddd82868bd18659 36360 graphics optional mpeg2dec_0.4.0b-2.2_i386.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFDK+Bx4VUX8isJIMARAsOBAJwLnMB6JJ9HrLnKXgLWhk+mQ4ghugCgriQA
zAyPEZnvR66wzsFVv9blggs=
=4VVJ
-----END PGP SIGNATURE-----

Revision history for this message
Debian Bug Importer (debzilla) wrote :

Message-ID: <email address hidden>
Date: Sat, 17 Sep 2005 11:37:05 +0200
From: =?iso-8859-1?Q?Lo=EFc?= Minier <email address hidden>
To: <email address hidden>
Subject: #323134 is pending

tags #323134 + pending
thanks

--=20
Lo=EFc Minier <email address hidden>
Come, your destiny awaits!

Revision history for this message
Debian Bug Importer (debzilla) wrote :

Message-Id: <email address hidden>
Date: Sat, 17 Sep 2005 02:32:04 -0700
From: Loic Minier <email address hidden>
To: <email address hidden>
Cc: Loic Minier <email address hidden>, <email address hidden> (David I. Lehn)
Subject: Fixed in NMU of mpeg2dec 0.4.0b-2.2

tag 323134 + fixed

quit

This message was generated automatically in response to a
non-maintainer upload. The .changes file follows.

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.7
Date: Sat, 17 Sep 2005 11:17:36 +0200
Source: mpeg2dec
Binary: libmpeg2-4-dev mpeg2dec libmpeg2-4
Architecture: source i386
Version: 0.4.0b-2.2
Distribution: unstable
Urgency: high
Maintainer: David I. Lehn <email address hidden>
Changed-By: Loic Minier <email address hidden>
Description:
 libmpeg2-4 - MPEG1 and MPEG2 video decoder library
 libmpeg2-4-dev - libmpeg2 development libraries and headers
 mpeg2dec - Simple libmpeg2 video decoder application
Closes: 323134
Changes:
 mpeg2dec (0.4.0b-2.2) unstable; urgency=high
 .
   * Non-maintainer upload.
   * As discussed with upstream, the source was developped with the 3.x series
     of gcc and optimized quite specifically for gcc 2.95 and 3.x, trying to
     build with gcc 4.0 will probably bring lower performances, and forbids
     usage of -O3; hence Build-depend on gcc-3.4 and build with gcc-3.4, should
     build on m68k and sparc again. (Closes: #323134)
Files:
 03f47a0cf5bb9e4ca9f5e7fb4ca2836d 687 libs optional mpeg2dec_0.4.0b-2.2.dsc
 522d6d8e960ea1f0966445d74d1b52d3 4409 libs optional mpeg2dec_0.4.0b-2.2.diff.gz
 2972ae61722bc276bce241f4dacf3833 79942 libdevel optional libmpeg2-4-dev_0.4.0b-2.2_i386.deb
 344bd6ad8325313364d0c4d3a69738ef 62244 libs optional libmpeg2-4_0.4.0b-2.2_i386.deb
 1a3b53a5ebb49474eddd82868bd18659 36360 graphics optional mpeg2dec_0.4.0b-2.2_i386.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFDK+Bx4VUX8isJIMARAsOBAJwLnMB6JJ9HrLnKXgLWhk+mQ4ghugCgriQA
zAyPEZnvR66wzsFVv9blggs=
=4VVJ
-----END PGP SIGNATURE-----

Revision history for this message
In , Sam Hocevar (sam-h) wrote :

reopen 323134
severity 323134 normal
tag 323134 +patch
thanks

   The proper fix for this bug is not to disable optimisations. The
attached patch simply disables the inlining of the function that cannot
be inlined.

--
Sam.

Revision history for this message
Debian Bug Importer (debzilla) wrote :

Message-ID: <email address hidden>
Date: Sat, 1 Oct 2005 11:32:51 +0200
From: Sam Hocevar <email address hidden>
To: <email address hidden>
Subject: mpeg2dec: ftbfs [sparc] function 'arch_accel' can never be inlined because it uses setjmp

--TmwHKJoIRFM7Mu/A
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

reopen 323134
severity 323134 normal
tag 323134 +patch
thanks

   The proper fix for this bug is not to disable optimisations. The
attached patch simply disables the inlining of the function that cannot
be inlined.

--
Sam.

--TmwHKJoIRFM7Mu/A
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="patch-mpeg2dec-sparc-inline-setjmp.diff"

diff -puriN mpeg2dec-0.4.0/debian/rules mpeg2dec-0.4.0-new/debian/rules
--- mpeg2dec-0.4.0/debian/rules 2005-10-01 11:26:53 +0200
+++ mpeg2dec-0.4.0-new/debian/rules 2005-10-01 11:26:26 +0200
@@ -2,14 +2,6 @@

 DEB_HOST_ARCH := $(shell dpkg-architecture -qDEB_HOST_ARCH)

-# build with gcc 3.3 under sparc since it seems gcc 3.3 does not report
-# failure to inline setjmp() on sparc
-ifeq ($(DEB_HOST_ARCH),sparc)
-CC=gcc-3.3
-else
-CC=gcc-3.4
-endif
-
 include /usr/share/cdbs/1/rules/debhelper.mk
 include /usr/share/cdbs/1/class/autotools.mk

diff -puriN mpeg2dec-0.4.0/libmpeg2/cpu_accel.c mpeg2dec-0.4.0-new/libmpeg2/cpu_accel.c
--- mpeg2dec-0.4.0/libmpeg2/cpu_accel.c 2003-10-06 04:31:52 +0200
+++ mpeg2dec-0.4.0-new/libmpeg2/cpu_accel.c 2005-10-01 11:27:39 +0200
@@ -157,7 +157,7 @@ static inline uint32_t arch_accel (void)
 #endif /* ARCH_PPC */

 #ifdef ARCH_SPARC
-static inline uint32_t arch_accel (void)
+static uint32_t arch_accel (void)
 {
     static RETSIGTYPE (* oldsig) (int);

--TmwHKJoIRFM7Mu/A--

Revision history for this message
In , Sam Hocevar (sam-h) wrote : unfixing bug

tag 323134 -fixed
thanks

--
Sam.

Revision history for this message
Debian Bug Importer (debzilla) wrote :

Message-ID: <email address hidden>
Date: Sat, 1 Oct 2005 20:33:24 +0200
From: Sam Hocevar <email address hidden>
To: <email address hidden>
Subject: unfixing bug

tag 323134 -fixed
thanks

--
Sam.

Revision history for this message
In , Sam Hocevar (sam-h) wrote : #323134: mpeg2dec: ftbfs [sparc] function 'arch_accel' can never be inlined because it uses setjmp

   Hello, here is a new patch for this bug. It also disables inlining
for the PPC platform. Due to another bug (fix pending) the error was not
triggered, but the fix is needed.

--
Sam.

Revision history for this message
Debian Bug Importer (debzilla) wrote :

Message-ID: <email address hidden>
Date: Sun, 2 Oct 2005 12:47:09 +0200
From: Sam Hocevar <email address hidden>
To: <email address hidden>
Subject: #323134: mpeg2dec: ftbfs [sparc] function 'arch_accel' can never be inlined because it uses
 setjmp

--G4iJoqBmSsgzjUCe
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

   Hello, here is a new patch for this bug. It also disables inlining
for the PPC platform. Due to another bug (fix pending) the error was not
triggered, but the fix is needed.

--
Sam.

--G4iJoqBmSsgzjUCe
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="patch-mpeg2dec-no-inline-setjmp.diff"

diff -puriN mpeg2dec-0.4.0/libmpeg2/cpu_accel.c mpeg2dec-0.4.0-new/libmpeg2/cpu_accel.c
--- mpeg2dec-0.4.0/libmpeg2/cpu_accel.c 2003-10-06 04:31:52 +0200
+++ mpeg2dec-0.4.0-new/libmpeg2/cpu_accel.c 2005-10-02 12:44:00 +0200
@@ -127,7 +127,7 @@ static RETSIGTYPE sigill_handler (int si
 }

 #ifdef ARCH_PPC
-static inline uint32_t arch_accel (void)
+static uint32_t arch_accel (void)
 {
     static RETSIGTYPE (* oldsig) (int);

@@ -157,7 +157,7 @@ static inline uint32_t arch_accel (void)
 #endif /* ARCH_PPC */

 #ifdef ARCH_SPARC
-static inline uint32_t arch_accel (void)
+static uint32_t arch_accel (void)
 {
     static RETSIGTYPE (* oldsig) (int);

--G4iJoqBmSsgzjUCe--

Revision history for this message
In , Loïc Minier (lool) wrote : Re: Bug#328753: fixed in mpeg2dec 0.4.0b-4
Download full text (3.3 KiB)

Version: 0.4.0b-4

        Hi,

 Debian bug #323134 was fixed in the upload described below, with the
 newer patch to disable inlining on PPC and Sparc included, and I'm
 archiving it:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Format: 1.7
> Date: Sun, 30 Oct 2005 15:36:04 +0100
> Source: mpeg2dec
> Binary: libmpeg2-4-dev mpeg2dec libmpeg2-4
> Architecture: source i386
> Version: 0.4.0b-4
> Distribution: unstable
> Urgency: low
> Maintainer: Loic Minier <email address hidden>
> Changed-By: Loic Minier <email address hidden>
> Description:
> libmpeg2-4 - MPEG1 and MPEG2 video decoder library
> libmpeg2-4-dev - libmpeg2 development libraries and headers
> mpeg2dec - Simple libmpeg2 video decoder application
> Closes: 302263 324348 328753 331314
> Changes:
> mpeg2dec (0.4.0b-4) unstable; urgency=low
> .
> * Add CDBS' simple-patchsys. [debian/patches, debian/rules]
> * Add CDBS' utils. [debian/rules]
> * Convert the diff introduced in 0.3.1-5 to use non-PIC on i386 only in an
> independent patch. [configure,
> debian/patches/64_non-pic-on-i386-only.patch, libmpeg2/configure.incl]
> * Bump up Standards-version to 3.6.2. [debian/control]
> * Set myself as Maintainer and add Sam Hocevar and David I. Lehn as
> Uploaders [debian/control]
> * Acknowledge my NMUs. (Closes: #328753)
> * Revert the libsdl1.2-dev build-deps bump back to >= 1.2.3 since it has
> transitionned. [debian/control]
> * Add ${misc:Depends} to Depends. [debian/control]
> * Remove Replaces and Conflicts for packages removed prior to the sarge
> release. [debian/control]
> * Add patch by Sam Hocevar to fix the assembly code around cpuid for amd64.
> (Closes: #324348) [debian/patches/32_amd64-cpuid.diff]
> * Add patch by Sam Hocevar to remove inlining in arch_accel under sparc and
> ppc because the functions uses setjmp(); the ppc code isn't used because
> the detection of ppc fails. [debian/patches/16_no-inline-setjmp.diff]
> * Revert the gcc-3.3 build-dep for sparc as it should build with 3.4 again.
> [debian/control, debian/rules]
> * Misc copyright fixes by Sam Hocevar. (Closes: #331314) [debian/copyright]
> - Update authors list.
> - Include GPL snipset.
> - Full copyright listing.
> * New patches by Sam Hocevar to fix Altivec detection. (Closes: #302263)
> - Fixes the AltiVec detection on PPC.
> [debian/patches/48_altivec-detection.patch]
> - Clean bootstrap. [debian/patches/08_cleaner-bootstrap.patch]
> - Rebootstrap with these changes. [debian/patches/80_rebootstrap.patch]
> Files:
> c01cb368d248fe4d860c75dddd6f03e3 752 libs optional mpeg2dec_0.4.0b-4.dsc
> e8610e673e751256ff143265a8d00959 200267 libs optional mpeg2dec_0.4.0b-4.diff.gz
> 395e8593493d00af7d335ad07348bd0e 80940 libdevel optional libmpeg2-4-dev_0.4.0b-4_i386.deb
> bd9868502dead035534e6e4a79c37d36 63564 libs optional libmpeg2-4_0.4.0b-4_i386.deb
> ac6db3da1c98c3cacf398ef116c63efe 35716 graphics optional mpeg2dec_0.4.0b-4_i386.deb
>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.2 (GNU/Linux)
>
> iD8DBQFDZN+e4VUX8isJIMARAj9aAKCvbRD7WH0WiuZoTL3HPcIFFr2c0wCgqrNm
> RKmdCvM...

Read more...

Revision history for this message
Debian Bug Importer (debzilla) wrote :
Download full text (3.5 KiB)

Message-ID: <email address hidden>
Date: Sun, 20 Nov 2005 16:06:40 +0100
From: Loic Minier <email address hidden>
To: <email address hidden>
Subject: Re: Bug#328753: fixed in mpeg2dec 0.4.0b-4

Version: 0.4.0b-4

        Hi,

 Debian bug #323134 was fixed in the upload described below, with the
 newer patch to disable inlining on PPC and Sparc included, and I'm
 archiving it:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>=20
> Format: 1.7
> Date: Sun, 30 Oct 2005 15:36:04 +0100
> Source: mpeg2dec
> Binary: libmpeg2-4-dev mpeg2dec libmpeg2-4
> Architecture: source i386
> Version: 0.4.0b-4
> Distribution: unstable
> Urgency: low
> Maintainer: Loic Minier <email address hidden>
> Changed-By: Loic Minier <email address hidden>
> Description:=20
> libmpeg2-4 - MPEG1 and MPEG2 video decoder library
> libmpeg2-4-dev - libmpeg2 development libraries and headers
> mpeg2dec - Simple libmpeg2 video decoder application
> Closes: 302263 324348 328753 331314
> Changes:=20
> mpeg2dec (0.4.0b-4) unstable; urgency=3Dlow
> .
> * Add CDBS' simple-patchsys. [debian/patches, debian/rules]
> * Add CDBS' utils. [debian/rules]
> * Convert the diff introduced in 0.3.1-5 to use non-PIC on i386 only=
 in an
> independent patch. [configure,
> debian/patches/64_non-pic-on-i386-only.patch, libmpeg2/configure.i=
ncl]
> * Bump up Standards-version to 3.6.2. [debian/control]
> * Set myself as Maintainer and add Sam Hocevar and David I. Lehn as
> Uploaders [debian/control]
> * Acknowledge my NMUs. (Closes: #328753)
> * Revert the libsdl1.2-dev build-deps bump back to >=3D 1.2.3 since =
it has
> transitionned. [debian/control]
> * Add ${misc:Depends} to Depends. [debian/control]
> * Remove Replaces and Conflicts for packages removed prior to the sa=
rge
> release. [debian/control]
> * Add patch by Sam Hocevar to fix the assembly code around cpuid for=
 amd64.
> (Closes: #324348) [debian/patches/32_amd64-cpuid.diff]
> * Add patch by Sam Hocevar to remove inlining in arch_accel under sp=
arc and
> ppc because the functions uses setjmp(); the ppc code isn't used b=
ecause
> the detection of ppc fails. [debian/patches/16_no-inline-setjmp.di=
ff]
> * Revert the gcc-3.3 build-dep for sparc as it should build with 3.4=
 again.
> [debian/control, debian/rules]
> * Misc copyright fixes by Sam Hocevar. (Closes: #331314) [debian/cop=
yright]
> - Update authors list.
> - Include GPL snipset.
> - Full copyright listing.
> * New patches by Sam Hocevar to fix Altivec detection. (Closes: #302=
263)
> - Fixes the AltiVec detection on PPC.
> [debian/patches/48_altivec-detection.patch]
> - Clean bootstrap. [debian/patches/08_cleaner-bootstrap.patch]
> - Rebootstrap with these changes. [debian/patches/80_rebootstrap.p=
atch]
> Files:=20
> c01cb368d248fe4d860c75dddd6f03e3 752 libs optional mpeg2dec_0.4.0b-4.d=
sc
> e8610e673e751256ff143265a8d00959 200267 libs optional mpeg2dec_0.4.0b-=
4.diff.gz
> 395e8593493d00af7d335ad07348bd0e 80940 libdevel optional libmpeg2-4-de=
v_0.4.0b-4_i386.deb
> bd9868502dead035534e6e4a79c37d36 63564 libs optional libmpeg2-4_0.4...

Read more...

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.