Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 11 Nov 1996 00:57:26 -0800
From:      "Jordan K. Hubbard" <jkh@time.cdrom.com>
To:        Chuck Robey <chuckr@glue.umd.edu>
Cc:        Satoshi Asami <asami@FreeBSD.ORG>, FreeBSD-Ports@FreeBSD.ORG
Subject:   Re: blt2.1 
Message-ID:  <1348.847702646@time.cdrom.com>
In-Reply-To: Your message of "Sun, 10 Nov 1996 20:02:01 EST." <Pine.OSF.3.95.961110194453.18609B-100000@protocol.eng.umd.edu> 

next in thread | previous in thread | raw e-mail | index | archive | help
> One way to do this would be to have multiple work directories, tagged with
> the option names.  Another way would be to use the current single work
> directory, but to deposit a cookie in the work dir specifying the option
> set chosen during the earlier (configure and patch) build phases.
> 
> I think I like the latter method better, myself.  Am I making myself clear
> yet?

Sort of, though it's still not clear to me how the "options" would
actually change the behavior of the package extraction process, or how
especially complex option handling would be done.  In my new system,
the package's internal work procedures are written in secure TCL and
hence you can do quite a bit based on whether the user says "I want
the X or the non-X version of blah", something which might involve
everything from changing the internal packing list to checking an
entirely different set of dependencies.

Just having "passive" option information would, I think, only cover
some of the bases and you'd have to make the pkg_add tool arbitrarily
complex to deal with all them.  In my system, pkg_add just provides
the execution environment and is otherwise "dumb" - all the
intelligence is in the package.

As to the creation process, you just build the port and transfer as
much of it (along with property information) into the package as is
relevant for that build.  Then you rebuild the port with different
options, assuming that's called for, and add it to the *same* package
with different flavor settings.  Voila, now you have one package with
two different sets of properties.  Repeat as necessary, and as you
have disk space for the monster package file you're building. :)

						Jordan



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