dev-lang/nacl-toolchain-newlib-0_p10915 fails to build on my machine. I attached a build log Reproducible: Always Steps to Reproduce: 1. emerge dev-lang/nacl-toolchain-newlib-0_p10915 2. 3. Actual Results: failed build Expected Results: complete merge
Created attachment 344046 [details] dev-lang/nacl-toolchain-newlib-0_p10915 build log
subj incompatible with sys-apps/texinfo-5.1 downgrade it to 4.13-r2 /sorry my bad english
before downgrade sys-apps/texinfo to 4.13-r2 all works
(In reply to comment #3) > before downgrade sys-apps/texinfo to 4.13-r2 all works s/defore/after/
Please comment with the output of `emerge --info`, thank you.
1. emerge --info unneeded 2. just fix deps 3. arch independed
Given that sys-apps/texinfo is not slotted, depending on an old version seems like a bad idea. Quoting vapier: > any core package that includes info pages should not be regenerating them > hence should not need texinfo. i've applied a fix already for gcc to do just > that. We probably need to do something similar here.
*** Bug 464212 has been marked as a duplicate of this bug. ***
(In reply to comment #7) > Quoting vapier: > > any core package that includes info pages should not be regenerating them > > hence should not need texinfo. i've applied a fix already for gcc to do just > > that. > > We probably need to do something similar here. Sounds good. Do we know where that patch is?
(In reply to comment #9) > Sounds good. Do we know where that patch is? Well, in this case it is binutils rather than gcc that is regenerating an info file. If you look at naclbinutils-2.20.1-r10915.patch, you can see that it is modifying binutils/doc/binutils.texi. If we drop that patch hunk, I think that will resolve the issue here. The patch documents the --enable-deterministic-archives option.
We may run into a similar issue with gcc: naclgcc-4.4.3-r10915.patch modifies gcc/doc/invoke.texi.
Upon testing, I made an interesting discovery: the info files get regenerated any time you do an out-of-source build, regardless of any patching. I had hoped to trick make by touching the info files after we apply patches, but that won't work since we build outside the source directory.
My next idea was to copy the pre-generated info files into the build directory before compiling, but the build directory gets removed when you run make all. I think I'm out of bright ideas for the time being.
We could backport this commit. http://sourceware.org/git/?p=binutils.git;a=commit;h=935f85422863b42b6fbca30885885e3fa28eea36
Ok, the binutils commit is an easy backport; just remove the Changelog and copyright updates. After that is fixed, I now get this failure from gcc: makeinfo --split-size=5000000 --no-split -I . -I /tmp/portage/dev-lang/nacl-toolchain-newlib-0_p10915/work/SRC/gcc/gcc/doc \ -I /tmp/portage/dev-lang/nacl-toolchain-newlib-0_p10915/work/SRC/gcc/gcc/doc/include -o doc/cpp.info /tmp/portage/dev-lang/nacl-toolchain-newlib-0_p10915/work/SRC/gcc/gcc/doc/cpp.texi; \ fi /tmp/portage/dev-lang/nacl-toolchain-newlib-0_p10915/work/SRC/gcc/gcc/doc/cppopts.texi:761: @itemx must follow @item make[3]: *** [doc/cpp.info] Error 1 make[3]: Leaving directory `/tmp/portage/dev-lang/nacl-toolchain-newlib-0_p10915/work/BUILD/build-pregcc-x86_64-nacl/gcc' make[2]: *** [all-gcc] Error 2 make[2]: Leaving directory `/tmp/portage/dev-lang/nacl-toolchain-newlib-0_p10915/work/BUILD/build-pregcc-x86_64-nacl' make[1]: *** [BUILD/stamp-x86_64-nacl-pregcc] Error 2 That is probably fixed by this commit, which will be more difficult to backport. http://gcc.gnu.org/git/?p=gcc.git;a=commit;h=85ad240e47dcdc1bf20ef6a95e921ac1f766d995
(In reply to comment #15) > Ok, the binutils commit is an easy backport; just remove the Changelog and > copyright updates. > > [...] > > That is probably fixed by this commit, which will be more difficult to > backport. > > http://gcc.gnu.org/git/?p=gcc.git;a=commit; > h=85ad240e47dcdc1bf20ef6a95e921ac1f766d995 Wow, good job finding these commits! What's the difficulty with the second one (just trying to understand)? Another option I was considering was disabling info files processing completely, if that's reasonably easy to do. nacl-toolchain-newlib is only used for chromium build, these info files wouldn't be very useful anyway (of course if that's the only way to fix the build it makes sense).
(In reply to comment #16) > Wow, good job finding these commits! What's the difficulty with the second > one (just trying to understand)? 9 of 13 patch hunks fail. It will take some work to check each failure against the gcc-4.4.3 source. > Another option I was considering was disabling info files processing > completely, if that's reasonably easy to do. nacl-toolchain-newlib is only > used for chromium build, these info files wouldn't be very useful anyway (of > course if that's the only way to fix the build it makes sense). I think we would need to patch a bunch of Makefiles. I don't see an obvious way to disable them otherwise.
Created attachment 344230 [details, diff] binutils-texinfo-r0.patch
Created attachment 344232 [details, diff] gcc-texinfo-r0.patch This one needs work
Created attachment 344234 [details] gcc-texinfo-r0.patch.out
I'm working on fixing the gcc patch.
Ok, should be working now. + 03 Apr 2013; Mike Gilbert <floppym@gentoo.org> + +files/binutils-texinfo-r0.patch, +files/gcc-texinfo-r0.patch, + nacl-toolchain-newlib-0_p10915.ebuild: + Add patches to fix compatibility with texinfo-5.1. Bug 464168.