Date: Wed, 11 Jun 2003 21:01:22 +0300 From: Ruslan Ermilov <ru@FreeBSD.org> To: "Daniel C. Sobral" <dcs@tcoip.com.br> Cc: hackers <hackers@FreeBSD.org> Subject: Re: build-tools and sed Message-ID: <20030611180122.GC14100@sunbay.com> In-Reply-To: <3EE76761.1030103@tcoip.com.br> References: <3EE76761.1030103@tcoip.com.br>
next in thread | previous in thread | raw e-mail | index | archive | help
--1sNVjLsmu1MXqwQ/
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
On Wed, Jun 11, 2003 at 02:31:13PM -0300, Daniel C. Sobral wrote:
> Shouldn't sed be part of the build tools?
>=20
No. build-tools are a different beastie; they are the tools
that are only built during buildworld to "build" something
else. sed(1) isn't such a tool. Yes, it can be put under
the bootstrap-tools if there's some backward incompatibility
it in, but there's just no reason to do it right now. Please
see below for a further explanation.
> It's used in src//gnu/usr.bin/binutils/libbfd/Makefile, at the very least:
>=20
> targmatch.h: targmatch.sed config.bfd
> sed -f ${.ALLSRC:M*.sed} ${.ALLSRC:M*.bfd} > ${.TARGET}
>=20
> config.h: config.h.fbsd
> .if ${TARGET_ARCH} =3D=3D "i386"
> sed -e 's,!!TRAD_HEADER!!,"hosts/i386bsd.h",g' ${.ALLSRC} >=20
> ${.TARGET}
> .else
> sed -e 's,!!TRAD_HEADER!!,,g' ${.ALLSRC} > ${.TARGET}
> .endif
>=20
>=20
> Which was rather annoying when I got caught in the sed bug. Updating=20
> sources did not fix the problem, because it kept using the install sed...
>=20
I asked for an UPDATING entry when I saw this bug for the first
time, and got a positive reply saying this was a good idea, but
this never actually happened, and this is now the third report I
have heard.
In short: if your build environment is broken, the chances are
low you will be able to build your world. E.g., if you do not
have /usr/include you cannot win. Similarly, when your gcc(1)
is broken (for example), you won't be able to build world too.
We depend on a good shape of the build environment, and if it
breaks, we put this sort of info into UPDATING.
When we create a backward incompatibility, this is completely
another case, and we put stuff either in bootstrap-tools or
cross-tools, depending on their nature. (cross-tools are similar
to bootstrap-tools except for also directly depending on the
value of TARGET_ARCH/TARGET.)
Cheers,
--=20
Ruslan Ermilov Sysadmin and DBA,
ru@sunbay.com Sunbay Software Ltd,
ru@FreeBSD.org FreeBSD committer
--1sNVjLsmu1MXqwQ/
Content-Type: application/pgp-signature
Content-Disposition: inline
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (FreeBSD)
iD8DBQE+525yUkv4P6juNwoRAnKHAJsHX24fVGyiNEBp9B71OVQKfVc68wCdGmBs
sAf8CMxuH0m+/RE83xgaMXw=
=BWHa
-----END PGP SIGNATURE-----
--1sNVjLsmu1MXqwQ/--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030611180122.GC14100>
