From owner-cvs-all@FreeBSD.ORG Thu Dec 23 20:28:58 2004 Return-Path: Delivered-To: cvs-all@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 54F9416A4CF for ; Thu, 23 Dec 2004 20:28:58 +0000 (GMT) Received: from mail3.speakeasy.net (mail3.speakeasy.net [216.254.0.203]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7E0F243D48 for ; Thu, 23 Dec 2004 20:28:57 +0000 (GMT) (envelope-from jhb@FreeBSD.org) Received: (qmail 31376 invoked from network); 23 Dec 2004 20:28:57 -0000 Received: from dsl027-160-063.atl1.dsl.speakeasy.net (HELO server.baldwin.cx) ([216.27.160.63]) (envelope-sender ) encrypted SMTP for ; 23 Dec 2004 20:28:56 -0000 Received: from [10.50.41.243] (gw1.twc.weather.com [216.133.140.1]) (authenticated bits=0) by server.baldwin.cx (8.12.11/8.12.11) with ESMTP id iBNKSqx3062319; Thu, 23 Dec 2004 15:28:53 -0500 (EST) (envelope-from jhb@FreeBSD.org) From: John Baldwin To: Paul Richards Date: Thu, 23 Dec 2004 14:31:34 -0500 User-Agent: KMail/1.6.2 References: <200412201546.iBKFkuTK047592@repoman.freebsd.org> <20041220212838.GA89640@ip.net.ua> <20041221003754.GA778@myrddin.originative.co.uk> In-Reply-To: <20041221003754.GA778@myrddin.originative.co.uk> MIME-Version: 1.0 Content-Disposition: inline Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Message-Id: <200412231431.34459.jhb@FreeBSD.org> X-Spam-Checker-Version: SpamAssassin 2.63 (2004-01-11) on server.baldwin.cx cc: cvs-src@FreeBSD.org cc: src-committers@FreeBSD.org cc: Ruslan Ermilov cc: cvs-all@FreeBSD.org cc: Paul Richards Subject: Re: cvs commit: src/share/mk bsd.pkg.mk bsd.prog.mk X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Dec 2004 20:28:58 -0000 On Monday 20 December 2004 07:37 pm, Paul Richards wrote: > On Mon, Dec 20, 2004 at 11:28:38PM +0200, Ruslan Ermilov wrote: > > On Mon, Dec 20, 2004 at 03:52:00PM +0000, Paul Richards wrote: > > > On Mon, Dec 20, 2004 at 03:46:56PM +0000, Paul Richards wrote: > > > > paul 2004-12-20 15:46:56 UTC > > > > > > > > FreeBSD src repository > > > > > > > > Modified files: > > > > share/mk bsd.prog.mk > > > > Added files: > > > > share/mk bsd.pkg.mk > > > > Log: > > > > If PORTNAME is set in a system Makefile then hook into the ports > > > > mechanisms to allow a package to be created. This paves the way > > > > for packaging the main tree. > > > > > > This is 90% working, I can create packages in the src tree by adding > > > the following: > > > > > > e.g for cat > > > > > > PROG= cat > > > PORTNAME=cat > > > PORTVERSION= 1 > > > PORTREVISION= 1 > > > CATEGORIES=bin > > > > > > There are some loose ends though that need tidying up, particularly > > > clashes with some main targets in the ports makefile. I could do > > > with some ports people to help clean things up but decided it was > > > time to commit it to get other people involved. It's a non-intrusive > > > addition at the moment until it's switched on in a Makefile. > > > > I think 90% is overestimation. This doesn't seem to handle FILES, > > SCRIPTS, etc., at all that are so common in BSD makefiles. Or am > > I wrong? I like the idea though... > > You're probably right. I've got a plan to add an option to install > that takes a package name and generates the plist as it does the > install so that things work properly. My initial aim was to show that > it's actually pretty simple to integrate the ports makefile > infrastructure into the main BSD mk files. > > I've discussed offline with Colin a little bit and his approach is > very different. My motivation is that I use the BSD mk files a lot in > third party code, since it's a really nice development infrastructure > and I wanted to be able to combine using the BSD mk files and also > having an easy way to create packages. > > For that reason I wanted a solution that is not tied to the system > build mechanism, which Colin's proposal is, but instead allows you > to use the excellent build env that FreeBSD has for developing code > that is outside of the FreeBSD tree. This approach allows that but > I accept that there's a fair bit more to do before it's finished. > > I'm hoping that someone who understands our mk files better than I > do, especially the ports side of things, can develop the concept > further so that it's more polished. > > I'll be working on the install patches next since that's a piece of > the solution that needs doing, so if someone picks up the mk files > part of it I'd be very grateful. I do this for TWC software, but the way that I do it is to do a make install into a destination tree via DESTDIR and then use find to generate my plist from that when I build the package. -- John Baldwin <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve" = http://www.FreeBSD.org