summaryrefslogtreecommitdiff
blob: 941f2d6bc1a15d1821c6ec8be4bbdf3a55492c04 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
From 903ed372cad330e86ef767eb98a4d29d04781e5e Mon Sep 17 00:00:00 2001
From: Kent Fredric <kentnl@gentoo.org>
Date: Sat, 28 Oct 2017 14:53:23 +1300
Subject: Use configuration instead of pure discovery for XS Support

Given in Gentoo that ::XS is either going to be available, or not,
based on user configuration, *before* configure runs, trying to turn
it on/off in configure is nonsense.

Subsequently, this test logic just determines if we should be running
the XS tests or not.

If ::XS is installed already, then XS tests should be run despite user
not opting in to XS, as the opt-in only regulates dependencies, but
LMU can still trigger ::XS at runtime.

If the user opts in to XS, then the tests should be run regardless of
perl detecting XS being installed, because XS *NOT* being available
is then an error.
---
 Makefile.PL | 41 ++---------------------------------------
 1 file changed, 2 insertions(+), 39 deletions(-)

diff --git a/Makefile.PL b/Makefile.PL
index 89680b1..5083b86 100644
--- a/Makefile.PL
+++ b/Makefile.PL
@@ -8,45 +8,8 @@ use 5.008_001;
 use Config;
 use ExtUtils::MakeMaker;
 
-BEGIN
-{
-    unless (grep { $_ eq "." } @INC)
-    {
-        use lib ".";
-    }
-}
-
-use inc::latest 'Capture::Tiny';
-use inc::latest 'Config::AutoConf';
-
-if (inc::latest->can("write"))
-{
-    inc::latest->write("inc");
-    for my $mod (inc::latest->loaded_modules)
-    {
-        inc::latest->bundle_module($mod, "inc");
-    }
-}
-
-use inc::Config::AutoConf::LMU ();
-
-inc::Config::AutoConf::LMU->_set_argv(@ARGV);    # XXX hack because we cannot construct for global use
-my $loadable_xs = inc::Config::AutoConf::LMU->check_produce_loadable_xs_build();
-
-if (-d "Sandbox")
-{
-    unless (grep { $_ eq "." } @INC)
-    {
-        use lib ".";
-    }
-    eval "use Sandbox::Tumble ();";
-    $@ and die $@;
-    eval "use File::Path ();";
-    File::Path->import;
-    -d 't/xs'       and rmtree('t/xs');
-    -d 't/pureperl' and rmtree('t/pureperl');
-    Sandbox::Tumble->tumble(qw(t));
-}
+my $loadable_xs = $ENV{LMU_USE_XS} ||
+ eval { require List::MoreUtils::XS; List::MoreUtils::XS->VERSION(0.426) };
 
 my $conflictMsg = <<EOCM;
 ***
-- 
2.14.3