Unverified Commit 3023b2d0 authored by Philip Taron's avatar Philip Taron
Browse files

clasp-common-lisp: use callPackage style instead of `with pkgs;`

parent aa9d4729
Loading
Loading
Loading
Loading
+51 −28
Original line number Diff line number Diff line
{ pkgs, lib, fetchFromGitHub, llvmPackages_15 }:

{ lib
, llvmPackages_15
, fetchFromGitHub
, sbcl
, git
, pkg-config
, fmt_9
, gmpxx
, libelf
, boost
, libunwind
, ninja
, cacert
}:

let
  inherit (llvmPackages_15) stdenv llvm libclang;

  src = fetchFromGitHub {
    owner = "clasp-developers";
@@ -19,16 +32,20 @@ let
    "src/libatomic_ops"
  ];

  reposTarball = llvmPackages_15.stdenv.mkDerivation {
  reposTarball = stdenv.mkDerivation {
    pname = "clasp-repos";
    version = "tarball";

    inherit src;

    patches = [ ./clasp-pin-repos-commits.patch ];
    nativeBuildInputs = with pkgs; [

    nativeBuildInputs = [
      sbcl
      git
      cacert
    ];

    buildPhase = ''
      export SOURCE_DATE_EPOCH=1
      export ASDF_OUTPUT_TRANSLATIONS=$(pwd):$(pwd)/__fasls
@@ -37,21 +54,27 @@ let
        find $x -type d -name .git -exec rm -rvf {} \; || true
      done
    '';

    installPhase = ''
      tar --owner=0 --group=0 --numeric-owner --format=gnu \
        --sort=name --mtime="@$SOURCE_DATE_EPOCH" \
        -czf $out ${lib.concatStringsSep " " reposDirs}
    '';

    outputHashMode = "flat";
    outputHashAlgo = "sha256";
    outputHash = "sha256-vgwThjn2h3nKnShtKoHgaPdH/FDHv28fLMQvKFEwG6o=";
  };

in llvmPackages_15.stdenv.mkDerivation {
in

stdenv.mkDerivation {
  pname = "clasp";
  version = "2.2.0";

  inherit src;
  nativeBuildInputs = (with pkgs; [

  nativeBuildInputs = [
    sbcl
    git
    pkg-config
@@ -61,10 +84,10 @@ in llvmPackages_15.stdenv.mkDerivation {
    boost
    libunwind
    ninja
  ]) ++ (with llvmPackages_15; [
    llvm
    libclang
  ]);
  ];

  configurePhase = ''
    export SOURCE_DATE_EPOCH=1
    export ASDF_OUTPUT_TRANSLATIONS=$(pwd):$(pwd)/__fasls
@@ -79,9 +102,11 @@ in llvmPackages_15.stdenv.mkDerivation {
      --lib-path=$out/lib \
      --share-path=$out/share
  '';

  buildPhase = ''
    ninja -C build
  '';

  installPhase = ''
    ninja -C build install
  '';
@@ -93,9 +118,7 @@ in llvmPackages_15.stdenv.mkDerivation {
    platforms = ["x86_64-linux" "x86_64-darwin"];
    # Upstream claims support, but breaks with:
    # error: use of undeclared identifier 'aligned_alloc'
    broken = llvmPackages_15.stdenv.isDarwin;
    broken = stdenv.isDarwin;
    homepage = "https://github.com/clasp-developers/clasp";
  };

}