Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 210573 - sys-devel/autogen-5.9.2 tests the installed copy, not the built one
Summary: sys-devel/autogen-5.9.2 tests the installed copy, not the built one
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Gentoo Toolchain Maintainers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-02-18 10:47 UTC by Paolo Pedroni
Modified: 2009-05-10 02:03 UTC (History)
2 users (show)

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 Paolo Pedroni 2008-02-18 10:47:47 UTC
On my x86 system the package sys-devel/autogen-5.9.2 fails the getopt.test test in the test suite. The output is as follows:

++ lo_dir=/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts
++ test -d /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts/.libs
++ lo_dir=/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts/.libs
++ LD_LIBRARY_PATH=/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts/.libs::/dev/null
+++ echo /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts/.libs/libopts.a /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts/.libs/libguileopts.a -Wl,-R -pthread -lguile -lltdl -lgmp -lcrypt -lm -lltdl
++ LIB='/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts/.libs/libopts.a /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts/.libs/libguileopts.a -Wl,-R -pthread -lguile -lltdl -lgmp -lcrypt -lm -lltdl'
++ export LD_LIBRARY_PATH
++ cd testdir
+++ pwd
++ testsubdir=/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts/test/testdir
+++ for f in '${top_builddir}' '${top_srcdir}'
+++ for d in . autoopts agen5
+++ cd /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/.
+++ pwd
+++ for d in . autoopts agen5
+++ cd /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts
+++ pwd
+++ sort -u
+++ sed 's/^/-I/'
+++ for d in . autoopts agen5
+++ cd /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/agen5
+++ pwd
+++ for f in '${top_builddir}' '${top_srcdir}'
+++ for d in . autoopts agen5
+++ cd /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/.
+++ pwd
+++ for d in . autoopts agen5
+++ cd /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts
+++ pwd
+++ for d in . autoopts agen5
+++ cd /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/agen5
+++ pwd
++ dirs='-I/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2
-I/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/agen5
-I/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts'
+++ echo -I/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2 -I/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/agen5 -I/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts
++ INC='-I/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2 -I/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/agen5 -I/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts   -pthread '
+++ cd /../bin
+++ pwd
++ f=/bin
++ PATH=/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/columns:/bin:/usr/lib/ccache/bin:/usr/lib/distcc/bin:/usr/local/sbin:/sbin:/usr/sbin:/usr/lib/portage/bin:/usr/local/bin:/bin:/usr/bin:/opt/bin:/usr/i686-pc-linux-gnu/gcc-bin/4.1.2:/usr/i686-pc-linux-gnu/x86_64-pc-linux-gnu/gcc-bin/4.1.2
++ stdopts=/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts/test/stdopts.def
+++ cd /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts/test/..
+++ pwd
++ AG_L='/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/agen5/autogen -L/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts'
++ test_main=yes
++ use_flags=true
++ : '=== Running getopt.test for getopt using /bin/sh ==='
++ chmod +w getopt.log
++ export SHELL
++ case "$-" in
++ SHELLX='/bin/sh -x'
++ autoopts-config cflags
+ f=' '
+ test -z ' '
+ CC='i686-pc-linux-gnu-gcc -std=gnu99 -DHAVE_CONFIG_H -march=athlon-xp -O2 -pipe -fomit-frame-pointer -I/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2 -I/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/agen5 -I/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts   -pthread '
+ CFLAGS=
+ INC=
++ pwd
+ TMPDIR=/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts/test/testdir/getopt-inc
+ mkdir /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts/test/testdir/getopt-inc /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts/test/testdir/getopt-inc/autoopts
++ pwd
+ srcdir=/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts/test/testdir
+ CFLAGS='-I /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts/test/testdir/getopt-inc  '
+ LDFLAGS=' /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts/.libs/libopts.a /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts/.libs/libguileopts.a -Wl,-R -pthread -lguile -lltdl -lgmp -lcrypt -lm -lltdl'
+ export srcdir CFLAGS LDFLAGS TMPDIR
+ aolib=/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts/.libs/libopts.a
+ test -f /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts/.libs/libopts.a
+ sed -e '/ CFLAGS=/s@ *`autoopts-config cflags`@ -I/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts@' -e '/ LDFLAGS=/s@ *`autoopts-config ldflags`@ /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts/.libs/libopts.a@' /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts/getopt.tpl
+ destdir=/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts/test/testdir/getopt-inc/autoopts
+ top_builddir=/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2
+ /bin/sh /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts/install-options-h
+ egrep '#undef +AUTOOPTS_ENABLED' /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/config.h
++ dirname /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts/install-options-h
+ srcdir=/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts
++ cd /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts
++ pwd
+ srcdir=/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts
+ rm -f /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts/test/testdir/getopt-inc/autoopts/options.h
+ exec
+ sed '/^#include <sys/q' /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts/autoopts/options.h
+ egrep 'define +HAVE_STDINT_H' /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/config.h
+ echo '#include <stdint.h>'
+ egrep 'define +HAVE_LIMITS_H' /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/config.h
+ echo '#include <limits.h>'
+ egrep 'define +HAVE_U_INT' /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/config.h
+ :
+ egrep 'define +HAVE_SYSEXITS_H' /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/config.h
+ echo '#include <sysexits.h>'
+ egrep 'define +NO_OPTIONAL_OPT_ARGS' /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/config.h
+ sed '1,/endif.*HAVE_SYSEXITS_H/d' /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts/autoopts/options.h
+ exec
++ pwd
+ echo 'creating getopt.def in /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts/test/testdir'
creating getopt.def in /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts/test/testdir
+ cat
+ echo creating getopt1-base.c
creating getopt1-base.c
+ cat
+ echo creating getopt2-base.c
creating getopt2-base.c
+ cat
+ compile_getopt 1
+ echo /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/agen5/autogen -L/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts getopt.def
/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/agen5/autogen -L/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts getopt.def
+ /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/agen5/autogen -L/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts getopt.def
+ /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/agen5/autogen -L/var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts -L /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts/test/testdir/getopt-inc -T getopt.tpl getopt.def
autogen: error while loading shared libraries: libguile.so.12: cannot open shared object file: No such file or directory
Killing AutoGen:  Cannot gen test_getopt
AutoGen aborting on signal 15 (Terminated) in state EMITTING
processing template /var/tmp/portage/sys-devel/autogen-5.9.2/work/autogen-5.9.2/autoopts/usage.tpl
            on line 123
       for function EXPR (11)
./getopt.test: line 45: 27487 Abortito                ${AG_L} -L ${TMPDIR} -T getopt.tpl ${testname}.def
+ failure 'could not generate getopt-test_getopt.c'
+ :
+ test -d ../FAILURES
+ mkdir ../FAILURES
+ set +x
FAILURE: could not generate getopt-test_getopt.c
FAIL: getopt.test

The test says it cannot find libguile.so.12, which in fact I don't have, I only have libguile.so.17, installed by /dev/scheme/guile-1.8.3-r2. The same thing happens if I turn off distcc.

Running revdep-rebuild finds out that the current autogen (version 5.9) has broken links to libguile.so.12, so it appears that the tests use the current version of autogen instead of the one we're trying to build.

"Fixing" autogen-5.9 by rebuilding it before building 5.9.2 fixes the problem.

I think this is a bug anyway because I don't think the test suite should use the old autogen while it's testing the new one.

Reproducible: Always

Steps to Reproduce:
1. emerge -1 autogen
Actual Results:  
The error above.

Expected Results:  
Pass the test suite and install itself.

# emerge --info
Portage 2.1.4.4 (default-linux/x86/2007.0/server, gcc-4.1.2, glibc-2.6.1-r0, 2.6.23-gentoo-r8 i686)
=================================================================
System uname: 2.6.23-gentoo-r8 i686 AMD Athlon(tm) XP 1800+
Timestamp of tree: Mon, 18 Feb 2008 06:30:01 +0000
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled]
ccache version 2.4 [enabled]
app-shells/bash:     3.2_p17-r1
dev-java/java-config: 1.3.7, 2.1.4
dev-lang/python:     2.4.4-r6
dev-python/pycrypto: 2.0.1-r6
dev-util/ccache:     2.4-r7
sys-apps/baselayout: 1.12.10-r5
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.13, 2.61-r1
sys-devel/automake:  1.10
sys-devel/binutils:  2.18-r1
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   1.5.26
virtual/os-headers:  2.6.23-r3
ACCEPT_KEYWORDS="x86"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-march=athlon-xp -O2 -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/revdep-rebuild /etc/terminfo /etc/udev/rules.d"
CXXFLAGS="-march=athlon-xp -O2 -pipe -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs ccache collision-protect digest distcc distlocks fixpackages metadata-transfer sandbox sfperms strict test unmerge-orphans userfetch userpriv usersandbox"
GENTOO_MIRRORS="http://mirror.switch.ch/ftp/mirror/gentoo/ http://ftp.vein.hu/pub/linux/distributions/gentoo/ http://mirrors.sec.informatik.tu-darmstadt.de/gentoo/ http://ftp.uni-erlangen.de/pub/mirrors/gentoo"
LANG="it_IT.UTF-8"
LC_ALL="it_IT.UTF-8"
LINGUAS="it"
MAKEOPTS="-j14"
PKGDIR="/usr/portage/packages"
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"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://pedroni03/gentoo-portage"
USE="acpi bash-completion bcmath berkdb bitmap-fonts bzip2 caps cli cracklib crypt curl curlwrappers dbus dri fbcon fftw fortran ftp gdbm gmp gnutls gpm hal hardenedphp iconv isdnlog java jikes lm_sensors maildir midi mime mmap mpi mudflap ncurses nls nptl nptlonly offensive openmp pam pcre perl posix pppd python readline recode reflection samba session sharedmem shorten sockets spell spl ssl symlink syslog sysvipc tcl tcpd threads tidy tokenizer truetype truetype-fonts type1-fonts unicode usb vim-syntax x86 xml xorg zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 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 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" LINGUAS="it" USERLAND="GNU" VIDEO_CARDS="via"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LDFLAGS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Luca Lesinigo 2008-11-18 12:32:16 UTC
I tried on HPPA with gcc-4.3.2. Without FEATURES=test autogen-5.9.2 will emerge correctly and is probably also working correctly, it's a dependency of gcc-4.1.x and I succesfully emerged it and used it.

On the other hand, with FEATURES=test autogen will fail with "FAILURE: cannot compile guile.c" - I get the same results when trying with and without autogen installed on the system.

Can this be related to this bug?
Comment 2 Luca Lesinigo 2008-11-18 12:53:00 UTC
(In reply to comment #1)
Trying with gcc-4.2 instead of 4.3 made it pass the tests. Mine is probably a compiler issue.
Comment 3 Mark Loeser (RETIRED) gentoo-dev 2009-05-10 02:03:18 UTC
Looking at the makefile and test scripts for the newest version of autogen, this shouldn't happen anymore.