Files
harbour-core/contrib/hbssl/hbssl.hbc
Aleksander Czajczynski d42d81d605 2025-10-19 22:12 UTC+0200 Aleksander Czajczynski (hb fki.pl)
* contrib/hbssl/hbssl.h
  * contrib/hbssl/hbssl.hbm
  * contrib/hbssl/ssl.c
    ! HB_OPENSSL_HAS_APPLINK was never checked,
      defining HB_OPENSSL_NO_APPLINK didn't do anything

    * make current OpenSSL 3.6.0 build under fresh MSYS2
      shell. MSYS2 does not distribute applink.c, claiming
      MingGW C runtime is safe for operation without it.
      Have to define HB_OPENSSL_NO_APPLINK and additional
      workaround for lacking __int64 type when including
      ssl.h. If you need similar workround outside of
      MSYS2 shell, setenv: HB_USER_CFLAGS=-DHB_OPENSSL_MSYS

      packages needed: openssl-devel (for headers)
                       mingw-w64-x86_64-openssl (for libs)
                       mingw-w64-aarch64-openssl

  * contrib/hbssl/hbssl.hbc
    * using Clang or Zig compiler on Windows, build will
      now reference libssl and libcrypto instead of old
      ssleay32/libeay32 pair when linking.

  * config/win/zig.mk
    % unnecessary check
2025-10-19 22:12:22 +02:00

23 lines
1018 B
Plaintext

description=OpenSSL wrapper (encryption)
# NOTE: use HB_STATIC_OPENSSL=yes envvar to link openssl lib statically
incpaths=.
headers=${hb_name}.ch
skip={dos}
{!HB_DYNBIND_OPENSSL&!(HB_STATIC_OPENSSL&!hbdyn)}libs=${_HB_DYNPREF}${hb_name}${_HB_DYNSUFF}
{!HB_DYNBIND_OPENSSL& (HB_STATIC_OPENSSL&!hbdyn)}libs=${_HB_DYNPREF}${hb_name}s${_HB_DYNSUFF}
{!HB_DYNBIND_OPENSSL&unix}libs=ssl crypto
{!HB_DYNBIND_OPENSSL&os2}libs=libssl_s libcrypto_s
{!HB_DYNBIND_OPENSSL&!(HB_STATIC_OPENSSL&!hbdyn)&win&!allmingw&!clang&!zig}libs=ssleay32 libeay32
{!HB_DYNBIND_OPENSSL& (HB_STATIC_OPENSSL&!hbdyn)&win&!allmingw&!clang&!zig}libs=ssleay32 libeay32
{!HB_DYNBIND_OPENSSL&!(HB_STATIC_OPENSSL&!hbdyn)&win&(clang|zig)}libs=ssl crypto
{!HB_DYNBIND_OPENSSL& (HB_STATIC_OPENSSL&!hbdyn)&win&(clang|zig)}libs=ssl crypto
{!HB_DYNBIND_OPENSSL&!(HB_STATIC_OPENSSL&!hbdyn)&allmingw}libs=ssl crypto
{!HB_DYNBIND_OPENSSL& (HB_STATIC_OPENSSL&!hbdyn)&allmingw}libs=ssl crypto
{!HB_DYNBIND_OPENSSL& (HB_STATIC_OPENSSL&!hbdyn)&allwin}libs=crypt32