11cb0ef41Sopenharmony_ci{
21cb0ef41Sopenharmony_ci  'variables': {
31cb0ef41Sopenharmony_ci    'openssl_sources': [
41cb0ef41Sopenharmony_ci%%- foreach $src (@libfips_srcs) {
51cb0ef41Sopenharmony_ci  $OUT .= "      'openssl/$src',\n";
61cb0ef41Sopenharmony_ci} -%%
71cb0ef41Sopenharmony_ci    ],
81cb0ef41Sopenharmony_ci    'openssl_sources_%%-$arch-%%': [
91cb0ef41Sopenharmony_ci%%- foreach $src (@generated_srcs) {
101cb0ef41Sopenharmony_ci  $OUT .= "      './config/archs/$arch/$asm/$src',\n";
111cb0ef41Sopenharmony_ci} -%%
121cb0ef41Sopenharmony_ci    ],
131cb0ef41Sopenharmony_ci    'openssl_defines_%%-$arch-%%': [
141cb0ef41Sopenharmony_ci%%- foreach $define (@{$config{defines}}) {
151cb0ef41Sopenharmony_ci      $OUT .= "      '$define',\n";
161cb0ef41Sopenharmony_ci    }
171cb0ef41Sopenharmony_ci    foreach $define (@lib_cppflags) {
181cb0ef41Sopenharmony_ci      $OUT .= "      '$define',\n";
191cb0ef41Sopenharmony_ci    }
201cb0ef41Sopenharmony_ci    foreach $define (@{$target{defines}}) {
211cb0ef41Sopenharmony_ci      $OUT .= "      '$define',\n";
221cb0ef41Sopenharmony_ci    }
231cb0ef41Sopenharmony_ci    foreach $define (@{libfips_defines}) {
241cb0ef41Sopenharmony_ci      $OUT .= "      '$define',\n";
251cb0ef41Sopenharmony_ci    }
261cb0ef41Sopenharmony_ci    foreach $define (@{$config{libfips_defines}}) {
271cb0ef41Sopenharmony_ci  $OUT .= "      '$define',\n";
281cb0ef41Sopenharmony_ci} -%%    ],
291cb0ef41Sopenharmony_ci    'openssl_cflags_%%-$arch-%%': [
301cb0ef41Sopenharmony_ci%%- foreach $cflag (@cflags) {
311cb0ef41Sopenharmony_ci      $OUT .= "      '$cflag',\n";
321cb0ef41Sopenharmony_ci} -%%    ],
331cb0ef41Sopenharmony_ci    'openssl_ex_libs_%%-$arch-%%': [
341cb0ef41Sopenharmony_ci      '%%-$target{ex_libs}-%%',
351cb0ef41Sopenharmony_ci    ],
361cb0ef41Sopenharmony_ci    'linker_script': '%%-$linker_script-%%'
371cb0ef41Sopenharmony_ci  },
381cb0ef41Sopenharmony_ci  'include_dirs': [
391cb0ef41Sopenharmony_ci    '.',
401cb0ef41Sopenharmony_ci    './include',
411cb0ef41Sopenharmony_ci    './crypto',
421cb0ef41Sopenharmony_ci    './crypto/include/internal',
431cb0ef41Sopenharmony_ci    './providers/common/include',
441cb0ef41Sopenharmony_ci  ],
451cb0ef41Sopenharmony_ci  'defines': ['<@(openssl_defines_%%-$arch-%%)'],
461cb0ef41Sopenharmony_ci%%- if (!$is_win) {
471cb0ef41Sopenharmony_ci      $OUT .= "  'cflags': ['<@(openssl_cflags_$arch)'],\n";
481cb0ef41Sopenharmony_ci      $OUT .= "  'libraries': ['<@(openssl_ex_libs_$arch)'],\n";
491cb0ef41Sopenharmony_ci      if ($linker_script ne "") {
501cb0ef41Sopenharmony_ci        $OUT .= "  'ldflags': ['-Wl,--version-script=<@(linker_script)'],";
511cb0ef41Sopenharmony_ci      }
521cb0ef41Sopenharmony_ci} -%%
531cb0ef41Sopenharmony_ci  'sources': ['<@(openssl_sources)', '<@(openssl_sources_%%-$arch-%%)'],
541cb0ef41Sopenharmony_ci  'direct_dependent_settings': {
551cb0ef41Sopenharmony_ci    'include_dirs': ['./include', '.'],
561cb0ef41Sopenharmony_ci    'defines': ['<@(openssl_defines_%%-$arch-%%)'],
571cb0ef41Sopenharmony_ci  },
581cb0ef41Sopenharmony_ci}
59