summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexandre Pion <pion@afnic.fr>2022-03-01 12:50:27 +0100
committerAlexandre Pion <pion@afnic.fr>2022-03-03 19:44:29 +0100
commitb6a937e900875f5c3eb810b5e7aefef5fce8e3b5 (patch)
tree2d28197eeb513ac3d6453413f877df7a5eac14a5
parenta1244604741333142e8a3ba7b85e72ecad705748 (diff)
Options to provide OpenSSL distinct inc/lib paths
Allow passing distinct OpenSSL paths for include and library files when configuring LDNS.
-rw-r--r--Makefile.PL35
1 files changed, 29 insertions, 6 deletions
diff --git a/Makefile.PL b/Makefile.PL
index dbf3e39..ce5ce79 100644
--- a/Makefile.PL
+++ b/Makefile.PL
@@ -19,12 +19,16 @@ my $opt_idn = 1;
my $opt_internal_ldns = 1;
my $opt_randomize = 0;
my $opt_prefix_openssl = "";
+my $opt_openssl_inc = "";
+my $opt_openssl_lib = "";
GetOptions(
'ed25519!' => \$opt_ed25519,
'idn!' => \$opt_idn,
'internal-ldns!' => \$opt_internal_ldns,
'randomize!' => \$opt_randomize,
'prefix-openssl=s' => \$opt_prefix_openssl,
+ 'openssl-inc=s' => \$opt_openssl_inc,
+ 'openssl-lib=s' => \$opt_openssl_lib,
);
configure_requires 'Devel::CheckLib';
@@ -42,12 +46,31 @@ cc_src_paths 'src';
# OpenSSL
my %assert_lib_args_openssl;
-if ( $opt_prefix_openssl ) {
- print "Custom prefix for OpenSSL: $opt_prefix_openssl\n";
- cc_include_paths "$opt_prefix_openssl/include";
- cc_libs "-L$opt_prefix_openssl/lib", "crypto";
- $assert_lib_args_openssl{incpath} = "$opt_prefix_openssl/include";
- $assert_lib_args_openssl{libpath} = "$opt_prefix_openssl/lib";
+my $custom_openssl = ( $opt_prefix_openssl or $opt_openssl_inc or $opt_openssl_lib );
+if ( $custom_openssl ) {
+ my $openssl_incpath = "";
+ my $openssl_libpath = "";
+
+ if ( $opt_prefix_openssl ) {
+ print "Custom prefix for OpenSSL: $opt_prefix_openssl\n";
+ $openssl_incpath = "$opt_prefix_openssl/include";
+ $openssl_libpath = "$opt_prefix_openssl/lib";
+ }
+
+ if ( $opt_openssl_inc ) {
+ print "Custom include directory for OpenSSL: $opt_openssl_inc\n";
+ $openssl_incpath = "$opt_openssl_inc";
+ }
+
+ if ( $opt_openssl_lib ) {
+ print "Custom library directory for OpenSSL: $opt_openssl_lib\n";
+ $openssl_libpath = "$opt_openssl_lib";
+ }
+
+ cc_include_paths "$openssl_incpath";
+ cc_libs "-L$openssl_libpath", "crypto";
+ $assert_lib_args_openssl{incpath} = "$openssl_incpath";
+ $assert_lib_args_openssl{libpath} = "$openssl_libpath";
}
else {
cc_libs 'crypto';