Date: Sun, 24 Jul 2005 12:07:47 +0200 From: Simon 'corecode' Schubert <corecode@fs.ei.tum.de> To: Maxime Henrion <mux@FreeBSD.org> Cc: cvs-src@FreeBSD.org, Doug Barton <dougb@FreeBSD.org>, cvs-all@FreeBSD.org, src-committers@FreeBSD.org Subject: Re: cvs commit: src ObsoleteFiles.inc Message-ID: <f7e3b7d8af2db993d879ca7e11746f01@fs.ei.tum.de> In-Reply-To: <20050724011629.GK14567@elvis.mu.org> References: <200507231942.j6NJgdks037508@repoman.freebsd.org> <42E2A029.1090404@gmail.com> <42E2DA50.2000205@FreeBSD.org> <20050724011629.GK14567@elvis.mu.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--Apple-Mail-7-11062709 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII; format=flowed On 24.07.2005, at 03:16, Maxime Henrion wrote: > For what it's worth, I'd love to see a mechanism similar to the > following: > > - We ensure every file installed when doing an installworld gets > installed through bsd.*.mk. I thought this was already the case > but ru@ told me it's not. > > - We can then add some kind of special make target, for instance > build-files-list that generates a file with all the files going > to be installed by installworld. > > - At installworld time we install this special file somewhere. I looked into this when I wanted to do this for DragonFly (but I got sidetracked). There are few methods in the tree (at least in DragonFly, I don't think it's completely different in FreeBSD) by which files get installed: - mtree - ${INSTALL} - ln - zic (needs more work) there might be some other things as well, but that's the major part by which about 98% of all files are being covered. This means, after converting all occurences of `ln' to ${LN} (done in DragonFly, tho there are some things you can overlook) and `mtree' to ${MTREE}, ${INSTALL}, ${LN} and ${MTREE} can be replaced by wrapper scripts which parse the parameters and record the created files into some kind of log. Storing these logs in, let's say /var/db/basefiles, let's you find out files which were removed just by looking if a file doesn't appear in the last log anymore. I have to agree that wrapping the commands is a bit hackish, but it basically works. Oh, of course this system also needs a static list of files that were removed previously, so that it can bootstrap (it can only catch files that were removed since the last time you ran install-with-file-logging). cheers simon -- Serve - BSD +++ RENT this banner advert +++ ASCII Ribbon /"\ Work - Mac +++ space for low $$$ NOW!1 +++ Campaign \ / Party Enjoy Relax | http://dragonflybsd.org Against HTML \ Dude 2c 2 the max ! http://golden-apple.biz Mail + News / \ --Apple-Mail-7-11062709 content-type: application/pgp-signature; x-mac-type=70674453; name=PGP.sig content-description: This is a digitally signed message part content-disposition: inline; filename=PGP.sig content-transfer-encoding: 7bit -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.4 (Darwin) iD8DBQFC42h2r5S+dk6z85oRApnmAKDGhalJ8mOWWuxsWQ0yneSZZRT32wCfc3cC vxO17mpHIcOcERJX4BMIGr0= =dvMw -----END PGP SIGNATURE----- --Apple-Mail-7-11062709--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?f7e3b7d8af2db993d879ca7e11746f01>