ports/184477: [patch] [bsd.stage.mk] bsd.stage.mk can create a BSD local hierarchy in LINUXBASE
Antoine Brodin
antoine at freebsd.org
Tue Dec 3 18:40:00 UTC 2013
>Number: 184477
>Category: ports
>Synopsis: [patch] [bsd.stage.mk] bsd.stage.mk can create a BSD local hierarchy in LINUXBASE
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: change-request
>Submitter-Id: current-users
>Arrival-Date: Tue Dec 03 18:40:00 UTC 2013
>Closed-Date:
>Last-Modified:
>Originator: Antoine Brodin
>Release: FreeBSD 9.2-RELEASE amd64
>Organization:
none
>Environment:
System: FreeBSD pepperseed.dreadbsd.org 9.2-RELEASE FreeBSD 9.2-RELEASE #0 r255898: Thu Sep 26 22:50:31 UTC 2013 root at bake.isc.freebsd.org:/usr/obj/usr/src/sys/GENERIC amd64
>Description:
When USE_LINUX=yes and PREFIX!=LINUXBASE, bsd.stage.mk creates a BSD local hierarchy in LINUXBASE
This looks inapropriate and create lots of stage orphaned directories.
I don't know what those lines are supposed to fix but the fix is not good.
>How-To-Repeat:
poudriere bulk -t games/dsnake emulators/rtc www/linux-f10-flashplugin11
and watch the failures:
=======================<phase: deinstall >============================
====>> Checking for orphaned files and directories in stage directory (missing from plist)
====>> Files or directories orphaned:
/compat/linux/etc/devd
/compat/linux/etc/man.d
/compat/linux/etc/rc.d
...
>Fix:
With patch below, no orphans (and no problem) building games/dsnake emulators/rtc and www/linux-f10-flashplugin11
--- stage.diff begins here ---
Index: Mk/bsd.stage.mk
===================================================================
--- Mk/bsd.stage.mk (revision 335583)
+++ Mk/bsd.stage.mk (working copy)
@@ -28,12 +28,8 @@
@${MKDIR} ${STAGEDIR}${PREFIX}
.if !defined(NO_MTREE)
@${MTREE_CMD} ${MTREE_ARGS} ${STAGEDIR}${PREFIX} > /dev/null
-.if defined(USE_LINUX) && ${PREFIX} != ${LINUXBASE}
- @${MKDIR} ${STAGEDIR}${LINUXBASE}
- @${MTREE_CMD} ${MTREE_ARGS} ${STAGEDIR}${LINUXBASE} > /dev/null
.endif
.endif
-.endif
# Compress all manpage not already compressed which are not hardlinks
# Find all manpages which are not compressed and are hadlinks, and only get the list of inodes concerned, for each of them compress the first one found and recreate the hardlinks for the others
--- stage.diff ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list