Re: Usage of language specific profiles in build dependencies

2021-02-11 Thread Thorsten Glaser
Hi Paul,

> FTBFS) but it avoids busywork for maintainers that are not involved in
> bootstrapping java. Machine time is cheap, volunteer time is not.

this is not for bootstrapping. This is to prevent building of language
bindings for e.g. Java on platforms where there is simply no Java.
This is a standard application for packages with optional language
bindings and must not lead to a build failure.

bye,
//mirabilos
-- 
tarent solutions GmbH
Rochusstraße 2-4, D-53123 Bonn • http://www.tarent.de/
Tel: +49 228 54881-393 • Fax: +49 228 54881-235
HRB 5168 (AG Bonn) • USt-ID (VAT): DE122264941
Geschäftsführer: Dr. Stefan Barth, Kai Ebenrett, Boris Esser, Alexander Steeg

*

Mit unserem Consulting bieten wir Unternehmen maßgeschneiderte Angebote in
Form von Beratung, Trainings sowie Workshops in den Bereichen
Softwaretechnologie, IT Strategie und Architektur, Innovation und Umsetzung
sowie Agile Organisation.

Besuchen Sie uns auf https://www.tarent.de/consulting .
Wir freuen uns auf Ihren Kontakt.

*



Re: Usage of language specific profiles in build dependencies

2021-02-11 Thread Matthias Klose
On 2/11/21 10:40 AM, Paul Gevers wrote:
> Hi,
> 
> On 11-02-2021 10:16, Matthias Klose wrote:
>> These dependencies should look like:
>>
>>   default-jdk [!hppa !hurd-i386 !kfreebsd-any]
>>
>> or
>>
>>   default-jdk [alpha amd64 arm64 armel armhf i386 ia64 m68k mips64el mipsel
>> powerpc ppc64 ppc64el riscv64 s390x sh4 sparc64 x32]
>>
>> It's also ok to use something like
>>
>>   default-jdk [!hppa !hurd-i386 !kfreebsd-any] 
>>
>> to be able to build with the nojava profile.  I also see this used in many 
>> mono
>> related build dependencies.
>>
>> Having such build dependencies in a package that is a required package for
>> almost everything isn't helpful.
> 
> Maybe a very stupid solution would be to have default-jdk be available
> on all architectures, but just not pull in anything? IIUC that would
> lead to build failures (because code that really needs the jdk will
> FTBFS) but it avoids busywork for maintainers that are not involved in
> bootstrapping java. Machine time is cheap, volunteer time is not.

Seriously?  We didn't have any changes to the java architectures for the past
three years.  Calling a one time change "busywork"?



Re: Usage of language specific profiles in build dependencies

2021-02-11 Thread Paul Gevers
Hi,

On 11-02-2021 10:16, Matthias Klose wrote:
> These dependencies should look like:
> 
>   default-jdk [!hppa !hurd-i386 !kfreebsd-any]
> 
> or
> 
>   default-jdk [alpha amd64 arm64 armel armhf i386 ia64 m68k mips64el mipsel
> powerpc ppc64 ppc64el riscv64 s390x sh4 sparc64 x32]
> 
> It's also ok to use something like
> 
>   default-jdk [!hppa !hurd-i386 !kfreebsd-any] 
> 
> to be able to build with the nojava profile.  I also see this used in many 
> mono
> related build dependencies.
> 
> Having such build dependencies in a package that is a required package for
> almost everything isn't helpful.

Maybe a very stupid solution would be to have default-jdk be available
on all architectures, but just not pull in anything? IIUC that would
lead to build failures (because code that really needs the jdk will
FTBFS) but it avoids busywork for maintainers that are not involved in
bootstrapping java. Machine time is cheap, volunteer time is not.

Just my 2 cents.

Paul



OpenPGP_signature
Description: OpenPGP digital signature


Usage of language specific profiles in build dependencies

2021-02-11 Thread Matthias Klose
Please see https://bugs.debian.org/982085

I think it's wrong to encode build dependencies for language stacks that are not
available on some platforms, just using a profile.

Seen in gettext:

  default-jdk , maven-repo-helper 

and also in db5.3.

A more cooperative usage of such build dependencies can be seen in brltty
collectd gdcm liblouisutdml link-grammar octave opencv openmpi r-base rjava
swi-prolog ucx vtk7 vtk9 z3 and probably other packages.

These dependencies should look like:

  default-jdk [!hppa !hurd-i386 !kfreebsd-any]

or

  default-jdk [alpha amd64 arm64 armel armhf i386 ia64 m68k mips64el mipsel
powerpc ppc64 ppc64el riscv64 s390x sh4 sparc64 x32]

It's also ok to use something like

  default-jdk [!hppa !hurd-i386 !kfreebsd-any] 

to be able to build with the nojava profile.  I also see this used in many mono
related build dependencies.

Having such build dependencies in a package that is a required package for
almost everything isn't helpful.

Matthias