WIP spamassassin - perl problems - shared library dependencies missing in perl extension modules
Commit Message
Hi,
I'm trying to package spamassassin. Unfortunately I have a few problems with it.
How do I add a dependency to the dynamic libraries to the Perl extension modules (which are themselves shared libraries)?
The package spec patches are:
I get:
Can't load 'blib/arch/auto/Crypt/OpenSSL/Bignum/Bignum.so' for module Crypt::OpenSSL::Bignum: blib/arch/auto/Crypt/OpenSSL/Bignum/Bignum.so: undefined symbol: BN_dec2bn at /gnu/store/abgjh1qaxd5fmg24d4wl3p1q8naskz4p-perl-5.22.1/lib/perl5/5.22.1/x86_64-linux/DynaLoader.pm line 193.
at test.pl line 10.
Compilation failed in require at test.pl line 10.
BEGIN failed--compilation aborted at test.pl line 10.
Makefile:1022: recipe for target 'test_dynamic' failed
make: *** [test_dynamic] Error 2
phase `check' failed after 0.1 seconds
builder for `/gnu/store/v4n4mydmik4bpykgmlriihkwi92x3vsm-perl-crypt-openssl-bignum-0.06.drv' failed with exit code 1
cannot build derivation `/gnu/store/9xh5cijziq0ym9pzy8q3sp5c15dczk7p-perl-crypt-openssl-rsa-0.28.drv': 1 dependencies couldn't be built
cannot build derivation `/gnu/store/xn5i9bgf4dpjr3yk9p0nwpzg98bni90k-perl-mail-dkim-0.40.drv': 1 dependencies couldn't be built
cannot build derivation `/gnu/store/m25byhw7qnn6aksqbda0kwwgx5hyjj6f-spamassassin-3.4.1.drv': 1 dependencies couldn't be built
guix package: error: build failed: build of `/gnu/store/m25byhw7qnn6aksqbda0kwwgx5hyjj6f-spamassassin-3.4.1.drv' failed
I get as well:
phase `build' succeeded after 2.1 seconds
starting phase `check'
Running Mkbootstrap for DB_File ()
chmod 644 "DB_File.bs"
PERL_DL_NONLAZY=1 "/gnu/store/abgjh1qaxd5fmg24d4wl3p1q8naskz4p-perl-5.22.1/bin/perl" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
Can't load '/tmp/guix-build-perl-db_file-1.838.drv-0/DB_File-1.838/blib/arch/auto/DB_File/DB_File.so' for module DB_File: /tmp/guix-build-perl-db_file-1.838.drv-0/DB_File-1.838/blib/arch/auto/DB_File/DB_File.so: undefined symbol: db_create at /gnu/store/abgjh1qaxd5fmg24d4wl3p1q8naskz4p-perl-5.22.1/lib/perl5/5.22.1/x86_64-linux/DynaLoader.pm line 193.
at t/db-btree.t line 32.
Compilation failed in require at t/db-btree.t line 32.
BEGIN failed--compilation aborted at t/db-btree.t line 32.
t/db-btree.t ..
Dubious, test returned 2 (wstat 512, 0x200)
No subtests run
Can't load '/tmp/guix-build-perl-db_file-1.838.drv-0/DB_File-1.838/blib/arch/auto/DB_File/DB_File.so' for module DB_File: /tmp/guix-build-perl-db_file-1.838.drv-0/DB_File-1.838/blib/arch/auto/DB_File/DB_File.so: undefined symbol: db_create at /gnu/store/abgjh1qaxd5fmg24d4wl3p1q8naskz4p-perl-5.22.1/lib/perl5/5.22.1/x86_64-linux/DynaLoader.pm line 193.
at t/db-hash.t line 16.
Compilation failed in require at t/db-hash.t line 16.
BEGIN failed--compilation aborted at t/db-hash.t line 16.
t/db-hash.t ...
Dubious, test returned 2 (wstat 512, 0x200)
No subtests run
Can't load '/tmp/guix-build-perl-db_file-1.838.drv-0/DB_File-1.838/blib/arch/auto/DB_File/DB_File.so' for module DB_File: /tmp/guix-build-perl-db_file-1.838.drv-0/DB_File-1.838/blib/arch/auto/DB_File/DB_File.so: undefined symbol: db_create at /gnu/store/abgjh1qaxd5fmg24d4wl3p1q8naskz4p-perl-5.22.1/lib/perl5/5.22.1/x86_64-linux/DynaLoader.pm line 193.
at t/db-recno.t line 15.
Compilation failed in require at t/db-recno.t line 15.
BEGIN failed--compilation aborted at t/db-recno.t line 15.
t/db-recno.t ..
Dubious, test returned 2 (wstat 512, 0x200)
No subtests run
t/pod.t ....... ok
Test Summary Report
-------------------
t/db-btree.t (Wstat: 512 Tests: 0 Failed: 0)
Non-zero exit status: 2
Parse errors: No plan found in TAP output
t/db-hash.t (Wstat: 512 Tests: 0 Failed: 0)
Non-zero exit status: 2
Parse errors: No plan found in TAP output
t/db-recno.t (Wstat: 512 Tests: 0 Failed: 0)
Non-zero exit status: 2
Parse errors: No plan found in TAP output
Files=4, Tests=1, 1 wallclock secs ( 0.03 usr 0.00 sys + 0.20 cusr 0.02 csys = 0.25 CPU)
Result: FAIL
Failed 3/4 test programs. 0/1 subtests failed.
Makefile:1027: recipe for target 'test_dynamic' failed
make: *** [test_dynamic] Error 255
phase `check' failed after 0.4 seconds
note: keeping build directory `/tmp/guix-build-perl-db_file-1.838.drv-0'
builder for `/gnu/store/14wryd0pmv8k8kbiflrxcy0ikq5ajszv-perl-db_file-1.838.drv' failed with exit code 1
cannot build derivation `/gnu/store/m25byhw7qnn6aksqbda0kwwgx5hyjj6f-spamassassin-3.4.1.drv': 1 dependencies couldn't be built
guix package: error: build failed: build of `/gnu/store/m25byhw7qnn6aksqbda0kwwgx5hyjj6f-spamassassin-3.4.1.drv' failed
$ ldd /tmp/DB_File.so
linux-vdso.so.1 (0x00007ffca6950000)
libgcc_s.so.1 => /gnu/store/v39bh3ln3ncnzhyw0kd12d46kww9747v-gcc-4.9.3-lib/lib/libgcc_s.so.1 (0x00007fb81a9b3000)
libc.so.6 => /gnu/store/8m00x5x8ykmar27s9248cmhnkdb2n54a-glibc-2.22/lib/libc.so.6 (0x00007fb81a60d000)
/gnu/store/8m00x5x8ykmar27s9248cmhnkdb2n54a-glibc-2.22/lib/ld-linux-x86-64.so.2 (0x0000558014d0c000)
@@ -15,6 +15,7 @@
;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org>
;;; Copyright © 2016 Alex Kost <alezost@gmail.com>
;;; Copyright © 2016 Troy Sankey <sankeytms@gmail.com>
+;;; Copyright © 2016 Danny Milosavljevic <dannym+a@scratchpost.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -70,10 +71,11 @@
#:use-module (gnu packages gdb)
#:use-module (gnu packages samba)
#:use-module (gnu packages tls)
+ #:use-module (gnu packages web) ; lots of perl packages misclassified there
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
#:use-module ((guix licenses)
- #:select (gpl2 gpl2+ gpl3 gpl3+ lgpl2.1 lgpl2.1+ lgpl3+
+ #:select (gpl2 gpl2+ gpl3 gpl3+ lgpl2.1 lgpl2.1+ lgpl3+ asl2.0
non-copyleft (expat . license:expat)))
#:use-module (guix packages)
#:use-module (guix download)
@@ -1260,3 +1262,89 @@ synchronizing with a remote address book, @command{vdirsyncer} is recommended.
Khard can also be used from within the email client @command{mutt}.")
(home-page "https://github.com/scheibler/khard")
(license gpl3+)))
+
+(define-public perl-mailtools
+ (package
+ (name "perl-mailtools")
+ (version "2.18")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/M/MA/MARKOV/MailTools-"
+ version
+ ".tar.gz"))
+ (sha256
+ (base32
+ "09xm6ymyqwawb21v15wyy721ps2rfxiqx5qdy8912dsp09vrxvnz"))))
+ (build-system perl-build-system)
+ (inputs `(("perl-timedate" ,perl-timedate)))
+ (home-page
+ "http://search.cpan.org/dist/MailTools")
+ (synopsis "Various e-mail related modules")
+ (description "MailTools contain E-Mail related modules.")
+ (license (package-license perl))))
+
+(define-public perl-mail-dkim
+ (package
+ (name "perl-mail-dkim")
+ (version "0.40")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/J/JA/JASLONG/Mail-DKIM-"
+ version
+ ".tar.gz"))
+ (sha256
+ (base32
+ "1wd6mab4fp47v1nh85jfxsjmysnyv5mwvfv47cn5m2h2lb1s0piw"))))
+ (build-system perl-build-system)
+ (inputs
+ `(("perl-crypt-openssl-rsa"
+ ,perl-crypt-openssl-rsa)
+ ("perl-mailtools" ,perl-mailtools)
+ ("perl-net-dns" ,perl-net-dns)))
+ (home-page
+ "http://search.cpan.org/dist/Mail-DKIM")
+ (synopsis
+ "Signs/verifies Internet mail with DKIM/DomainKey signatures")
+ (description "Mail::DKIM signs/verifies internet mail with DKIM DomainKey signatures.")
+ (license #f)))
+
+(define-public spamassassin
+ (package
+ (name "spamassassin")
+ (version "3.4.1")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "http://mirror.klaus-uwe.me/apache/spamassassin/source/Mail-SpamAssassin-" version ".tar.bz2"))
+ (sha256
+ (base32
+ "0la6s5ilamf9129kyjckcma8cr6fpb6b5f2fb64v7106iy0ckhd0"))))
+ (build-system perl-build-system)
+ (inputs `(("perl-html-parser" ,perl-html-parser)
+ ("perl-net-dns" ,perl-net-dns)
+ ("perl-netaddr-ip" ,perl-netaddr-ip)
+ ("perl-digest-sha1" ,perl-digest-sha1)
+ ("perl-db_file" ,perl-db_file)
+ ("perl-mail-spf" ,perl-mail-spf)
+ ("perl-geo-ip" ,perl-geo-ip)
+ ("perl-net-cidr-lite" ,perl-net-cidr-lite)
+ ; FIXME find and re-add ("perl-razor2" ,perl-razor2)
+ ("perl-io-socket-inet6" ,perl-io-socket-inet6)
+ ("perl-io-socket-ssl" ,perl-io-socket-ssl)
+ ("perl-mail-dkim" ,perl-mail-dkim)
+ ("perl-dbi" ,perl-dbi)
+ ; FIXME find and re-add ("perl-lwp-useragent" ,perl-lwp-useragent)
+ ("perl-http-date" ,perl-http-date)
+ ("perl-encode-detect" ,perl-encode-detect)
+ ("perl-net-patricia" ,perl-net-patricia)
+ ; FIXME find and re-add ("perl-net-dns-nameserver" ,perl-net-dns-nameserver)
+))
+ ; TODO optional binaries: gpg wget curl fetch
+ (synopsis "Spam Filter")
+ (description "SpamAssassin is a complete spam checker, featuring local tests, remote tests, Bayesian filtering, and more.")
+ (home-page "http://spamassassin.apache.org/")
+ (license asl2.0) ; FIXME check
+))
@@ -3389,3 +3389,245 @@ playback of HTTP request/response traces.")
can easily be invoked on a single file. Your partner can access the file with
tools they trust (e.g. wget).")
(license l:gpl2+)))
+
+(define-public perl-net-dns
+ (package
+ (name "perl-net-dns")
+ (version "1.06")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/N/NL/NLNETLABS/Net-DNS-"
+ version
+ ".tar.gz"))
+ (sha256
+ (base32
+ "07m5331132h9xkh1i6jv9d80f571yva27iqa31aq4sm31iw7nn53"))))
+ (build-system perl-build-system)
+ (inputs
+ `(("perl-digest-hmac" ,perl-digest-hmac)))
+ (home-page "http://search.cpan.org/dist/Net-DNS")
+ (synopsis
+ "Perl Interface to the Domain Name System")
+ (description "Net::DNS is the Perl Interface to the Domain Name System.")
+ (license l:x11)))
+
+(define-public perl-netaddr-ip
+(package
+ (name "perl-netaddr-ip")
+ (version "4.079")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/M/MI/MIKER/NetAddr-IP-"
+ version
+ ".tar.gz"))
+ (sha256
+ (base32
+ "1rx0dinrz9fk9qcg4rwqq5n1dm3xv2arymixpclcv2q2nzgq4npc"))))
+ (build-system perl-build-system)
+ (home-page
+ "http://search.cpan.org/dist/NetAddr-IP")
+ (synopsis
+ "Manages IPv4 and IPv6 addresses and subnets")
+ (description "NetAddr::IP manages IPv4 and IPv6 addresses and subsets.")
+ (license #f)))
+
+(define-public perl-net-dns-resolver-programmable
+ (package
+ (name "perl-net-dns-resolver-programmable")
+ (version "v0.003")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/J/JM/JMEHNLE/net-dns-resolver-programmable/"
+ "Net-DNS-Resolver-Programmable-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1v3nl2kaj4fs55n1617n53q8sa3mir06898vpy1rq98zjih24h4d"))))
+ (build-system perl-build-system)
+ (native-inputs
+ `(("perl-module-build" ,perl-module-build)))
+ (inputs `(("perl-net-dns" ,perl-net-dns)))
+ (home-page
+ "http://search.cpan.org/dist/Net-DNS-Resolver-Programmable")
+ (synopsis
+ "programmable DNS resolver class for offline
+emulation of DNS")
+ (description "Net::DNS::Resolver::Programmable is a programmable DNS resolver for
+offline emulation of DNS.")
+ (license (package-license perl))))
+
+
+(define-public perl-mail-spf
+ (package
+ (name "perl-mail-spf")
+ (version "v2.9.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/J/JM/JMEHNLE/mail-spf/Mail-SPF-"
+ version
+ ".tar.gz"))
+ (sha256
+ (base32
+ "0qk1rfgfm5drj4iyniiabrasrpqv570vzhgz66lwgb67y4amkjv1"))))
+ (build-system perl-build-system)
+ (native-inputs
+ `(("perl-module-build" ,perl-module-build)
+ ("perl-net-dns-resolver-programmable"
+ ,perl-net-dns-resolver-programmable)))
+ (inputs
+ `(("perl-error" ,perl-error)
+ ("perl-net-dns" ,perl-net-dns)
+ ("perl-netaddr-ip" ,perl-netaddr-ip)
+ ("perl-uri" ,perl-uri)))
+ (home-page
+ "http://search.cpan.org/dist/Mail-SPF")
+ (synopsis
+ "An object-oriented implementation of Sender Policy Framework")
+ (description "Sender Policy Framework.")
+ (license l:bsd-3)))
+
+(define-public perl-geo-ip
+ (package
+ (name "perl-geo-ip")
+ (version "1.45")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/M/MA/MAXMIND/Geo-IP-"
+ version
+ ".tar.gz"))
+ (sha256
+ (base32
+ "0qinkq2br1cjicbgqb5bvrhm73h7f9f4fgc6bjfs5r6x7316bdqf"))))
+ (build-system perl-build-system)
+ (home-page "http://search.cpan.org/dist/Geo-IP")
+ (synopsis
+ "Look up location and network information by IP Address")
+ (description "Geo::IP looks up location and network information by IP Address.")
+ (license (package-license perl))))
+
+(define-public perl-net-cidr-lite
+ (package
+ (name "perl-net-cidr-lite")
+ (version "0.21")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/D/DO/DOUGW/Net-CIDR-Lite-"
+ version
+ ".tar.gz"))
+ (sha256
+ (base32
+ "14shj73zbqmfjbp0qz1fs9j4p2dpvz5hfkm4qfdjbydflbl2b8fg"))))
+ (build-system perl-build-system)
+ (home-page
+ "http://search.cpan.org/dist/Net-CIDR-Lite")
+ (synopsis
+ "Perl extension for merging IPv4 or IPv6 CIDR addresses")
+ (description "Net::CIDR::Lite merges IPv4 or IPv6 CIDR addresses.")
+ (license #f)))
+
+(define-public perl-io-socket-inet6
+ (package
+ (name "perl-io-socket-inet6")
+ (version "2.72")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/S/SH/SHLOMIF/IO-Socket-INET6-"
+ version
+ ".tar.gz"))
+ (sha256
+ (base32
+ "1fqypz6qa5rw2d5y2zq7f49frwra0aln13nhq5gi514j2zx21q45"))))
+ (build-system perl-build-system)
+ (native-inputs
+ `(("perl-module-build" ,perl-module-build)))
+ (inputs `(("perl-socket6" ,perl-socket6)))
+ (home-page
+ "http://search.cpan.org/dist/IO-Socket-INET6")
+ (synopsis
+ "Object interface for AF_INET/AF_INET6 domain sockets")
+ (description "IO::Socket::INET6 is an interface for AF_INET/AFINET6 domain sockets.")
+ (license (package-license perl))))
+
+(define-public perl-encode-detect
+ (package
+ (name "perl-encode-detect")
+ (version "1.01")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/J/JG/JGMYERS/Encode-Detect-"
+ version
+ ".tar.gz"))
+ (sha256
+ (base32
+ "1wdv9ffgs4xyfh5dnh09dqkmmlbf5m1hxgdgb3qy6v6vlwx8jkc3"))))
+ (build-system perl-build-system)
+ (inputs
+ `(("perl-module-build" ,perl-module-build)))
+ (home-page
+ "http://search.cpan.org/dist/Encode-Detect")
+ (synopsis
+ "An Encode::Encoding subclass that detects the encoding of data")
+ (description "Encode::Detect detects the encoding of data.")
+ (license #f)))
+
+(define-public perl-net-patricia
+ (package
+ (name "perl-net-patricia")
+ (version "1.22")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/G/GR/GRUBER/Net-Patricia-"
+ version
+ ".tar.gz"))
+ (sha256
+ (base32
+ "0ln5f57vc8388kyh9vhx2infrdzfhbpgyby74h1qsnhwds95m0vh"))))
+ (build-system perl-build-system)
+ (inputs
+ `(("perl-net-cidr-lite" ,perl-net-cidr-lite)
+ ("perl-socket6" ,perl-socket6)))
+ (home-page
+ "http://search.cpan.org/dist/Net-Patricia")
+ (synopsis
+ "Patricia Trie perl module for fast IP address lookups")
+ (description "Net::Patricia does IP address lookups quickly.")
+ (license #f)))
+
+(define-public perl-socket6
+ (package
+ (name "perl-socket6")
+ (version "0.28")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/U/UM/UMEMOTO/Socket6-"
+ version
+ ".tar.gz"))
+ (sha256
+ (base32
+ "11j5jzqbzmwlws9zals43ry2f1nw9qy6im7yhn9ck5rikywrmm5z"))))
+ (build-system perl-build-system)
+ (home-page "http://search.cpan.org/dist/Socket6")
+ (synopsis
+ "IPv6 related part of the C socket.h defines and structure manipulators")
+ (description "Socket6 binds the IPv6 related part of the C socket header
+definitions and structure manipulators.")
+ (license #f)))
@@ -1013,3 +1013,26 @@ trees (LSM), for sustained throughput under random insert workloads.")
(license gpl3) ; or GPL-2
;; configure.ac: WiredTiger requires a 64-bit build.
(supported-systems '("x86_64-linux" "mips64el-linux"))))
+
+(define-public perl-db_file
+ (package
+ (name "perl-db_file")
+ (version "1.838")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/P/PM/PMQS/DB_File-"
+ version
+ ".tar.gz"))
+ (sha256
+ (base32
+ "0yp5d5zr8dk9g6xdh7ygi5bq63q7nxvhd58dk2i3ki4nb7yv2yh9"))))
+ (build-system perl-build-system)
+ (inputs `(("bdb" ,bdb)))
+ (native-inputs `(("perl-test-pod" ,perl-test-pod)))
+ (home-page "http://search.cpan.org/dist/DB_File")
+ (synopsis
+ "Perl5 access to Berkeley DB version 1.x")
+ (description "DB_File provides access to Berkeley DB version 1.x.")
+ (license (package-license perl))))
@@ -527,3 +527,75 @@ finally access to the SSL api of the SSLeay/OpenSSL package so you can write
servers or clients for more complicated applications.")
(license (package-license perl))
(home-page "http://search.cpan.org/~mikem/Net-SSLeay-1.66/")))
+
+(define-public perl-crypt-openssl-bignum
+ (package
+ (name "perl-crypt-openssl-bignum")
+ (version "0.06")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/K/KM/KMX/Crypt-OpenSSL-Bignum-"
+ version
+ ".tar.gz"))
+ (sha256
+ (base32
+ "05yzrdglrrzp191krf77zrwfkmzrfwrsrx1vyskbj94522lszk67"))))
+ (build-system perl-build-system)
+ (inputs `(("openssl" ,openssl)))
+ (home-page
+ "http://search.cpan.org/dist/Crypt-OpenSSL-Bignum")
+ (synopsis
+ "OpenSSL's multiprecision integer arithmetic")
+ (description "Crypt::OpenSSL::Bignum provides multiprecision integer arithmetic.")
+ (license #f)))
+
+(define-public perl-crypt-openssl-random
+ (package
+ (name "perl-crypt-openssl-random")
+ (version "0.11")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/R/RU/RURBAN/Crypt-OpenSSL-Random-"
+ version
+ ".tar.gz"))
+ (sha256
+ (base32
+ "0yjcabkibrkafywvdkmd1xpi6br48skyk3l15ni176wvlg38335v"))))
+ (build-system perl-build-system)
+ (home-page
+ "http://search.cpan.org/dist/Crypt-OpenSSL-Random")
+ (synopsis
+ "OpenSSL/LibreSSL pseudo-random number generator access")
+ (description "Crypt::OpenSSL::Random is a OpenSSL/LibreSSL pseudo-random number generator")
+ (license (package-license perl))))
+
+(define-public perl-crypt-openssl-rsa
+ (package
+ (name "perl-crypt-openssl-rsa")
+ (version "0.28")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/P/PE/PERLER/Crypt-OpenSSL-RSA-"
+ version
+ ".tar.gz"))
+ (sha256
+ (base32
+ "1gnpvv09b2gpifwdzc5jnhama3d1a4c39lzj9hcaicsb8rvzjmsk"))))
+ (build-system perl-build-system)
+ (inputs
+ `(("perl-crypt-openssl-bignum"
+ ,perl-crypt-openssl-bignum)
+ ("perl-crypt-openssl-random"
+ ,perl-crypt-openssl-random)))
+ (home-page
+ "http://search.cpan.org/dist/Crypt-OpenSSL-RSA")
+ (synopsis
+ "RSA encoding and decoding, using the openSSL libraries")
+ (description "Crypt::OpenSSL::RSA does RSA encoding and decoding (using the OpenSSL libraries).")
+ (license (package-license perl))))