On Wed, Dec 2, 2015 at 12:21 PM, Dominique Leuenberger / DimStar <dimstar@opensuse.org> wrote:
Note that with:
%bcond_with protobuf_python
no python binding subpackage is built.
bcond_with => conditionally build WITH support - condition being: specified using --with on the command line (or prj conf overrides)
While with:
%bcond_without protobuf_python bcond_without ==> conditionally build WITHOUT support - condition, as above.
As they are nicely if'ed, only one should be ever used to declare the default behaviou
Is this a specific double negative logic implementation in protobuf.spec, or is bcond always used with a double negative type logic. bcond_* is generally misunderstood. *_with does not mean DEFAULT WITH, but on CONDITIONALLY_WITH (as said: conditions can come from CLI, see osc build --with/--without) or could be overruled by prjconf in OBS directly)
I think I got it:
bcond_with rob_bank
means there is no way I'm going to rob a bank unless someone is pointing a gun at my head.
I definitely agree with messy. I'd go as far as saying it is one of the most obtuse syntax'es I have seen. I guess it makes sense to someone.
Greg bconds should be defined in a project config, I've had irritating
On 02/12/2015 22:04, Greg Freemyer wrote: problems with undefined bcond's in spec files but while investigating prjconf's I picked up one time bomb from osc meta prjconf devel:languages:python : #NOTE(toddrme2178): Tumbleweed currently has two versions of npm. Remove this if one versions is removed. %if 0%{?suse_version} > 1315 Prefer: nodejs-npm %endif This one excludes Leap42.1 as well as Sles12. You should have a look at various prjconf files they're very interesting. Regards Dave -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org