From owner-freebsd-ports@FreeBSD.ORG Mon Oct 29 21:03:11 2007 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id F0ECC16A417 for ; Mon, 29 Oct 2007 21:03:11 +0000 (UTC) (envelope-from Cy.Schubert@komquats.com) Received: from pd4mo2so.prod.shaw.ca (idcmail-mo1so.shaw.ca [24.71.223.10]) by mx1.freebsd.org (Postfix) with ESMTP id CD16413C48A for ; Mon, 29 Oct 2007 21:03:11 +0000 (UTC) (envelope-from Cy.Schubert@komquats.com) Received: from pd2mr6so.prod.shaw.ca (pd2mr6so-qfe3.prod.shaw.ca [10.0.141.9]) by l-daemon (Sun ONE Messaging Server 6.0 HotFix 1.01 (built Mar 15 2004)) with ESMTP id <0JQO00F9DVC7A560@l-daemon> for freebsd-ports@freebsd.org; Mon, 29 Oct 2007 13:55:19 -0600 (MDT) Received: from pn2ml9so.prod.shaw.ca ([10.0.121.7]) by pd2mr6so.prod.shaw.ca (Sun Java System Messaging Server 6.2-7.05 (built Sep 5 2006)) with ESMTP id <0JQO00NCKVC65B30@pd2mr6so.prod.shaw.ca> for freebsd-ports@freebsd.org; Mon, 29 Oct 2007 13:55:19 -0600 (MDT) Received: from spqr.komquats.com ([24.68.216.215]) by l-daemon (Sun ONE Messaging Server 6.0 HotFix 1.01 (built Mar 15 2004)) with ESMTP id <0JQO00BKYVC53340@l-daemon> for freebsd-ports@freebsd.org; Mon, 29 Oct 2007 13:55:17 -0600 (MDT) Received: from cwsys.cwsent.com (cwsys [10.1.1.1]) by spqr.komquats.com (Postfix) with ESMTP id 51C42279AF; Mon, 29 Oct 2007 11:55:16 -0800 (PST) Received: from cwsys (localhost [127.0.0.1]) by cwsys.cwsent.com (8.14.1/8.14.1) with ESMTP id l9TJtG2x075845; Mon, 29 Oct 2007 11:55:16 -0800 X-URL: http://www.komquats.com/ Date: Mon, 29 Oct 2007 12:55:16 -0700 From: Cy Schubert In-reply-to: Message from Pietro Cerutti "of Mon, 29 Oct 2007 20:21:59 BST." <472632D7.3@gahr.ch> Sender: Cy.Schubert@komquats.com X-Sender: cy@cwsent.com To: Pietro Cerutti Message-id: <200710291955.l9TJtG2x075845@cwsys.cwsent.com> MIME-version: 1.0 X-Mailer: exmh version 2.7.2 01/07/2005 with nmh-1.2 Content-type: text/plain; charset=us-ascii X-os: FreeBSD Cc: freebsd-ports@freebsd.org Subject: Re: sysutils/screen -- INFO issue X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Cy Schubert List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Oct 2007 21:03:12 -0000 In message <472632D7.3@gahr.ch>, Pietro Cerutti writes: > This is an OpenPGP/MIME signed message (RFC 2440 and 3156) > --------------enig25037A9EB2B21A45B2ACF21A > Content-Type: text/plain; charset=UTF-8 > Content-Transfer-Encoding: quoted-printable > > Dear Cy, dear list > > here I am to talk about the INFO issue of sysutils/screen [screen]. > > To summarize: > screen has an option to [en|dis]able installation of an INFO page. > If the option is set, WITH_INFO gets set accordingly, otherwise the > port's Makefile sets the make argument NO_INFO. > In turn, ${WRKSRC}/doc/Makefile checks for NO_INFO, and if it's not set, > it prepares the INFO page for installation by running > makeinfo --no-split ./screen.texinfo -o screen.info > > The problem is that make.conf(5) documents the variable NO_INFO under > the section "BUILDING THE WORLD - The following list provides a name and > short description for variables that are used during the world build". > > I think here we have a namespace collision problem for the variable NO_IN= > FO. > > If NO_INFO is set in make.conf and the WITH_INFO option is enabled while > building screen, ${WRKSRC}/doc/Makefile won't prepare the info page but > the port's Makefile will try to install it anyway. This leads to a "file > not found" build error: > > install-info --quiet /usr/local/info/screen.info /usr/local/info/dir > install-info: No such file or directory for /usr/local/info/screen.info > *** Error code 1 > > I suggest that we change ${WRKSRC}/doc/Makefile to check for WITH_INFO > (used within ports) instead of !NO_INFO (used while building the world). > In addition, we should change the port's Makefile to set the make > argument WITH_INFO if the option was chosen instead of setting NO_INFO > it it wasn't. > > The same whole issue exists for the MAN page, for which I suggest the > same modifications in the port's Makefile and in ${WRKSRC}/doc/Makefile. > > The following patches to the port's Makefile and for > files/patch-doc_Makefile.in implement the changes discussed above. > > --- Makefile.orig 2007-10-29 19:18:41.000000000 +0100 > +++ Makefile 2007-10-29 20:15:20.000000000 +0100 > @@ -31,16 +31,14 @@ > GNU_CONFIGURE=3D yes > .if defined(WITH_MAN) > MAN1=3D screen.1 > -.else > -MAKE_ARGS+=3D -DNO_MAN > +MAKE_ARGS+=3D -DWITH_MAN > .endif > .if defined(WITH_INFO) > .if !exists(/usr/bin/install-info) > RUN_DEPENDS+=3D install-info:${PORTSDIR}/print/texinfo > .endif > INFO=3D screen > -.else > -MAKE_ARGS+=3D -DNO_INFO > +MAKE_ARGS+=3D -DWITH_INFO > .endif > > .if ${ARCH} =3D=3D "alpha" > --- files/patch-doc_Makefile.in.orig 2007-10-29 19:40:13.000000000 +0100 > +++ files/patch-doc_Makefile.in 2007-10-29 20:11:43.000000000 +0100 > @@ -4,10 +4,10 @@ > $(MAKEINFO) $(srcdir)/screen.texinfo -o screen.info > > install: installdirs > -+.if !defined(NO_MAN) > ++.if defined(WITH_MAN) > $(INSTALL_DATA) $(srcdir)/screen.1 $(DESTDIR)$(mandir)/man1/screen.1 > +.endif > -+.if !defined(NO_INFO) > ++.if defined(WITH_INFO) > -$(MAKE) screen.info > -if test -f screen.info; then d=3D.; else d=3D$(srcdir); fi; \ > if test -f $$d/screen.info; then \ > @@ -23,10 +23,10 @@ > > installdirs: > - $(srcdir)/../etc/mkinstalldirs $(DESTDIR)$(mandir)/man1 > $(DESTDIR)$(infodir) > -+.if !defined(NO_MAN) > ++.if defined(WITH_MAN) > + $(srcdir)/../etc/mkinstalldirs $(DESTDIR)$(mandir)/man1 > +.endif > -+.if !defined(NO_INFO) > ++.if defined(WITH_INFO) > + $(srcdir)/../etc/mkinstalldirs $(DESTDIR)$(infodir) > +.endif > > > I would greatly appreciate input / clarification / feedback / ideas on > the whole story before filling a PR. What you're discussing is renaming NO_INFO and NO_MAN to WITHOUT_INFO and WITHOUT_MAN (or comparing for non-definition of WITH_MAN and WITH_INFO). Agreed something needs to be done about the namespace collision. There has been some discussion of make.conf files for src/ports/doc/etc, which I believe didn't result in any decision being made. -- Cheers, Cy Schubert FreeBSD UNIX: Web: http://www.FreeBSD.org e**(i*pi)+1=0