Created attachment 329926 [details] pywavelets-0.2.2-r1.ebuild Emerging dev-python/pywavelets-0.2.2 with USE=doc causes the following error: !!! dohtml: doc/build/html/* does not exist * ERROR: dev-python/pywavelets-0.2.2 failed (install phase): * dohtml failed * * If you need support, post the output of `emerge --info '=dev-python/pywavelets-0.2.2'`, * the complete build log and the output of `emerge -pqv '=dev-python/pywavelets-0.2.2'`. * The complete build log is located at '/var/tmp/portage/dev-python/pywavelets-0.2.2/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/dev-python/pywavelets-0.2.2/temp/environment'. * Working directory: '/var/tmp/portage/dev-python/pywavelets-0.2.2/work/PyWavelets-0.2.2' * S: '/var/tmp/portage/dev-python/pywavelets-0.2.2/work/PyWavelets-0.2.2' * QA Notice: file does not exist: * * dohtml: doc/build/html/* does not exist I'm not sure how previous version of the package worked, but now the documentation is not getting built before it attempts to install. I've never written an ebuild before, but my attached attempt builds the docs and fixes the problem.
Comment on attachment 329926 [details] pywavelets-0.2.2-r1.ebuild --- pywavelets-0.2.2.ebuild 2012-10-17 16:43:20.063382132 +0200 +++ - 2012-11-19 11:39:42.508154607 +0100 @@ -23,7 +23,8 @@ DEPEND="app-arch/unzip dev-python/cython - test? ( dev-python/numpy )" + test? ( dev-python/numpy ) + doc? ( dev-python/sphinx )" RDEPEND="dev-python/numpy" S="${WORKDIR}/${MY_P}" @@ -39,6 +40,15 @@ python_execute_function testing } +src_compile() { + distutils_src_compile + + if use doc; then + cd doc + emake html || die "emake html failed" + fi +} + src_install () { distutils_src_install use doc && dohtml -r doc/build/html/*
Jeroen; yes, exactly. well, variation on a theme. Fixed in portage
The fix for this bug introduces a new problem with USE=-doc: * ERROR: dev-python/pywavelets-0.2.2 failed (compile phase): * emake html failed * * Call stack: * ebuild.sh, line 93: Called src_compile * environment, line 3667: Called die * The specific snippet of code: * use doc && emake -C doc html || die "emake html failed" The following patch fixes it for me: @@ -42,7 +42,7 @@ src_compile() { distutils_src_compile - use doc && emake -C doc html || die "emake html failed" + use doc && { emake -C doc html || die "emake html failed"; } } The patch originally proposed by Jeroen Roovers should work as well.
> The patch originally proposed by Jeroen Roovers should work as well. + 16 Jan 2013; Justin Lecher <jlec@gentoo.org> pywavelets-0.2.2.ebuild, + metadata.xml: + Drop unnecessary die, #443858 + @Ian use doc && emake -C doc html || die "emake html failed" that does not work