Merge pull request #117499 from rnhmjoj/leveldb

leveldb: fix static build and cleanup
This commit is contained in:
Michele Guerini Rocco 2021-03-25 15:35:01 +01:00 committed by GitHub
commit f19e82d1ad
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -13,25 +13,28 @@ stdenv.mkDerivation rec {
buildInputs = [ snappy ];
nativeBuildInputs = []
++ lib.optional stdenv.isDarwin fixDarwinDylibNames;
nativeBuildInputs = lib.optional stdenv.isDarwin fixDarwinDylibNames;
buildPhase = ''
make all
doCheck = true;
buildFlags = [ "all" ];
postPatch = lib.optionalString stdenv.hostPlatform.isStatic ''
# remove shared objects from "all" target
sed -i '/^all:/ s/$(SHARED_LIBS) $(SHARED_PROGRAMS)//' Makefile
'';
installPhase = "
mkdir -p $out/{bin,lib,include}
installPhase = ''
runHook preInstall
cp -r include $out
mkdir -p $out/include/leveldb/helpers
cp helpers/memenv/memenv.h $out/include/leveldb/helpers
install -D -t $out/include/leveldb include/leveldb/*
install -D helpers/memenv/memenv.h $out/include/leveldb/helpers
cp out-shared/lib* $out/lib
cp out-static/lib* $out/lib
install -D -t $out/lib out-{static,shared}/lib*
install -D -t $out/bin out-static/{leveldbutil,db_bench}
cp out-static/leveldbutil $out/bin
";
runHook postInstall
'';
meta = with lib; {
homepage = "https://github.com/google/leveldb";