Hi Ricardo, On Thu, 29 Dec 2016 17:30:53 +0100 Ricardo Wurmus <rek...@elephly.net> wrote:
Hi, I’m trying to build a package for sbcl-cl-unicode, which I need for a JS uglifier (to be able to generate minified JS files in other packages’ build processes).
Since I'm curious, what are you packaging =)?
Unfortunately, the tests fail with "The name NIL does not designate any package."
The problem seems to have been fixed in the most recent commit, with the commit logs since the last release suggesting that the definition file was problematic.
“cl-unicode” seems to have more problems. When I ignore the tests and try to build “sbcl-cl-ppcre-unicode” (see below), I get an error about “CL-UNICODE” not designating any package.
I think it's because there's another system in there for cl-unicode/base, and asdf-build-system needs a package for this. Of course, this exposes a severe problem with the way the build system works currently: it can't handle a system with '/' in the name. I hope to address that in the changes for the build system which I've been working on. For now, it's possible to work around it. Attached is a version of your patch which can build cl-ppcre-unicode.
Here’s the definition of “sbcl-cl-ppcre-unicode”: (define-public sbcl-cl-ppcre-unicode (package (inherit sbcl-cl-ppcre) (name "sbcl-cl-ppcre-unicode") (arguments `(#:asd-file "cl-ppcre-unicode.asd")) (inputs `(("sbcl-cl-ppcre" ,sbcl-cl-ppcre) ("sbcl-cl-unicode" ,sbcl-cl-unicode)))))
You'll also need a #:tests? #f here. I'm not fully sure how to fix the problem - you could drop the #:asd-file but then you'd rebuild cl-ppcre. Let me know if this works for the package you're working on. Thanks, -- Andy From 7739d883078d0be71f07d28c6863688d4f19cdcd Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus <rek...@elephly.net> Date: Thu, 29 Dec 2016 17:30:53 +0100 Subject: [PATCH] WIP gnu: Add sbcl-cl-unicode. * gnu/packages/lisp.scm (sbcl-cl-unicode-base, sbcl-cl-unicode): New variables. --- gnu/packages/lisp.scm | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm index ec0bdaaa5..0887de54a 100644 --- a/gnu/packages/lisp.scm +++ b/gnu/packages/lisp.scm @@ -702,6 +702,49 @@ compatible with ANSI-compliant Common Lisp implementations.") (define-public ecl-cl-ppcre (sbcl-package->ecl-package sbcl-cl-ppcre)) +(define sbcl-cl-unicode-base + (let ((revision "1") + (commit "9fcd06fba1ddc9e66aed2f2d6c32dc9b764f03ea")) + (package + (name "sbcl-cl-unicode-base") + (version "0.1.5") + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://github.com/edicl/cl-unicode.git") + (commit commit))) + (file-name (string-append "cl-unicode-" version "-checkout")) + (sha256 + (base32 + "1jicprb5b3bv57dy1kg03572gxkcaqdjhak00426s76g0plmx5ki")) + (modules '((guix build utils))) + (snippet + '(substitute* "cl-unicode.asd" + (("cl-unicode/base") "cl-unicode-base"))))) + (build-system asdf-build-system/sbcl) + (arguments + '(#:asd-file "cl-unicode.asd")) + (inputs + `(("sbcl-cl-ppcre" ,sbcl-cl-ppcre))) + (home-page "http://weitz.de/cl-unicode/") + (synopsis "Portable Unicode library for Common Lisp") + (description "CL-UNICODE is a portable Unicode library Common Lisp, which +is compatible with perl. It is pretty fast, thread-safe, and compatible with +ANSI-compliant Common Lisp implementations.") + (license license:bsd-2)))) + +(define-public sbcl-cl-unicode + (package + (inherit sbcl-cl-unicode-base) + (name "sbcl-cl-unicode") + (inputs + `(("sbcl-cl-unicode-base" ,sbcl-cl-unicode-base) + ,@(package-inputs sbcl-cl-unicode-base))) + (native-inputs + `(("tests:cl-flexi-streams" ,sbcl-flexi-streams))))) + (define-public sbcl-clx (let ((revision "1") (commit "1c62774b03c1cf3fe6e5cb532df8b14b44c96b95")) -- 2.11.0