This reverts commit 368e8d1edd.
Reason for revert: Didn't mean to submit, and the phase is currently failing (which breaks the otherwise-functional derivation)
Change-Id: I515b2fb45188dc90f09ae2458453192487c74d71
Reviewed-on: https://cl.tvl.fyi/c/depot/+/581
Reviewed-by: tazjin <mail@tazj.in>
		
	
			
		
			
				
	
	
		
			77 lines
		
	
	
	
		
			1.8 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			77 lines
		
	
	
	
		
			1.8 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
{ pkgs ? (import ../.. {}).third_party
 | 
						|
, buildType ? "release", ... }:
 | 
						|
 | 
						|
let
 | 
						|
  aws-s3-cpp = pkgs.aws-sdk-cpp.override {
 | 
						|
    apis = ["s3" "transfer"];
 | 
						|
    customMemoryManagement = false;
 | 
						|
  };
 | 
						|
 | 
						|
 # TODO(tazjin): this is copied from the original derivation, but what
 | 
						|
 # is it for?
 | 
						|
  largeBoehm = pkgs.boehmgc.override {
 | 
						|
    enableLargeConfig = true;
 | 
						|
  };
 | 
						|
in pkgs.llvmPackages.libcxxStdenv.mkDerivation {
 | 
						|
  pname = "tazjix";
 | 
						|
  version = "2.3.4";
 | 
						|
  src = ./.;
 | 
						|
 | 
						|
  # Abseil's sources need to be symlinked into Nix' sources.
 | 
						|
  postUnpack = ''
 | 
						|
    ln -fs ${pkgs.abseil_cpp.drvAttrs.src} nix/abseil_cpp
 | 
						|
    ln -fs ${pkgs.glog.drvAttrs.src} nix/glog
 | 
						|
  '';
 | 
						|
 | 
						|
  nativeBuildInputs = with pkgs; [
 | 
						|
    bison
 | 
						|
    clang-tools
 | 
						|
    cmake
 | 
						|
    pkgconfig
 | 
						|
    libxml2
 | 
						|
    libxslt
 | 
						|
    (import ./clangd.nix pkgs)
 | 
						|
  ];
 | 
						|
 | 
						|
 # TODO(tazjin): Some of these might only be required for native inputs
 | 
						|
  buildInputs = with pkgs; [
 | 
						|
    aws-s3-cpp
 | 
						|
    brotli
 | 
						|
    bzip2
 | 
						|
    curl
 | 
						|
    editline
 | 
						|
    flex
 | 
						|
    libseccomp
 | 
						|
    libsodium
 | 
						|
    openssl
 | 
						|
    sqlite
 | 
						|
    xz
 | 
						|
  ];
 | 
						|
 | 
						|
  propagatedBuildInputs = with pkgs; [
 | 
						|
    boost
 | 
						|
    largeBoehm
 | 
						|
  ];
 | 
						|
 | 
						|
  # Install the various symlinks to the Nix binary which users expect
 | 
						|
  # to exist.
 | 
						|
  postInstall = ''
 | 
						|
    ln -s $out/bin/nix $out/bin/nix-build
 | 
						|
    ln -s $out/bin/nix $out/bin/nix-channel
 | 
						|
    ln -s $out/bin/nix $out/bin/nix-collect-garbage
 | 
						|
    ln -s $out/bin/nix $out/bin/nix-copy-closure
 | 
						|
    ln -s $out/bin/nix $out/bin/nix-daemon
 | 
						|
    ln -s $out/bin/nix $out/bin/nix-env
 | 
						|
    ln -s $out/bin/nix $out/bin/nix-hash
 | 
						|
    ln -s $out/bin/nix $out/bin/nix-instantiate
 | 
						|
    ln -s $out/bin/nix $out/bin/nix-prefetch-url
 | 
						|
    ln -s $out/bin/nix $out/bin/nix-shell
 | 
						|
    ln -s $out/bin/nix $out/bin/nix-store
 | 
						|
 | 
						|
    mkdir -p $out/libexec/nix
 | 
						|
    ln -s $out/bin/nix $out/libexec/nix/build-remote
 | 
						|
  '';
 | 
						|
 | 
						|
  # TODO(tazjin): integration test setup?
 | 
						|
  # TODO(tazjin): docs generation?
 | 
						|
}
 |