ports/172547: bsd.destdir.mk fails when DESTDIR is set

Rob pr at somerandom.net
Tue Oct 9 22:30:25 UTC 2012


>Number:         172547
>Category:       ports
>Synopsis:       bsd.destdir.mk fails when DESTDIR is set
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Tue Oct 09 22:30:24 UTC 2012
>Closed-Date:
>Last-Modified:
>Originator:     Rob
>Release:        CURRENT r241195
>Organization:
>Environment:
FreeBSD xs36v 10.0-CURRENT FreeBSD 10.0-CURRENT #3 r241195: Fri Oct  5 23:09:26 UTC 2012     root at nfsboot:/usr/obj/usr/src/sys/CUSTOM.shuttle  amd64

>Description:
When bsd.destdir.mk iterates over $_DESTDIR_MOUNT_LIST it runs:

# realpath $_destdir/__temp__

Due to changes in realpath (prior to June 2012) this causes a non-zero exit.  This then causes the make to fail.

>How-To-Repeat:
On a freshly built installation, attempt to perform a 

# make config DESTDIR=/usr/local/jails/imap1
===>  Creating some important subdirectories
realpath: /usr/local/jails/imap1/___temp___: No such file or directory
*** [do-chroot] Error code 1

>Fix:
Change /usr/ports/Mk/bsd.destdir.mk

_full_dest_path=`${REALPATH} $${_destdir}/$${_dest_path}`; \

to:

_full_dest_path=`${REALPATH} -q $${_destdir}/$${_dest_path} || :`; \


This may not be the proper fix, but it works around the issue.

>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-ports-bugs mailing list