Subject: How to enable OpenSSL?

How to enable OpenSSL?

From: Jeffrey Walton <noloader_at_gmail.com>
Date: Thu, 30 Jul 2020 21:03:57 -0400

Hi Everyone,

I'm trying to track down an issue in SIP Witch. SIP Witch is failing
to link due to a missing SSL/TLS symbol in libeXosip2. libeXosip2
depends on c-ares, and the author of libeXosip2 says c-ares must have
SSL/TLS enabled.

Searching the sources only shows one hit for SSL/TLS:

c-ares-1.16.1$ grep -IR SSL_ ./*
./Makefile.dj: EX_LIBS += $(OPENSSL_ROOT)/lib/libssl.a
$(OPENSSL_ROOT)/lib/libcrypt.a
c-ares-1.16.1$ grep -IR TLS_ ./*
c-ares-1.16.1$

Small nit: I think '$(OPENSSL_ROOT)/lib/libcrypt.a' should be
'$(OPENSSL_ROOT)/lib/libcrypto.a' OpenSSL's general purpose crypto
library name is libcrypto, not libcrypt.

What should I do to enable my copy of OpenSSL in c-ares?

=====

Here are the options offered by c-ares:

$ ./configure --help
...

Optional Features:
  --disable-option-checking ignore unrecognized --enable/--with options
  --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
  --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
  --enable-maintainer-mode
                          enable make rules and dependencies not useful (and
                          sometimes confusing) to the casual installer
  --enable-silent-rules less verbose build output (undo: "make V=1")
  --disable-silent-rules verbose build output (undo: "make V=0")
  --enable-debug Enable debug build options
  --disable-debug Disable debug build options
  --enable-optimize(=OPT) Enable compiler optimizations (default=-O2)
  --disable-optimize Disable compiler optimizations
  --enable-warnings Enable strict compiler warnings
  --disable-warnings Disable strict compiler warnings
  --enable-werror Enable compiler warnings as errors
  --disable-werror Disable compiler warnings as errors
  --enable-curldebug Enable curl debug memory tracking
  --disable-curldebug Disable curl debug memory tracking
  --enable-symbol-hiding Enable hiding of library internal symbols
  --disable-symbol-hiding Disable hiding of library internal symbols
  --enable-expose-statics Enable exposure of internal static functions for
                          testing
  --disable-expose-statics
                          Disable exposure of internal static functions for
                          testing
  --enable-code-coverage Whether to enable code coverage support
  --enable-dependency-tracking
                          do not reject slow dependency extractors
  --disable-dependency-tracking
                          speeds up one-time build
  --disable-largefile omit support for large files
  --enable-shared[=PKGS] build shared libraries [default=yes]
  --enable-static[=PKGS] build static libraries [default=yes]
  --enable-fast-install[=PKGS]
                          optimize for fast installation [default=yes]
  --disable-libtool-lock avoid locking (might break parallel builds)
  --enable-libgcc use libgcc when linking
  --enable-nonblocking Enable non-blocking communications
  --disable-nonblocking Disable non-blocking communications
  --enable-tests build test suite

Optional Packages:
  --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
  --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
  --with-gcov=GCOV use given GCOV for coverage (GCOV=gcov).
  --with-pic[=PKGS] try to use only PIC/non-PIC objects [default=use
                          both]
  --with-aix-soname=aix|svr4|both
                          shared library versioning (aka "SONAME") variant to
                          provide on AIX, [default=aix].
  --with-gnu-ld assume the C compiler uses GNU ld [default=no]
  --with-sysroot[=DIR] Search for dependent libraries within DIR (or the
                          compiler's sysroot if not specified).
  --with-random=FILE read randomness from FILE (default=/dev/urandom)

Some influential environment variables:
  CC C compiler command
  CFLAGS C compiler flags
  LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
              nonstandard directory <lib dir>
  LIBS libraries to pass to the linker, e.g. -l<library>
  CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
              you have headers in a nonstandard directory <include dir>
  CPP C preprocessor
  CXX C++ compiler command
  CXXFLAGS C++ compiler flags
  LT_SYS_LIBRARY_PATH
              User-defined run-time library search path.
  CXXCPP C++ preprocessor
Received on 2020-07-31