Hi folks,

I've stumpled across a really strange problem on building barebox build
(distrokit):


make: Entering directory
'/home/nekrad/src/dk/DistroKit/local_src/barebox.x86_64'
make -C
/home/nekrad/src/dk/DistroKit/platform-x86_64/build-target/barebox-2020.09.0-build
-f /home/nekrad/src/dk/DistroKit/local_src/barebox.x86_64/Makefile
/opt/ptxdist/lib/ptxdist-2020.09.0/config/images/partitions.config
make[1]: Entering directory
'/home/nekrad/src/dk/DistroKit/platform-x86_64/build-target/barebox-2020.09.0-build'
if [ -f /home/nekrad/src/dk/DistroKit/local_src/barebox.x86_64/.config -o \
         -d
/home/nekrad/src/dk/DistroKit/local_src/barebox.x86_64/include/config -o \
         -d
/home/nekrad/src/dk/DistroKit/local_src/barebox.x86_64/arch/x86/include/generated
]; then \
        echo >&2 "***"; \
        echo >&2 "*** The source tree is not clean, please run 'make ARCH=x86
mrproper'"; \
        echo >&2 "*** in 
/home/nekrad/src/dk/DistroKit/local_src/barebox.x86_64";\
        echo >&2 "***"; \
        false; \
fi
make -f
/home/nekrad/src/dk/DistroKit/local_src/barebox.x86_64/scripts/Makefile.build
obj=scripts/basic
ln -fsn /home/nekrad/src/dk/DistroKit/local_src/barebox.x86_64 source
/bin/bash
/home/nekrad/src/dk/DistroKit/local_src/barebox.x86_64/scripts/mkmakefile 
/home/nekrad/src/dk/DistroKit/local_src/barebox.x86_64
  GEN     Makefile
test -e .gitignore || \
{ echo "# this is build directory, ignore it"; echo "*"; } > .gitignore
make -f
/home/nekrad/src/dk/DistroKit/local_src/barebox.x86_64/scripts/Makefile.build
obj=scripts/kconfig
/opt/ptxdist/lib/ptxdist-2020.09.0/config/images/partitions.config
/home/nekrad/src/dk/DistroKit/local_src/barebox.x86_64/scripts/kconfig/Makefile:93:
*** No configuration exists for this target on this architecture.  Stop.
/home/nekrad/src/dk/DistroKit/local_src/barebox.x86_64/Makefile:508:
recipe for target
'/opt/ptxdist/lib/ptxdist-2020.09.0/config/images/partitions.config' failed
make[1]: ***
[/opt/ptxdist/lib/ptxdist-2020.09.0/config/images/partitions.config] Error 2
make[1]: Leaving directory
'/home/nekrad/src/dk/DistroKit/platform-x86_64/build-target/barebox-2020.09.0-build'
Makefile:180: recipe for target 'sub-make' failed
make: *** [sub-make] Error 2
make: Leaving directory
'/home/nekrad/src/dk/DistroKit/local_src/barebox.x86_64'
/opt/ptxdist/lib/ptxdist-2020.09.0/rules/barebox.make:216: recipe for
target
'/opt/ptxdist/lib/ptxdist-2020.09.0/config/images/barebox_partitions.config'
failed
make: ***
[/opt/ptxdist/lib/ptxdist-2020.09.0/config/images/barebox_partitions.config]
Error 2



Further debugging turned out it's trying to rebuild


/opt/ptxdist/lib/ptxdist-2020.09.0/config/images/barebox_partitions.config

via world/kconfig call, which obviously should never happen.
The call is done from .../rules/barebox.make.

> barebox_%config: $(STATEDIR)/barebox.extract

This line makes the barebox_partitions.config file (coming from ptxdist
itself) dependent on the source extraction state file. Adding an
explicit no-op rule for that specific file (hardcoded full pathname)
makes the problem go away.

I'm not quite sure how this rule really supposed to wor, but it looks
like the pattern is too wide.

Any suggestion how to fix that in a clean way ?


thx
--mtx

-- 
---
Hinweis: unverschlüsselte E-Mails können leicht abgehört und manipuliert
werden ! Für eine vertrauliche Kommunikation senden Sie bitte ihren
GPG/PGP-Schlüssel zu.
---
Enrico Weigelt, metux IT consult
Free software and Linux embedded engineering
i...@metux.net -- +49-151-27565287

_______________________________________________
ptxdist mailing list
ptxdist@pengutronix.de
To unsubscribe, send a mail with subject "unsubscribe" to 
ptxdist-requ...@pengutronix.de

Reply via email to