* Fix installation of camlzip
svn path=/nixpkgs/trunk/; revision=25071
This commit is contained in:
parent
0b701b824b
commit
eaf8b73517
@ -1,5 +1,4 @@
|
|||||||
name="camlzip"
|
version="@VERSION@"
|
||||||
version="1.04"
|
|
||||||
description="reading and writing ZIP, JAR and GZIP files"
|
description="reading and writing ZIP, JAR and GZIP files"
|
||||||
requires="unix"
|
requires="unix"
|
||||||
archive(byte)="camlzip.cma"
|
archive(byte)="camlzip.cma"
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
{stdenv, fetchurl, zlib, ocaml}:
|
{stdenv, fetchurl, zlib, ocaml, findlib}:
|
||||||
|
|
||||||
let
|
let
|
||||||
ocaml_version = (builtins.parseDrvName ocaml.name).version;
|
ocaml_version = (builtins.parseDrvName ocaml.name).version;
|
||||||
@ -14,25 +14,20 @@ stdenv.mkDerivation {
|
|||||||
sha256 = "1zpchmp199x7f4mzmapvfywgy7f6wy9yynd9nd8yh8l78s5gixbn";
|
sha256 = "1zpchmp199x7f4mzmapvfywgy7f6wy9yynd9nd8yh8l78s5gixbn";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [zlib ocaml];
|
buildInputs = [zlib ocaml findlib];
|
||||||
|
|
||||||
patches = [ ./makefile.patch ];
|
patches = [ ./makefile.patch ];
|
||||||
|
|
||||||
configurePhase = ''
|
postPatch = ''
|
||||||
export INSTALLDIR="$out/lib/ocaml/${ocaml_version}/site-lib/zip"
|
substitute ${./META} META --subst-var-by VERSION "${version}"
|
||||||
substituteInPlace Makefile \
|
substituteInPlace Makefile \
|
||||||
--subst-var-by ZLIB_LIBDIR "${zlib}/lib" \
|
--subst-var-by ZLIB_LIBDIR "${zlib}/lib" \
|
||||||
--subst-var-by ZLIB_INCLUDE "${zlib}/include" \
|
--subst-var-by ZLIB_INCLUDE "${zlib}/include"
|
||||||
--subst-var INSTALLDIR
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
buildFlags = "all allopt";
|
buildFlags = "all allopt";
|
||||||
|
|
||||||
installTargets = "install installopt";
|
installTargets = "install";
|
||||||
|
|
||||||
postInstall = ''
|
|
||||||
substitute ${./META} $INSTALLDIR/META --subst-var INSTALLDIR
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
homepage = "http://cristal.inria.fr/~xleroy/software.html#camlzip";
|
homepage = "http://cristal.inria.fr/~xleroy/software.html#camlzip";
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
diff -Naur camlzip-1.04/Makefile camlzip-1.04.nixos/Makefile
|
diff -Nuar camlzip-1.04/Makefile camlzip-1.04.nixpkgs/Makefile
|
||||||
--- camlzip-1.04/Makefile 2002-04-22 17:28:57.000000000 +0200
|
--- camlzip-1.04/Makefile 2002-04-22 17:28:57.000000000 +0200
|
||||||
+++ camlzip-1.04.nixos/Makefile 2010-08-17 14:40:07.000000000 +0200
|
+++ camlzip-1.04.nixpkgs/Makefile 2010-12-12 18:30:49.000000000 +0100
|
||||||
@@ -4,14 +4,14 @@
|
@@ -4,14 +4,10 @@
|
||||||
ZLIB_LIB=-lz
|
ZLIB_LIB=-lz
|
||||||
|
|
||||||
# The directory containing the Zlib library (libz.a or libz.so)
|
# The directory containing the Zlib library (libz.a or libz.so)
|
||||||
@ -10,23 +10,45 @@ diff -Naur camlzip-1.04/Makefile camlzip-1.04.nixos/Makefile
|
|||||||
|
|
||||||
# The directory containing the Zlib header file (zlib.h)
|
# The directory containing the Zlib header file (zlib.h)
|
||||||
-ZLIB_INCLUDE=/usr/local/include
|
-ZLIB_INCLUDE=/usr/local/include
|
||||||
+ZLIB_INCLUDE=@ZLIB_INCLUDE@
|
-
|
||||||
|
-# Where to install the library. By default: sub-directory 'zip' of
|
||||||
# Where to install the library. By default: sub-directory 'zip' of
|
-# OCaml's standard library directory.
|
||||||
# OCaml's standard library directory.
|
|
||||||
-INSTALLDIR=`$(OCAMLC) -where`/zip
|
-INSTALLDIR=`$(OCAMLC) -where`/zip
|
||||||
+INSTALLDIR=@INSTALLDIR@
|
+ZLIB_INCLUDE=@ZLIB_INCLUDE@
|
||||||
|
|
||||||
### End of configuration section
|
### End of configuration section
|
||||||
|
|
||||||
@@ -59,10 +59,6 @@
|
@@ -19,10 +15,13 @@
|
||||||
cp zip.cma zip.cmi gzip.cmi zip.mli gzip.mli libcamlzip.a $(INSTALLDIR)
|
OCAMLOPT=ocamlopt
|
||||||
if test -f dllcamlzip.so; then \
|
OCAMLDEP=ocamldep
|
||||||
cp dllcamlzip.so $(INSTALLDIR); \
|
OCAMLMKLIB=ocamlmklib
|
||||||
|
+OCAMLFIND=ocamlfind
|
||||||
|
|
||||||
|
OBJS=zlib.cmo zip.cmo gzip.cmo
|
||||||
|
C_OBJS=zlibstubs.o
|
||||||
|
|
||||||
|
+LIBINSTALL_FILES = $(wildcard *.mli *.cmi *.cma *.cmxa *.a *.so)
|
||||||
|
+
|
||||||
|
all: libcamlzip.a zip.cma
|
||||||
|
|
||||||
|
allopt: libcamlzip.a zip.cmxa
|
||||||
|
@@ -55,18 +54,7 @@
|
||||||
|
rm -f *.o *.a
|
||||||
|
|
||||||
|
install:
|
||||||
|
- mkdir -p $(INSTALLDIR)
|
||||||
|
- cp zip.cma zip.cmi gzip.cmi zip.mli gzip.mli libcamlzip.a $(INSTALLDIR)
|
||||||
|
- if test -f dllcamlzip.so; then \
|
||||||
|
- cp dllcamlzip.so $(INSTALLDIR); \
|
||||||
- ldconf=`$(OCAMLC) -where`/ld.conf; \
|
- ldconf=`$(OCAMLC) -where`/ld.conf; \
|
||||||
- installdir=$(INSTALLDIR); \
|
- installdir=$(INSTALLDIR); \
|
||||||
- if test `grep -s -c $$installdir'$$' $$ldconf || :` = 0; \
|
- if test `grep -s -c $$installdir'$$' $$ldconf || :` = 0; \
|
||||||
- then echo $$installdir >> $$ldconf; fi \
|
- then echo $$installdir >> $$ldconf; fi \
|
||||||
fi
|
- fi
|
||||||
|
-
|
||||||
|
-installopt:
|
||||||
|
- cp zip.cmxa zip.a zip.cmx gzip.cmx $(INSTALLDIR)
|
||||||
|
+ $(OCAMLFIND) install camlzip META $(LIBINSTALL_FILES)
|
||||||
|
|
||||||
installopt:
|
depend:
|
||||||
|
gcc -MM -I$(ZLIB_INCLUDE) *.c > .depend
|
||||||
|
Loading…
Reference in New Issue
Block a user