devel/root, which I am the maintainer of, fails on various releases of FreeBSD in the staging phase on the FreeBSD package build server: - https://pkg-status.freebsd.org/ampere2/data/main-arm64-default/p65c6f35619ce_s4883f347f6/logs/root-6.26.10.log - https://pkg-status.freebsd.org/ampere3/data/131arm64-default/7401c1f88759/logs/root-6.26.10.log - https://pkg-status.freebsd.org/ampere3/data/131arm64-default/08587f681899/logs/root-6.26.10.log I do not, myself, have access to an arm64 system, and it is not immediately obvious to me what goes wrong. In all three of the above cases, staging seems to fail immediately with the output "=========================================================================== =======================<phase: stage >============================ ===> Staging for root-6.26.10 ===> Generating temporary packing list sed: 1: "s!%%!g ": unescaped newline inside substitute pattern *** Error code 1" The log up until this point indicates to me that the port is otherwise built correctly, if I compare to similar logs on amd64 architecture. Any ideas on what might fix this?
(In reply to Erik Jensen from comment #0) Should that sed error related to: --- .if ${ARCH} == "aarch64" NOT_INSTALLED_ON_AARCH64= "@comment " AARCH64_PCM_SUFFIX= "_rdict" .else NOT_INSTALLED_ON_AARCH64= "" AARCH64_PCM_SUFFIX= "" .endif --- ? You are using "tabs" in variables/value inside an .if condition. Porter's handbook example is: --- .if ${PORT_OPTIONS:MOPT1} PLIST_SUB+= OPT1="" NO_OPT1="@comment " SUB_LIST+= OPT1="" NO_OPT1="@comment " .else PLIST_SUB+= OPT1="@comment " NO_OPT1="" SUB_LIST+= OPT1="@comment " NO_OPT1="" .endif --- Could you check it? You can force a similar condition on amd64 to check if it is possible to replicate the sed error.
Thanks for the help. I believe I managed to fix it on my end. A new release of ROOT has just landed, so I will apply this fix to my upcoming update of the port.
Nice! Please add me to CC when PR is created for the update. Cheers