lmdb: fix cross compilation to mingwW64
This commit is contained in:
parent
879951577d
commit
c745afadf4
21
pkgs/development/libraries/lmdb/bin-ext.patch
Normal file
21
pkgs/development/libraries/lmdb/bin-ext.patch
Normal file
|
@ -0,0 +1,21 @@
|
|||
diff --git a/libraries/liblmdb/Makefile b/libraries/liblmdb/Makefile
|
||||
index 612484e..2e6b562 100644
|
||||
--- a/libraries/liblmdb/Makefile
|
||||
+++ b/libraries/liblmdb/Makefile
|
||||
@@ -27,6 +27,7 @@ CFLAGS = $(THREADS) $(OPT) $(W) $(XCFLAGS)
|
||||
LDLIBS =
|
||||
SOLIBS =
|
||||
SOEXT = .so
|
||||
+BINEXT =
|
||||
prefix = /usr/local
|
||||
exec_prefix = $(prefix)
|
||||
bindir = $(exec_prefix)/bin
|
||||
@@ -49,7 +50,7 @@ install: $(ILIBS) $(IPROGS) $(IHDRS)
|
||||
mkdir -p $(DESTDIR)$(libdir)
|
||||
mkdir -p $(DESTDIR)$(includedir)
|
||||
mkdir -p $(DESTDIR)$(mandir)/man1
|
||||
- for f in $(IPROGS); do cp $$f $(DESTDIR)$(bindir); done
|
||||
+ for f in $(IPROGS); do cp $$f$(BINEXT) $(DESTDIR)$(bindir); done
|
||||
for f in $(ILIBS); do cp $$f $(DESTDIR)$(libdir); done
|
||||
for f in $(IHDRS); do cp $$f $(DESTDIR)$(includedir); done
|
||||
for f in $(IDOCS); do cp $$f $(DESTDIR)$(mandir)/man1; done
|
|
@ -1,4 +1,4 @@
|
|||
{ lib, stdenv, fetchFromGitLab }:
|
||||
{ lib, stdenv, fetchFromGitLab, windows }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "lmdb";
|
||||
|
@ -14,17 +14,20 @@ stdenv.mkDerivation rec {
|
|||
|
||||
postUnpack = "sourceRoot=\${sourceRoot}/libraries/liblmdb";
|
||||
|
||||
patches = [ ./hardcoded-compiler.patch ];
|
||||
patches = [ ./hardcoded-compiler.patch ./bin-ext.patch ];
|
||||
patchFlags = [ "-p3" ];
|
||||
|
||||
outputs = [ "bin" "out" "dev" ];
|
||||
|
||||
buildInputs = lib.optional stdenv.hostPlatform.isWindows windows.pthreads;
|
||||
|
||||
makeFlags = [
|
||||
"prefix=$(out)"
|
||||
"CC=${stdenv.cc.targetPrefix}cc"
|
||||
"AR=${stdenv.cc.targetPrefix}ar"
|
||||
]
|
||||
++ lib.optional stdenv.isDarwin "LDFLAGS=-Wl,-install_name,$(out)/lib/liblmdb.so";
|
||||
++ lib.optional stdenv.isDarwin "LDFLAGS=-Wl,-install_name,$(out)/lib/liblmdb.so"
|
||||
++ lib.optionals stdenv.hostPlatform.isWindows [ "SOEXT=.dll" "BINEXT=.exe" ];
|
||||
|
||||
doCheck = true;
|
||||
checkTarget = "test";
|
||||
|
|
Loading…
Reference in a new issue