make[1]: Leaving directory '/var/tmp/portage/media-gfx/exiv2-0.23-r2/work/exiv2-0.23-amd64/po' * Removing unnecessary /usr/lib64/libexiv2.la (no static archive) * amd64: running dohtml -r doc/html/. !!! dohtml: doc/html/ does not exist * ERROR: media-gfx/exiv2-0.23-r2::gentoo failed (install phase): * dohtml failed Reproducible: Always
This has too little info to be seriously considered a bug report. Also, it's already covered by later comments in bug 494954 (though granted, those should have gone into a new report).
Created attachment 366480 [details] build log * amd64: running emake doc make -j5 doc make: Nothing to be done for 'doc'. >>> Source compiled. The Makefile in that directory reads: doc: config/config.mk cd doc && $(MAKE) $(MAKECMDGOALS) and doc is .PHONY as it should be. So I ran this through strace. execve("/usr/bin/make", ["make", "-j5", "doc"], [/* 317 vars */]) = 0 […] getcwd("/var/tmp/portage/media-gfx/exiv2-0.23-r2/work/exiv2-0.23", 8192) = 57 […] stat("GNUmakefile", 0x7ffffc6df520) = -1 ENOENT (No such file or directory) stat("makefile", 0x7ffffc6df520) = -1 ENOENT (No such file or directory) stat("Makefile", 0x7ffffc6df520) = -1 ENOENT (No such file or directory) stat("doc", {st_mode=S_IFDIR|0755, st_size=220, ...}) = 0 […] write(1, "make: Nothing to be done for 'doc'.\n", 36) = 36 […] So the core problem here appears to be that the above command gets executed not in work/exiv2-0.23-amd64 but in work/exiv2-0.23. Apparently multilib_for_best_abi does not do what the ebuild writer expected it to do.
*** Bug 496646 has been marked as a duplicate of this bug. ***
'USE=-doc emerge exiv2' works.
Augment the multilib_for_best_abi calls with run_in_build_dir, like this: src_compile() { ⋮ use doc && multilib_for_best_abi run_in_build_dir emake doc } src_install() { ⋮ use doc && multilib_for_best_abi run_in_build_dir dohtml -r doc/html/. ⋮ } Works for me.
The conversion is so bad that I've masked it. I will probably provide a completely new ebuild for this.
(In reply to Michał Górny from comment #6) > The conversion is so bad that I've masked it. I will probably provide a > completely new ebuild for this. ebuild that works is here: https://bugs.gentoo.org/show_bug.cgi?id=494920
Seems like this has been replaced by the problem showing its head in exiv-0.24. Since this version and that version are marked ~ARCH and 0.23-r1 is marked stable, would it be appropriate to mark this bug as invalid? If I don't hear anything by Sept 20, I'll go ahead and mark this invalid.
(In reply to Alex Brandt from comment #8) > Seems like this has been replaced by the problem showing its head in > exiv-0.24. Since this version and that version are marked ~ARCH and 0.23-r1 > is marked stable, would it be appropriate to mark this bug as invalid? > > If I don't hear anything by Sept 20, I'll go ahead and mark this invalid. 1) If test results are not provided, then bug is TEST-REQUIRED, not INVALID. Please be more careful on using bug states from now on. 2) 0.24 is still fails miserably when building docs make -j10 -l5 doc cd doc && make doc make[1]: Entering directory '/var/tmp/portage/media-gfx/exiv2-0.24/work/exiv2-0.24-abi_x86_32.x86/doc' doxygen ../config/Doxyfile mkdir -p ../doc/html cd ../doc/templates && make all make[2]: Entering directory '/var/tmp/portage/media-gfx/exiv2-0.24/work/exiv2-0.24-abi_x86_32.x86/doc/templates' Makefile:185: *** File ../../bin/taglist does not exist. Did you build the library and programs in the src/ directory?. Stop. make[2]: Leaving directory '/var/tmp/portage/media-gfx/exiv2-0.24/work/exiv2-0.24-abi_x86_32.x86/doc/templates' Makefile:71: recipe for target 'tags' failed make[1]: *** [tags] Error 2 make[1]: *** Waiting for unfinished jobs....
Created attachment 385076 [details] build.log Full build log.
Created attachment 385080 [details] emerge --info
Thanks Andrew. Based on the information you provided it looks like this or bug #512468 should be a duplicate of the other. Do you have a preference on which bug is marked duplicate? My opinion would be the latter as this one has more complete build information.
*** Bug 512468 has been marked as a duplicate of this bug. ***
(In reply to Martin von Gagern from comment #5) > Augment the multilib_for_best_abi calls with run_in_build_dir, like this: > > src_compile() { > ⋮ > use doc && multilib_for_best_abi run_in_build_dir emake doc > } > > src_install() { > ⋮ > use doc && multilib_for_best_abi run_in_build_dir dohtml -r doc/html/. > ⋮ > } > > Works for me. It now has to be something like: --- a/portage/media-gfx/exiv2/exiv2-0.24.ebuild 2014-09-06 10:01:12.000000000 -0700 +++ b/portage/media-gfx/exiv2/exiv2-0.24.ebuild 2014-10-07 11:13:19.419551741 -0700--- portage/media-gfx/exiv2/exiv2-0.24.ebuild 2014-09-06 10:01:12.000000000 -0700 +++ portage/media-gfx/exiv2/exiv2-0.24.ebuild 2014-10-07 11:13:19.419551741 -0700 @@ -102,7 +102,12 @@ multilib_src_compile() { CPPFLAGS="${CPPFLAGS} -I\$(BOOST_INC_DIR) -I. -DEXV_HAVE_STDINT_H" fi - use doc && emake doc + if use doc && multilib_is_native_abi; then + pushd samples >/dev/null || die + make taglist + popd >/dev/null || die + emake doc + fi fi } @@ -114,7 +119,7 @@ multilib_src_install() { emake DESTDIR="${D}" -C contrib/organize install fi - use doc && dohtml -r doc/html/. + use doc && multilib_is_native_abi && dohtml -r doc/html/. fi } @@ -102,7 +102,12 @@ multilib_src_compile() { CPPFLAGS="${CPPFLAGS} -I\$(BOOST_INC_DIR) -I. -DEXV_HAVE_STDINT_H" fi - use doc && emake doc + if use doc && multilib_is_native_abi; then + pushd samples >/dev/null || die + make taglist + popd >/dev/null || die + emake doc + fi fi } @@ -114,7 +119,7 @@ multilib_src_install() { emake DESTDIR="${D}" -C contrib/organize install fi - use doc && dohtml -r doc/html/. + use doc && multilib_is_native_abi && dohtml -r doc/html/. fi } Still seems kinda messed up -- it does a bunch of compiles during src_install and dumps some qa warnings -- but at least it builds with this change.
I've tested 0.24 and contains changes like that in comment #14 and docs are installing correctly. Please reopen if problems persist.