Re: OpenSSL 3.0 for 14.0-RELEASE: issues with 1.x/3.x symbol clashing, ports linking against base OpenSSL, ports that don't compile/link against OpenSSL 3, etc

From: Antoine Brodin <antoine_at_freebsd.org>
Date: Thu, 11 May 2023 07:22:44 UTC
On Thu, May 11, 2023 at 6:31 AM Pierre Pronchery
<pierre@freebsdfoundation.org> wrote:
>
>                 Hi everyone,
>
> It's been a long and tough fight, but I finally managed to complete a
> `make buildworld` on amd64 with the latest state of my work on OpenSSL
> 3; see https://github.com/freebsd/freebsd-src/pull/740 for a first draft
> of a pull-request via GitHub.
>
> I will probably not be able to work on this again until the DevSummit at
> BSDCan, so feel free to take it from there until then.
>
> HTH!
> -- khorben

Thanks,  I have this error during buildworld:

===> secure/lib/libcrypto/modules/fips (all)
make[6]: /usr/obj/poudriere/data/src-openssl3/amd64.amd64/secure/lib/libcrypto/modules/fips/.depend,
1: ignoring stale .depend for
/usr/obj/poudriere/data/src-openssl3/amd64.amd64/tmp/usr/lib/libcrypto.a
building shared library fips.so
cc -target x86_64-unknown-freebsd14.0
--sysroot=/usr/obj/poudriere/data/src-openssl3/amd64.amd64/tmp
-B/usr/obj/poudriere/data/src-openssl3/amd64.amd64/tmp/usr/bin
-Wl,-zrelro   -fstack-protector-strong -shared -Wl,-x
-Wl,--fatal-warnings -Wl,--warn-shared-textrel  -o fips.so.full
-Wl,-soname,fips.so fips_entry.pico fipsprov.pico self_test.pico
self_test_kats.pico  -lcrypto
ld: error: unable to find library -lcrypto
cc: error: linker command failed with exit code 1 (use -v to see invocation)
*** Error code 1

Antoine

> On 5/8/23 22:11, Ed Maste wrote:
> > On Fri, 5 May 2023 at 16:03, Ed Maste <emaste@freebsd.org> wrote:
> >>
> >> I had a look at the remaining build failures with your changes merged
> >> in, and I see errors due to deprecation notices in:
> >
> > For the simple cases where deprecation notices are the only issue we
> > can just set OPENSSL_API_COMPAT=0x10100000L to specify the API in use
> > explicitly. We can do this in advance of bringing in OpenSSL 3; it
> > will just be a NFC at present. I've done this for bhyve just now, with
> > commit 9c6f3dfda6dd. We can do the same for the other components using
> > OpenSSL, and can switch each of these to using OpenSSL 3 APIs at some
> > point after we import OpenSSL 3.
>
> --
> Pierre Pronchery
>
>