From owner-freebsd-ports@FreeBSD.ORG Fri Oct 4 16:33:15 2013 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 6CD143F4 for ; Fri, 4 Oct 2013 16:33:15 +0000 (UTC) (envelope-from freebsd@grem.de) Received: from mail.grem.de (outcast.grem.de [213.239.217.27]) by mx1.freebsd.org (Postfix) with SMTP id 8E8D027F1 for ; Fri, 4 Oct 2013 16:33:13 +0000 (UTC) Received: (qmail 74594 invoked by uid 89); 4 Oct 2013 16:26:31 -0000 Received: from unknown (HELO bsd64.grem.de) (mg@grem.de@194.97.158.66) by mail.grem.de with ESMTPA; 4 Oct 2013 16:26:31 -0000 Date: Fri, 4 Oct 2013 18:26:30 +0200 From: Michael Gmelin To: Paul Schmehl Subject: Re: Suddenly STAGE appeared Message-ID: <20131004182630.12ba4a2d@bsd64.grem.de> In-Reply-To: <5F769FBBEC07BCDA69ECA2EC@localhost> References: <47D7F8B7DB949AB75F5FDE87@localhost> <20131004163557.1354d083@bsd64.grem.de> <5F769FBBEC07BCDA69ECA2EC@localhost> X-Mailer: Claws Mail 3.9.2 (GTK+ 2.24.18; amd64-portbld-freebsd9.1) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Cc: FreeBSD Ports X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 04 Oct 2013 16:33:15 -0000 On Fri, 04 Oct 2013 11:03:29 -0500 Paul Schmehl wrote: > --On October 4, 2013 4:35:57 PM +0200 Michael Gmelin > wrote: > > > On Fri, 04 Oct 2013 09:22:25 -0500 > > Paul Schmehl wrote: > > > >> Or did I miss the announcement? > >> > >> Is there a doc that explains STAGE and how to convert a port to the > >> new system? Why STAGE was created? What it's purpose is? > >> > >> This is all very new to me, and I have 23 ports to worry about. > >> > > > > > > See > > http://lists.freebsd.org/pipermail/freebsd-ports-announce/2013-October/00 > > 0067.html > > > > and the discussion here > > http://lists.freebsd.org/pipermail/freebsd-ports/2013-October/086346.html > > Now it make sense. I have a port that is failing to build on 10.0 > because of CLANG. I don't have a 10.0 install, and it builds fine > with GCC. So I updated the port to use USE_GCC= yes, and I was asked > to convert the port to use STAGE. Left me scratching my head, > because this was all before the announcement. > > And I'm having problems building the port now - and wondering if I > should just abandon my ports because the new system is confusing to > me. All this transitional stuff is a lot to grasp when you've been > building ports successfully for a while and suddenly nothing works. > > For example, make makeplist doesn't actually make a pkg-plist file on > my system. > > # make makeplist > bin/sancp > etc/rc.d/sancp > etc/sancp.conf.dist > > But no pkg-plist file is created. > > WTH??? > > DOCS no longer build properly, and I have no clue why? > > # make install > ===> Building package for sancp-1.6.1_5 > Creating package > /usr/ports/security/sancp-update/sancp/work/sancp-1.6.1_5.tbz > Registering depends:. > Creating bzip'd tar ball in > '/usr/ports/security/sancp-update/sancp/work/sancp-1.6.1_5.tbz' > tar: share/doc/sancp/CHANGES: Cannot stat: No such file or directory > tar: share/doc/sancp/INSTALL: Cannot stat: No such file or directory > tar: share/doc/sancp/ISSUES: Cannot stat: No such file or directory > tar: share/doc/sancp/README: Cannot stat: No such file or directory > tar: share/doc/sancp/SETUP: Cannot stat: No such file or directory > tar: share/doc/sancp/fields.LIST: Cannot stat: No such file or > directory tar: Error exit delayed from previous errors. > pkg_create: make_dist: tar command failed with code 256 > *** [do-package] Error code 1 > > Stop in /usr/ports/security/sancp-update/sancp. > > The Makefile has this: > PORTDOCS= CHANGES INSTALL ISSUES \ > README SETUP fields.LIST > > The docs are actually in ${WRKSRC}/doc, so I tried adding doc/ and > ${WRKSRC}/doc, but neither worked. I tried adding > %%PORTDOCS%%/docname to pkg-plist, but that failed as well. So now > I'm at a complete loss to know how to get the DOCS to work. > > If you're going to make changes to the ports system and expect us > non-programmers to successfully grasp how all the changes get > implemented, it would be very helpful to have a HOWTO page the > explains the changes required in understandable detail. The current > page - - is rather cryptic > and open to interpretation. > > How do I list PORTDOCS so the build nows where to find them? > Previously we used .if !${NOPORTDOCS} and told INSTALL to descend > into the doc directory to fetch the docs. Then we changed to .if > ${OPTIONS:MDOCS} and did the same. Now I"m told I don't need that > section at all, but obviously, without out, the build can't figure > out where the docs are so it fails. > > All of this should be anticipated and documented BEFORE these changes > are rolled out and we're required to implement them or you can expect > lots of frustration and people dropping ports. > > I get that you're trying to do things in a better, more robust way, > but communication is key, and that communication has to be detailed > and understandable so us dummies can implement it. > I have to agree. I love the new features in the ports system, after extreme stability (almost stagnation) for almost a decade and most of these things make a lot of sense to me. Especially staging is a must have feature and I'm happy we finally got that. That said, it would be good if documentation could keep up to give port maintainers a chance to convert their ports in a time efficient and non-frustrating manner. Not contributing any of this myself, I would suggest: 1. For every change, have a conversion howto in the FreeBSD wiki 2. Only roll out changes if they're covered in the English version of the Porter's Handbook Cheers, Michael -- Michael Gmelin