diff --git a/openssl/config/generate_gypi.pl b/openssl/config/generate_gypi.pl --- a/openssl/config/generate_gypi.pl +++ b/openssl/config/generate_gypi.pl @@ -361,7 +361,35 @@ print CLGYPI "$clgypi"; close(CLGYPI); +# Create meson.build +my $mtemplate = + Text::Template->new(TYPE => 'FILE', + SOURCE => 'meson.build.tmpl', + DELIMITERS => [ "%%-", "-%%" ] + ); + +my $meson = $mtemplate->fill_in( + HASH => { + libssl_srcs => \@libssl_srcs, + libcrypto_srcs => \@libcrypto_srcs, + lib_defines => \@lib_defines, + generated_srcs => \@generated_srcs, + apps_openssl_srcs => \@apps_openssl_srcs, + libapps_srcs => \@libapps_srcs, + config => \%config, + target => \%target, + cflags => \@cflags, + asm => \$asm, + arch => \$arch, + lib_cppflags => \@lib_cppflags, + is_win => \$is_win, + }); + +open(MESON, "> ./archs/$arch/$asm/meson.build"); +print MESON "$meson"; +close(MESON); + # Clean Up my $cmd2 ="cd $src_dir; make -f $makefile clean; make -f $makefile distclean;" . - "git clean -f $src_dir/crypto"; + "git clean -f crypto"; system($cmd2) == 0 or die "Error in system($cmd2)";