Created attachment 565820 [details] build.log ev-embedded/sdcc-3.8.0-r1 build failed with the message: >>> Source configured. >>> Compiling source in /var/tmp/portage/dev-embedded/sdcc-3.8.0-r1/work/sdcc-3.8.0 ... make -j5 -s make[1]: *** No targets specified and no makefile found. Stop. make: *** [Makefile:147: sdcc-sdbinutils] Error 2 make: *** Waiting for unfinished jobs.... sdcclib.c: In function ‘AddList’: sdcclib.c:666:42: warning: ‘%s’ directive writing up to 4095 bytes into a region of size 1023 [-Wformat-overflow=] sprintf(CmdLine, "%s %s", as, SrcName); ^~ ~~~~~~~ In file included from /usr/include/stdio.h:873, from sdcclib.c:21: /usr/include/bits/stdio2.h:36:10: note: ‘__builtin___sprintf_chk’ output 2 or more bytes (assuming 4097) into a destination of size 1024 return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ __bos (__s), __fmt, __va_arg_pack ()); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ sdcclib.c:655:42: warning: ‘%s’ directive writing up to 4095 bytes into a region of size 1023 [-Wformat-overflow=] sprintf(CmdLine, "%s %s", cc, SrcName); ^~ ~~~~~~~ In file included from /usr/include/stdio.h:873, from sdcclib.c:21: /usr/include/bits/stdio2.h:36:10: note: ‘__builtin___sprintf_chk’ output 2 or more bytes (assuming 4097) into a destination of size 1024 return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ __bos (__s), __fmt, __va_arg_pack ()); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * ERROR: dev-embedded/sdcc-3.8.0-r1::gentoo failed (compile phase): * emake failed *
Created attachment 565822 [details] emerge --info '=dev-embedded/sdcc-3.8.0-r1::gentoo'
Created attachment 565824 [details] emerge -pqv '=dev-embedded/sdcc-3.8.0-r1::gentoo'
(In reply to email200202 from comment #0) > Created attachment 565820 [details] > build.log > > ev-embedded/sdcc-3.8.0-r1 build failed with the message: > > >>> Source configured. > >>> Compiling source in /var/tmp/portage/dev-embedded/sdcc-3.8.0-r1/work/sdcc-3.8.0 ... > make -j5 -s > make[1]: *** No targets specified and no makefile found. Stop. > make: *** [Makefile:147: sdcc-sdbinutils] Error 2 The overflow warning is a red herring. It complains about missing USE=sdbinutils. Try USE="sdbinutils pic16" emerge -v1 sdcc.
REQUIRED_USE may be necessary to ensure sdbinutils is enabled when its needed...?
There is already a bunch of REQUIRED_USEs: https://gitweb.gentoo.org/repo/gentoo.git/tree/dev-embedded/sdcc/sdcc-3.8.0-r1.ebuild#n36 Looking at the Makefile I think it's just an unconditional dep on any target. I'll spend some time staring at Makefile and enable unconditionally if I'll not be able to find out any hidden conditional logic.
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=db0c635fbd9f7999131347f630d6b21d41a762d0 commit db0c635fbd9f7999131347f630d6b21d41a762d0 Author: Sergei Trofimovich <slyfox@gentoo.org> AuthorDate: 2019-02-19 21:56:18 +0000 Commit: Sergei Trofimovich <slyfox@gentoo.org> CommitDate: 2019-02-19 21:56:18 +0000 dev-embedded/sdcc: require sdbinutils for every port, bug #678354 Top-level Makefile unconditionally pulls in sdcc-binutils as a dependency. If being opted out explicitly the build always fails as: make -j5 -s make[1]: *** No targets specified and no makefile found. Stop. make: *** [Makefile:147: sdcc-sdbinutils] Error 2 Fix it by effectively requiring IUSE=sdbinutils for each port. Reported-by: email200202@yahoo.com Closes: https://bugs.gentoo.org/678354 Package-Manager: Portage-2.3.61, Repoman-2.3.12 Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org> dev-embedded/sdcc/sdcc-3.8.0-r1.ebuild | 14 +++++++------- dev-embedded/sdcc/sdcc-9999.ebuild | 14 +++++++------- 2 files changed, 14 insertions(+), 14 deletions(-)