Files
pkgsrc-ng/textproc/ocaml-expat/patches/patch-Makefile
2013-09-26 17:14:40 +02:00

54 lines
1.7 KiB
Plaintext

$NetBSD: patch-Makefile,v 1.3 2013/06/16 09:45:19 jaapb Exp $
Correct location for expat, add DESTDIR support, and correct depend for clang
Also, make possible compilation of shared library
--- Makefile.orig 2005-03-13 14:00:29.000000000 +0000
+++ Makefile
@@ -3,8 +3,8 @@
# Change this to match your expat installation.
EXPAT_LIB=-lexpat
-EXPAT_LIBDIR=/usr/local/lib
-EXPAT_INCDIR=/usr/local/include
+EXPAT_LIBDIR=${PREFIX}/lib
+EXPAT_INCDIR=${PREFIX}/include
NAME=expat
OBJECTS=expat.cmo
@@ -13,6 +13,7 @@ C_OBJECTS=expat_stubs.o
ARCHIVE=$(NAME).cma
XARCHIVE=$(ARCHIVE:.cma=.cmxa)
+XSARCHIVE=$(ARCHIVE:.cma=.cmxs)
CARCHIVE_NAME=mlexpat
CARCHIVE=lib$(CARCHIVE_NAME).a
@@ -32,7 +33,7 @@ all: $(ARCHIVE)
allopt: $(XARCHIVE)
depend: *.c *.ml *.mli
- gcc -MM *.c > depend
+ $(CC) -MM -I$(PREFIX)/lib/ocaml *.c > depend
$(OCAMLDEP) *.mli *.ml >> depend
## Library creation
@@ -45,12 +46,16 @@ $(ARCHIVE): $(CARCHIVE) $(OBJECTS)
$(XARCHIVE): $(CARCHIVE) $(XOBJECTS)
$(OCAMLMKLIB) -o $(NAME) $(XOBJECTS) -oc $(CARCHIVE_NAME) \
-L$(EXPAT_LIBDIR) $(EXPAT_LIB)
+$(XSARCHIVE): $(XOBJECTS) $(CARCHIVE)
+ $(OCAMLOPT) -linkall -shared -o $(XSARCHIVE) $(XOBJECTS) $(CARCHIVE) \
+ -ccopt -L$(EXPAT_LIBDIR) -cclib $(EXPAT_LIB)
## Installation
.PHONY: install
install: all
- { test ! -f $(XARCHIVE) || extra="$(XARCHIVE) $(NAME).a"; }; \
- $(OCAMLFIND) install $(NAME) META $(NAME).cmi $(NAME).mli $(ARCHIVE) \
+ { test ! -f $(XARCHIVE) || extra="$(XARCHIVE) $(XSARCHIVE) $(NAME).a"; }; \
+ $(OCAMLFIND) install -destdir ${DESTDIR}${PREFIX}/lib/ocaml/site-lib \
+ -ldconf ignore $(NAME) META $(NAME).cmi $(NAME).mli $(ARCHIVE) \
dll$(CARCHIVE_NAME).so lib$(CARCHIVE_NAME).a $$extra
.PHONY: uninstall