guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

02/03: gnu: Add perl-module-pluggable.


From: Eric Bavier
Subject: 02/03: gnu: Add perl-module-pluggable.
Date: Wed, 20 Jan 2016 23:45:57 +0000

bavier pushed a commit to branch core-updates
in repository guix.

commit 97b07aaa419bfa069bb217fca2f158f6ea0804a1
Author: Eric Bavier <address@hidden>
Date:   Wed Jan 20 17:12:53 2016 -0600

    gnu: Add perl-module-pluggable.
    
    This Perl module was moved out of Perl core in v5.19.0.
    
    * gnu/packages/perl.scm (perl-module-pluggable): New variable.
    * gnu/packages/patches/perl-module-pluggable-search.patch: New patch.
    * gnu-system.am (dist_patch_DATA): Add it.
---
 gnu-system.am                                      |    1 +
 .../patches/perl-module-pluggable-search.patch     |   25 ++++++++++++++++++++
 gnu/packages/perl.scm                              |   22 ++++++++++++++++-
 3 files changed, 47 insertions(+), 1 deletions(-)

diff --git a/gnu-system.am b/gnu-system.am
index e2c1252..fe421a9 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -627,6 +627,7 @@ dist_patch_DATA =                                           
\
   gnu/packages/patches/perl-net-ssleay-disable-ede-test.patch  \
   gnu/packages/patches/perl-no-build-time.patch                        \
   gnu/packages/patches/perl-no-sys-dirs.patch                  \
+  gnu/packages/patches/perl-module-pluggable-search.patch      \
   gnu/packages/patches/perl-source-date-epoch.patch            \
   gnu/packages/patches/perl-tk-x11-discover.patch              \
   gnu/packages/patches/pidgin-add-search-path.patch            \
diff --git a/gnu/packages/patches/perl-module-pluggable-search.patch 
b/gnu/packages/patches/perl-module-pluggable-search.patch
new file mode 100755
index 0000000..ec51abc
--- /dev/null
+++ b/gnu/packages/patches/perl-module-pluggable-search.patch
@@ -0,0 +1,25 @@
+Fix Perl module Module::Pluggable such that it can find plugins that live in
+symlinked directories.
+
+Patch borrowed/adapted from Nixpkgs.
+
+--- Module-Pluggable-5.2/lib/Module/Pluggable/Object.pm   2015-04-08 
23:28:48.120164135 -0500
++++ Module-Pluggable-5.2/lib/Module/Pluggable/Object.pm   2015-04-08 
23:30:27.032166704 -0500
+@@ -164,7 +164,7 @@
+         my $sp = catdir($dir, (split /::/, $searchpath));
+
+         # if it doesn't exist or it's not a dir then skip it
+-        next unless ( -e $sp && -d _ ); # Use the cached stat the second time
++        next unless ( -e $sp );
+
+         my @files = $self->find_files($sp);
+
+@@ -279,7 +279,7 @@
+                              (my $path = $File::Find::name) =~ s#^\\./##;
+                              push @files, $path;
+                            }
+-                      }, $search_path );
++                      }, "$search_path/." );
+     }
+     #chdir $cwd;
+     return @files;
\ No newline at end of file
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index 51fb965..4d9806c 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <address@hidden>
 ;;; Copyright © 2013 Andreas Enge <address@hidden>
 ;;; Copyright © 2015 Ricardo Wurmus <address@hidden>
-;;; Copyright © 2015 Eric Bavier <address@hidden>
+;;; Copyright © 2015, 2016 Eric Bavier <address@hidden>
 ;;; Copyright © 2015 Eric Dvorsak <address@hidden>
 ;;; Copyright © 2016 Mark H Weaver <address@hidden>
 ;;;
@@ -3077,6 +3077,26 @@ strictly correct manner with ExtUtils::MakeMaker, and 
will run on any Perl
 installation version 5.005 or newer.")
     (license (package-license perl))))
 
+(define-public perl-module-pluggable
+  (package
+    (name "perl-module-pluggable")
+    (version "5.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://cpan/authors/id/S/SI/SIMONW/"
+                           "Module-Pluggable-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1px6qmszmfc69v36vd8d92av4nkrif6xf4nrj3xv647xwi2svwmk"))
+       (patches (list (search-patch "perl-module-pluggable-search.patch")))))
+    (build-system perl-build-system)
+    (home-page "http://search.cpan.org/dist/Module-Pluggable";)
+    (synopsis "Give your Perl module the ability to have plugins")
+    (description "This module provides a simple but extensible way of having
+'plugins' for your Perl module.")
+    (license (package-license perl))))
+
 (define-public perl-module-runtime
   (package
     (name "perl-module-runtime")



reply via email to

[Prev in Thread] Current Thread [Next in Thread]