This is a Debian patch file for "libmpeg2" [AKA "mpeg2dec"] 0.5.1. This file was obtained originally from: http://ftp.de.debian.org/debian/pool/main/m/mpeg2dec/\ mpeg2dec_0.5.1-2.diff.gz The contents are unchanged except for these comments. --- mpeg2dec-0.5.1.orig/debian/watch +++ mpeg2dec-0.5.1/debian/watch @@ -0,0 +1,3 @@ +version=3 +http://libmpeg2.sourceforge.net/files/ libmpeg2-([\d.]*).tar.gz \ + debian uupdate --- mpeg2dec-0.5.1.orig/debian/changelog +++ mpeg2dec-0.5.1/debian/changelog @@ -0,0 +1,312 @@ +mpeg2dec (0.5.1-2) experimental; urgency=low + + * New patch, 60_arm-private-symbols, set visibility of global symbols used + in ARM specific assembly file to internal; spotted my make check on armel; + thanks Riku Voipio for the report. + * New patch, 61_global-symbol-test, rewrite the public symbol check to + verify the shared libraries, to check for more things, and to avoid + duplication; fixes make check on ARM. + + -- Loic Minier Sat, 20 Dec 2008 09:42:41 +0100 + +mpeg2dec (0.5.1-1) experimental; urgency=low + + * Anchor package name extraction re. + * Stop shipping *.la; only reference in rdeps is in + /usr/lib/libextractor/libextractor_mpeg.la but apps are supposed to link + to libextractor; hopefully libltdl3 doesn't rely on *.la or libextractor + might require a binNMU. + * New upstream release, with ABI changes and API additions; in particular, + care should be taken to handle the new mpeg2_state_t + STATE_SEQUENCE_MODIFIED. + - Target experimental for now. + - Build-dep on libx11-dev (upstream calls AC_PATH_XTRA) and libxext-dev. + - Drop patch 62_drop-arch-opts and build with -mcpu=i486 on i386, -mcpu=v7 + -mno-vis on sparc, -mno-altivec -UARCH_PPC on powerpc, and -UARCH_ARM on + arm in CFLAGS instead for reasons detailed in debian/rules; upstream + enables various features based on the GNU host triplet if the compiler + supports them, but this would taylor the binaries for the buildds' + capabilities which might be higher than the Debian requirements. + - Drop patch 64_non-pic-on-i386-only, merged upstream in a slightly + different way. + - Drop patch 66_add-dummy-handler-and-sanity-checks, merged upstream. + - Drop patch 68_honor-cflags, upstream doesn't empty CFLAGS anymore. + - Drop patch 70_autoconf, not needed anymore per above removals. + - Update watch file for new upstream tarball name (libmpeg2-*). + * Set DEB_MAKE_CHECK_TARGET to run testsuite during build. + * Bump up Standards-Version to 3.8.0. + + -- Loic Minier Fri, 11 Jul 2008 11:22:35 +0200 + +mpeg2dec (0.4.1-3) unstable; urgency=low + + * Move mpeg2dec to Section: x11 instead of graphics to match overrides. + * Bump up Debhelper compatibility level to 5; bump up debhelper build-dep to + >= 5. + * Add -Wl,-z,defs -Wl,--as-needed to LDFLAGS; build-dep on cdbs >= 0.4.41. + * New patch, 62_drop-arch-opts, drop arch-specific CFLAGS detection in + upstream configure as we want to use the gcc defaults to work on all + machines which Debian will be installed on, and not use the buildds as + references. + * Add Homepage. + + -- Loic Minier Sun, 16 Dec 2007 16:21:57 +0100 + +mpeg2dec (0.4.1-2) unstable; urgency=low + + * Bump up Standards-Version to 3.7.3. + - This new version allows PIC shared libraries on some arches; + closes: #268603. + * Wrap build-deps, deps, and uploaders. + * Use ${binary:Version} instead of ${Source-Version}; build-dep on dpkg-dev + >= 1.13.19. + * Cleanup rules. + * Retrieve the shared library package name (with SONAME) from control. + * Move docs installation to debian/*.docs. + * Drop useless libc6-dev | libc-dev dep. + * Drop now useless README.Debian. + * Use a wildcard to install the examples. + * Install man pages via dh_install. + * Pass --sourcedir=debian/tmp to dh_install. + * Build-dep on gnome-pkg-tools (>= 0.7) and include clean-la.mk. + * Build-dep on libxv-dev for xv output; thanks Jack Bates; closes: #390931. + * Add watch file. + * New patch, 66_add-dummy-handler-and-sanity-checks, fixes SEGV when playing + http://sam.zoy.org/zzuf/lol-mplayer.m2v; from MPlayer; thanks + Lionel Debroux; closes: #407922. + * Add Vcs-Svn and Vcs-Browser URLs. + * New patch, 68_honor-cflags, don't reset CFLAGS in configure.in; + closes: #403194. + * Update patches 64_non-pic-on-i386-only and 68_honor-cflags to not patch + configure and add a new patch, 70_autoconf, to update configure by running + autoconf. + * Unset DEB_OPT_FLAGS to leave it to upstream configure to select the opt + level when noopt isn't in DEB_BUILD_OPTS; this allows -O3 to be selected + instead of the cdbs default of -O2. + + -- Loic Minier Sun, 16 Dec 2007 14:48:42 +0100 + +mpeg2dec (0.4.1-1) unstable; urgency=low + + * Build against the default gcc version, we're too far away of 2.95 for the + optimizations specific to this compiler to make sense anyway. + * New upstream bugfix release; no API or ABI changes. + - Drop patch 08_cleaner-bootstrap, merged upstream. + - Drop patch 16_no-inline-setjmp, merged upstream. + - Drop patch 32_amd64-cpuid, merged upstream. + - Drop patch 48_altivec-detection, merged upstream. + - Drop patch 80_rebootstrap, not needed anymore. + + -- Loic Minier Sat, 16 Dec 2006 13:24:05 +0100 + +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] + + -- Loic Minier Sun, 30 Oct 2005 15:36:04 +0100 + +mpeg2dec (0.4.0b-2.3) unstable; urgency=low + + * Non-maintainer upload. + * As proposed to the release team and to debian-sparc@, build the sparc + version with gcc-3.3 for now, until a better fix is found; hence + build-depend on gcc-3.3 under sparc and gcc-3.4 on non-sparc. + + -- Loic Minier Sun, 18 Sep 2005 14:45:01 +0200 + +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) + + -- Loic Minier Sat, 17 Sep 2005 11:17:36 +0200 + +mpeg2dec (0.4.0b-2.1) unstable; urgency=high + + * Non-maintainer upload. + * Urgency high because of RC bugfixes. + * Build-depend on a transitionned libsdl1.2. + - Pull an updated slang dependency. (Closes: #321548) + - Pull an updated aalib dependency. (Closes: #320880) + * The default compiler is now gcc 4.0. (Closes: #300670) + + -- Loic Minier Tue, 9 Aug 2005 22:44:46 +0200 + +mpeg2dec (0.4.0b-2) unstable; urgency=low + + * Fix PIC compile on amd64 (Closes: #249198) + + -- David I. Lehn Thu, 15 Jul 2004 00:34:19 -0400 + +mpeg2dec (0.4.0b-1) unstable; urgency=low + + * New upstream version (Closes: #227451) + * API changes: move from libmpeg2-3[-dev] to libmpeg2-4[-dev] + * debian/rules: + * include doc/libmpeg2.txt in libmpeg2-4-dev + * debian/libmpeg2-4-dev.examples: + * include doc/sample*.c + + -- David I. Lehn Mon, 26 Jan 2004 14:37:36 -0500 + +mpeg2dec (0.3.1-6) unstable; urgency=low + + * include/alpha_asm.h: Patch from upstream CVS to fix alpha builds + + -- David I. Lehn Tue, 2 Sep 2003 21:11:21 -0400 + +mpeg2dec (0.3.1-5) unstable; urgency=low + + * libmpeg2/configure.incl: libtools -prefer-non-pic is broken on at least + powerpc. Patch to only attempt to use it on x86 archs from Andres Salomon + (Closes: #192190, #206874) + * run bootstrap + * debian/control: + * Standards-Version: 3.6.1, no changes + * Bump cdbs dep to 0.4.5 + + -- David I. Lehn Tue, 2 Sep 2003 01:29:12 -0400 + +mpeg2dec (0.3.1-4) unstable; urgency=low + + * debian/rules: convert to cdbs + * debian/rocks: remove + * debian/control: Standards-Version: 3.6.0 + * Maintainer address changed to @debian.org + + -- David I. Lehn Mon, 14 Jul 2003 14:50:26 -0400 + +mpeg2dec (0.3.1-3) unstable; urgency=low + + * CFLAGS patch from CVS, run bootstrap + * debian/rocks: remove optimization flags, let configure figure it out + + -- David I. Lehn Thu, 23 Jan 2003 03:21:08 -0500 + +mpeg2dec (0.3.1-2) unstable; urgency=low + + * Rebuild with gcc 3.2 (may see a performance increase depending on + architecture, accelerations, and stream properties) + * debian/rules: update Colin's Build System + * debian/rocks: specify higher optimization flags + + -- David I. Lehn Sat, 18 Jan 2003 17:45:43 -0500 + +mpeg2dec (0.3.1-1) unstable; urgency=low + + * New upstream version + * libcpuaccel packages removed: functionality merged into libmpeg2 + * API changes: move from libmpeg2-2[-dev] to libmpeg2-3[-dev] + + -- David I. Lehn Sun, 15 Dec 2002 17:16:14 -0500 + +mpeg2dec (0.3.0-2) unstable; urgency=low + + * It seems libtool -prefer-non-pic is broken and causing FTBFS bugs on hppa + and ia64. Trying a patch from mpeg2dec CVS that attempts to better detect + this with a configure check. + * sparc build fix from CVS: s/-Wa,-Av9/-Wa,-Av9b/ + * debian/rules: update Colin's Build System + + -- David I. Lehn Fri, 13 Dec 2002 22:56:54 -0500 + +mpeg2dec (0.3.0-1) unstable; urgency=low + + * New upstream version + * Remove hppa -prefer-non-pic hack in favor of upstream check + * Many API changes: move from libmpeg2-1[-dev] to libmpeg2-2[-dev] + * Convert to Colin's Build System + * Update to Standards-Version: 3.5.8.0 + + -- David I. Lehn Mon, 2 Dec 2002 19:32:12 -0500 + +mpeg2dec (0.2.1-3) unstable; urgency=low + + * Standards-Version: 3.5.7 + * Avoid -prefer-non-pic on hppa (see libtool Bug#152884) (Closes: #160725) + * Update autotools/config.{guess,sub} + + -- David I. Lehn Tue, 8 Oct 2002 00:59:02 -0400 + +mpeg2dec (0.2.1-2) unstable; urgency=low + + * Patch from Robert Millan : + - license is GPL not LGPL + - there are more authors than listed in copyright file + - better to provide the mailing list for contact information + - libc6-dev dependency is Linux-specific (and partly arch-specific) + - better description of library + * GNU config automated update: config.sub (20020222 to 20020621), + config.guess (20020219 to 20020529) + * rerun bootstrap + * Closing ITP. (Closes: #157944) + + -- David I. Lehn Fri, 23 Aug 2002 12:00:33 -0400 + +mpeg2dec (0.2.1-1) unstable; urgency=low + + * New upstream version + * Rerun bootstrap to get man page installation + It's probably not worth the diff size since previous .in's + were from automake 1.4. sigh. + * libmpeg2dec renamed to libcpuaccel upstream + * Increased interface version: libmpeg2-1, libmpeg2-1-dev + + -- David I. Lehn Fri, 22 Mar 2002 17:56:23 -0500 + +mpeg2dec (0.2.0-3) unstable; urgency=low + + * Use versioned -dev pacakge + * Update rules to check for updated config.{guess,sub} + * Depend on more recent libsdl + * Build libvo static + + -- David I. Lehn Mon, 19 Nov 2001 19:22:46 -0500 + +mpeg2dec (0.2.0-2) unstable; urgency=low + + * Fixed some trivial lintian warnings and errors + * Moved location of dh_installdeb + * Refer to new libmpeg2 home + + -- David I. Lehn Wed, 29 Aug 2001 02:48:29 -0400 + +mpeg2dec (0.2.0-1) unstable; urgency=low + + * Initial packaging + * Added a number of patches from CVS + + -- David I. Lehn Mon, 2 Jul 2001 01:30:59 -0400 --- mpeg2dec-0.5.1.orig/debian/rules +++ mpeg2dec-0.5.1/debian/rules @@ -0,0 +1,59 @@ +#!/usr/bin/make -f + +include /usr/share/cdbs/1/rules/debhelper.mk +include /usr/share/cdbs/1/rules/simple-patchsys.mk +include /usr/share/cdbs/1/rules/utils.mk +include /usr/share/cdbs/1/class/autotools.mk +include /usr/share/gnome-pkg-tools/1/rules/clean-la.mk + +LDFLAGS += -Wl,-z,defs -Wl,--as-needed + +# leave it to the upstream configure to select the opt flag, presumably -O3 +ifeq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + DEB_OPT_FLAG := +endif + +# override misc optimization flags which are enabled in configure.ac +# XXX (LM) I was told sparc32 isn't so hot these days; ultrasparc might be ok + +# a) (all arches) this CPU override might not be needed for x86, as $host is +# used which should imply i486, but is probably needed for sparc as Debian's +# sparc port supports sun4m which is older than ultrasparc and this is +# safest anyway; -march should be used instead of -mcpu, but as upstream +# uses -mcpu, this is safest +# XXX -mcpu=base not supported despite gcc(1) claiming so +#CFLAGS += -mcpu=base +ifeq ($(DEB_HOST_ARCH),i386) +CFLAGS += -mcpu=i486 +endif +ifeq ($(DEB_HOST_ARCH),sparc) +CFLAGS += -mcpu=v7 +endif + +ifeq ($(DEB_HOST_ARCH),powerpc) +# b) (powerpc) G3s and other OldWorld systems are still supported and don't +# have altivec +CFLAGS += -mno-altivec -UARCH_PPC +endif +ifeq ($(DEB_HOST_ARCH),sparc) +# c) (sparc) Debian's sparc port supports sun4m which is older than ultrasparc; +# VIS is an UltraSPARC extension +CFLAGS += -mno-vis +endif +ifeq ($(DEB_HOST_ARCH),arm) +# d) (arm) Debian's arm port supports two StrongARM based platforms which are +# only ARMv4, and hence don't have Thumb; the upstream ARM specific code +# requires Thumb (ldmia, stmia) +CFLAGS += -UARCH_ARM +endif + +# retrieve the shared library package name (with SONAME) from control +libmpeg2N := $(shell sed -rn 's/^Package:[[:space:]]*(libmpeg2-[0-9]+)[[:space:]]*$$/\1/p' debian/control) + +DEB_CONFIGURE_EXTRA_FLAGS += --enable-shared +DEB_SHLIBDEPS_INCLUDE += debian/$(libmpeg2N)/usr/lib +DEB_AC_AUX_DIR := autotools +DEB_DH_INSTALL_ARGS += --sourcedir=debian/tmp + +DEB_MAKE_CHECK_TARGET := check + --- mpeg2dec-0.5.1.orig/debian/compat +++ mpeg2dec-0.5.1/debian/compat @@ -0,0 +1 @@ +5 --- mpeg2dec-0.5.1.orig/debian/libmpeg2-4-dev.docs +++ mpeg2dec-0.5.1/debian/libmpeg2-4-dev.docs @@ -0,0 +1 @@ +doc/libmpeg2.txt --- mpeg2dec-0.5.1.orig/debian/libmpeg2-4-dev.install +++ mpeg2dec-0.5.1/debian/libmpeg2-4-dev.install @@ -0,0 +1,8 @@ +usr/include/mpeg2dec/mpeg2.h +usr/include/mpeg2dec/mpeg2convert.h +usr/lib/pkgconfig/libmpeg2.pc +usr/lib/pkgconfig/libmpeg2convert.pc +usr/lib/libmpeg2.a +usr/lib/libmpeg2.so +usr/lib/libmpeg2convert.a +usr/lib/libmpeg2convert.so --- mpeg2dec-0.5.1.orig/debian/control +++ mpeg2dec-0.5.1/debian/control @@ -0,0 +1,75 @@ +Source: mpeg2dec +Section: libs +Priority: optional +Maintainer: Loic Minier +Uploaders: David I. Lehn , + Sam Hocevar (Debian packages) +Build-Depends: debhelper (>= 5), + cdbs (>= 0.4.41), + libsdl1.2-dev (>= 1.2.3), + autotools-dev, + dpkg-dev (>= 1.13.19), + gnome-pkg-tools (>= 0.7), + libx11-dev, + libxv-dev, + libxext-dev +Standards-Version: 3.8.0 +Homepage: http://libmpeg2.sourceforge.net/ +Vcs-Svn: svn://svn.debian.org/svn/pkg-multimedia +Vcs-Browser: http://svn.debian.org/wsvn/pkg-multimedia + +Package: libmpeg2-4-dev +Architecture: any +Section: libdevel +Depends: ${misc:Depends}, + libmpeg2-4 (= ${binary:Version}), + pkg-config +Description: libmpeg2 development libraries and headers + libmpeg2 is a library which can decode MPEG1 and MPEG2 video streams. + . + This package contains the libraries and headers required to compile + programs which use libmpeg2. + . + http://libmpeg2.sourceforge.net/ + +Package: libmpeg2-4 +Architecture: any +Section: libs +Depends: ${misc:Depends}, + ${shlibs:Depends} +Description: MPEG1 and MPEG2 video decoder library + libmpeg2 is a library which can decode MPEG1 and MPEG2 video streams. + . + The main features in libmpeg2 are: + . + * Conformance - libmpeg2 is able to decode all mpeg streams that conform to + certain restrictions. For streams that follow these restrictions, libmpeg2 + is probably 100% conformant to the mpeg standards - and there's a pretty + extensive test suite to check this. + . + * Speed - there has been huge efforts there, and libmpeg2 is probably the + fastest library around for what it does. + . + * Portability - most of the code is written in C, and when platform-specific + optimizations are used, there always is a generic C routine to fall back + on. This should be portable to all architectures - at least we have heard + reports from people running this code on x86, ppc, sparc, arm and sh4. + . + * Reuseability - libmpeg2 is not intended to include any project-specific + code, but it should still include enough features to be used by very + diverse projects. + . + This package contains the libmpeg2 shared libraries. + . + http://libmpeg2.sourceforge.net/ + +Package: mpeg2dec +Architecture: any +Section: x11 +Depends: ${misc:Depends}, + ${shlibs:Depends} +Description: Simple libmpeg2 video decoder application + Simple libmpeg2 application which can decode and play ES, PS, and TS video + streams. Includes extract_mpeg2 demuxer and various output drivers. + . + http://libmpeg2.sourceforge.net/ --- mpeg2dec-0.5.1.orig/debian/copyright +++ mpeg2dec-0.5.1/debian/copyright @@ -0,0 +1,62 @@ +This package was debianized by David I. Lehn on +Thu, 28 Jun 2001 20:08:29 -0500. + +It was downloaded from http://www.linuxvideo.org/mpeg2dec/ +Current home is now http://libmpeg2.sourceforge.net/ + +Mailing list information: + + http://libmpeg2.sourceforge.net/lists.html + +Upstream Authors: + + Aaron Holtzman + Michel Lespinasse + + Bruno Barreyra - build fixes + Gildas Bazin - mingw32 port + Alexander W. Chin - progressive_seq fix + Stephen Crowley - build fixes + Didier Gautheron - bug fixes + Ryan C. Gordon - SDL support + Peter Gubanov - MMX IDCT scheduling + HÃ¥kan Hjort - Solaris fixes, mlib code + Nicolas Joly - assorted bug fixes + Gerd Knorr - Xv support + David I. Lehn - motion_comp mmx code + Olie Lho - MMX yuv2rgb routine + David S. Miller - sparc VIS optimizations + Rick Niles - build fixes + Real Ouellet - g200 fixes + Bajusz Peter - motion comp fixes + Franck Sicard - x11 fixes + Brion Vibber - x11 fixes + Martin Vogt - reentrancy fixes + Fredrik Vraalsen - general hackage and stuff + +mpeg2dec is Copyright (C) 1999-2000 Aaron Holtzman + Copyright (C) 2000-2003 Michel Lespinasse + Copyright (C) 2000-2003 Silicon Integrated System Corp. + Copyright (C) 2000-2003 Ryan C. Gordon + Copyright (C) 2000-2003 Dominik Schnitzer + Copyright (C) 2003 Regis Duchesne + Copyright (C) 2003 David S. Miller + Copyright (C) 2003 Peter Gubanov + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +On Debian systems, the complete text of the GNU General Public License can +be found in `/usr/share/common-licenses/GPL'. + --- mpeg2dec-0.5.1.orig/debian/libmpeg2-4-dev.examples +++ mpeg2dec-0.5.1/debian/libmpeg2-4-dev.examples @@ -0,0 +1 @@ +doc/*.c --- mpeg2dec-0.5.1.orig/debian/libmpeg2-4.install +++ mpeg2dec-0.5.1/debian/libmpeg2-4.install @@ -0,0 +1,2 @@ +usr/lib/libmpeg2.so.* +usr/lib/libmpeg2convert.so.* --- mpeg2dec-0.5.1.orig/debian/mpeg2dec.install +++ mpeg2dec-0.5.1/debian/mpeg2dec.install @@ -0,0 +1,3 @@ +usr/bin/mpeg2dec +usr/bin/extract_mpeg2 +usr/share/man --- mpeg2dec-0.5.1.orig/debian/patches/61_global-symbol-test.patch +++ mpeg2dec-0.5.1/debian/patches/61_global-symbol-test.patch @@ -0,0 +1,60 @@ +Rewrite the public symbol check to verify the shared libraries, to check for +more things, and to avoid duplication; fixes make check on ARM + +--- a/test/globals ++++ b/test/globals +@@ -1,4 +1,8 @@ + #!/bin/sh ++# TODO ++# - fix checking of .a libs; problem is that "nm -g --defined-only" lists ++# internal symbols; this can be solved by using objdump, but it's probably ++# good enough to just run the tests on the shared lib + + if test x"$srcdir" != x""; then + builddir="." # running from make check, but it does not define that +@@ -14,22 +18,30 @@ + + error=0 + +-bad_globals=`nm -g --defined-only $builddir/../libmpeg2/*.o |\ +- awk '{if ($3) print $3}' | grep -v '^_\?mpeg2_'` +- +-if test x"$bad_globals" != x""; then +- echo BAD GLOBAL SYMBOLS: +- for s in $bad_globals; do echo $s; done ++# check_bad_public_symbols [...] ++# ++# checks public symbols in shared libs: ++# - allow prefix_anything ++# - reject _prefixanything ++# - allow _anything ++# - reject anything else ++# ++# NB: skips missing files ++check_bad_public_symbols() { ++ symbols_prefix="$1" ++ shift ++ lib_files=`ls "$@" 2>/dev/null` ++ [ -z "$lib_files" ] && return ++ bad_globals=`nm -g --defined-only $lib_files | ++ awk '{if ($3) print $3}' | ++ sed -n "/^${symbols_prefix}_/ d; /^_${symbols_prefix}/ { p; d }; /^_/ d; p"` ++ [ -z "$bad_globals" ] && return + error=1 +-fi +- +-bad_globals=`nm -g --defined-only $builddir/../libmpeg2/convert/*.o |\ +- awk '{if ($3) print $3}' | grep -v '^_\?mpeg2convert_'` ++ echo BAD GLOBAL SYMBOLS in $lib_files: ++ echo "$bad_globals" ++} + +-if test x"$bad_globals" != x""; then +- echo BAD GLOBAL SYMBOLS: +- for s in $bad_globals; do echo $s; done +- error=1 +-fi ++check_bad_public_symbols mpeg2 $builddir/../libmpeg2/.libs/libmpeg2.so ++check_bad_public_symbols mpeg2convert $builddir/../libmpeg2/convert/.libs/libmpeg2convert.so + + exit $error --- mpeg2dec-0.5.1.orig/debian/patches/60_arm-private-symbols.patch +++ mpeg2dec-0.5.1/debian/patches/60_arm-private-symbols.patch @@ -0,0 +1,45 @@ +Set visibility of global symbols used in ARM specific assembly file to +internal; spotted my make check on armel; thanks Riku Voipio for the report. + +--- a/libmpeg2/motion_comp_arm_s.S ++++ b/libmpeg2/motion_comp_arm_s.S +@@ -23,7 +23,8 @@ + + @ ---------------------------------------------------------------- + .align +- .global MC_put_o_16_arm ++ .global MC_put_o_16_arm ++ .internal MC_put_o_16_arm + MC_put_o_16_arm: + @@ void func(uint8_t * dest, const uint8_t * ref, int stride, int height) + pld [r1] +@@ -83,7 +84,8 @@ + + @ ---------------------------------------------------------------- + .align +- .global MC_put_o_8_arm ++ .global MC_put_o_8_arm ++ .internal MC_put_o_8_arm + MC_put_o_8_arm: + @@ void func(uint8_t * dest, const uint8_t * ref, int stride, int height) + pld [r1] +@@ -152,7 +154,8 @@ + .endm + + .align +- .global MC_put_x_16_arm ++ .global MC_put_x_16_arm ++ .internal MC_put_x_16_arm + MC_put_x_16_arm: + @@ void func(uint8_t * dest, const uint8_t * ref, int stride, int height) + pld [r1] +@@ -244,7 +247,8 @@ + + @ ---------------------------------------------------------------- + .align +- .global MC_put_x_8_arm ++ .global MC_put_x_8_arm ++ .internal MC_put_x_8_arm + MC_put_x_8_arm: + @@ void func(uint8_t * dest, const uint8_t * ref, int stride, int height) + pld [r1]