Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 04 Jun 2003 21:42:50 +0100
From:      Mark Murray <mark@grondar.org>
To:        arch@freebsd.org
Subject:   A proposed drastic cleanup of the telnet build.
Message-ID:  <200306042042.h54KgoHh007445@grimreaper.grondar.org>

next in thread | raw e-mail | index | archive | help
Hello all

The (lib)telnet(d) build in our tree has always been a bit of
an anachronism. We have 2 sets of code to build it, and three
different flavours of telnet.

We have 1) No crypto telnet, 2) crypto telnet 3) crypto telnet with
Kerberos5. During a "make world", these various builds take it in turn
to be built, and jump all over each other in annoying ways. This has
happened for years.

The 2 sets of code are for a) no crypto and b) crypto (+ KRB5). The
former is an unifdef(1)ed subset of the latter. We've had continual
problems with divergent code (when folks don't commit correctly to
both).

I propose to 'cvs rm' the 'base' telnet, and build base telnet by
not defining the appropriate macros. This achieves the same result
as unifdef(1). This involves .PATH: magic to the "full" telnet.
For telnet-with-crypto, and telnet-with-crypto+krb5, the appropriate
options are already in the tree, so the 'base' telnet will just
add them if needed. This is similar in concept to the way crypto
is added to bin/ed and gnu/usr.bin/cvs.

secure/ and kerberos5/ will then no longer need private copies of
(lib)telnet(d), and 'make world' will simplify. Functionality
loss will be NIL, complexity will be reduced and a tiny bit of
code bloat will be gone.

The downside is that base telnet will depend on src/crypto/telnet,
so folks in dodgy countries which don't allow them to have crypto
source will not be able to do telnet development, and they will
not get a "fresh" telnet[d] after a make world.

Comments? I'm keen to go on this.

M
--
Mark Murray
iumop ap!sdn w,I idlaH



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