--- /usr/portage/net-libs/webkit-gtk/webkit-gtk-2.2.4-r200.ebuild 2014-02-04 03:31:27.000000000 +0400 +++ /usr/portage/net-libs/webkit-gtk/webkit-gtk-2.2.4-r200.ebuild 2014-02-04 07:34:41.000000000 +0400 @@ -176,6 +176,13 @@ # Do not build unittests unless requested, upstream bug #??? epatch "${FILESDIR}"/${PN}-2.2.4-unittests-build.patch + # Make sure some dirs are available (created) before buggy + # build scripts will try to copy generated files into them... + # Also this patch add a target to build all BUILT_SOURCES + # explicitly (still not in parallel, due a bloated BUILT_SOURCES) + # before everything else (can build in parallel) + epatch "${FILESDIR}"/${PN}-2.2.4-parallel-build-fixes.patch + # Prevent maintainer mode from being triggered during make AT_M4DIR=Source/autotools eautoreconf } @@ -196,7 +203,9 @@ local myconf="" - if has_version "virtual/rubygems[ruby_targets_ruby20]"; then + if has_version "virtual/rubygems[ruby_targets_ruby21]"; then + myconf="${myconf} RUBY=$(type -P ruby21)" + elif has_version "virtual/rubygems[ruby_targets_ruby20]"; then myconf="${myconf} RUBY=$(type -P ruby20)" elif has_version "virtual/rubygems[ruby_targets_ruby19]"; then myconf="${myconf} RUBY=$(type -P ruby19)" @@ -206,8 +215,6 @@ # TODO: Check Web Audio support # should somehow let user select between them? - # - # * dependency-tracking is required so parallel builds won't fail econf \ $(use_enable coverage) \ $(use_enable debug) \ @@ -224,12 +231,20 @@ $(use_enable webgl accelerated-compositing) \ --with-gtk=2.0 \ --disable-webkit2 \ - --enable-dependency-tracking \ --disable-gtk-doc \ - $(usex aqua "--with-font-backend=pango --with-target=quartz" "") + --disable-gtk-doc-html \ + --disable-gtk-doc-pdf \ + $(usex aqua "--with-font-backend=pango --with-target=quartz" "") \ ${myconf} } +src_compile() { + # Generate a bunch of sources in a single `make` process + emake -j1 all-built-sources-local + # Run parallel build for everything else + emake +} + src_test() { # Tests expect an out-of-source build in WebKitBuild ln -s . WebKitBuild || die "ln failed"