Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 424377 - media-sound/xmms2-0.8-r1: fails to build (when installed valgrind is not working)
Summary: media-sound/xmms2-0.8-r1: fails to build (when installed valgrind is not work...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Sergei Trofimovich (RETIRED)
URL: https://tinderboxlogs.s3.amazonaws.co...
Whiteboard:
Keywords:
: 442460 (view as bug list)
Depends on:
Blocks:
 
Reported: 2012-07-01 12:52 UTC by Diego Elio Pettenò (RETIRED)
Modified: 2016-04-02 12:07 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Diego Elio Pettenò (RETIRED) gentoo-dev 2012-07-01 12:52:49 UTC
But the FSM knows the reason, I can't make it out clearly from the parallel scons log...

Portage 2.2.0_alpha112 (default/linux/amd64/10.0, gcc-4.7.1-asneeded, glibc-2.15-r2, 3.4.3-hardened x86_64)
=================================================================
System uname: Linux-3.4.3-hardened-x86_64-AMD_Opteron-TM-_Processor_6272-with-gentoo-2.1
Timestamp of tree: Sun, 24 Jun 2012 17:30:02 +0000
ccache version 3.1.7 [disabled]
app-shells/bash:          4.2_p29
dev-java/java-config:     2.1.12
dev-lang/python:          2.6.8, 2.7.3-r2, 3.2.3-r1
dev-util/ccache:          3.1.7
dev-util/cmake:           2.8.8-r3
dev-util/pkgconfig:       0.26
sys-apps/baselayout:      2.1-r1
sys-apps/openrc:          0.10.3
sys-apps/sandbox:         2.5
sys-devel/autoconf:       2.13, 2.69
sys-devel/automake:       1.4_p6-r1, 1.9.6-r3, 1.10.3, 1.11.5, 1.12.1
sys-devel/binutils:       2.22-r1
sys-devel/gcc:            4.5.3-r2, 4.7.1
sys-devel/gcc-config:     1.7.3
sys-devel/libtool:        2.4.2
sys-devel/make:           3.82-r3
sys-kernel/linux-headers: 3.4 (virtual/os-headers)
sys-libs/glibc:           2.15-r2
Repositories: gentoo
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe -ggdb -march=native -ftracer"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /etc/entropy /opt/openjms/config /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/maven-bin-3.0/conf /usr/share/qpsmtpd/plugins /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.3/ext-active/ /etc/php/apache2-php5.4/ext-active/ /etc/php/cgi-php5.3/ext-active/ /etc/php/cgi-php5.4/ext-active/ /etc/php/cli-php5.3/ext-active/ /etc/php/cli-php5.4/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -pipe -ggdb -march=native -ftracer"
DISTDIR="/var/cache/portage/distfiles"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fail-clean fixlafiles news parallel-fetch parse-eapi-ebuild-head protect-owned sandbox sfperms strict test test-fail-continue unknown-features-warn unmerge-orphans userfetch userpriv usersandbox"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="en_US.utf8"
LC_ALL="C"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j24"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/tmp"
PORTDIR="/var/cache/portage/tree"
PORTDIR_OVERLAY=""
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="3dnow 3dnowex acl amd64 berkdb bzip2 cli cracklib crypt cups cxx dri ffmpeg fortran gdbm gnutls gpm iconv ipv6 mmx modules mudflap multilib ncurses nls nptl openmp pam pax_kernel pcre plasma pppd qt3support readline semantic-desktop session sse sse2 sse3 sse4 ssl ssse3 tcpd unicode vhosts xorg zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" 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 cgi cgid 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" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" PHP_TARGETS="php5-3" PYTHON_TARGETS="python3_2 python2_7" RUBY_TARGETS="ruby18 ruby19 ree18" USERLAND="GNU" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LINGUAS, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Comment 1 Diego Elio Pettenò (RETIRED) gentoo-dev 2012-07-01 13:16:08 UTC
No, it's a build failure:


 *     ebuild.sh, line  85:  Called src_compile
 *   environment, line 4949:  Called die
Comment 2 Sergei Trofimovich (RETIRED) gentoo-dev 2012-07-01 16:06:02 UTC
> But the FSM knows the reason, I can't make it out clearly from the parallel scons log...

It's a waf build system which does not use waf-utils.eclass yet
(will be on next revbump). As a result the build log is sequential.

(In reply to comment #1)
> No, it's a build failure:
> 
> 
>  *     ebuild.sh, line  85:  Called src_compile
>  *   environment, line 4949:  Called die

ok :]

Upstream runs tests right in the build phase.

I haven't wrote anything sane to optionally
factor out tests into a separate phase yet.

> [214/214] utest: _build_/tests/test_server
> [214/214] utest: _build_/tests/test_xmmstypes
> Waf: Leaving directory `.../_build_'
> test summary
> Test(s) failed:
> .../_build_/tests/test_server
> .../_build_/tests/test_xmmstypes

For some reason test binaries failed to run properly and returned nonzero status:

> def summary(bld):
>     lst = getattr(bld, 'utest_results', [])
>     if lst:
>         Logs.pprint('CYAN', 'test summary')
> 
>         failed_tests = []
> 
>         for (f, code, out, err) in lst:
>             if code != 0:
>                 failed_tests.append(f)
>             Logs.pprint('NORMAL', out.decode("ascii", "ignore"))
> 
>         if len(failed_tests) > 0:
>             raise Errors.WafError("Test(s) failed:\n%s" % "\n".join(failed_tests))

The error does not trigger for me on stock ~amd64.
For you it does not even show CUnit banner, which is weird.

Can you try to run it manually with and without valgrind?
at ${S}:

_build_/tests/test_server; echo $?
valgrind --log-file=/dev/null _build_/tests/test_server; echo $?

Maybe it will spit something readable. I guess it's a hardened bit.
Comment 3 Sergei Trofimovich (RETIRED) gentoo-dev 2012-07-01 16:20:05 UTC
> The error does not trigger for me on stock ~amd64.
> For you it does not even show CUnit banner, which is weird.

Gah, got it crashng after sqlite update. Sorry.
Looking at it.
Comment 4 Sergei Trofimovich (RETIRED) gentoo-dev 2012-07-01 16:40:07 UTC
(In reply to comment #3)
> > The error does not trigger for me on stock ~amd64.
> > For you it does not even show CUnit banner, which is weird.
> 
> Gah, got it crashng after sqlite update. Sorry.
> Looking at it.

Or not:
_build_/tests/test_xmmstypes.log:

> valgrind:  Fatal error at startup: a function redirection
> valgrind:  which is mandatory for this platform-tool combination
> valgrind:  cannot be set up.  Details of the redirection are:
> valgrind:  
> valgrind:  A must-be-redirected function
> valgrind:  whose name matches the pattern:      strlen
> valgrind:  in an object with soname matching:   ld-linux-x86-64.so.2

Bet, you have the same contents.
Comment 5 Sergei Trofimovich (RETIRED) gentoo-dev 2012-07-01 17:43:38 UTC
Pushed test failures to src_test() with the following:

>  01 Jul 2012; Sergei Trofimovich <slyfox@gentoo.org> xmms2-0.8-r1.ebuild:
>  Workaround build failure when test failure occurs. Rerun tests in src_test().
>  It moves valgrind misconfiguration error to src_test() phase (bug #424377 by
>  Diego Elio Pettenò).
Comment 6 Diego Elio Pettenò (RETIRED) gentoo-dev 2012-07-01 18:26:49 UTC
Wait, the tests depend on valgrind? That's wrong. Can they be run without valgrind or do they really expect it to work? If the former, simply disable valgrind by default, if the latter add REQUIRED_USE="test? ( valgrind )" and a DEPEND="valgrind? ( dev-util/valgrind )" so I know I can't run test for the package.

The problem with valgrind is that it doesn't always support the latest greatest microarchitecture -- in this case it won't work at all on my interlagos/bulldozer CPU.
Comment 7 Sergei Trofimovich (RETIRED) gentoo-dev 2012-07-01 20:46:49 UTC
(In reply to comment #6)
> Wait, the tests depend on valgrind? That's wrong. Can they be run without
> valgrind or do they really expect it to work? If the former, simply disable
> valgrind by default, if the latter add REQUIRED_USE="test? ( valgrind )" and
> a DEPEND="valgrind? ( dev-util/valgrind )" so I know I can't run test for
> the package.
> 
> The problem with valgrind is that it doesn't always support the latest
> greatest microarchitecture -- in this case it won't work at all on my
> interlagos/bulldozer CPU.

valgrind's part of test is optional. I'll try to make it USE=valgrind guarded.
Comment 8 Sergei Trofimovich (RETIRED) gentoo-dev 2016-04-02 12:06:24 UTC
Added USE=valgrind to de-automaigic this valgrind dependency: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7133a4cc49d1299e0a90ebf19ea6d2a92ed6f8b5

Thanks!
Comment 9 Sergei Trofimovich (RETIRED) gentoo-dev 2016-04-02 12:07:40 UTC
*** Bug 442460 has been marked as a duplicate of this bug. ***