Created attachment 874444 [details] dev-embedded:sdcc-4.3.0:20231110-091859.log This was previously reported as bug 913179, but remains unresolved in tree. I can reproduce this on a system with MAKEOPTS=-4. The issue disappears if MAKEOPTS is unset. I can probably preserve this system in its current state for a few days, but not long-term. x86_64-pc-linux-gnu-gcc -c -DHAVE_CONFIG_H -march=corei7-avx -O2 -ggdb -pipe -I. -I./../include -W -Wall -Wwrite-strings -Wc++-compat -Wstrict-prototypes -Wshadow=local -pedantic -D_GNU_SOURCE -fcf-protection ./sha1.c -o sha1.o make[3]: *** No rule to make target '../../sdbinutils/libiberty/libiberty.a', needed by 'cc1'. Stop. make[3]: *** Waiting for unfinished jobs.... ... make[5]: Leaving directory '/var/tmp/portage/dev-embedded/sdcc-4.3.0/work/sdcc-4.3.0/support/sdbinutils/binutils' make[4]: Leaving directory '/var/tmp/portage/dev-embedded/sdcc-4.3.0/work/sdcc-4.3.0/support/sdbinutils/binutils' make[3]: Leaving directory '/var/tmp/portage/dev-embedded/sdcc-4.3.0/work/sdcc-4.3.0/support/sdbinutils/binutils' make[2]: Leaving directory '/var/tmp/portage/dev-embedded/sdcc-4.3.0/work/sdcc-4.3.0/support/sdbinutils' make[1]: Leaving directory '/var/tmp/portage/dev-embedded/sdcc-4.3.0/work/sdcc-4.3.0/support/sdbinutils' ^[[31;01m*^[[0m ERROR: dev-embedded/sdcc-4.3.0::gentoo failed (compile phase): ^[[31;01m*^[[0m emake failed
Created attachment 874445 [details] emerge --info '=dev-embedded/sdcc-4.3.0::gentoo'
There are some suspect lines in sdcc-4.3.0/Makefile: 16 SDCC_LIBS = support/makebin 24 SDCC_SDBINUTILS = support/sdbinutils 124 ifeq ($(OPT_DISABLE_SDCPP), 0) 125 SDCC_LIBS += support/cpp 126 endif 145 sdcc-libs: ${SDCC_SDBINUTILS} 146 for lib in $(SDCC_LIBS); do $(MAKE) -C $$lib; done 166 sdcc-sdbinutils: 167 $(MAKE) -C $(SDCC_SDBINUTILS) As `support/sdbinutils` is an existing directory from the tarball, the dependency on line 145 does not appear sane.
The strange dependency comes from upstream commit 13894 [0]. Apparently they tried to make building the binutils optional, in order to bypass the build failure reported in upstream bug 3491 [1]. 0: https://sourceforge.net/p/sdcc/code/13894/ 1: https://sourceforge.net/p/sdcc/bugs/3491/
I suggested a one-line fix to upstream's bugtracker. https://sourceforge.net/p/sdcc/support-requests/193/
Upstream has applied the fix in commit r14420. https://sourceforge.net/p/sdcc/code/14420/
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=01d66eb467ccb21b5456332a77bdccbcda33ead9 commit 01d66eb467ccb21b5456332a77bdccbcda33ead9 Author: Viorel Munteanu <ceamac@gentoo.org> AuthorDate: 2023-11-14 06:50:17 +0000 Commit: Viorel Munteanu <ceamac@gentoo.org> CommitDate: 2023-11-14 19:14:26 +0000 dev-embedded/sdcc: fix Makefile and QA issues Closes: https://bugs.gentoo.org/917114 Closes: https://bugs.gentoo.org/898594 Signed-off-by: Viorel Munteanu <ceamac@gentoo.org> dev-embedded/sdcc/files/binutils-2.41-acinclude.m4 | 193 +++++++++++++++++++++ .../files/sdcc-4.3.0-autoreconf-libiberty.patch | 15 ++ .../files/sdcc-4.3.0-fix-binutils-dependency.patch | 22 +++ .../files/sdcc-4.3.0-fix-mkdir-autoconf-test.patch | 13 ++ dev-embedded/sdcc/sdcc-4.3.0-r1.ebuild | 174 +++++++++++++++++++ 5 files changed, 417 insertions(+)