When compiling emile with -Dcrypto=gnutls, the build fails with linking error. Reading https://phab.enlightenment.org/diffusion/EFL/browse/master/src/lib/emile/meson.build reveals that it it links to libcrypto (OpenSSL) unconditionally and doesn't link to libgcrypt/libgnutls at all.
well it's obviously saying "no gnutls on freebsd/dragonfly". it';s explicitly disallowing it. switching it on does indeed break the logic so the solution here is.. don't use gnutls on bsd. the meson.build is explicily making the decision to use openssl here on this OS.
just fyi... i've been waiting for openssl3 to appear, add in support for that and then remove gnutls support entirely. so long-term... don't expect gnutls to remain as an option. it's just painful to support 2 crypto back-ends making maintenance 2x as much in these areas (actually gnutls code is just ignored - not tested or looked at so i wouldn't trust it anyway). as this is crypto, code that does not get attention and fixes and testing is likely going to cause security issues, so it's best removed.