Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 14 Apr 1999 08:33:04 -0700 (PDT)
From:      dima@server.ru
To:        freebsd-gnats-submit@freebsd.org
Subject:   ports/11134: existense of /usr/obj/usr/ports/shells/bash2 breakes the ports building scheme for the bash2 port
Message-ID:  <19990414153304.8A49E14EF0@hub.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         11134
>Category:       ports
>Synopsis:       existense of /usr/obj/usr/ports/shells/bash2 breakes the ports building scheme for the bash2 port
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Wed Apr 14 08:40:00 PDT 1999
>Closed-Date:
>Last-Modified:
>Originator:     Dmitry Kazarov
>Release:        RELENG_3
>Organization:
Server Inc
>Environment:
>Description:
If make (1) finds /usr/obj`pwd` dir it silently chdir there and sets MAKEFILE=`pwd`/Makefile instead of MAKEFILE=Makefile. This brakes normal behavior of 'do-build' and 'do-install' targets if the port's Makefile does not set MAKEFILE variable.

Setting WRKDIRPREFIX to /usr/obj leads to this problem too.
>How-To-Repeat:
cd /usr/ports/shells/bash2
mkdir -p /usr/obj`pwd`
make -n do-build

It will produce something like:

(cd /usr/ports/shells/bash2/work/bash-2.02.1; /usr/bin/env ...
make -f /usr/ports/shells/bash2/Makefile all)

And will exit with error in the best case.
>Fix:
There are 4 possible solutions to this problem:
 1. Change default behavior of make (1) to not to change curdir whitout special option specified.
 2. Use PORT_MAKEFILE variable in the ports Makefiles and /usr/ports/Mk/* instead of MAKEFILE var. 
 3. Explicitly set MAKEFILE=Makefile in all ports that use standard file name.
 4. Add this warning.
DIREXISTS!= test -d /usr/obj${.CURDIR} && echo YES
.if ${DIREXISTS} == "YES"
 @${ECHO_MSG} "You can not compile this port until /usr/obj${.CURDIR} directory exists"
 @${ECHO_MSG} "Delete it before building the port"
 @${FALSE}
.endif

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


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19990414153304.8A49E14EF0>