Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 13 Aug 2005 11:54:11 +0300
From:      Ruslan Ermilov <ru@FreeBSD.org>
To:        Jeremie Le Hen <jeremie@le-hen.org>
Cc:        freebsd-current@FreeBSD.org
Subject:   Re: make distribution and cap_mkdb -l from 5 to 6
Message-ID:  <20050813085411.GA89765@ip.net.ua>
In-Reply-To: <20050812223307.GE45385@obiwan.tataz.chchile.org>
References:  <20050812223307.GE45385@obiwan.tataz.chchile.org>

next in thread | previous in thread | raw e-mail | index | archive | help

--tThc/1wpZn/ma/RB
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Hi,

On Sat, Aug 13, 2005 at 12:33:08AM +0200, Jeremie Le Hen wrote:
> I was giving a try to the sysutils/etcmerge port in order to ease the
> upgrade of /etc from RELENG_5 to RELENG_6.  This revealed me that the
> ``distribution'' target in RELENG_6's src/etc/Makefile calls cap_mkdb(8)
> with either "-l" or "-L" flag, depending on endianess.  Unfortunately
> RELENG_5's cap_mkdb(8) doesn't have this flag and this resulted.
>=20
> I understand that using RELENG_6 sources on RELENG_5 is something quite
> unusual but it's quite disconcerting and prevents me from using
> etcmerge.  I would really like to avoid merging /etc manually since I
> have number of changes in my /etc and number of changes between 5's /etc
> and 6's one are both huge.  Yes, I know mergemaster(8), that's what I
> call ``manually'' :-).
>=20
I don't remember exactly how etcmerge works, but if it calls "make
distribution" from src/etc/, it's in trouble, please go on reading...

> Can this issue be resolved in a way or another ?  I'm not sure using
> ${.OBJDIR}'s cap_mkdb(8) is an option.
>=20
You should be running "make distribution" from under top of the src/
tree, not src/etc/.  This takes care of properly setting the runtime
environment up so that a bootstrapped version of cap_mkdb(8) is used,
besides many other useful things.  We bootstrap cap_mkdb(8) if (this
was copied from Makefile.inc1):

=2Eif ${BOOTSTRAPPING} < 600015
_cap_mkdb=3D	usr.bin/cap_mkdb
=2Eendif

It may also be that for some reason your /usr/include/osreldate.h is
lying about the currently installed version.

To make the long story short...

You can check all of this easily; assuming your sources are in the
kosher location /usr/src, the bootstrapped version of cap_mkdb(8)
capable of running on your host should be sitting ready in:

/usr/obj/usr/src/tmp/legacy/usr/bin/cap_mkdb

(Extrapolate this appropriately to your environment.)


Cheers,
--=20
Ruslan Ermilov
ru@FreeBSD.org
FreeBSD committer

--tThc/1wpZn/ma/RB
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (FreeBSD)

iD8DBQFC/bUzqRfpzJluFF4RAht4AJ4zDtD0Nbf8NjN3yrYfDjUvzkMm+gCffwga
XIUUD7MOpEyUzgw+tdAMar8=
=vEq7
-----END PGP SIGNATURE-----

--tThc/1wpZn/ma/RB--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050813085411.GA89765>