On Mon, Apr 27, 2020 at 3:01 PM Vít Ondruch vondruch@redhat.com wrote:
Dne 27. 04. 20 v 13:19 Petr Šabata napsal(a):
Based on the recent discussions around %fedora/%rhel macros and ELN, and %bcond generally being confusing to work with, I came up with a distribution-wide feature that defines generic feature keywords and associated helper macros that packages can check in build-time conditionals.
The most confusing part of the %bcond is the definition itself. The rest is fine IMO. Therefore, I somehow don't understand why would you like to replace:
%if %{with ssl} BuildRequires: openssl-devel %endifby
%if %{use ssl} BuildRequires: openssl-devel %endif
The difference here is %use defaults are defined by the buildroot while %with %bconds are defined by the package.
Also I don't understand, why there is exposed some underscore macro, such as `make test %{?_use_ssl:-DSSL}`. Shouldn't the underscore macro be just implementation detail? For `%bcond`s, the `_with` macros are discouraged, so why would you encourage them?
Yes, this should be an internal detail. I'd like to replace this with %use_defined or something similar.
P