The branch main has been updated by jrtc27:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=d41a40f484826e90ed78dce5f006712b0eeaf501

commit d41a40f484826e90ed78dce5f006712b0eeaf501
Author:     Jessica Clarke <jrt...@freebsd.org>
AuthorDate: 2024-10-18 18:15:30 +0000
Commit:     Jessica Clarke <jrt...@freebsd.org>
CommitDate: 2024-10-18 18:15:30 +0000

    depend-cleanup.sh: Clean up after riscv static binary IFUNC addition
    
    reloc.c is conditionally included by libc_start1.c so existing builds
    don't feature it in the .depend file and won't know they need to rebuild
    libc_start1.c.
    
    MFC after:      1 week
---
 tools/build/depend-cleanup.sh | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/tools/build/depend-cleanup.sh b/tools/build/depend-cleanup.sh
index 94cafbd9a8d6..001a450bf182 100755
--- a/tools/build/depend-cleanup.sh
+++ b/tools/build/depend-cleanup.sh
@@ -199,3 +199,19 @@ clean_dep   cddl/lib/libzpool zfs_debug c 
"linux/zfs/zfs_debug\.c"
 
 # 20241011
 clean_dep   cddl/lib/libzpool arc_os c "linux/zfs/arc_os\.c"
+
+# 20241018  1363acbf25de    libc/csu: Support IFUNCs on riscv
+if [ ${MACHINE} = riscv ]; then
+       for f in "$OBJTOP"/lib/libc/.depend.libc_start1.*o; do
+               if [ ! -f "$f" ]; then
+                       continue
+               fi
+               if ! grep -q 'lib/libc/csu/riscv/reloc\.c' "$f"; then
+                       echo "Removing stale dependencies and objects for 
libc_start1.c"
+                       run rm -f \
+                           "$OBJTOP"/lib/libc/.depend.libc_start1.* \
+                           "$OBJTOP"/lib/libc/libc_start1.*o
+                       break
+               fi
+       done
+fi

Reply via email to