portmaster: make config-conditonal ?
B Briggs
rcbdyndns at bellsouth.net
Tue Sep 5 20:40:48 UTC 2006
Doug Barton wrote:
> B Briggs wrote:
>> Rene Ladan wrote:
>>> Hi,
>>>
>>> what about the idea of using 'make config-conditional' instead of 'make
>>> config' in portmaster to configure ports? This way
>>> /var/db/ports/*/options is respected.
>>>
>>> The downside is that you have to run 'make rmconfig' in order to
>>> reconfigure the port options.
>>>
>>> Regards,
>>> Rene
>> I second that emotion!
>>
>> or possibly use config-conditional in -u unattended mode, and config
>> otherwise.
>
> The problem with doing that is that there is (what I consider to be) a bug
> in the OPTIONS framework where if you have an existing /var/db/ports/ file
> for that port, but the Makefile introduces a new option, config-conditional
> will not re-run config to allow you to twiddle the new option. I did
> extensive testing with the various combinations of targets before settling
> on the method I chose. Doing it the way I have is the only way to be
> absolutely sure that you can set each option, even if new ones are added.
>
> FWIW, I would really like to see the OPTIONS framework improved to handle
> this, and other bugs; since I would like to be able to do what you guys
> described here too. :)
>
>
> hth,
>
> Doug
>
Funny that you mentioned new OPTIONS. I've been running with
config-conditional for a couple of days now, and since I haven't added
anything new, I don't get any config menus any more. Which I like.
Perchance, I just looked at samba3, which was upgraded with my settings.
/var/db/ports/options/samba3 shows:
# This file is auto-generated by 'make config'.
# No user-servicable parts inside!
# Options for samba-3.0.23b,1
_OPTIONS_READ=samba-3.0.23b,1
WITHOUT_LDAP=true
WITHOUT_ADS=true
WITH_CUPS=true
WITHOUT_WINBIND=true
WITHOUT_ACL_SUPPORT=true
WITHOUT_AIO_SUPPORT=true
WITHOUT_SYSLOG=true
WITHOUT_QUOTAS=true
WITH_UTMP=true
WITHOUT_MSDFS=true
WITHOUT_SMBSH=true
WITHOUT_PAM_SMBPASS=true
WITHOUT_EXP_MODULES=true
WITH_POPT=true
and make showconfig shows:
===> The following configuration options are available for samba-3.0.23c,1:
LDAP=off "With LDAP support"
ADS=off "With Active Directory support"
CUPS=on "With CUPS printing support"
WINBIND=off "With WinBIND support"
ACL_SUPPORT=off "With ACL support"
AIO_SUPPORT=off "With experimental AIO support"
FAM_SUPPORT=off (default) "With File Alteration Monitor"
SYSLOG=off "With Syslog support"
QUOTAS=off "With Disk quota support"
UTMP=on "With UTMP accounting support"
MSDFS=off "With MSDFS support"
SMBSH=off "With SMBSH wrapper for UNIX commands"
PAM_SMBPASS=off "With PAM authentication against passdb backend(s)"
EXP_MODULES=off "With experimental module(s)"
POPT=on "With system-wide POPT library"
===> Use 'make config' to modify these settings
You can see the diff in version, and that FAM_SUPPORT has been added,
defaulting to off, which never changed my config. Nonetheless, had the
default been on, I might have installed a new port that I didn't want.
Or, I might have missed one that I wanted to include here in config.
It seems to me that these can be reconciled, example, just regex MSDFS
to a WITH or WITHOUT, if there are no changes in the KNOBS, then you
could run make config-conditional, otherwise, force make-config. Or,
just check for version information, if different, run make config
(unconditional).
I would be happy to try this if you want. Just let me know.
--
B Briggs
More information about the freebsd-ports
mailing list