Cvsup verses Portsnap
Aren Olvalde Tyr
aren.tyr at gawab.com
Mon May 15 12:50:11 PDT 2006
> Portmanager already has this I believe. You can add config options to
> the portmanager config file and it will use them when building things.
> For example:
>
> #####################
> # custom settings #
> # remove "#" to use #
> #####################
> #textproc/docproj|JADETEX=no|
> #java/jdk14|-DMINIMAL|
> #textproc/libxml2|THREADS=off SCHEMA=on MEM_DEBUG=off XMLLINT_HIST=off
> THREAD_ALLOC=off|
> #
> #
> ##
> ##do not let portmanager update the following ports
> #IGNORE|editors/openoffice-1.1|
> #IGNORE|java/jdk14|
But does it dynamically generate an editable list of all available
configuration knobs for all ports that can be set?
If it doesn't, it doesn't have what I am ideally looking for, since you still
have to manually poke around in the appropriate Makefile[s] to determine what
(if any) knobs you want to set in the first place. The general concept was
discussed on one of the other lists (freebsd-ports I think), but basically it
consisted of having a tool that would generate a set of dynamically created
configuration files that list _all_ available knobs for all ports and make it
very easy to set/unset them by simply editing the appropriate config file.
When you update your ports tree, there would be a way to get the tool to
dynamically update (whilst preserving your settings where they are still
applicable) all the configuration files to reflect any changes.
I want a tool that will very easily allow me to see what knobs are available
for many different ports, without having to manually grep around in the
Makefiles.
So, for example, you might have a master configuration file:
# ports.master.conf
# Global ports configuration file
# Define global build options:
all {
IPVG = no
X11 = no
}
accessibility {
file->ports.accessibility.conf
}
graphics {
file->ports.graphics.conf
}
foobar {
file->ports.foo.conf
}
Then, under the particular port category config file - say
ports.graphics.conf - you would have the configuration knobs for all those
ports in that category.
<snip>
gimp {
WITH_DEBUG = no
WITH_PYTHON = no
WITHOUT_PRINT = no
WITH_MP = no
WITH_HTML_HELP_BROWSER = yes
GNOME_ENABLED = no
}
<snip>
Selecting a knob then becomes as simple as setting the knob = yes in the
config file. You would then simply use the tool to install the port (it would
probably call another tool, such as portupgrade or portmaster to actually do
the install), and it would automagically set the appropriate -DKNOB
settings .
My intention is to write such a tool entirely in /bin/sh so that no extra
dependencies are required.
I'm still currently deciding how best to design it, but I'm inclined towards
integrating it with portmaster since that it a very nice well designed sh
tool for port management tasks.
So far I've only just started, at the moment it just generates a basic config
file.
And if it turns out that portmanager can do something similar to the above, I
will probably still create the tool as an interesting shell programming
exercise :)
Aren.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-questions/attachments/20060515/26fcc737/attachment.pgp
More information about the freebsd-questions
mailing list