11cb0ef41Sopenharmony_ci{
21cb0ef41Sopenharmony_ci  'include_dirs': [
31cb0ef41Sopenharmony_ci    'openssl/',
41cb0ef41Sopenharmony_ci    'openssl/include/',
51cb0ef41Sopenharmony_ci    'openssl/crypto/',
61cb0ef41Sopenharmony_ci    'openssl/crypto/include/',
71cb0ef41Sopenharmony_ci    'openssl/crypto/modes/',
81cb0ef41Sopenharmony_ci    'openssl/crypto/ec/curve448',
91cb0ef41Sopenharmony_ci    'openssl/crypto/ec/curve448/arch_32',
101cb0ef41Sopenharmony_ci    'openssl/providers/common/include',
111cb0ef41Sopenharmony_ci    'openssl/providers/implementations/include',
121cb0ef41Sopenharmony_ci    'config/',
131cb0ef41Sopenharmony_ci  ],
141cb0ef41Sopenharmony_ci  # build options specific to OS
151cb0ef41Sopenharmony_ci  'conditions': [
161cb0ef41Sopenharmony_ci    [ 'OS in ("aix", "os400")', {
171cb0ef41Sopenharmony_ci      # AIX is missing /usr/include/endian.h
181cb0ef41Sopenharmony_ci      'defines': [
191cb0ef41Sopenharmony_ci        '__LITTLE_ENDIAN=1234',
201cb0ef41Sopenharmony_ci        '__BIG_ENDIAN=4321',
211cb0ef41Sopenharmony_ci        '__BYTE_ORDER=__BIG_ENDIAN',
221cb0ef41Sopenharmony_ci        '__FLOAT_WORD_ORDER=__BIG_ENDIAN',
231cb0ef41Sopenharmony_ci        'OPENSSLDIR="/etc/ssl"',
241cb0ef41Sopenharmony_ci        'ENGINESDIR="/dev/null"',
251cb0ef41Sopenharmony_ci      ],
261cb0ef41Sopenharmony_ci    }, 'OS=="win"', {
271cb0ef41Sopenharmony_ci      'defines': [
281cb0ef41Sopenharmony_ci        ## default of Win. See INSTALL in openssl repo.
291cb0ef41Sopenharmony_ci        'OPENSSLDIR="C:\\\\Program\\ Files\\\\Common\\ Files\\\\SSL"',
301cb0ef41Sopenharmony_ci        'ENGINESDIR="NUL"',
311cb0ef41Sopenharmony_ci        'OPENSSL_SYS_WIN32', 'WIN32_LEAN_AND_MEAN', 'L_ENDIAN',
321cb0ef41Sopenharmony_ci        '_CRT_SECURE_NO_DEPRECATE', 'UNICODE', '_UNICODE',
331cb0ef41Sopenharmony_ci      ],
341cb0ef41Sopenharmony_ci      'cflags': [
351cb0ef41Sopenharmony_ci        '-W3', '-wd4090', '-Gs0', '-GF', '-Gy', '-nologo','/O2',
361cb0ef41Sopenharmony_ci      ],
371cb0ef41Sopenharmony_ci      'msvs_disabled_warnings': [4090],
381cb0ef41Sopenharmony_ci      'link_settings': {
391cb0ef41Sopenharmony_ci        'libraries': [
401cb0ef41Sopenharmony_ci          '-lws2_32.lib',
411cb0ef41Sopenharmony_ci          '-lgdi32.lib',
421cb0ef41Sopenharmony_ci          '-ladvapi32.lib',
431cb0ef41Sopenharmony_ci          '-lcrypt32.lib',
441cb0ef41Sopenharmony_ci          '-luser32.lib',
451cb0ef41Sopenharmony_ci        ],
461cb0ef41Sopenharmony_ci      },
471cb0ef41Sopenharmony_ci    }, 'OS=="mac"', {
481cb0ef41Sopenharmony_ci      'xcode_settings': {
491cb0ef41Sopenharmony_ci        'WARNING_CFLAGS': ['-Wno-missing-field-initializers']
501cb0ef41Sopenharmony_ci      },
511cb0ef41Sopenharmony_ci      'defines': [
521cb0ef41Sopenharmony_ci        'OPENSSLDIR="/System/Library/OpenSSL/"',
531cb0ef41Sopenharmony_ci        'ENGINESDIR="/dev/null"',
541cb0ef41Sopenharmony_ci      ],
551cb0ef41Sopenharmony_ci    }, 'OS=="solaris"', {
561cb0ef41Sopenharmony_ci      'defines': [
571cb0ef41Sopenharmony_ci        'OPENSSLDIR="/etc/ssl"',
581cb0ef41Sopenharmony_ci        'ENGINESDIR="/dev/null"',
591cb0ef41Sopenharmony_ci        '__EXTENSIONS__'
601cb0ef41Sopenharmony_ci      ],
611cb0ef41Sopenharmony_ci    }, {
621cb0ef41Sopenharmony_ci      # linux and others
631cb0ef41Sopenharmony_ci      'cflags': ['-Wno-missing-field-initializers',],
641cb0ef41Sopenharmony_ci      'defines': [
651cb0ef41Sopenharmony_ci        'OPENSSLDIR="/etc/ssl"',
661cb0ef41Sopenharmony_ci        'ENGINESDIR="/dev/null"',
671cb0ef41Sopenharmony_ci        'TERMIOS',
681cb0ef41Sopenharmony_ci      ],
691cb0ef41Sopenharmony_ci      'conditions': [
701cb0ef41Sopenharmony_ci        [ 'llvm_version=="0.0"', {
711cb0ef41Sopenharmony_ci          'cflags': ['-Wno-old-style-declaration',],
721cb0ef41Sopenharmony_ci        }],
731cb0ef41Sopenharmony_ci      ],
741cb0ef41Sopenharmony_ci    }],
751cb0ef41Sopenharmony_ci  ]
761cb0ef41Sopenharmony_ci}
77