As it turns out, some of the load/compile time set up the package does
doesn't work in ECL for unknown reasons at the moment. Executables using
closure-* will crash after starting up:
    ;;; Checking for wide character support... WARNING: Lisp implementation doesn't use UTF-16, but accepts surrogate code points.
     yes, using code points.
    ;;; Building Closure with CHARACTER RUNES
    Condition of type: SIMPLE-ERROR
    Invalid relative pathname #P"package.lisp" for component ("closure-common" "package")
Change-Id: I4b4bf96835a39696884ec6fea9c249fdeb53c853
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12863
Reviewed-by: sterni <sternenseemann@systemli.org>
Autosubmit: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
		
	
			
		
			
				
	
	
		
			41 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			41 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
| { depot, pkgs, ... }:
 | |
| 
 | |
| let
 | |
|   src = with pkgs; srcOnly lispPackages.closure-common;
 | |
|   getSrcs = builtins.map (p: "${src}/${p}");
 | |
| in
 | |
| depot.nix.buildLisp.library {
 | |
|   name = "closure-common";
 | |
| 
 | |
|   # closure-common.asd surpresses some warnings otherwise breaking
 | |
|   # compilation. Feature macros across implementations:
 | |
|   #
 | |
|   # ECL  #+rune-is-character #-rune-is-integer #-x&y-streams-are-stream
 | |
|   # CCL  #+rune-is-character #-rune-is-integer #-x&y-streams-are-stream
 | |
|   # SBCL #+rune-is-character #-rune-is-integer #-x&y-streams-are-stream
 | |
|   #
 | |
|   # Since all implementations agree, the alternative files aren't encoded here.
 | |
|   srcs = getSrcs [
 | |
|     "closure-common.asd"
 | |
|     "package.lisp"
 | |
|     "definline.lisp"
 | |
|     "characters.lisp" #+rune-is-character
 | |
|     "syntax.lisp"
 | |
|     "encodings.lisp" #-x&y-streams-are-stream
 | |
|     "encodings-data.lisp" #-x&y-streams-are-stream
 | |
|     "xstream.lisp" #-x&y-streams-are-stream
 | |
|     "ystream.lisp" #-x&y-streams-are-stream
 | |
|     "hax.lisp"
 | |
|   ];
 | |
| 
 | |
|   deps = [
 | |
|     (depot.nix.buildLisp.bundled "asdf")
 | |
|     depot.third_party.lisp.trivial-gray-streams
 | |
|     depot.third_party.lisp.babel #+rune-is-character
 | |
|   ];
 | |
| 
 | |
|   brokenOn = [
 | |
|     # TODO(sterni): fails when loading because it tries to access package.lisp at runtime
 | |
|     "ecl"
 | |
|   ];
 | |
| }
 |