prereq: prefer existing built coreutils as symlink target
authorMichael Pratt <mcpratt@pm.me>
Thu, 3 Oct 2024 04:57:29 +0000 (00:57 -0400)
committerRobert Marko <robimarko@gmail.com>
Sat, 26 Jul 2025 12:38:08 +0000 (14:38 +0200)
For the utilities provided by coreutils
but required before coreutils is built,
if coreutils is actually built already, prefer a symlink to
the built versions instead of the host machine's version.

Tested-by: Georgi Valkov <gvalkov@gmail.com> # macOS
Signed-off-by: Michael Pratt <mcpratt@pm.me>
Link: https://github.com/openwrt/openwrt/pull/16522
Signed-off-by: Robert Marko <robimarko@gmail.com>
include/prereq-build.mk

index 913888e0ada5ba291bd1a0d3dc620b2039576b41..b913e62e430feda8e9da6a982d11665aa870b1db 100644 (file)
@@ -126,10 +126,12 @@ $(eval $(call SetupHostCommand,diff,Please install GNU diffutils, \
        diff --version 2>&1 | grep GNU))
 
 $(eval $(call SetupHostCommand,cp,Please install GNU fileutils, \
+       $(TOPDIR)/staging_dir/host/bin/gcp --help 2>&1 | grep 'Copy SOURCE', \
        gcp --help 2>&1 | grep 'Copy SOURCE', \
        cp --help 2>&1 | grep 'Copy SOURCE'))
 
 $(eval $(call SetupHostCommand,seq,Please install seq, \
+       $(TOPDIR)/staging_dir/host/bin/gseq --version, \
        gseq --version, \
        seq --version 2>&1 | grep seq))
 
@@ -153,10 +155,12 @@ $(eval $(call SetupHostCommand,getopt, \
        /opt/local/bin/getopt -o t --long test -- --test | grep '^ *--test *--'))
 
 $(eval $(call SetupHostCommand,realpath,Please install a 'realpath' utility, \
+       $(TOPDIR)/staging_dir/host/bin/grealpath /, \
        grealpath /, \
        realpath /))
 
 $(eval $(call SetupHostCommand,stat,Cannot find a file stat utility, \
+       $(TOPDIR)/staging_dir/host/bin/gstat -c%s $(TOPDIR)/Makefile, \
        gnustat -c%s $(TOPDIR)/Makefile, \
        gstat -c%s $(TOPDIR)/Makefile, \
        stat -c%s $(TOPDIR)/Makefile))
@@ -175,6 +179,7 @@ $(eval $(call SetupHostCommand,wget,Please install GNU 'wget', \
        wget --version | grep GNU))
 
 $(eval $(call SetupHostCommand,install,Please install GNU 'install', \
+       $(TOPDIR)/staging_dir/host/bin/ginstall --version | grep GNU, \
        install --version | grep GNU, \
        ginstall --version | grep GNU))