Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 335119 - www-client/midori-0.2.7: Fails compiling because of --load-average in MAKEOPTS
Summary: www-client/midori-0.2.7: Fails compiling because of --load-average in MAKEOPTS
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: XFCE Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 337831
  Show dependency tree
 
Reported: 2010-08-29 10:43 UTC by Cyprien Nicolas (fulax)
Modified: 2010-09-18 10:04 UTC (History)
0 users

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


Attachments
build.log (midori-0.2.7:20100829-103125.log,4.67 KB, text/plain)
2010-08-29 10:44 UTC, Cyprien Nicolas (fulax)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Cyprien Nicolas (fulax) 2010-08-29 10:43:23 UTC
The midori builder, waf, does not recognize --load-average=n MAKEOPTS

Reproducible: Always

Steps to Reproduce:
1. Add a --load-average= limit in MAKEOPTS
2. Emerge www-client/midori-0.2.7

Actual Results:  
>>> Compiling source in /var/tmp/portage/www-client/midori-0.2.7/work/midori-0.2.7 ...
waf [command] [options]

Main commands (example: ./waf build -j4)
  build    : builds the project
  clean    : removes the build files
  configure: configures the project
  dist     : makes a tarball for redistributing the sources
  distcheck: checks if the sources compile (tarball from 'dist')
  install  : installs the build files
  uninstall: removes the installed files

waf: error: no such option: --load-average

Expected Results:  
www-client/midori should compile and been merged

# emerge --info =www-client/midori-0.2.7
Portage 2.1.8.3 (default/linux/x86/10.0/server, gcc-4.4.3, glibc-2.11.2-r0, 2.6.28-hardened-r9 i686)
=================================================================
                        System Settings
=================================================================
System uname: Linux-2.6.28-hardened-r9-i686-Intel-R-_Pentium-R-_Dual_CPU_E2200_@_2.20GHz-with-gentoo-1.12.13
Timestamp of tree: Sun, 29 Aug 2010 08:45:02 +0000
app-shells/bash:     4.0_p37
dev-java/java-config: 2.1.11
dev-lang/python:     2.6.5-r3, 3.1.2-r4
dev-util/cmake:      2.8.1-r2
sys-apps/baselayout: 1.12.13
sys-apps/sandbox:    1.6-r2
sys-devel/autoconf:  2.13, 2.65
sys-devel/automake:  1.9.6-r2, 1.10.3, 1.11.1
sys-devel/binutils:  2.20.1-r1
sys-devel/gcc:       4.4.3-r2
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.6b
sys-devel/make:      3.81-r2
virtual/os-headers:  2.6.30-r1
ACCEPT_KEYWORDS="x86"
ACCEPT_LICENSE="* -@EULA"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=i686 -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/X11/xkb /var/bind /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -march=i686 -pipe"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS=""
FEATURES="assume-digests distlocks fail-clean fixpackages news parallel-fetch protect-owned sandbox sfperms split-elog split-log strict unmerge-logs unmerge-orphans userfetch"
GENTOO_MIRRORS="ftp://ftp.free.fr/mirrors/ftp.gentoo.org/ http://gentoo.osuosl.org/"
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="en en_US"
MAKEOPTS="--jobs=3 --load-average=4"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
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="/var/lib/layman/lisp /home/cnicolas/indes/packages/gentoo/portage"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="X aac aalib acl acpi alsa amr apache2 apm archive avahi bash-completion bazaar berkdb bluetooth branding bzip2 cairo caps cdio cli consolekit cracklib crypt cups curl cvs cxx darcs dbus dia directfb dri dts dv emacs enca exif fbcon ffmpeg flac fortran ftp fuse gdbm gdu gif git gnome gnome-keyring gnutls gpg gstreamer gtk gzip hal iconv icu id3 idn imap ipv6 java java6 javascript jbig jpeg latex ldap libcaca libnotify libwww live lua lzma lzo mad mercurial mmx mng modules mp3 mpeg mudflap musepack mysql nautilus ncurses network-cron nls nptl nptlonly nss ogg openal opengl openmp pam pcre perl pmu png pnm policykit pppd python qt3 qt3support qt4 quicktime radio rar readline reflection rtc samba sasl schroedinger sdl session smp snmp speex spl sql sqlite sqlite3 sse sse2 ssl ssse3 startup-notification subversion suexec svg svga sysfs system-sqlite tcl tcpd tga theora threads tiff tk truetype unicode v4l v4l2 vidix vorbis webkit win32codecs wmf x264 x86 xanim xcb xft xml xorg xulrunner xv xvid 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 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" ELIBC="glibc" INPUT_DEVICES="evdev keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en en_US" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="intel i910 vesa" 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, FFLAGS, INSTALL_MASK, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

# emerge -pqv www-client/midori
[ebuild     U ] www-client/midori-0.2.7 [0.2.6] USE="-doc gnome html* idn libnotify nls (-sqlite%*) unique -vala%"
Comment 1 Cyprien Nicolas (fulax) 2010-08-29 10:44:35 UTC
Created attachment 245206 [details]
build.log

The (short) build log
Comment 2 Cyprien Nicolas (fulax) 2010-08-29 10:56:22 UTC
Note: to reproduce the failure, you must not use -jN for the jobs specification, either --jobs= or noting. The sec expression filters all options ONLY if -j is used.

Guilty code:
src_compile() {
        NUMJOBS=$(sed -e 's/.*\(\-j[ 0-9]\+\) .*/\1/; s/--jobs=\?/-j/' <<< ${MAKEOPTS})
        ./waf build ${NUMJOBS} || die "build failed"
}
Comment 3 Kevin Pyle 2010-08-29 18:53:16 UTC
Although the build system is different, this is the same problem that caused bug #241684: a custom build system that only understands some of the options that Make understands.  I posted an expression in bug #241684, comment #11 that takes in $MAKEOPTS and produces only the -j output, discarding any other options in $MAKEOPTS.  It can be seen in dev-libs/boost/boost-1.42.0-r2.ebuild at the top of src_compile, and possibly in other Boost ebuilds.  From the help posted in comment #0, I think that expression would solve this problem.
Comment 4 Samuli Suominen (RETIRED) gentoo-dev 2010-09-06 21:07:16 UTC
+  06 Sep 2010; Samuli Suominen <ssuominen@gentoo.org> midori-0.2.7.ebuild,
+  midori-9999.ebuild:
+  Fix race condition with MAKEOPTS wrt #335119 by Kevin Pyle.