File warewulf-provision.ppc64le.patch of Package warewulf-provision-gnu12-openmpi4
diff --git i/configure.ac w/configure.ac
index 80d11ba..ffab414 100644
--- i/configure.ac
+++ w/configure.ac
@@ -207,6 +207,7 @@ AS_CASE([$host_cpu],
[x86_64],
[
build_x86_64=yes
+ LOADER=ld-linux
AS_IF([test "x$enable_cross_compile" = "xyes"], [
AC_MSG_NOTICE([cross-compile for aarch64 configured])
CROSS_COMPILE_ARM64=`basename "$CROSS_AARCH64_GCC" gcc`
@@ -216,16 +217,22 @@ AS_CASE([$host_cpu],
[aarch64],
[
build_arm64=yes
+ LOADER=ld-linux
AS_IF([test "x$enable_cross_compile" = "xyes"], [
AC_MSG_NOTICE([cross-compile for x86_64 configured])
CROSS_COMPILE_X86_64=`basename "$CROSS_X86_64_GCC" gcc`
build_x86_64=yes
])
+ ],
+ [ppc64le],
+ [
+ LOADER=ld64
]
)
AC_SUBST(CROSS_COMPILE_X86_64)
AC_SUBST(CROSS_COMPILE_ARM64)
+AC_SUBST(LOADER)
AM_CONDITIONAL(BUILD_X86_64, [test "x$build_x86_64" = "xyes"])
AM_CONDITIONAL(BUILD_ARM64, [test "x$build_arm64" = "xyes"])
diff --git i/initramfs/Makefile.am w/initramfs/Makefile.am
index 16cb387..3daf812 100644
--- i/initramfs/Makefile.am
+++ w/initramfs/Makefile.am
@@ -93,6 +93,12 @@ libarchive:
fi ;\
if [ ! -f "_work/$(LIBARCHIVE_DIR)/" ]; then \
echo "Building libarchive" ;\
+ if [ -f "/usr/lib/rpm/config.guess" ]; then \
+ cp /usr/lib/rpm/config.guess _work/$(LIBARCHIVE_DIR)/config;\
+ fi; \
+ if [ -f "/usr/lib/rpm/config.sub" ]; then \
+ cp /usr/lib/rpm/config.sub _work/$(LIBARCHIVE_DIR)/config;\
+ fi; \
(cd _work/$(LIBARCHIVE_DIR)/; ./configure $(LIBARCHIVE_CONFIGARGS)) ;\
$(MAKE) -C _work/$(LIBARCHIVE_DIR);\
fi ;\
@@ -207,9 +213,9 @@ rootfs: busybox e2fsprogs xfsprogs libarchive parted curl mdadm
if [ -n "@local_mdadm_path@" -a -f "@local_mdadm_path@" ]; then \
cp -av @local_mdadm_path@ rootfs/sbin/mdadm; \
fi
- cp -L --parents /lib*/ld-linux* rootfs/
+ cp -L --parents /lib*/$(LOADER)* rootfs/
cp -L --parents /lib*/libnss_dns* rootfs/
- find rootfs -type f -perm -o+x -print | grep -v ld-linux | xargs ldd | grep "=>" | awk '{print $$3}' | grep "^/" | sort | uniq | while read i; do cp -L --parents $$i rootfs/ && chmod 755 rootfs/$$i; done
+ find rootfs -type f -perm -o+x -print | grep -v $(LOADER) | xargs ldd | grep "=>" | awk '{print $$3}' | grep "^/" | sort | uniq | while read i; do cp -L --parents $$i rootfs/ && chmod 755 rootfs/$$i; done
rm -f rootfs/linuxrc rootfs/lib64/*.la rootfs/lib/*.la rootfs/usr/lib64/*.la rootfs/usr/lib/*.la
rm -rf rootfs/usr/share rootfs/usr/include rootfs/usr/lib/pkgconfig
find -type d \! -perm -u=w -exec chmod u+w {} \;