From bb69e8c46f6e88d09beb5df5115698a71f47abf7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?H=C3=A5kon=20H=C3=A6gland?= Date: Mon, 15 Jul 2024 22:01:54 +0200 Subject: [PATCH] Add rpath to link command --- lib/Test/Alien.pm | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/lib/Test/Alien.pm b/lib/Test/Alien.pm index 3aa32d56..4b55ebf3 100644 --- a/lib/Test/Alien.pm +++ b/lib/Test/Alien.pm @@ -661,6 +661,7 @@ sub xs_ok } unshift @{ $link_options{extra_linker_flags} }, grep /^-l/, shellwords map { _flags $_, 'libs' } @aliens; + push @{ $link_options{extra_linker_flags} }, _rpath( map { _flags $_, 'libs' } @aliens); my($out, $lib, $err) = capture_merged { my $lib = eval { @@ -790,6 +791,22 @@ sub xs_ok $ok; } +sub _rpath(@) +{ + my(@libs) = @_; + + @libs = map { shellwords $_ } @libs; + my @rpath; + foreach my $lib (@libs) + { + if($lib =~ /^-L(.*)/) + { + push @rpath, "-Wl,-rpath,$1"; + } + } + @rpath; +} + sub with_subtest (&) { my($code) = @_;