been there for a while, no bug. thanks.
amd64 stable
ppc stable
I get a test failure on alpha: make[2]: Entering directory `/var/tmp/portage/media-libs/libmpeg2-0.5.1/work/libmpeg2-0.5.1/test' SKIP: regression SKIP: compile BAD GLOBAL SYMBOLS: 88] 88] 88] 80] 80] 80] 88] 88] 80] 80] 80] 80] 88] 88] 88] 88] 88] 88] 88] 88] 80] 88] 80] 80] 80] 88] 88] 80] 88] 88] 88] 88] 88] 88] 88] 80] 80] 88] 88] 88] 88] 80] 88] 88] 88] BAD GLOBAL SYMBOLS: 88] 88] 88] 88] 88] 88] 88] 88] 88] 88] 88] 88] FAIL: globals ====================== 1 of 1 tests failed (2 tests were not run) ====================== make[2]: *** [check-TESTS] Error 1 make[2]: Leaving directory `/var/tmp/portage/media-libs/libmpeg2-0.5.1/work/libmpeg2-0.5.1/test' make[1]: *** [check-am] Error 2 make[1]: Leaving directory `/var/tmp/portage/media-libs/libmpeg2-0.5.1/work/libmpeg2-0.5.1/test' make: *** [check-recursive] Error 1
x86 stable
(In reply to comment #3) > BAD GLOBAL SYMBOLS: > 88] > 88] weird; what's your locale? also try running: readelf -s libmpeg2/*.o | awk '$5=="GLOBAL" && $6!="HIDDEN" && $7!="UND" {print $8}' in the builddir or: readelf -s libmpeg2/*.o | awk '$5=="GLOBAL" && $6!="HIDDEN" && $7!="UND" {print $8}' | grep -v '^_\?mpeg2_' should output nothing what if you remove the patch from the ebuild?
ppc64 stable
# locale LANG= LC_CTYPE="POSIX" LC_NUMERIC="POSIX" LC_TIME="POSIX" LC_COLLATE="POSIX" LC_MONETARY="POSIX" LC_MESSAGES="POSIX" LC_PAPER="POSIX" LC_NAME="POSIX" LC_ADDRESS="POSIX" LC_TELEPHONE="POSIX" LC_MEASUREMENT="POSIX" LC_IDENTIFICATION="POSIX" LC_ALL= readelf -s libmpeg2/*.o | awk '$5=="GLOBAL" && $6!="HIDDEN" && $7!="UND" {print $8}' | grep -v '^_\?mpeg2_'|sort|uniq -c 15 80] 30 88] Removing the patch makes the test suite pass.
(In reply to comment #7) > readelf -s libmpeg2/*.o | awk '$5=="GLOBAL" && $6!="HIDDEN" && $7!="UND" {print > $8}' | grep -v '^_\?mpeg2_'|sort|uniq -c > 15 80] > 30 88] and readelf -s libmpeg2/*.o ? why do you get 88] stuff in there? are we sure this isn't readelf doing weird things? > Removing the patch makes the test suite pass. well, yes but then it'll probably fail on hardened, see bug #130831
I suspect the handling of readelf output is wrong: $ readelf -s libmpeg2/alloc.o File: libmpeg2/alloc.o Symbol table '.symtab' contains 15 entries: Num: Value Size Type Bind Vis Ndx Name 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND 1: 0000000000000000 0 SECTION LOCAL DEFAULT 1 2: 0000000000000000 0 SECTION LOCAL DEFAULT 3 3: 0000000000000000 0 SECTION LOCAL DEFAULT 4 4: 0000000000000000 8 OBJECT LOCAL DEFAULT 5 malloc_hook 5: 0000000000000008 8 OBJECT LOCAL DEFAULT 5 free_hook 6: 0000000000000000 0 SECTION LOCAL DEFAULT 5 7: 0000000000000000 0 SECTION LOCAL DEFAULT 7 8: 0000000000000000 0 SECTION LOCAL DEFAULT 8 9: 0000000000000000 0 SECTION LOCAL DEFAULT 6 10: 0000000000000000 28 FUNC GLOBAL DEFAULT [<other>: 88] 1 mpeg2_malloc_hooks 11: 0000000000000020 92 FUNC GLOBAL DEFAULT [<other>: 88] 1 mpeg2_free 12: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND free 13: 0000000000000080 164 FUNC GLOBAL DEFAULT [<other>: 88] 1 mpeg2_malloc 14: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND malloc There are many more examples of such symbols in the other .o files.
(In reply to comment #9) > I suspect the handling of readelf output is wrong: > > $ readelf -s libmpeg2/alloc.o > > File: libmpeg2/alloc.o > > Symbol table '.symtab' contains 15 entries: > Num: Value Size Type Bind Vis Ndx Name > 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND > 1: 0000000000000000 0 SECTION LOCAL DEFAULT 1 > 2: 0000000000000000 0 SECTION LOCAL DEFAULT 3 > 3: 0000000000000000 0 SECTION LOCAL DEFAULT 4 > 4: 0000000000000000 8 OBJECT LOCAL DEFAULT 5 malloc_hook > 5: 0000000000000008 8 OBJECT LOCAL DEFAULT 5 free_hook > 6: 0000000000000000 0 SECTION LOCAL DEFAULT 5 > 7: 0000000000000000 0 SECTION LOCAL DEFAULT 7 > 8: 0000000000000000 0 SECTION LOCAL DEFAULT 8 > 9: 0000000000000000 0 SECTION LOCAL DEFAULT 6 > 10: 0000000000000000 28 FUNC GLOBAL DEFAULT [<other>: 88] 1 > mpeg2_malloc_hooks > 11: 0000000000000020 92 FUNC GLOBAL DEFAULT [<other>: 88] 1 > mpeg2_free > 12: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND free > 13: 0000000000000080 164 FUNC GLOBAL DEFAULT [<other>: 88] 1 > mpeg2_malloc > 14: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND malloc > > There are many more examples of such symbols in the other .o files. Then we may ask hardened people to fixup the patch or simply drop it causing test failures there (maybe not anymore these days)
Stable for HPPA.
armin76 just told me that the current stable fails in the same way - so I propose stabling it on alpha anyway and pursue repair of the test suite independantly.
(In reply to comment #12) > armin76 just told me that the current stable fails in the same way - so I > propose stabling it on alpha anyway and pursue repair of the test suite > independantly. bah more than two weeks have passed without a single comment... so I just dropped the patch.
Stable on alpha. (copied over the fix in CVS and now the test suite works flawlessly).
ia64/sh/sparc stable, need to investigate arm failure...(it's a regression)
(In reply to comment #15) > need to investigate arm failure...(it's a regression) http://sourceforge.net/mailarchive/forum.php?thread_name=20081220103008.GA19642%40bee.dooz.org&forum_name=libmpeg2-devel is this related to this?
Created attachment 182455 [details] build.log I don't think so...the debian rules file says something about that upstream uses optimizations that require a cpu that supports thumb, and the one while i'm building it doesn't... I'll see what i can do...
(In reply to comment #17) > Created an attachment (id=182455) [edit] > build.log > > I don't think so...the debian rules file says something about that upstream > uses optimizations that require a cpu that supports thumb, and the one while > i'm building it doesn't... > > I'll see what i can do... crap... armv4 and pld strikes again... you may want to try something like: #if !HAVE_PLD .macro pld reg .endm #endif and add a configure check for this; there's also been a complaint about this on the -devel ml but no patch as far as I can see.
Okay...i removed -mcpu=strongarm110 from my CFLAGS and it compiled & tested fine with those patches from debian. If i remove the patches, the test fails. So...apply those patches and filter out strongarm110 from CFLAGS?
Portage 2.1.6.4 (default/linux/arm/2008.0/desktop, gcc-4.1.2, glibc-2.7-r2, 2.6.25 armv4l) ================================================================= System uname: Linux-2.6.25-armv4l-StrongARM-110_rev_4_-v4l-with-glibc2.0 Timestamp of tree: Thu, 19 Feb 2009 08:30:01 +0000 distcc 3.0 armv4l-unknown-linux-gnu [enabled] ccache version 2.4 [enabled] app-shells/bash: 3.2_p39 dev-lang/python: 2.4.4-r6, 2.5.2-r7 dev-python/pycrypto: 2.0.1-r6 dev-util/ccache: 2.4-r7 sys-apps/baselayout: 1.12.11.1 sys-apps/sandbox: 1.2.18.1-r2 sys-devel/autoconf: 2.13, 2.63 sys-devel/automake: 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.2 sys-devel/binutils: 2.18-r3 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 1.5.26 virtual/os-headers: 2.6.27-r2 ACCEPT_KEYWORDS="arm" CBUILD="armv4l-unknown-linux-gnu" CFLAGS="-O2 -pipe -mcpu=strongarm110" CHOST="armv4l-unknown-linux-gnu" CONFIG_PROTECT="/etc" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/terminfo /etc/udev/rules.d" CXXFLAGS="-O1 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="ccache distcc distlocks fixpackages parallel-fetch protect-owned sandbox sfperms strict unmerge-orphans userfetch" GENTOO_MIRRORS="http://gentoo.osuosl.org" LDFLAGS="-Wl,-O1" MAKEOPTS="-j4" PKGDIR="/root/binpkg" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" SYNC="rsync://raptor.gentoo.org/gentoo-portage" USE="X acl acpi arm berkdb bluetooth branding bzip2 cairo cdr cli cracklib crypt dbus dvd dvdr dvdread eds emboss encode evo fam firefox fortran gdbm gif gpm gtk hal iconv ipv6 isdnlog jpeg mad midi mikmod mp3 mpeg mudflap ncurses nls nptl nptlonly ogg opengl openmp pam pcre pdf perl png ppds pppd python qt3support quicktime readline reflection sdl session spell spl ssl startup-notification svg sysfs tcpd tiff truetype unicode usb vorbis xml xorg xulrunner xv zlib" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="vesa" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY
(In reply to comment #19) > If i remove the patches, the test fails. So...apply those patches I didn't have a look at them yet. > and filter > out strongarm110 from CFLAGS? but this seems a very bad idea. if gas generates errors with this mcpu switch that's for a good reason: it will not run on target cpu. pld is just a hint for the cpu to prepare loading from a given address and can be safely no-op'ed if not available, that's why I was suggesting this change.
arm: Please try 0.5.1-r1, applied 2 debian patch's for arm/armel. If it's fine, stable it...
Still fails, but with this patch it works: http://git.videolan.org/gitweb.cgi?p=vlc.git;a=blob;f=extras/contrib/src/Patches/libmpeg2-arm-pld.patch;h=bd9561e0c46fa106b8703bab2be51ad35abeed2f;hb=5e7bc5f267c0a0378dfc25867b34f1a662ddbb06
Applied the patch with permission from Samuli, arm stable, closing.