aconfigure.ac: --wth-ssl is required for cross compilation

TS
Tobias Schneider
Wed, Nov 13, 2019 12:58 PM

Hello,

when using OpenSSL in cross compiling we just took care to no include --disable-ssl in configure options. Unfortunately OpenSSL support gots disabled automatically even though --disable-ssl was not set, due to cross compiling. There is an additional check for --with-ssl, that must be set when cross compiling, see aconfigure.ac:

    dnl # Do not use default SSL installation if we are cross-compiling
    if test "x$ac_cross_compile" != "x" -a "x$with_ssl" = "xno" -a "x$with_gnutls" = "xno"; then
        enable_ssl=no
    fi

This is different behaviour then I would expect from documentation (configure --help):

   --with-ssl=DIR          Specify alternate SSL library prefix. This option
                           will try to find OpenSSL first, then if not found,
                           GnuTLS. To skip OpenSSL finding, use --with-gnutls
                           option instead.
  --with-gnutls=DIR        Specify alternate GnuTLS prefix

As we are already setting correct sysroot paths for cross compiling by exporting LDFLAGS and CFLAGS accordingly before calling configure, we do not need/want to set some specific path in --with-ssl - the build system should rather search in the path already given through LDFLAGS/CFLAGS (actually the --with-ssl flag is nothing more than just adding LDFLAGS and CFLAGS). I therefore would recommend
to have two independent options:

--disable-ssl for activating/disabling it at all --with-ssl for giving an alternate path where to search for SSL library (that option should be optional at all).

Best regards,

Tobias

Hello, when using OpenSSL in cross compiling we just took care to no include --disable-ssl in configure options. Unfortunately OpenSSL support gots disabled automatically even though --disable-ssl was not set, due to cross compiling. There is an additional check for --with-ssl, that must be set when cross compiling, see aconfigure.ac:     dnl # Do not use default SSL installation if we are cross-compiling     if test "x$ac_cross_compile" != "x" -a "x$with_ssl" = "xno" -a "x$with_gnutls" = "xno"; then         enable_ssl=no     fi This is different behaviour then I would expect from documentation (configure --help):    --with-ssl=DIR          Specify alternate SSL library prefix. This option                            will try to find OpenSSL first, then if not found,                            GnuTLS. To skip OpenSSL finding, use --with-gnutls                            option instead.   --with-gnutls=DIR        Specify alternate GnuTLS prefix As we are already setting correct sysroot paths for cross compiling by exporting LDFLAGS and CFLAGS accordingly before calling configure, we do not need/want to set some specific path in --with-ssl - the build system should rather search in the path already given through LDFLAGS/CFLAGS (actually the --with-ssl flag is nothing more than just adding LDFLAGS and CFLAGS). I therefore would recommend to have two independent options: --disable-ssl for activating/disabling it at all --with-ssl for giving an alternate path where to search for SSL library (that option should be optional at all). Best regards, Tobias