[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Build-Depends-If-Available



On Sun, Aug 09, 2020 at 06:28:50PM +0100, Barak A. Pearlmutter wrote:
>...
> "Build-Depends-If-Available: foo" as "Build-Depends: foo | something"
> is a bad idea from the get-go. After all, foo can have three states on
> an architecture: installable, unavailable, or
> available-but-uninstallable-for-some-reason. And we want different
> behaviour in the three cases: build with it, build without it, or
> delay-building-until-installable. And we can't shoehorn those three
> things into the binary logic of "foo | something".
>...

binary-all packages are available on all architectures,
but many are only installable on some architectures.

>...
> Like "Build-Depends: chicken [has-chicken], swig [has-chicken]" to pull in
> swig if you're generating chicken bindings, which makes sense only if
> chicken is on that architecture.
>...

The chicken and chicken-dev binary package were dropped in 2006, 
only chicken-bin and libchicken-dev are in unstable.

Build dependencies broken when transitional packages or provides 
disappear are easy to find and fix, silent dropping of functionality
can cause nasty problems.

>...
> I think that would be pretty easy to implement
>...

The number of tools parsing build dependencies or doing dependency
resolution is larger than you might expect.

cu
Adrian


Reply to: