Date: Tue, 24 Feb 2004 03:18:43 +0100 From: Oliver Eikemeier <eikemeier@fillmore-labs.com> To: FreeBSD-gnats-submit@FreeBSD.org Cc: FreeBSD Ports Management Team <portmgr@FreeBSD.org> Subject: ports/63293: bsd.port.mk: OPTIONS interferes with NO_BUILD and NO_INSTALL Message-ID: <403AB483.6020706@fillmore-labs.com> Resent-Message-ID: <200402240220.i1O2K9iH009012@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 63293 >Category: ports >Synopsis: bsd.port.mk: OPTIONS interferes with NO_BUILD and NO_INSTALL >Confidential: no >Severity: non-critical >Priority: medium >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Mon Feb 23 18:20:09 PST 2004 >Closed-Date: >Last-Modified: >Originator: Oliver Eikemeier >Release: FreeBSD 5.1-CURRENT i386 >Organization: Fillmore Labs - http://www.fillmore-labs.com >Environment: System: FreeBSD nuuk.fillmore-labs.com 5.1-CURRENT >Description: When OPTIONS is set and no saved options are found (the first run), bsd.port.mk calls the build and install targets, even when NO_BUILD and NO_INSTALL are set. I suspected something like this, but credits for discovery go to Clement Laforet <sheepkiller@cultdeadsheep.org>. >How-To-Repeat: This port demonstrates the problem reproducible, even though I'm not sure why it does pass the build stage sometimes. # This is a shell archive. Save it in a file, remove anything before # this line, and then unpack it by entering "sh file". Note, it may # create directories; files and directories will be owned by you and # have default permissions. # # This archive contains: # # testport # testport/Makefile # testport/files # testport/files/Makefile # testport/pkg-descr # echo c - testport mkdir -p testport > /dev/null 2>&1 echo x - testport/Makefile sed 's/^X//' >testport/Makefile << 'END-of-testport/Makefile' X# New ports collection makefile for: testport X# Date created: 24 Feb 2004 X# Whom: Oliver Eikemeier X# X# $FreeBSD$ X# X XPORTNAME= testport XPORTVERSION= x XCATEGORIES= misc XDISTFILES= X XMAINTAINER= eik@FreeBSD.org XCOMMENT= Demonstrates interferences between OPTIONS and NO_BUILD, NO_INSTALL X XNO_WRKSUBDIR= yes X XNO_BUILD= yes XNO_INSTALL= yes X XOPTIONS= DUMMY "never mind" off X Xdo-extract: X @${CP} ${FILESDIR}/Makefile ${WRKSRC} X X.include <bsd.port.mk> END-of-testport/Makefile echo c - testport/files mkdir -p testport/files > /dev/null 2>&1 echo x - testport/files/Makefile sed 's/^X//' >testport/files/Makefile << 'END-of-testport/files/Makefile' Xall: X @echo "build should not be called" X @false X Xinstall: X @echo "install should not be called" X @false END-of-testport/files/Makefile echo x - testport/pkg-descr sed 's/^X//' >testport/pkg-descr << 'END-of-testport/pkg-descr' XBuild this port with X make clean rmconfig; make install X XNo matter whether the OPTIONS dialog is acknowledged or Xcanceled, the build and install targets in files/Makefile X(copied to ${WRKSRC}/Makefile should not be executed, Xsince NO_BUILD and NO_INSTALL are set. END-of-testport/pkg-descr exit >Fix: I'm not sure if the dummy targets should be conditionalized on _OPTIONS_OK. Anyway, I might come up with a patch when I had some sleep. A workaround is to add a dummy build or install target in the affected ports. >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?403AB483.6020706>