Date: Fri, 26 Nov 2021 11:52:24 GMT From: =?utf-8?Q?Fernando Apestegu=C3=ADa?= <fernape@FreeBSD.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: git: df90aeac24c9 - main - Fix build with -DNO_ROOT Message-ID: <202111261152.1AQBqO2l001185@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch main has been updated by fernape (doc, ports committer): URL: https://cgit.FreeBSD.org/src/commit/?id=df90aeac24c9d3621f294e6638a31499b56f4f6b commit df90aeac24c9d3621f294e6638a31499b56f4f6b Author: Fernando ApesteguĂa <fernape@FreeBSD.org> AuthorDate: 2021-11-26 10:55:50 +0000 Commit: Fernando ApesteguĂa <fernape@FreeBSD.org> CommitDate: 2021-11-26 11:51:08 +0000 Fix build with -DNO_ROOT The inclusion of 0a0f7486413c broke the build with the -DNO_ROOT option. Specifically, that commit adds some relative paths (with `..`) to METALOG that make other tools using that log, fail afterwards (tar, makefs...). It's been argued[1] if this is really something mtree(8) should handle more graciously. In the meantime, fix the breakage but changing the order in which the links are created: first in the parent directory, then in the architecture-specific one. We keep the architecture-specific directories an the links to the parent directories. This is something that we might want to change in the future. This commit is based on a concept patch by avg@. [1] https://lists.freebsd.org/archives/dev-commits-src-all/2021-November/index.html Reported by: bapt@, emaste@ Approved by: avg@ Fixes: 0a0f7486413c Differential Revision: https://reviews.freebsd.org/D33126 --- share/man/man4/man4.aarch64/Makefile | 26 ++++++++++++++++---------- share/man/man4/man4.arm/Makefile | 10 ++++++---- share/man/man4/man4.i386/Makefile | 10 ++++++---- share/man/man4/man4.powerpc/Makefile | 10 ++++++---- usr.sbin/Makefile.amd64 | 5 +++++ usr.sbin/apm/Makefile | 4 ---- 6 files changed, 39 insertions(+), 26 deletions(-) diff --git a/share/man/man4/man4.aarch64/Makefile b/share/man/man4/man4.aarch64/Makefile index 6d0e427e6b28..d1fbced3b0a8 100644 --- a/share/man/man4/man4.aarch64/Makefile +++ b/share/man/man4/man4.aarch64/Makefile @@ -4,6 +4,17 @@ MAN= \ armv8crypto.4 \ + enetc.4 \ + felix.4 \ + rk_gpio.4 \ + rk_grf.4 \ + rk_i2c.4 \ + rk_pinctrl.4 \ + +# Install manpages shared with arm only if not installing manpages +# for all architectures, otherwise arm takes care of installing them. +.if !empty(MAN_ARCH) && ${MAN_ARCH} != "all" +MAN+= \ aw_gpio.4 \ aw_mmc.4 \ aw_rtc.4 \ @@ -11,18 +22,13 @@ MAN= \ aw_spi.4 \ aw_syscon.4 \ bcm283x_pwm.4 \ - enetc.4 \ - felix.4 \ - rk_gpio.4 \ - rk_grf.4 \ - rk_i2c.4 \ - rk_pinctrl.4 \ -# Link files to the parent directory +.endif + +# Link files to the architecture directory. +_ARCH_SUBDIR=aarch64 .for _manpage in ${MAN} -MLINKS+=${_manpage} ../${_manpage} +MLINKS+=${_manpage} ${_ARCH_SUBDIR}/${_manpage} .endfor -MANSUBDIR=/aarch64 - .include <bsd.prog.mk> diff --git a/share/man/man4/man4.arm/Makefile b/share/man/man4/man4.arm/Makefile index 2ac8dbb5fd81..76146f4ebdb7 100644 --- a/share/man/man4/man4.arm/Makefile +++ b/share/man/man4/man4.arm/Makefile @@ -18,11 +18,13 @@ MAN= \ MLINKS= imx_wdog.4 imxwdt.4 MLINKS+= mge.4 if_mge.4 -# Link files to the parent directory +# Link files to the architecture directory +_ARCH_SUBDIR=arm +.for _manpage _link in ${MLINKS} +MLINKS+=${_link} ${_ARCH_SUBDIR}/${_link} +.endfor .for _manpage in ${MAN} -MLINKS+=${_manpage} ../${_manpage} +MLINKS+=${_manpage} ${_ARCH_SUBDIR}/${_manpage} .endfor -MANSUBDIR=/arm - .include <bsd.prog.mk> diff --git a/share/man/man4/man4.i386/Makefile b/share/man/man4/man4.i386/Makefile index e3d2e66ca78d..3dfc5f151f9f 100644 --- a/share/man/man4/man4.i386/Makefile +++ b/share/man/man4/man4.i386/Makefile @@ -21,11 +21,13 @@ MLINKS= CPU_ELAN.4 CPU_SOEKRIS.4 MLINKS+=pae.4 PAE.4 MLINKS+=sbni.4 if_sbni.4 -# Link files to the parent directory +# Link files to the architecture directory +_ARCH_SUBDIR=i386 +.for _manpage _link in ${MLINKS} +MLINKS+=${_link} ${_ARCH_SUBDIR}/${_link} +.endfor .for _manpage in ${MAN} -MLINKS+=${_manpage} ../${_manpage} +MLINKS+=${_manpage} ${_ARCH_SUBDIR}/${_manpage} .endfor -MANSUBDIR=/i386 - .include <bsd.prog.mk> diff --git a/share/man/man4/man4.powerpc/Makefile b/share/man/man4/man4.powerpc/Makefile index aa0e137fcedd..e6ade9778db3 100644 --- a/share/man/man4/man4.powerpc/Makefile +++ b/share/man/man4/man4.powerpc/Makefile @@ -15,11 +15,13 @@ MAN= adb.4 \ snd_davbus.4 \ tsec.4 -# Link files to the parent directory +# Link files to the architecture directory +_ARCH_SUBDIR=powerpc +.for _manpage _link in ${MLINKS} +MLINKS+=${_link} ${_ARCH_SUBDIR}/${_link} +.endfor .for _manpage in ${MAN} -MLINKS+=${_manpage} ../${_manpage} +MLINKS+=${_manpage} ${_ARCH_SUBDIR}/${_manpage} .endfor -MANSUBDIR=/powerpc - .include <bsd.prog.mk> diff --git a/usr.sbin/Makefile.amd64 b/usr.sbin/Makefile.amd64 index d4d185414f41..1f15259eb1ac 100644 --- a/usr.sbin/Makefile.amd64 +++ b/usr.sbin/Makefile.amd64 @@ -2,11 +2,16 @@ # mptable: broken (not 64 bit clean) # pnpinfo: crashes (not really useful anyway) +_ARCH_SUBDIR=amd64 .if ${MK_ACPI} != "no" SUBDIR+= acpi .endif .if ${MK_APM} != "no" SUBDIR+= apm +# Link files to the architecture directory +.for _manpage in ${:!/bin/sh -c "/bin/ls ${_ARCH_SUBDIR}/.8"!:E} +MLINKS+=${_manpage} ${_ARCH_SUBDIR}/${_manpage} +.endfor .endif .if ${MK_BHYVE} != "no" SUBDIR+= bhyve diff --git a/usr.sbin/apm/Makefile b/usr.sbin/apm/Makefile index 27fa0c37d5cf..f52453c62522 100644 --- a/usr.sbin/apm/Makefile +++ b/usr.sbin/apm/Makefile @@ -5,10 +5,6 @@ MAN= apm.8 MLINKS= apm.8 apmconf.8 MANSUBDIR= /${MACHINE_CPUARCH} -# Link files to the parent directory -MLINKS+= apm.8 ../apm.8 -MLINKS+= apmconf.8 ../apmconf.8 - PACKAGE=apm .include <bsd.prog.mk>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202111261152.1AQBqO2l001185>