I have been using Poudriere for a number of years with a patch method that applies patches directly to a custom ports tree. I would like to use the extra patches method that appears to be in Poudriere as I think it will make it easier for me to manage my own local customizations in git.
I am using a 'jail' hook to create a local patch directory for the jail and this appears to be working OK. However, the process that Poudriere 3.3.6 uses to actually apply my extra patches always fails. I used this guide for info on the hook required.
My make.conf does not mention the patch by name, it loads all patches that start with 'patch-' from the named directory. The log shows this is working as my directory for the patch being tested is /local-patches/nss and the patch file that Poudriere finds inside it is 'patch-Makefile_disable-neon-on-armv6'. However, it fails to patch the code when used by Poudriere.
If I apply the patch directly to my ports-tree outside of Poudriere it works fine.
My patch looks like this:
If you are using extra patches with Poudriere can you see what I have done wrong?
I am using a 'jail' hook to create a local patch directory for the jail and this appears to be working OK. However, the process that Poudriere 3.3.6 uses to actually apply my extra patches always fails. I used this guide for info on the hook required.
Code:
=======================<phase: patch >============================
===> Patching for nss-3.61
===> Applying extra patch patches for nss-3.61 from /local-patches/nss
1 out of 1 hunks failed--saving rejects to Makefile.rej
===> FAILED Applying extra patch patch-Makefile_disable-neon-on-armv6
===> FAILED to apply cleanly extra patch patch(es) patch-Makefile_disable-neon-on-armv6
*** Error code 1
Stop.
make: stopped in /usr/ports/security/nss
=>> Cleaning up wrkdir
===> Cleaning for nss-3.61
build of security/nss | nss-3.61 ended at Mon Jan 25 18:52:25 GMT 2021
build time: 00:00:41
!!! build failure encountered !!!
If I apply the patch directly to my ports-tree outside of Poudriere it works fine.
My patch looks like this:
Code:
--- Makefile
+++ Makefile
@@ -69,6 +69,10 @@
.endif
.endif
+.if ${ARCH} == armv6
+MAKE_ENV+= NSS_DISABLE_ARM32_NEON=1
+.endif
+
.if ${OPSYS} == FreeBSD && ${ARCH} == amd64
USE_BINUTILS= # intel-gcm.s
CC+= -B${LOCALBASE}/bin
If you are using extra patches with Poudriere can you see what I have done wrong?