Re: Re: The new minstall fails...

Hugh Daniel <[email protected]> Mon, 24 Feb 2003 04:45:24 -0800
Newsgroups gmane.network.freeswan.devel
Message-ID <[email protected]>
-----BEGIN PGP SIGNED MESSAGE-----

  This just sucks.

  Ok, let me propose heresy, something I can be good at...  I am
myself sometimes confused by the current make file targets in
FreeS/WAN when I don't pay attention, and I just stumbled across one
quite publicly.  I also happen to HATE the very idea of the GNU'ish
./configure scripts, very bad security and Unix style form that.

  So:

  Junk all the current make targets.  New targets "make all" and "make
install" and some variant on "make config" and a matching "make
status".  The "make config" step creates some state (file of makefile
foo=bar?)  that steers the other commands in the right direction for
the current chosen system config.

  The "make config" can either guess (reading the linux/.config file)
or be told on the command line ("make config typeofinstall=module") or
can ask NO MORE THEN THREE QUESTIONS (I just made that up, sounds
right though) of the user to config the system.

  If "make all" is issued with out the state file existing, then it
runs a "make config somedamedname=defaultguessorDIE" thus letting the
masses get away with just the two make commands (all and install).
Oh, did I mention that all is the default make command and you can
just type make...

  Make clean does NOT delete the state file, but "make distclean" does
(see the GNU coding standards, which except for the total wrongness of
implying info files being useful for other then bathroom use is rather
good).

  Thus we have the major steps of a standard GNU'ish install someday:

ncftpget...
pgp -ka...
pgp...
tar -x...
cd...
make config something=static
make all check install
#read bad SF

  Obviously the make check part could take a LONG time... :r)

  The something might have short names, and obviously if the standard
guess is good enough you can just dispense with that line all
together.

  Obviously a degenerate version of this is to have "make mold" or
whatnot leave a configuration status file.  Really, is there more
state then what CONFIG_IPSEC=[y,m,n] sets that we need to care about?

  FYI the behavior of "make oldgo" changed due to a (false?)
presumption that my personal fixation with statically compiled kernels
was detrimental to the (political?) acceptance of FreeS/WAN and that
henceforth the default should be Modules.  That bit me tonight, as I
KNEW that I was making a kernel module (I had checked it several
times...) but the makefile had several mutually exclusive paths.

  My guess is that you just don't want to make a static and then a
kernel with out a clean in between, and if you do that you might as
well also do the extra config step.

  Another explanation is the "make oldTHING" is a takeoff on the Linux
Kernel targets style.  Seemed to work.

  So, am I crazy?  This is WAY to major a change to do now, but we
already have over one person working on 3.00 series code...

		||ugh Daniel
		[email protected]

			Systems Testing & Project mis-Management
			The Linux FreeS/WAN Project
			http://www.freeswan.org


-----BEGIN PGP SIGNATURE-----
Version: 2.6.3ia
Charset: noconv
Comment: For the matching public key, finger the Reply-To: address.

iQCVAwUBPloT11ZpdJR7FBQRAQHKaAQAgA0sJTjF4bweBt9/eLHEfR7JZQdH29hH
Ti3mmrKyo6xZ5n7MVk3qJHRkMsCWtx5KCV1CJGTp/e3vD2gTAFXL0+uFNSgP6Ija
iLo6Kb+fiE5+D8mwnRRLmjmUuNBKnoQiLXCLWt7pIatoIFN94yd0DlDMc4cmmjXQ
eB0tHxNy2j4=
=sJBl
-----END PGP SIGNATURE-----