Date: Mon, 04 Jun 2012 15:33:59 +0200 From: Mel Flynn <rflynn@acsalaska.net> To: Bernhard Froehlich <decke@bluelife.at> Cc: Baptiste Daroussin <bapt@freebsd.org>, Doug Barton <dougb@freebsd.org>, Bernhard Froehlich <decke@freebsd.org>, Miroslav Lachman <000.fbsd@quip.cz>, FreeBSD ports list <freebsd-ports@freebsd.org> Subject: Re: New OPTIONS and make.conf knobs Message-ID: <4FCCB947.9070606@acsalaska.net> In-Reply-To: <5e92b4eb2f005da7638701dfbc22220f@bluelife.at> References: <4FCBF310.3090607@FreeBSD.org> <4FCC862F.9080203@quip.cz> <bf8b2e6947239faea63a8edf65aae7fe@bluelife.at> <4FCC9C24.5070001@quip.cz> <5e92b4eb2f005da7638701dfbc22220f@bluelife.at>
next in thread | previous in thread | raw e-mail | index | archive | help
On 4-6-2012 14:58, Bernhard Froehlich wrote: > On 04.06.2012 13:29, Miroslav Lachman wrote: >> Bernhard Froehlich wrote: >>> On 04.06.2012 11:55, Miroslav Lachman wrote: >>>> There is another problem with options and portmaster. >>>> >>>> I have WITHOUT_X11=yes in make.conf and if I try to install >>>> emulators/virtualbox-ose for the first time it immediately ends with >>>> error message instead of showing options dialog. >>>> >>>> -------------------------------------------------------- >>>> # portmaster emulators/virtualbox-ose >>>> >>>> ===>>> Currently installed version: virtualbox-ose-4.1.16 >>>> ===>>> Port directory: /usr/ports/emulators/virtualbox-ose >>>> >>>> ===>>> This port is marked BROKEN >>>> ===>>> QT4 frontend requires X11 support. Run 'make config' again! >>>> >>>> >>>> ===>>> If you are sure you can build it, remove the >>>> BROKEN line in the Makefile and try again. >>>> Terminated >>>> -------------------------------------------------------- >>>> >>>> >>>> I don't know the order of processing options / knobs so I don't know >>>> if this is the problem of portmaster, OPTIONSng or Makefile it-self. >>>> >>>> To fix this problem, I must manually run `make config` in ports >>>> directory and uncheck QT4, then run portmaster again. >>> >>> That is not a bug at all. It was that way for the last 2 years and still >>> is. The virtualbox ports do not use the new optionsng stuff yet and the >>> problem that you are seeing is just because QT4 GUI without X11 doesn't >>> make sense. If you don't want X11 you also don't want QT4. >> >> Yes, that's right. But I am confused why portmaster does not show the >> options dialog to let user uncheck QT4? >> >> What I expect is: >> - run portmaster >> - show dialog with unchecked X11 >> - let user uncheck QT4 >> - save options in /var/db/ports >> - show error about conflicting options >> >> Now is: >> - run portmaster >> - show error about conflicting options >> >> I don't know if it can be solved by portmaster, ports framework or >> anything else. > > From the BROKEN message: > > QT4 frontend requires X11 support. Run 'make config' again! > > > I think it will be fixed once virtualbox uses optionsng because it is > able to handle such option dependencies but for now it's the same as > it ever was. I think only the port can handle this as it falls in the "sane defaults" category and a framework can never assess what is sane in the specific port's case. A solution that works with old options is to assign the On/Off state with a variable: .ifdef WITHOUT_X11 QT4_DEFAULT= off .else QT4_DEFAULT= on .endif OPTIONS= QT4 "Enable QT4 support" ${QT4_DEFAULT} I think the same will work with optionsng and probably offers better sanity checking as you can query for ${UNIQUENAME}_SET of a related port, like OPENLDAP24_SASL_SET to set the default for ldap sasl support accordingly instead of throwing an exception. -- Mel
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4FCCB947.9070606>