Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 169647 - dev-libs/ace-5.5.3-r2 configure gets in a loop
Summary: dev-libs/ace-5.5.3-r2 configure gets in a loop
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: C++ Team [disbanded]
URL: http://deuce.doc.wustl.edu/bugzilla/s...
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-03-06 19:42 UTC by Patrizio Bassi
Modified: 2007-10-08 09:22 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 Patrizio Bassi 2007-03-06 19:42:40 UTC
Seems during the ACE configure that's an endless loop that consumes all RAM and swap, making the system frozen for minute.

checking for seekdir... yes
checking for telldir... yes
checking if dlopen takes a char *... no
checking "getby" functions take a non-const char *... no
checking if new throws std::bad_alloc exception on failure...

*** Deprecated use of action 'info', use '--info' instead
Portage 2.1.2.1 (default-linux/amd64/2006.1, gcc-4.1.2, glibc-2.5-r0, 2.6.20 x86_64)
=================================================================
System uname: 2.6.20 x86_64 Intel(R) Core(TM)2 CPU          6300  @ 1.86GHz
Gentoo Base System release 1.12.9
Timestamp of tree: Tue, 06 Mar 2007 19:30:01 +0000
distcc 2.18.3 x86_64-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.4 [disabled]
dev-java/java-config: 1.3.7, 2.0.31-r3
dev-lang/python:     2.4.4
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     2.4-r6
sys-apps/sandbox:    1.2.18.1
sys-devel/autoconf:  2.13, 2.61
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils:  2.17.50.0.12
sys-devel/gcc-config: 1.3.14
sys-devel/libtool:   1.5.23b
virtual/os-headers:  2.6.20-r1
ACCEPT_KEYWORDS="amd64 ~amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O3 -pipe -march=nocona -mtune=nocona -fomit-frame-pointer -mmmx -msse -msse2 -msse3 -mfpmath=sse"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /etc/mail/dspam /opt/openjms/config /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/lib/mozilla/defaults/pref /usr/share/X11/xkb /usr/share/config /var/run/dspam"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/eselect/compiler /etc/gconf /etc/java-config/vms/ /etc/revdep-rebuild /etc/splash /etc/terminfo /etc/texmf/web2c"
CXXFLAGS="-O3 -pipe -march=nocona -mtune=nocona -fomit-frame-pointer -mmmx -msse -msse2 -msse3 -mfpmath=sse"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks fixpackages metadata-transfer parallel-fetch sandbox sfperms strict"
GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo"
LANG="39"
LC_ALL="it_IT.utf8"
LDFLAGS="-Wl,-O1 -Wl,--sort-common -Wl,--enable-new-dtags -Wl,--as-needed -Wl,--hash-style=both"
LINGUAS="it"
MAKEOPTS="-j4"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/mnt/Dati/Gentoo/tmp/"
PORTDIR="/mnt/Dati/Gentoo/portage/"
PORTDIR_OVERLAY="/usr/local/portage/myportage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="64bit 7zip X X509 Xaw3d a52 aac aalib accessibility ace acl acpi activefilter adns aiglx aio alsa amd amd64 amr amrr amuled ao aoss apache2 arj asf aspnet2 async atk audacious audiofile authfile automount bash-completion berkdb bidi binary-drivers bitmap-fonts bittorrent bootsplash browserplugin bzip2 cairo caps cdda cddb cdio cdparanoia cdr cgi charconv chardet chroot clamav clearcase cli client codecs corba cracklib crypt cscope css ctype cups curl cvs daemon dar64 dba dbus depth32 dga dhcp dio directfb diskio divx djbfft dmi dri dvd dvdr dvdread edl encode ethereal exif expat extraengine faac faad fam fastbuild fbcon ffmpeg fftw firefox flac flash foreign-package fortran ftp gcj gd gdbm geometry ggi gif gimp gimpprint glibc-omitfp glut glx gnokii gnome gnutls gphoto2 gpm graphviz gs gtk gtk2 gtkhtml guile h264 hal iconv idea idn imagemagick imap innodb ipod irda irmc isdnlog jack java java5 javamail javascript jikes jit joystick jpeg jpeg2k junit justify kde kdeenablefinal kdehiddenvisibility kerberos kqemu lame lcd lcms ldap libcaca libclamav libg++ libgda libusb lirc live lm_sensors lua lzo mad mailwrapper matroska md5sum mdb mhash midi mikmod mime mmx2 mng mono mozcalendar mozdevelop mozilla mozsvg mozxmlterm mp3 mp4 mp4live mpeg mpeg2 mpeg4 mplayer mpm-prefork msn msnextras musepack mysql mysqli mythtv nagios-dns nagios-ntp nagios-ping nagios-ssh ncurses neXt network ngui nls nntp no_wxgtk1 nobsh nopie nossp noxalan nptl nptlonly nsplugin nv nvidia oav odbc ogg openal opengl openssl operanom2 pam pcre pda pdf pdo pear perl php pmu png pnp postgres ppds pppd pthreads python qemu-fast qhull qt3 qt4 quicktime quotas readline reflection rrdtool rtc ruby samba scanner sdl server session sftplogging sguil slang slp smp snortsam soap sockets socks5 softmmu softquota spamassassin speex spl sqlite3 sse3 ssl ssse3 subject-rewrite svg tcltk tcpd tetex tga theora tiff tokenizer truetype truetype-fonts trusted type1-fonts unicode usb userlocales vorbis wma wmf wmv wsconvert wxwindows x264 xanim xchatdccserver xchattext xcomposite xine xinerama xml xml2 xmlrpc xorg xosd xpm xprint xsl xv xvid xvm xvmc zlib" ALSA_CARDS="hda-intel" 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" 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="fbdev vesa vga nv nvidia"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Patrizio Bassi 2007-05-05 21:00:41 UTC
ping!
Comment 2 Daniel Black (RETIRED) gentoo-dev 2007-06-21 12:52:10 UTC
starting compilation test on 5.5.8 this could take a while. (especially if it breaks)
Comment 3 Daniel Black (RETIRED) gentoo-dev 2007-06-22 22:37:36 UTC
added ace-5.5.8. I did still get a configure loop chewing all memory sometimes though it did work other times. Hope it works for you and I guess I'll keep looking.
Comment 4 Patrizio Bassi 2007-06-23 09:16:10 UTC
Daniel i'm synching right now and i'll try.

but...can't we simply delete that check? who cares....
Comment 5 Patrizio Bassi 2007-06-23 09:27:15 UTC
no way, endless loop

i got bored and took a look into the code. it's so stupid and unsane....

bypass by 

--- configure.ac        2007-02-25 00:02:14.000000000 +0100
+++ configure.ac2       2007-06-23 11:22:34.000000000 +0200
@@ -5119,6 +5119,7 @@
 #endif

         int main(int, char *[]) {
+return 1;
           while (1) {
             try {
               char *a = new char[1024*1024];


autoconf needed of course
please apply i tested and works

checking if new throws std::bad_alloc exception on failure... no
checking if new throws xalloc exception on failure... no
Comment 6 Tiziano Müller (RETIRED) gentoo-dev 2007-06-23 09:37:45 UTC
@dragonheart: I'd also recommend to remove those tests since they leak memory. Take a close look :-)

while (1) {
    try {
        char *a = new char[1024*1024]; 
        if (a == 0) {
            return 1; /* new() does NOT throw exceptions */
        }  // <<-- hmm, what happened to the pointer to our 1MB allocated space???
     }
     catch (xalloc) {
             return 0; /* new() does throw exceptions */
     }
}
Comment 7 Patrizio Bassi 2007-06-23 09:46:15 UTC
yes and it's broken by design...you can't consume all memory to detect it.
in a server you can't update because you will block all......
Comment 8 Patrizio Bassi 2007-07-12 21:12:19 UTC
Daniel can you please bypass that check in portage?

Comment 9 Tiziano Müller (RETIRED) gentoo-dev 2007-07-12 22:09:57 UTC
Taking over.
Comment 10 Tiziano Müller (RETIRED) gentoo-dev 2007-07-12 22:12:09 UTC
There's no need to patch.
Just do:
 export ace_cv_new_throws_bad_alloc_exception="yes"
in the ebuild and the test gets skipped.
Fixed in CVS.
Comment 11 Daniel Black (RETIRED) gentoo-dev 2007-10-08 09:22:32 UTC
finally reported upstream