Project

General

Profile

Download (2.47 KB) Statistics
| Branch: | Tag: | Revision:
1
OCAMLBUILD=@OCAMLBUILD@ -classic-display -no-links 
2

    
3
prefix=@prefix@
4
exec_prefix=@exec_prefix@
5
bindir=@bindir@
6
datadir = ${prefix}/share
7
includedir = ${prefix}/include
8

    
9
LUSI_LIBS=include/math.lusi include/conv.lusi
10
LUSI_MPFR_LIB=include/mpfr_lustre.lusi
11
LOCAL_BINDIR=bin
12
LOCAL_DOCDIR=doc/manual
13

    
14
$(LOCAL_BINDIR)/lustrec: configure Makefile
15
	@echo Compiling binary lustrec
16
	@$(OCAMLBUILD) -cflags -I,@OCAMLGRAPH_PATH@ -lflag @OCAMLGRAPH_PATH@/graph.cmxa -lflag nums.cmxa -I src -I src/backends/C -I src/plugins/scopes src/main_lustre_compiler.native
17
	@mkdir -p $(LOCAL_BINDIR)
18
	@mv _build/src/main_lustre_compiler.native $(LOCAL_BINDIR)/lustrec
19

    
20
configure: configure.ac
21
	@echo configure.ac has changed relaunching autoconf
22
	@autoconf
23

    
24
Makefile: Makefile.in config.status configure
25
	@echo Makefile.in has changed relaunching autoconf
26
	@./config.status --recheck
27

    
28
doc:
29
	@echo Generating doc
30
	@$(OCAMLBUILD) lustrec.docdir/index.html
31
	@rm -rf $(LOCAL_DOCDIR)
32
	@cp -rf _build/lustrec.docdir $(LOCAL_DOCDIR)
33

    
34
dot: doc
35
	$(OCAMLBUILD) lustrec.docdir/lustrec.dot
36
	dot -T ps -o lustrec.dot _build/lustrec.docdir/lustrec.dot
37
	mv _build/lustrec.docdir/lustrec.dot $(LOCAL_DOCDIR)
38

    
39
clean:
40
	$(OCAMLBUILD) -clean
41

    
42
dist-src-clean: clean
43
	@rm -f config.log config.status include/*.lusic include/math.h include/conv.h include/mpfr_lustre.h
44

    
45
DIST_ARCHIVE_NAME=lustrec-$(shell $(LOCAL_BINDIR)/lustrec -version | grep version | cut -d, -f 2 | sed -e "s/ version //" -e "s/ (/-/" -e "s/ /-/" -e "s/\//-/" -e "s/)//")-src.tar.gz
46

    
47
dist-gzip: $(LOCAL_BINDIR)/lustrec dist-src-clean
48
	@rm -f $(shell ls ../*lustrec*src*tar.gz)
49
	@tar zcvf ../$(DIST_ARCHIVE_NAME) -C .. --exclude-vcs --exclude=Makefile  --exclude=$(LOCAL_BINDIR) $(shell basename $(PWD))
50
	@echo "Source distribution built: ../$(DIST_ARCHIVE_NAME)"
51

    
52
dist-clean: dist-src-clean
53
	@rm -f myocamlbuild.ml configure Makefile
54

    
55
%.lusic: %.lusi
56
	@echo Compiling $<
57
	@$(LOCAL_BINDIR)/lustrec -verbose 0 -d include $< 
58

    
59
clean-lusic:
60
	@rm -f $(LUSI_LIBS:%.lusi=%.lusic)
61
	@rm -f $(LUSI_MPFR_LIB:%.lusi=%.lusic)
62

    
63
compile-lusi: $(LUSI_LIBS:%.lusi=%.lusic)
64

    
65
compile-mpfr-lusi: $(LUSI_MPFR_LIB)
66
	@echo Compiling $<
67
	@$(LOCAL_BINDIR)/lustrec -verbose 0 -mpfr 1 -d include $<
68

    
69
install: clean-lusic compile-lusi compile-mpfr-lusi
70
	mkdir -p ${bindir}
71
	install -m 0755 $(LOCAL_BINDIR)/* ${bindir}
72
	mkdir -p ${includedir}/lustrec
73
	cp include/* ${includedir}/lustrec
74
	mkdir -p ${datadir}
75
	install -m 0655 share/FindLustre.cmake ${datadir}
76

    
77
.PHONY: compile-lusi doc dot lustrec lustrec.odocl clean install dist-clean
78

    
(5-5/11)