1*e7be843bSPierre Pronchery# Generated by OpenSSL 2*e7be843bSPierre Pronchery{- 3*e7be843bSPierre Pronchery use lib catdir($config{sourcedir}, 'Configurations'); 4*e7be843bSPierre Pronchery use platform; 5*e7be843bSPierre Pronchery use Data::Dumper; 6*e7be843bSPierre Pronchery 7*e7be843bSPierre Pronchery our %lib_info = ( 8*e7be843bSPierre Pronchery map { my %x = (); 9*e7be843bSPierre Pronchery my $lib_static = platform->staticlib($_); 10*e7be843bSPierre Pronchery my $lib_shared = 11*e7be843bSPierre Pronchery (platform->can("sharedlib_simple") 12*e7be843bSPierre Pronchery ? platform->sharedlib_simple($_) 13*e7be843bSPierre Pronchery : undef) 14*e7be843bSPierre Pronchery // platform->sharedlib($_); 15*e7be843bSPierre Pronchery $x{static} = $lib_static if $lib_static; 16*e7be843bSPierre Pronchery $x{shared} = $lib_shared if $lib_shared; 17*e7be843bSPierre Pronchery if (platform->can("sharedlib_import")) { 18*e7be843bSPierre Pronchery my $lib_shared_import = platform->sharedlib_import($_); 19*e7be843bSPierre Pronchery $x{shared_import} = $lib_shared_import if $lib_shared_import; 20*e7be843bSPierre Pronchery } 21*e7be843bSPierre Pronchery %x ? ( $_ => \%x ) : () } 22*e7be843bSPierre Pronchery grep { !$unified_info{attributes}->{libraries}->{$_}->{noinst} } 23*e7be843bSPierre Pronchery @{$unified_info{libraries}} 24*e7be843bSPierre Pronchery ); 25*e7be843bSPierre Pronchery our $no_static = !$disabled{shared} && !$lib_info{libcrypto}->{static}; 26*e7be843bSPierre Pronchery our $no_shared = $disabled{shared}; 27*e7be843bSPierre Pronchery 28*e7be843bSPierre Pronchery # Unixifying of paths, because that's what CMake understands. 29*e7be843bSPierre Pronchery # This assumes that the given path is absolute. 30*e7be843bSPierre Pronchery sub unixify { 31*e7be843bSPierre Pronchery use File::Spec; 32*e7be843bSPierre Pronchery use File::Spec::Unix; 33*e7be843bSPierre Pronchery 34*e7be843bSPierre Pronchery my $path = shift; 35*e7be843bSPierre Pronchery my $no_file = shift; 36*e7be843bSPierre Pronchery (my $volume, $directories, $file) = File::Spec->splitpath($path, $no_file // ()); 37*e7be843bSPierre Pronchery $directories = File::Spec::Unix->catdir(File::Spec->splitdir($directories)); 38*e7be843bSPierre Pronchery 39*e7be843bSPierre Pronchery # We know that $volume is ignored by File::Spec::Unix, so we handle it specially 40*e7be843bSPierre Pronchery # according to the conventions of the platform. 41*e7be843bSPierre Pronchery $volume =~ s|^(.*?):$|/$1| if $^O eq "vms"; # On VMS, DEV: -> /DEV 42*e7be843bSPierre Pronchery 43*e7be843bSPierre Pronchery return $volume . File::Spec::Unix->catpath('', $directories, $no_file ? () : $file); 44*e7be843bSPierre Pronchery } 45*e7be843bSPierre Pronchery "" 46*e7be843bSPierre Pronchery-} 47*e7be843bSPierre Pronchery# Commands may need to know the format version. 48*e7be843bSPierre Proncheryset(CMAKE_IMPORT_FILE_VERSION 1) 49*e7be843bSPierre Pronchery 50*e7be843bSPierre Pronchery# Avoid duplicate find_package() 51*e7be843bSPierre Proncheryset(_ossl_expected_targets OpenSSL::Crypto OpenSSL::SSL 52*e7be843bSPierre Pronchery {- output_off() if $disabled{uplink}; "" -}OpenSSL::applink{- output_on() if $disabled{uplink}; "" -}) 53*e7be843bSPierre Proncheryset(_ossl_defined_targets) 54*e7be843bSPierre Proncheryset(_ossl_undefined_targets) 55*e7be843bSPierre Proncheryforeach(t IN LISTS _ossl_expected_targets) 56*e7be843bSPierre Pronchery if(TARGET "${t}") 57*e7be843bSPierre Pronchery LIST(APPEND _ossl_defined_targets "${t}") 58*e7be843bSPierre Pronchery else() 59*e7be843bSPierre Pronchery LIST(APPEND _ossl_undefined_targets "${t}") 60*e7be843bSPierre Pronchery endif() 61*e7be843bSPierre Proncheryendforeach() 62*e7be843bSPierre Proncherymessage(DEBUG "_ossl_expected_targets = ${_ossl_expected_targets}") 63*e7be843bSPierre Proncherymessage(DEBUG "_ossl_defined_targets = ${_ossl_defined_targets}") 64*e7be843bSPierre Proncherymessage(DEBUG "_ossl_undefined_targets = ${_ossl_undefined_targets}") 65*e7be843bSPierre Proncheryif(NOT _ossl_undefined_targets) 66*e7be843bSPierre Pronchery # All targets are defined, we're good, just undo everything and return 67*e7be843bSPierre Pronchery unset(_ossl_expected_targets) 68*e7be843bSPierre Pronchery unset(_ossl_defined_targets) 69*e7be843bSPierre Pronchery unset(_ossl_undefined_targets) 70*e7be843bSPierre Pronchery unset(CMAKE_IMPORT_FILE_VERSION) 71*e7be843bSPierre Pronchery return() 72*e7be843bSPierre Proncheryendif() 73*e7be843bSPierre Proncheryif(_ossl_defined_targets) 74*e7be843bSPierre Pronchery # We have a mix of defined and undefined targets. This is hard to reconcile, 75*e7be843bSPierre Pronchery # and probably the result of another config, or FindOpenSSL.cmake having been 76*e7be843bSPierre Pronchery # called, or whatever. Therefore, the best course of action is to quit with a 77*e7be843bSPierre Pronchery # hard error. 78*e7be843bSPierre Pronchery message(FATAL_ERROR "Some targets defined, others not:\nNot defined: ${_ossl_undefined_targets}\nDefined: ${_ossl_defined_targets}") 79*e7be843bSPierre Proncheryendif() 80*e7be843bSPierre Proncheryunset(_ossl_expected_targets) 81*e7be843bSPierre Proncheryunset(_ossl_defined_targets) 82*e7be843bSPierre Proncheryunset(_ossl_undefined_targets) 83*e7be843bSPierre Pronchery 84*e7be843bSPierre Pronchery{- 85*e7be843bSPierre Pronchery # It can be argued that 'cmake_path' would be the better choice here. However, 86*e7be843bSPierre Pronchery # cmake_path is relatively new, while get_filename_component has been around 87*e7be843bSPierre Pronchery # since before CMake 3.0 88*e7be843bSPierre Pronchery-} 89*e7be843bSPierre Pronchery# Set up the import path, so all other import paths are made relative this file 90*e7be843bSPierre Proncheryget_filename_component(_ossl_prefix "${CMAKE_CURRENT_LIST_FILE}" PATH) 91*e7be843bSPierre Pronchery{- 92*e7be843bSPierre Pronchery # For each component in $OpenSSL::safe::installdata::CMAKECONFIGDIR[0] relative to 93*e7be843bSPierre Pronchery # $OpenSSL::safe::installdata::PREFIX[0], have CMake figure out the parent directory. 94*e7be843bSPierre Pronchery my $d = join('/', unixify(catdir($OpenSSL::safe::installdata::LIBDIR_REL_PREFIX[0], 95*e7be843bSPierre Pronchery $OpenSSL::safe::installdata::CMAKECONFIGDIR_REL_LIBDIR[0]), 1)); 96*e7be843bSPierre Pronchery $OUT = ''; 97*e7be843bSPierre Pronchery if ($d ne '.') { 98*e7be843bSPierre Pronchery $OUT .= 'get_filename_component(_ossl_prefix "${_ossl_prefix}" PATH)' . "\n" 99*e7be843bSPierre Pronchery foreach (split '/', $d); 100*e7be843bSPierre Pronchery } 101*e7be843bSPierre Pronchery-} 102*e7be843bSPierre Proncheryif(_ossl_prefix STREQUAL "/") 103*e7be843bSPierre Pronchery set(_ossl_prefix "") 104*e7be843bSPierre Proncheryendif() 105*e7be843bSPierre Pronchery 106*e7be843bSPierre Pronchery{- output_off() unless $disabled{shared}; "" -} 107*e7be843bSPierre Proncheryset(_ossl_use_static_libs True) 108*e7be843bSPierre Pronchery{- output_on() unless $disabled{shared}; "" -} 109*e7be843bSPierre Proncheryif(OPENSSL_USE_STATIC_LIBS) 110*e7be843bSPierre Pronchery set(_ossl_use_static_libs True) 111*e7be843bSPierre Proncheryelseif(DEFINED OPENSSL_USE_STATIC_LIBS) 112*e7be843bSPierre Pronchery # We know OPENSSL_USE_STATIC_LIBS is defined and False 113*e7be843bSPierre Pronchery if(_ossl_use_static_libs) 114*e7be843bSPierre Pronchery # OPENSSL_USE_STATIC_LIBS is explicitly false, indicating that shared libraries are 115*e7be843bSPierre Pronchery # required. However, _ossl_use_static_libs indicates that no shared libraries are 116*e7be843bSPierre Pronchery # available. The best course of action is to simply return and leave it to CMake to 117*e7be843bSPierre Pronchery # use another OpenSSL config. 118*e7be843bSPierre Pronchery unset(_ossl_use_static_libs) 119*e7be843bSPierre Pronchery unset(CMAKE_IMPORT_FILE_VERSION) 120*e7be843bSPierre Pronchery return() 121*e7be843bSPierre Pronchery endif() 122*e7be843bSPierre Proncheryendif() 123*e7be843bSPierre Pronchery 124*e7be843bSPierre Pronchery# Version, copied from what find_package() gives, for compatibility with FindOpenSSL.cmake 125*e7be843bSPierre Proncheryset(OPENSSL_VERSION "${OpenSSL_VERSION}") 126*e7be843bSPierre Proncheryset(OPENSSL_VERSION_MAJOR "${OpenSSL_VERSION_MAJOR}") 127*e7be843bSPierre Proncheryset(OPENSSL_VERSION_MINOR "${OpenSSL_VERSION_MINOR}") 128*e7be843bSPierre Proncheryset(OPENSSL_VERSION_FIX "${OpenSSL_VERSION_PATCH}") 129*e7be843bSPierre Proncheryset(OPENSSL_FOUND YES) 130*e7be843bSPierre Pronchery 131*e7be843bSPierre Pronchery# Directories and names 132*e7be843bSPierre Proncheryset(OPENSSL_LIBRARY_DIR "${_ossl_prefix}/{- unixify($OpenSSL::safe::installdata::LIBDIR_REL_PREFIX[0], 1); -}") 133*e7be843bSPierre Proncheryset(OPENSSL_INCLUDE_DIR{- $OUT = ''; 134*e7be843bSPierre Pronchery $OUT .= ' "${_ossl_prefix}/' . $_ . '"' 135*e7be843bSPierre Pronchery foreach (@OpenSSL::safe::installdata::INCLUDEDIR_REL_PREFIX); -}) 136*e7be843bSPierre Proncheryset(OPENSSL_ENGINES_DIR "${_ossl_prefix}/{- unixify($OpenSSL::safe::installdata::LIBDIR_REL_PREFIX[0], 1); -}/{- unixify($OpenSSL::safe::installdata::ENGINESDIR_REL_LIBDIR[0], 1); -}") 137*e7be843bSPierre Proncheryset(OPENSSL_MODULES_DIR "${_ossl_prefix}/{- unixify($OpenSSL::safe::installdata::LIBDIR_REL_PREFIX[0], 1); -}/{- unixify($OpenSSL::safe::installdata::MODULESDIR_REL_LIBDIR[0], 1); -}") 138*e7be843bSPierre Proncheryset(OPENSSL_RUNTIME_DIR "${_ossl_prefix}/{- unixify($OpenSSL::safe::installdata::BINDIR_REL_PREFIX[0], 1); -}") 139*e7be843bSPierre Pronchery{- output_off() if $disabled{uplink}; "" -} 140*e7be843bSPierre Proncheryset(OPENSSL_APPLINK_SOURCE "${_ossl_prefix}/{- unixify($OpenSSL::safe::installdata::APPLINKDIR_REL_PREFIX[0], 1); -}/applink.c") 141*e7be843bSPierre Pronchery{- output_on() if $disabled{uplink}; "" -} 142*e7be843bSPierre Proncheryset(OPENSSL_PROGRAM "${OPENSSL_RUNTIME_DIR}/{- platform->bin('openssl') -}") 143*e7be843bSPierre Pronchery 144*e7be843bSPierre Pronchery# Set up the imported targets 145*e7be843bSPierre Proncheryif(_ossl_use_static_libs) 146*e7be843bSPierre Pronchery{- output_off() unless $no_static; "" -} 147*e7be843bSPierre Pronchery # Static libraries are UNSUPPORTED in this configuration 148*e7be843bSPierre Pronchery{- output_on() unless $no_static; output_off() if $no_static; "" -} 149*e7be843bSPierre Pronchery add_library(OpenSSL::Crypto STATIC IMPORTED) 150*e7be843bSPierre Pronchery add_library(OpenSSL::SSL STATIC IMPORTED) 151*e7be843bSPierre Pronchery 152*e7be843bSPierre Pronchery set(OPENSSL_LIBCRYPTO_STATIC "${OPENSSL_LIBRARY_DIR}/{- $lib_info{libcrypto}->{static} -}") 153*e7be843bSPierre Pronchery set(OPENSSL_LIBCRYPTO_DEPENDENCIES {- join(' ', @OpenSSL::safe::installdata::LDLIBS) -}) 154*e7be843bSPierre Pronchery set_target_properties(OpenSSL::Crypto PROPERTIES 155*e7be843bSPierre Pronchery IMPORTED_LINK_INTERFACE_LANGUAGES "C" 156*e7be843bSPierre Pronchery IMPORTED_LOCATION ${OPENSSL_LIBCRYPTO_STATIC}) 157*e7be843bSPierre Pronchery set_property(TARGET OpenSSL::Crypto 158*e7be843bSPierre Pronchery PROPERTY INTERFACE_LINK_LIBRARIES ${OPENSSL_LIBCRYPTO_DEPENDENCIES}) 159*e7be843bSPierre Pronchery 160*e7be843bSPierre Pronchery set(OPENSSL_LIBSSL_STATIC "${OPENSSL_LIBRARY_DIR}/{- $lib_info{libssl}->{static} -}") 161*e7be843bSPierre Pronchery set(OPENSSL_LIBSSL_DEPENDENCIES OpenSSL::Crypto) 162*e7be843bSPierre Pronchery set_target_properties(OpenSSL::SSL PROPERTIES 163*e7be843bSPierre Pronchery IMPORTED_LINK_INTERFACE_LANGUAGES "C" 164*e7be843bSPierre Pronchery IMPORTED_LOCATION ${OPENSSL_LIBSSL_STATIC}) 165*e7be843bSPierre Pronchery set_property(TARGET OpenSSL::SSL 166*e7be843bSPierre Pronchery PROPERTY INTERFACE_LINK_LIBRARIES ${OPENSSL_LIBSSL_DEPENDENCIES}) 167*e7be843bSPierre Pronchery 168*e7be843bSPierre Pronchery # Directories and names compatible with CMake's FindOpenSSL.cmake 169*e7be843bSPierre Pronchery set(OPENSSL_CRYPTO_LIBRARY ${OPENSSL_LIBCRYPTO_STATIC}) 170*e7be843bSPierre Pronchery set(OPENSSL_CRYPTO_LIBRARIES ${OPENSSL_CRYPTO_LIBRARY} ${OPENSSL_LIBCRYPTO_DEPENDENCIES}) 171*e7be843bSPierre Pronchery set(OPENSSL_SSL_LIBRARY ${OPENSSL_LIBSSL_STATIC}) 172*e7be843bSPierre Pronchery set(OPENSSL_SSL_LIBRARIES ${OPENSSL_SSL_LIBRARY} ${OPENSSL_LIBSSL_DEPENDENCIES}) 173*e7be843bSPierre Pronchery set(OPENSSL_LIBRARIES ${OPENSSL_SSL_LIBRARY} ${OPENSSL_LIBSSL_DEPENDENCIES} ${OPENSSL_LIBCRYPTO_DEPENDENCIES}) 174*e7be843bSPierre Pronchery{- output_on(); "" -} 175*e7be843bSPierre Proncheryelse() 176*e7be843bSPierre Pronchery{- output_off() unless $no_shared; "" -} 177*e7be843bSPierre Pronchery # Shared libraries are UNSUPPORTED in this configuration 178*e7be843bSPierre Pronchery{- output_on() unless $no_shared; 179*e7be843bSPierre Pronchery output_off() if $no_shared; "" -} 180*e7be843bSPierre Pronchery add_library(OpenSSL::Crypto SHARED IMPORTED) 181*e7be843bSPierre Pronchery add_library(OpenSSL::SSL SHARED IMPORTED) 182*e7be843bSPierre Pronchery{- output_off() unless $lib_info{libcrypto}->{shared_import}; "" -} 183*e7be843bSPierre Pronchery set(OPENSSL_LIBCRYPTO_SHARED "${OPENSSL_RUNTIME_DIR}/{- $lib_info{libcrypto}->{shared} -}") 184*e7be843bSPierre Pronchery set(OPENSSL_LIBCRYPTO_IMPORT "${OPENSSL_LIBRARY_DIR}/{- $lib_info{libcrypto}->{shared_import} -}") 185*e7be843bSPierre Pronchery set(OPENSSL_LIBCRYPTO_DEPENDENCIES {- join(' ', @LDLIBS) -}) 186*e7be843bSPierre Pronchery set_target_properties(OpenSSL::Crypto PROPERTIES 187*e7be843bSPierre Pronchery IMPORTED_LINK_INTERFACE_LANGUAGES "C" 188*e7be843bSPierre Pronchery IMPORTED_IMPLIB ${OPENSSL_LIBCRYPTO_IMPORT} 189*e7be843bSPierre Pronchery IMPORTED_LOCATION ${OPENSSL_LIBCRYPTO_SHARED}) 190*e7be843bSPierre Pronchery set_property(TARGET OpenSSL::Crypto 191*e7be843bSPierre Pronchery PROPERTY INTERFACE_LINK_LIBRARIES ${OPENSSL_LIBCRYPTO_DEPENDENCIES}) 192*e7be843bSPierre Pronchery 193*e7be843bSPierre Pronchery set(OPENSSL_LIBSSL_SHARED "${OPENSSL_RUNTIME_DIR}/{- $lib_info{libssl}->{shared} -}") 194*e7be843bSPierre Pronchery set(OPENSSL_LIBSSL_IMPORT "${OPENSSL_LIBRARY_DIR}/{- $lib_info{libssl}->{shared_import} -}") 195*e7be843bSPierre Pronchery set(OPENSSL_LIBSSL_DEPENDENCIES OpenSSL::Crypto {- join(' ', @LDLIBS) -}) 196*e7be843bSPierre Pronchery set_target_properties(OpenSSL::SSL PROPERTIES 197*e7be843bSPierre Pronchery IMPORTED_LINK_INTERFACE_LANGUAGES "C" 198*e7be843bSPierre Pronchery IMPORTED_IMPLIB ${OPENSSL_LIBSSL_IMPORT} 199*e7be843bSPierre Pronchery IMPORTED_LOCATION ${OPENSSL_LIBSSL_SHARED}) 200*e7be843bSPierre Pronchery set_property(TARGET OpenSSL::SSL 201*e7be843bSPierre Pronchery PROPERTY INTERFACE_LINK_LIBRARIES ${OPENSSL_LIBSSL_DEPENDENCIES}) 202*e7be843bSPierre Pronchery 203*e7be843bSPierre Pronchery # Directories and names compatible with CMake's FindOpenSSL.cmake 204*e7be843bSPierre Pronchery set(OPENSSL_CRYPTO_LIBRARY ${OPENSSL_LIBCRYPTO_IMPORT}) 205*e7be843bSPierre Pronchery set(OPENSSL_CRYPTO_LIBRARIES ${OPENSSL_CRYPTO_LIBRARY} ${OPENSSL_LIBCRYPTO_DEPENDENCIES}) 206*e7be843bSPierre Pronchery set(OPENSSL_SSL_LIBRARY ${OPENSSL_LIBSSL_IMPORT}) 207*e7be843bSPierre Pronchery set(OPENSSL_SSL_LIBRARIES ${OPENSSL_SSL_LIBRARY} ${OPENSSL_LIBSSL_DEPENDENCIES}) 208*e7be843bSPierre Pronchery set(OPENSSL_LIBRARIES ${OPENSSL_SSL_LIBRARY} ${OPENSSL_LIBSSL_DEPENDENCIES} ${OPENSSL_LIBCRYPTO_DEPENDENCIES}) 209*e7be843bSPierre Pronchery{- output_on() unless $lib_info{libcrypto}->{shared_import}; 210*e7be843bSPierre Pronchery output_off() if $lib_info{libcrypto}->{shared_import}; "" -} 211*e7be843bSPierre Pronchery # Dependencies are assumed to be implied in the shared libraries 212*e7be843bSPierre Pronchery set(OPENSSL_LIBCRYPTO_SHARED "${OPENSSL_LIBRARY_DIR}/{- $lib_info{libcrypto}->{shared} -}") 213*e7be843bSPierre Pronchery set_target_properties(OpenSSL::Crypto PROPERTIES 214*e7be843bSPierre Pronchery IMPORTED_LINK_INTERFACE_LANGUAGES "C" 215*e7be843bSPierre Pronchery IMPORTED_LOCATION ${OPENSSL_LIBCRYPTO_SHARED}) 216*e7be843bSPierre Pronchery 217*e7be843bSPierre Pronchery set(OPENSSL_LIBSSL_SHARED "${OPENSSL_LIBRARY_DIR}/{- $lib_info{libssl}->{shared} -}") 218*e7be843bSPierre Pronchery set_target_properties(OpenSSL::SSL PROPERTIES 219*e7be843bSPierre Pronchery IMPORTED_LINK_INTERFACE_LANGUAGES "C" 220*e7be843bSPierre Pronchery IMPORTED_LOCATION ${OPENSSL_LIBSSL_SHARED}) 221*e7be843bSPierre Pronchery 222*e7be843bSPierre Pronchery # Directories and names compatible with CMake's FindOpenSSL.cmake 223*e7be843bSPierre Pronchery set(OPENSSL_CRYPTO_LIBRARY ${OPENSSL_LIBCRYPTO_SHARED}) 224*e7be843bSPierre Pronchery set(OPENSSL_CRYPTO_LIBRARIES ${OPENSSL_CRYPTO_LIBRARY}) 225*e7be843bSPierre Pronchery set(OPENSSL_SSL_LIBRARY ${OPENSSL_LIBSSL_SHARED}) 226*e7be843bSPierre Pronchery set(OPENSSL_SSL_LIBRARIES ${OPENSSL_SSL_LIBRARY}) 227*e7be843bSPierre Pronchery set(OPENSSL_LIBRARIES ${OPENSSL_SSL_LIBRARIES}) 228*e7be843bSPierre Pronchery{- output_on() if $lib_info{libcrypto}->{shared_import}; "" -} 229*e7be843bSPierre Pronchery{- output_on() if $no_shared; "" -} 230*e7be843bSPierre Proncheryendif() 231*e7be843bSPierre Pronchery 232*e7be843bSPierre Proncheryset_target_properties(OpenSSL::Crypto PROPERTIES 233*e7be843bSPierre Pronchery INTERFACE_INCLUDE_DIRECTORIES "${OPENSSL_INCLUDE_DIR}") 234*e7be843bSPierre Proncheryset_target_properties(OpenSSL::SSL PROPERTIES 235*e7be843bSPierre Pronchery INTERFACE_INCLUDE_DIRECTORIES "${OPENSSL_INCLUDE_DIR}") 236*e7be843bSPierre Pronchery 237*e7be843bSPierre Pronchery{- output_off() if $disabled{uplink}; "" -} 238*e7be843bSPierre Proncheryadd_library(OpenSSL::applink INTERFACE IMPORTED) 239*e7be843bSPierre Proncheryset_property(TARGET OpenSSL::applink PROPERTY 240*e7be843bSPierre Pronchery INTERFACE_SOURCES "${OPENSSL_APPLINK_SOURCE}") 241*e7be843bSPierre Pronchery{- output_on() if $disabled{uplink}; "" -} 242*e7be843bSPierre Pronchery 243*e7be843bSPierre Proncheryunset(_ossl_prefix) 244*e7be843bSPierre Proncheryunset(_ossl_use_static_libs) 245