Fix compiler flags so it compiles OK on all architectures.
[perl4caml.git] / Makefile
index 517d4eb..a92c178 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,6 @@
 # Interface to Perl from OCaml.
 # Copyright (C) 2003 Merjis Ltd.
-# $Id: Makefile,v 1.19 2003-11-19 16:28:22 rich Exp $
+# $Id: Makefile,v 1.28 2004-12-11 15:40:08 rich Exp $
 
 include Makefile.config
 
@@ -16,18 +16,15 @@ OCAMLOPTINCS := $(OCAMLCINCS)
 OCAMLCFLAGS := -w s -g $(OCAMLCINCS)
 OCAMLOPTFLAGS := -w s $(OCAMLOPTINCS)
 
+PERLCFLAGS := $(shell perl -e 'use Config; print $$Config{ccflags};')
+
 CC := gcc
-CFLAGS := -Wall -Wno-unused -I$(PERLINCDIR) $(EXTRA_CFLAGS)
+CFLAGS := -fPIC -Wall -Wno-unused -I$(PERLINCDIR) $(PERLCFLAGS) $(EXTRA_CFLAGS)
 
 LIBPERL := $(shell perl -MExtUtils::Embed -e ldopts)
 
 SED := sed
 
-# XXX Hack required by ocamlopt, and sometimes ocamlc.
-# To work out what this should be, try:
-# `perl -MExtUtils::Embed -e ldopts'
-DYNALOADER_HACK := /usr/lib/perl/5.8.2/auto/DynaLoader/DynaLoader.a
-
 OCAMLDOCFLAGS := -html -stars -sort $(OCAMLCINCS)
 
 WRAPPERS := \
@@ -43,10 +40,16 @@ WRAPPERS := \
        wrappers/pl_HTML_Parser.cmo \
        wrappers/pl_HTML_TreeBuilder.cmo \
        wrappers/pl_URI.cmo \
+       wrappers/pl_HTTP_Cookies.cmo \
+       wrappers/pl_HTTP_Headers.cmo \
        wrappers/pl_HTTP_Message.cmo \
        wrappers/pl_HTTP_Request.cmo \
+       wrappers/pl_HTTP_Request_Common.cmo \
        wrappers/pl_HTTP_Response.cmo \
-       wrappers/pl_LWP_UserAgent.cmo
+       wrappers/pl_HTML_Form.cmo \
+       wrappers/pl_LWP_UserAgent.cmo \
+       wrappers/pl_Template.cmo \
+       wrappers/pl_WWW_Mechanize.cmo
 
 all:   perl4caml.cma perl4caml.cmxa META all-examples html
 
@@ -141,6 +144,7 @@ install:
 # Distribution.
 
 dist:
+       $(MAKE) check-manifest
        rm -rf $(PACKAGE)-$(VERSION)
        mkdir $(PACKAGE)-$(VERSION)
        tar -cf - -T MANIFEST | tar -C $(PACKAGE)-$(VERSION) -xf -
@@ -149,15 +153,16 @@ dist:
        ls -l $(PACKAGE)-$(VERSION).tar.gz
 
 check-manifest:
-       @for d in `find -type d -name CVS`; \
+       @for d in `find -type d -name CVS | grep -v '^\./debian/'`; \
        do \
        b=`dirname $$d`/; \
        awk -F/ '$$1 != "D" {print $$2}' $$d/Entries | \
        sed -e "s|^|$$b|" -e "s|^\./||"; \
        done | sort > .check-manifest; \
        sort MANIFEST > .orig-manifest; \
-       diff -u .orig-manifest .check-manifest; \
-       rm -f .orig-manifest .check-manifest
+       diff -u .orig-manifest .check-manifest; rv=$$?; \
+       rm -f .orig-manifest .check-manifest; \
+       exit $$rv
 
 # Debian packages.