includes => [],
lib_cflags => "",
lib_cppflags => "",
- lib_defines => [ 'OPENSSL_BUILDING_OPENSSL' ],
+ lib_defines => [],
thread_scheme => "(unknown)", # Assume we don't know
thread_defines => [],
build_scheme => [ "unified", "unix" ],
build_file => "Makefile",
- AR => "ar",
- ARFLAGS => "r",
+ AR => "(unused)",
+ ARFLAGS => "(unused)",
CC => "cc",
HASHBANGPERL => "/usr/bin/env perl",
RANLIB => sub { which("$config{cross_compile_prefix}ranlib")
defines =>
sub {
- my @defs = ();
+ my @defs = ( 'OPENSSL_BUILDING_OPENSSL' );
+ push @defs, "BROTLI" unless $disabled{brotli};
+ push @defs, "BROTLI_SHARED" unless $disabled{"brotli-dynamic"};
push @defs, "ZLIB" unless $disabled{zlib};
push @defs, "ZLIB_SHARED" unless $disabled{"zlib-dynamic"};
+ push @defs, "ZSTD" unless $disabled{zstd};
+ push @defs, "ZSTD_SHARED" unless $disabled{"zstd-dynamic"};
return [ @defs ];
},
includes =>
sub {
my @incs = ();
+ push @incs, $withargs{brotli_include}
+ if !$disabled{brotli} && $withargs{brotli_include};
push @incs, $withargs{zlib_include}
if !$disabled{zlib} && $withargs{zlib_include};
+ push @incs, $withargs{zstd_include}
+ if !$disabled{zstd} && $withargs{zstd_include};
return [ @incs ];
},
},
template => 1,
AR => "ar",
- ARFLAGS => "r",
+ ARFLAGS => "qc",
CC => "cc",
lflags =>
- sub { $withargs{zlib_lib} ? "-L".$withargs{zlib_lib} : () },
+ sub {
+ my @libs = ();
+ push(@libs, "-L".$withargs{zlib_lib}) if $withargs{zlib_lib};
+ push(@libs, "-L".$withargs{brotli_lib}) if $withargs{brotli_lib};
+ push(@libs, "-L".$withargs{zstd_lib}) if $withargs{zstd_lib};
+ return join(" ", @libs);
+ },
ex_libs =>
- sub { !defined($disabled{zlib})
- && defined($disabled{"zlib-dynamic"})
- ? "-lz" : () },
+ sub {
+ my @libs = ();
+ push(@libs, "-lz") if !defined($disabled{zlib}) && defined($disabled{"zlib-dynamic"});
+ if (!defined($disabled{brotli}) && defined($disabled{"brotli-dynamic"})) {
+ push(@libs, "-lbrotlienc");
+ push(@libs, "-lbrotlidec");
+ push(@libs, "-lbrotlicommon");
+ push(@libs, "-lm");
+ }
+ push(@libs, "-lzstd") if !defined($disabled{zstd}) && defined($disabled{"zstd-dynamic"});
+ return join(" ", @libs);
+ },
HASHBANGPERL => "/usr/bin/env perl", # Only Unix actually cares
RANLIB => sub { which("$config{cross_compile_prefix}ranlib")
? "ranlib" : "" },
},
ex_libs =>
sub {
+ my @libs = ();
unless ($disabled{zlib}) {
if (defined($disabled{"zlib-dynamic"})) {
- return $withargs{zlib_lib} // "ZLIB1";
+ push(@libs, $withargs{zlib_lib} // "ZLIB1");
+ }
+ }
+ unless ($disabled{zstd}) {
+ if (defined($disabled{"zstd-dynamic"})) {
+ push(@libs, $withargs{zstd_lib} // "libzstd");
+ }
+ }
+ unless ($disabled{brotli}) {
+ if (defined($disabled{"brotli-dynamic"})) {
+ my $path = "";
+ if (defined($withargs{brotli_lib})) {
+ $path = $withargs{brotli_lib} . "\\";
+ }
+ push(@libs, $path . "brotlicommon.lib");
+ push(@libs, $path . "brotlidec.lib");
+ push(@libs, $path . "brotlienc.lib");
}
}
- return ();
+ return join(" ", @libs);
},
- LD => "link",
- LDFLAGS => "/nologo",
- ldoutflag => "/out:",
- AR => "lib",
- ARFLAGS => "/nologo",
- aroutflag => "/out:",
- RC => "rc",
- rcoutflag => "/fo",
MT => "mt",
MTFLAGS => "-nologo",
mtinflag => "-manifest ",