git: f3e8d5b0e218 - main - devel/arm-none-eabi-newlib: automatically generate pkg-plist

From: Joerg Wunsch <joerg_at_FreeBSD.org>
Date: Fri, 12 Nov 2021 16:59:23 UTC
The branch main has been updated by joerg:

URL: https://cgit.FreeBSD.org/ports/commit/?id=f3e8d5b0e218471634c97b79072dbc43cf472bbf

commit f3e8d5b0e218471634c97b79072dbc43cf472bbf
Author:     Joerg Wunsch <joerg@FreeBSD.org>
AuthorDate: 2021-11-12 16:57:20 +0000
Commit:     Joerg Wunsch <joerg@FreeBSD.org>
CommitDate: 2021-11-12 16:57:20 +0000

    devel/arm-none-eabi-newlib: automatically generate pkg-plist
    
    Now that devel/arm-none-eabi-gcc has options for different multilib
    layouts, the generated tree and thus pkg-plist heavily depends on the
    actual multilib option applied.
    
    It's thus best to automatically create the plist now.
    
    Reviewed by:    kevans
    Differential Revision:  <https://reviews.freebsd.org/D32755>
---
 devel/arm-none-eabi-newlib/Makefile  |  11 ++-
 devel/arm-none-eabi-newlib/pkg-plist | 139 -----------------------------------
 2 files changed, 10 insertions(+), 140 deletions(-)

diff --git a/devel/arm-none-eabi-newlib/Makefile b/devel/arm-none-eabi-newlib/Makefile
index c1f03b0248ab..6371f9f4b86e 100644
--- a/devel/arm-none-eabi-newlib/Makefile
+++ b/devel/arm-none-eabi-newlib/Makefile
@@ -19,10 +19,19 @@ NEWLIB_TARGET?=	arm-none-eabi
 USES=		cpe gmake makeinfo
 CPE_VENDOR=	${PORTNAME}_project
 HAS_CONFIGURE=	yes
-CONFIGURE_ARGS+=	--prefix=${PREFIX} --target="${NEWLIB_TARGET}" --disable-newlib-supplied-syscalls
+CONFIGURE_ARGS+=	--prefix=${PREFIX} \
+		--target="${NEWLIB_TARGET}" \
+		--disable-newlib-supplied-syscalls \
+		--enable-multilib
 
 # Disable installation of .info files and fix includedir reference.
 post-patch:
 	@${REINPLACE_CMD} -E 's/^(install.*:.*)install-info(.*)/\1\2/' ${WRKSRC}/etc/Makefile.in
 
+post-install:
+	@${FIND} ${STAGEDIR} ! -type d | \
+		${SED} 's,${STAGEDIR}${PREFIX}/,,' >> ${TMPPLIST}
+	@${FIND} -ds ${STAGEDIR}${PREFIX}/${NEWLIB_TARGET} -type d -empty | \
+		${SED} 's,${STAGEDIR}${PREFIX}/,, ; s,^,@dir ,' >> ${TMPPLIST}
+
 .include <bsd.port.mk>
diff --git a/devel/arm-none-eabi-newlib/pkg-plist b/devel/arm-none-eabi-newlib/pkg-plist
deleted file mode 100644
index b475212085ef..000000000000
--- a/devel/arm-none-eabi-newlib/pkg-plist
+++ /dev/null
@@ -1,139 +0,0 @@
-arm-none-eabi/include/_ansi.h
-arm-none-eabi/include/_newlib_version.h
-arm-none-eabi/include/_syslist.h
-arm-none-eabi/include/alloca.h
-arm-none-eabi/include/ar.h
-arm-none-eabi/include/argz.h
-arm-none-eabi/include/assert.h
-arm-none-eabi/include/complex.h
-arm-none-eabi/include/ctype.h
-arm-none-eabi/include/dirent.h
-arm-none-eabi/include/envlock.h
-arm-none-eabi/include/envz.h
-arm-none-eabi/include/errno.h
-arm-none-eabi/include/fastmath.h
-arm-none-eabi/include/fcntl.h
-arm-none-eabi/include/fnmatch.h
-arm-none-eabi/include/getopt.h
-arm-none-eabi/include/glob.h
-arm-none-eabi/include/grp.h
-arm-none-eabi/include/iconv.h
-arm-none-eabi/include/ieeefp.h
-arm-none-eabi/include/inttypes.h
-arm-none-eabi/include/langinfo.h
-arm-none-eabi/include/libgen.h
-arm-none-eabi/include/limits.h
-arm-none-eabi/include/locale.h
-arm-none-eabi/include/machine/_arc4random.h
-arm-none-eabi/include/machine/_default_types.h
-arm-none-eabi/include/machine/_types.h
-arm-none-eabi/include/machine/ansi.h
-arm-none-eabi/include/machine/endian.h
-arm-none-eabi/include/machine/fastmath.h
-arm-none-eabi/include/machine/ieeefp.h
-arm-none-eabi/include/machine/malloc.h
-arm-none-eabi/include/machine/param.h
-arm-none-eabi/include/machine/setjmp-dj.h
-arm-none-eabi/include/machine/setjmp.h
-arm-none-eabi/include/machine/stdlib.h
-arm-none-eabi/include/machine/termios.h
-arm-none-eabi/include/machine/time.h
-arm-none-eabi/include/machine/types.h
-arm-none-eabi/include/malloc.h
-arm-none-eabi/include/math.h
-arm-none-eabi/include/newlib.h
-arm-none-eabi/include/paths.h
-arm-none-eabi/include/pthread.h
-arm-none-eabi/include/pwd.h
-arm-none-eabi/include/reent.h
-arm-none-eabi/include/regdef.h
-arm-none-eabi/include/regex.h
-arm-none-eabi/include/sched.h
-arm-none-eabi/include/search.h
-arm-none-eabi/include/setjmp.h
-arm-none-eabi/include/signal.h
-arm-none-eabi/include/spawn.h
-arm-none-eabi/include/stdatomic.h
-arm-none-eabi/include/stdint.h
-arm-none-eabi/include/stdio.h
-arm-none-eabi/include/stdio_ext.h
-arm-none-eabi/include/stdlib.h
-arm-none-eabi/include/string.h
-arm-none-eabi/include/strings.h
-arm-none-eabi/include/sys/_default_fcntl.h
-arm-none-eabi/include/sys/_intsup.h
-arm-none-eabi/include/sys/_sigset.h
-arm-none-eabi/include/sys/_stdint.h
-arm-none-eabi/include/sys/_timespec.h
-arm-none-eabi/include/sys/_timeval.h
-arm-none-eabi/include/sys/_types.h
-arm-none-eabi/include/sys/cdefs.h
-arm-none-eabi/include/sys/config.h
-arm-none-eabi/include/sys/custom_file.h
-arm-none-eabi/include/sys/dir.h
-arm-none-eabi/include/sys/dirent.h
-arm-none-eabi/include/sys/errno.h
-arm-none-eabi/include/sys/fcntl.h
-arm-none-eabi/include/sys/features.h
-arm-none-eabi/include/sys/file.h
-arm-none-eabi/include/sys/iconvnls.h
-arm-none-eabi/include/sys/lock.h
-arm-none-eabi/include/sys/param.h
-arm-none-eabi/include/sys/queue.h
-arm-none-eabi/include/sys/reent.h
-arm-none-eabi/include/sys/resource.h
-arm-none-eabi/include/sys/sched.h
-arm-none-eabi/include/sys/select.h
-arm-none-eabi/include/sys/signal.h
-arm-none-eabi/include/sys/stat.h
-arm-none-eabi/include/sys/stdio.h
-arm-none-eabi/include/sys/string.h
-arm-none-eabi/include/sys/syslimits.h
-arm-none-eabi/include/sys/time.h
-arm-none-eabi/include/sys/timeb.h
-arm-none-eabi/include/sys/times.h
-arm-none-eabi/include/sys/timespec.h
-arm-none-eabi/include/sys/tree.h
-arm-none-eabi/include/sys/types.h
-arm-none-eabi/include/sys/unistd.h
-arm-none-eabi/include/sys/utime.h
-arm-none-eabi/include/sys/wait.h
-arm-none-eabi/include/tar.h
-arm-none-eabi/include/termios.h
-arm-none-eabi/include/tgmath.h
-arm-none-eabi/include/threads.h
-arm-none-eabi/include/time.h
-arm-none-eabi/include/unctrl.h
-arm-none-eabi/include/unistd.h
-arm-none-eabi/include/utime.h
-arm-none-eabi/include/utmp.h
-arm-none-eabi/include/wchar.h
-arm-none-eabi/include/wctype.h
-arm-none-eabi/include/wordexp.h
-arm-none-eabi/lib/aprofile-validation.specs
-arm-none-eabi/lib/aprofile-ve.specs
-arm-none-eabi/lib/cpu-init/rdimon-aem.o
-arm-none-eabi/lib/crt0.o
-arm-none-eabi/lib/iq80310.specs
-arm-none-eabi/lib/libc.a
-arm-none-eabi/lib/libg.a
-arm-none-eabi/lib/libgloss-linux.a
-arm-none-eabi/lib/libm.a
-arm-none-eabi/lib/libnosys.a
-arm-none-eabi/lib/librdimon.a
-arm-none-eabi/lib/librdpmon.a
-arm-none-eabi/lib/linux-crt0.o
-arm-none-eabi/lib/linux.specs
-arm-none-eabi/lib/nano.specs
-arm-none-eabi/lib/nosys.specs
-arm-none-eabi/lib/pid.specs
-arm-none-eabi/lib/rdimon-crt0.o
-arm-none-eabi/lib/rdimon.specs
-arm-none-eabi/lib/rdpmon-crt0.o
-arm-none-eabi/lib/rdpmon.specs
-arm-none-eabi/lib/redboot-crt0.o
-arm-none-eabi/lib/redboot-syscalls.o
-arm-none-eabi/lib/redboot.ld
-arm-none-eabi/lib/redboot.specs
-@dir arm-none-eabi/include/bits
-@dir arm-none-eabi/include/rpc