%bcond_with is backwards?

Richard W.M. Jones rjones at redhat.com
Thu Dec 8 20:06:26 UTC 2011


On Thu, Dec 08, 2011 at 07:01:45PM +0000, Paul Howarth wrote:
> On Thu, 8 Dec 2011 18:58:29 +0000
> "Richard W.M. Jones" <rjones at redhat.com> wrote:
> 
> > On Thu, Dec 08, 2011 at 07:31:58PM +0100, Till Maas wrote:
> > > On Thu, Dec 08, 2011 at 06:10:17PM +0000, Richard W.M. Jones wrote:
> > > 
> > > > # conditionalize Ocaml support
> > > > %ifarch sparc64 s390 s390x
> > > > %bcond_with ocaml
> > > > %else
> > > > %bcond_without ocaml
> > > > %endif
> > > > 
> > > > #...
> > > > 
> > > > %if %{with ocaml}
> > > > BuildRequires:  ocaml
> > > > BuildRequires:  ocaml-findlib-devel
> > > > %endif
> > > > 
> > > > This code correctly disables OCaml support on architectures where
> > > > we don't bother to compile OCaml (sparc64 s390 s390x).  But the
> > > > conditional code looks backwards to me.  Does this make sense to
> > > > anyone?
> > > 
> > > It makes sense when you read "%bcond_with ocaml" as 'add a
> > > "--with-ocaml" build condition flag' to the spec.
> > 
> > It does?  Still seems backwards to me.  OCaml is disabled on the
> > listed architectures, so that'd be --without-ocaml wouldn't it?
> 
> Having a build *option* for "--with ocaml" implies that the default
> (which is what you get when you build the package in koji) is "without"
> ocaml.

I'm sure you're right, but I still genuinely don't understand your
explanation :-(

Just to be clear, I'm talking about the %ifarch part above:

  %ifarch sparc64 s390 s390x
  %bcond_with ocaml
  %else
  %bcond_without ocaml
  %endif

Why does that disable OCaml support on the architectures sparc64,
s390, s390x?

Rich.

-- 
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
libguestfs lets you edit virtual machines.  Supports shell scripting,
bindings from many languages.  http://libguestfs.org


More information about the devel mailing list