1
VERSION=@PACKAGE_VERSION@
4
CFLAGS=@CFLAGS@ -fPIC -Wall -pedantic -Werror -Wno-long-long
9
OCAMLBUILD=@OCAMLBUILD@
11
datarootdir = @datarootdir@
13
exec_prefix = @exec_prefix@
16
LIBDIR=$(shell ocamlfind printconf destdir)
19
INSTALL = $(OCAMLFIND) install
20
UNINSTALL = $(OCAMLFIND) remove
22
export OCAMLLIBDIR := lib/ocaml
23
LIBDIR=$(DESTDIR)/$(OCAMLLIBDIR)
25
MANDIR=$(DESTDIR)/man/man3
26
INSTALL = $(OCAMLFIND) install -destdir $(LIBDIR)
27
UNINSTALL = $(OCAMLFIND) remove -destdir $(LIBDIR)
31
ifeq ("@OCAMLBEST@","opt")
37
DIST_DIR = $(NAME)-$(VERSION)
38
DIST_TARBALL = $(DIST_DIR).tar.gz
40
OBFLAGS = -j 10 -use-ocamlfind #-classic-display
41
#OBFLAGS += $(OBFLAGS) -tag debug -tag profile
48
ifeq ("@OCAMLBEST@","opt")
49
OPTLIBS += $(BYTELIBS:%.cma=%.cmxa)
50
CMXSLIBS += $(BYTELIBS:%.cma=%.cmxs)
53
ALIBS = $(BYTELIBS:%.cma=%.a)
56
$(OCAMLBUILD) $(OBFLAGS) $(BYTELIBS) $(OPTLIBS) $(CMXSLIBS) $(ALIBS)
59
$(OCAMLBUILD) $(OBFLAGS) $(OPTLIBS)
62
tests/simplescale.$(OCAMLBEST) \
63
tests/floatscale.$(OCAMLBEST) \
64
tests/simplescale_array.$(OCAMLBEST) \
65
tests/simplescalefold.$(OCAMLBEST) \
66
tests/simplescalemapfold.$(OCAMLBEST)
69
$(OCAMLBUILD) $(OBFLAGS) $(TESTS)
72
example/mandels.$(OCAMLBEST)
75
$(OCAMLBUILD) $(OBFLAGS) $(EXAMPLES)
79
INSTALL_STUFF += $(wildcard _build/*.cma _build/*.cmxa _build/*.cmxs)
80
INSTALL_STUFF += $(filter-out $(wildcard _build/myocamlbuild.*),$(wildcard _build/*.mli _build/*.cmi))
81
INSTALL_STUFF += $(wildcard _build/*.so _build/*.a)
84
test -d $(LIBDIR) || mkdir -p $(LIBDIR)
85
test -d $(LIBDIR)/stublibs || mkdir -p $(LIBDIR)/stublibs
86
$(INSTALL) -patch-version $(VERSION) $(NAME) $(INSTALL_STUFF)
87
(cd _build; ocamldoc -man -man-mini parmap.ml parmap.mli)
88
test -d $(MANDIR) || mkdir -p $(MANDIR)
89
cp -a _build/Parmap.3o $(MANDIR)
93
rm -f $(MANDIR)/Parmap.3o
96
$(OCAMLBUILD) $(OBFLAGS) $(NAME).docdir/index.html $(NAME).docdir/index.dot
97
dot -Grotate=0 -Tsvg -o $(NAME).docdir/index.svg $(NAME).docdir/index.dot
102
dist: ./$(DIST_TARBALL)
104
if [ -d ./$(DIST_DIR)/ ] ; then rm -rf ./$(DIST_DIR)/ ; fi
105
if [ -d ./$(DIST_TARBALL) ] ; then rm -f ./$(DIST_TARBALL) ; fi
106
if [ -d .svn ]; then \
107
svn export . ./$(DIST_DIR) ; \
109
mkdir ./$(DIST_DIR)/ ;\
110
git archive --format=tar HEAD | \
111
tar -x -C ./$(DIST_DIR)/ ; \
113
for f in $(DIST_EXCLUDE) ; do rm -rf ./$(DIST_DIR)/$$f; done
114
tar cvzf ./$(DIST_TARBALL) ./$(DIST_DIR)
116
@echo "Distribution tarball: ./$(DIST_TARBALL)"
118
.PHONY: all fast install clean dist examples tests