Date: Wed, 16 Apr 2014 23:33:57 -0700 From: Alfred Perlstein <alfred@freebsd.org> To: Scot Hetzel <swhetzel@gmail.com> Cc: FreeBSD Ports <ports@freebsd.org>, Baptiste Daroussin <bapt@freebsd.org>, Bryan Drewery <bdrewery@freebsd.org> Subject: Re: Please some help with port options in the new world order. Message-ID: <534F75D5.3040503@freebsd.org> In-Reply-To: <CACdU%2Bf8fTFJj1=5o%2Bf8PbVanofvX_jmdazOaLTY7CAcThv5GEQ@mail.gmail.com> References: <534F32A8.8010206@freebsd.org> <CACdU%2Bf8fTFJj1=5o%2Bf8PbVanofvX_jmdazOaLTY7CAcThv5GEQ@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format. --------------020608090107010507050907 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Any chance a patch like the following can be added? It basically makes the error message a tad more clear by saying which options conflict. thank you Scot! -Alfred On 4/16/14, 11:00 PM, Scot Hetzel wrote: > On Wed, Apr 16, 2014 at 8:47 PM, Alfred Perlstein <alfred@freebsd.org> wrote: >> Hey folks, >> >> I'm having a heck of a time with the rsync port in our build system with >> latest ports: >> commit 08b15d01e41c418b5c5b35fb5b691f5e83d40a95 >> Author: wg <wg@FreeBSD.org> >> Date: Wed Apr 16 23:17:53 2014 +0000 >> >> devel/py-hgsubversion: update to 1.6 and use auto plist >> >> >> This is the error I am getting: >> + chroot /usr/home/alfred/freenas/os-base/amd64/_.w /bin/sh -exc 'env >> TARGET=amd64 TARGET_ARCH=amd64 NAS_PORTS_DIRECT=1 >> make __MAKE_CONF=/usr/home/alfred/freenas/os-base/amd64/make.conf.build >> SRC_BASE=/usr/src WRKDIRPREFIX=/usr/workdir -C >> /usr/ports_dir/net/rsync clean all package install BATCH=yes >> -DUSE_PACKAGE_DEPENDS WITH+=ACL WITH+=ICONV -DFORCE_PACKAGE >> -DFORCE_PKG_REGISTER' >> + env TARGET=amd64 TARGET_ARCH=amd64 NAS_PORTS_DIRECT=1 make >> __MAKE_CONF=/usr/home/alfred/freenas/os-base/amd64/make.conf.build >> SRC_BASE=/usr/src WRKDIRPREFIX=/usr/workdir -C /usr/ports_dir/net/rsync >> clean all package install BATCH=yes -DUSE_PACKAGE_DEPENDS WITH+=ACL >> WITH+=ICONV -DFORCE_PACKAGE -DFORCE_PKG_REGISTER >> ===> Cleaning for rsync-3.1.0_3 >> ===> License GPLv3 accepted by the user >> ====> You cannot select multiple options from the PTS radio >> *** Error code 1 >> > : > : >> This USED to work back in an earlier ports tree from 2 months ago by doing >> this: >> add_port net/rsync OPTIONS_FILE_SET+=ACL OPTIONS_FILE_SET+=ICONV >> >> However that gives the same error message now from the build ("====> You >> cannot select multiple options from the PTS radio"). >> >> Any tips on getting around this? It's very frustrating. >> > Try: > > add_port net/rsync WITH+=ACL WITH+=ICONV WITHOUT+=FLAGS > >> What is really strange is that OUTSIDE of the nanobsd build doing a simple: >> cd /usr/port/net/rsync && make WITH+=ACL WITH+=ICONV >> seems to work. >> >> Any idea why this is happening? >> > The last commit to the port enabled the FLAGS option by default. > Since FLAGS and ACL are listed in OPTIONS_RADIO_PTS, you can only > select one of them. > > The reason it works outside the nanobsd build is that at some point > you had disabled the FLAGS option in a previous build of the port. > Check the OPTIONSFILE in /var/db/ports/ for this port. > --------------020608090107010507050907 Content-Type: text/plain; charset=UTF-8; x-mac-type="0"; x-mac-creator="0"; name="radio.diff" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="radio.diff" diff --git a/Mk/bsd.port.mk b/Mk/bsd.port.mk index c56f7e0..120957f 100644 --- a/Mk/bsd.port.mk +++ b/Mk/bsd.port.mk @@ -5911,17 +5911,34 @@ OPTIONS_WRONG_SINGLE+= ${single} .endfor .undef single +# +# Iterate through each OPTIONS_RADIO +# Check to see if there are multiple options specified in PORT_OPTIONS +# for a single radio. +# +# If so, build up an error string noting the offending radio and options +# to be emitted later. +# .for radio in ${OPTIONS_RADIO} . for opt in ${OPTIONS_RADIO_${radio}} . if !empty(PORT_OPTIONS:M${opt}) . if defined(OPTFOUND) -OPTIONS_WRONG_RADIO+= ${radio} +. if !defined(SECONDOPT) +OPTIONS_WRONG_RADIO:= ${OPTIONS_WRONG_RADIO}${radio}(options:${OPTFOUND},${opt} +SECONDOPT= true +. else +OPTIONS_WRONG_RADIO:= ${OPTIONS_WRONG_RADIO},${opt} +. endif . else -OPTFOUND= true +OPTFOUND:= ${opt} . endif . endif . endfor +. if defined(SECONDOPT) +OPTIONS_WRONG_RADIO:= ${OPTIONS_WRONG_RADIO}) +. endif . undef OPTFOUND +. undef SECONDOPT .endfor .for multi in ${OPTIONS_MULTI} --------------020608090107010507050907--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?534F75D5.3040503>