I did this
CURL_VERSION=curl-7.81.0
curl https://curl.se/download/$CURL_VERSION.tar.gz | tar -xz
curl -L https://github.com/wolfSSL/wolfssl/archive/refs/tags/v4.8.1-stable.tar.gz | tar -xz
mkdir wolfssl-install
mkdir wolfssl-dir
ls
pushd wolfssl-4.8.1-stable
autoreconf -fi
./configure --prefix=$(realpath ../wolfssl-install) --enable-opensslextra
make -j$(nproc)
make test
make install
popd
pushd $CURL_VERSION
autoreconf -fi
./configure --with-wolfssl=$(realpath ../wolfssl-install)
make -j$(nproc)
popd
I expected the following
Curl can build with wolfssl (all the commands run successfully), as it does with CURL_VERSION=curl-7.79.1. Instead it fails to build with error:
md5.c:85:10: fatal error: openssl/md5.h: No such file or directory
85 | #include <openssl/md5.h>
| ^~~~~~~~~~~~~~~
compilation terminated.
In file included from http_aws_sigv4.c:33:
curl_sha256.h:35:10: fatal error: openssl/sha.h: No such file or directory
35 | #include <openssl/sha.h>
| ^~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [Makefile:2474: libcurl_la-md5.lo] Error 1
make[2]: *** Waiting for unfinished jobs....
In file included from sha256.c:29:
curl_sha256.h:35:10: fatal error: openssl/sha.h: No such file or directory
35 | #include <openssl/sha.h>
| ^~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [Makefile:2404: libcurl_la-http_aws_sigv4.lo] Error 1
make[2]: *** [Makefile:2621: libcurl_la-sha256.lo] Error 1
In file included from vauth/digest.c:38:
../lib/curl_sha256.h:35:10: fatal error: openssl/sha.h: No such file or directory
35 | #include <openssl/sha.h>
| ^~~~~~~~~~~~~~~
compilation terminated.
(Note CURL_VERSION=curl-7.80.0 also fails).
curl/libcurl version
7.81.0
operating system
WSL: Linux D-00076 5.10.60.1-microsoft-standard-WSL2 #1 SMP Wed Aug 25 23:20:18 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Notes
I suspect #7806 is at fault here. It expects that the wolfssl openssl compatability layer uses openssl/*.h include paths. However, (atleast as my reading of https://www.wolfssl.com/docs/wolfssl-manual/ch13/) the wolfssl openssl compatability layer actually puts the header files at wolfssl/openssl/*.h:

I have a patch that fixes this for me locally that I can submit if the above conclusion is correct.
I did this
I expected the following
Curl can build with wolfssl (all the commands run successfully), as it does with
CURL_VERSION=curl-7.79.1. Instead it fails to build with error:(Note
CURL_VERSION=curl-7.80.0also fails).curl/libcurl version
7.81.0
operating system
WSL:
Linux D-00076 5.10.60.1-microsoft-standard-WSL2 #1 SMP Wed Aug 25 23:20:18 UTC 2021 x86_64 x86_64 x86_64 GNU/LinuxNotes
I suspect #7806 is at fault here. It expects that the wolfssl openssl compatability layer uses
openssl/*.hinclude paths. However, (atleast as my reading of https://www.wolfssl.com/docs/wolfssl-manual/ch13/) the wolfssl openssl compatability layer actually puts the header files atwolfssl/openssl/*.h:I have a patch that fixes this for me locally that I can submit if the above conclusion is correct.