$NetBSD: patch-Makefile,v 1.4 2017/07/11 12:38:24 jaapb Exp $

Correct location for expat, add DESTDIR support, and correct depend for clang
Also, make possible compilation of shared library

--- Makefile.orig	2016-12-30 13:33:39.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$(EXT_OBJ)
 
 ARCHIVE=$(NAME).cma
 XARCHIVE=$(ARCHIVE:.cma=.cmxa)
+XSARCHIVE=$(ARCHIVE:.cma=.cmxs)
 CARCHIVE_NAME=mlexpat
 CARCHIVE=lib$(CARCHIVE_NAME)$(EXT_LIB)
 
@@ -32,10 +33,10 @@ include $(OCAMLDIR)/Makefile.config
 .PHONY: all
 all: $(ARCHIVE)
 .PHONY: allopt
-allopt:  $(XARCHIVE)
+allopt:  $(XARCHIVE) $(XSARCHIVE)
 
 depend: *.c *.ml *.mli
-	gcc -I $(OCAMLDIR) -MM *.c > depend
+	$(CC) -I $(OCAMLDIR) -MM *.c > depend
 	$(OCAMLDEP) *.mli *.ml >> depend
 
 ## Library creation
@@ -48,11 +49,14 @@ $(ARCHIVE): $(CARCHIVE) $(OBJECTS)
 $(XARCHIVE): $(CARCHIVE) $(XOBJECTS)
 	$(OCAMLMKLIB) -o $(NAME) $(XOBJECTS) -oc $(CARCHIVE_NAME) \
 	-L$(EXPAT_LIBDIR) $(EXPAT_LIB)
+$(XSARCHIVE): $(XARCHIVE)
+	$(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)$(EXT_LIB)"; }; \
+	{ test ! -f $(XARCHIVE) || extra="$(XARCHIVE) $(XSARCHIVE) $(NAME)$(EXT_LIB)"; }; \
 	$(OCAMLFIND) install $(NAME) META $(NAME).cmi $(NAME).mli $(ARCHIVE) \
 	lib$(CARCHIVE_NAME)$(EXT_LIB) $$extra \
 	-optional dll$(CARCHIVE_NAME)$(EXT_DLL)
