Hi, On 2023-02-08 11:45:05 +0100, Peter Eisentraut wrote: > Most meson options (meson_options.txt) that enable an external dependency > (e.g., icu, ldap) are of type 'feature'. Most of these have a default value > of 'auto', which means they are pulled in automatically if found. Some have > a default value of 'disabled' for specific reasons (e.g., selinux). This is > all good. > > Two options deviate from this in annoying ways: > > option('ssl', type : 'combo', choices : ['none', 'openssl'], > value : 'none', > description: 'use LIB for SSL/TLS support (openssl)') > > option('uuid', type : 'combo', choices : ['none', 'bsd', 'e2fs', 'ossp'], > value : 'none', > description: 'build contrib/uuid-ossp using LIB') > > These were moved over from configure like that. > > The problem is that these features now cannot be automatically enabled and > behave annoyingly different from other feature options.
Oh, yes, this has been bothering me too. > For the 'ssl' option, we have deprecated the --with-openssl option in > configure and replaced it with --with-ssl, in anticipation of other SSL > implementations. None of that ever happened or is currently planned AFAICT. > So I suggest that we semi-revert this, so that we can make 'openssl' an auto > option in meson. Hm. I'm inclined to leave it there - I do think it's somewhat likely that we'll eventually end up with some platform native library. I think it's likely the NSS patch isn't going anywhere, but I'm not sure that's true for e.g. using the windows encryption library. IIRC Heikki had a patch at some point. I'd probably just add a 'auto' option, and manually make it behave like a feature option. > For the 'uuid' option, I'm not sure what the best way to address this would. > We could establish a search order of libraries that is used if no specific > one is set (similar to libreadline, libedit, in a way). So we'd have one > option 'uuid' that is of type feature with default 'auto' and another > option, say, 'uuid-library' of type 'combo'. Or add 'auto' as a combo option, and handle the value of the auto_features option ourselves? Greetings, Andres Freund