1#
2# $Id: Makefile.in,v 1.4 2009/07/16 09:11:24 jschimpf Exp $
3#
4
5ARCH = @ARCH@
6top_srcdir = @top_srcdir@
7PREFIX = @prefix@
8MAKEFILE = Makefile.$(ARCH)
9
10PERM = a+r,u+w,go-w
11DIRPERM = 2755
12DESTDIR = $(PREFIX)/lib_public
13ECLIPSE = $(PREFIX)/bin/$(ARCH)/eclipse
14
15ECL_ECI_FILES =	flatzinc.ecl flatzinc_parser.ecl \
16	fzn_eplex.ecl fzn_fd.ecl fzn_ic.ecl minizinc.ecl
17
18ECL_FILES =	flatzinc_syntax.ecl
19
20EXTRA_FILES = \
21	fzn_eplex/eclipse.mzn fzn_fd/eclipse.mzn fzn_ic/eclipse.mzn \
22	fzn_fd/all_different_int.mzn fzn_ic/all_different_int.mzn \
23	fzn_fd/all_disjoint.mzn fzn_ic/all_disjoint.mzn \
24	fzn_fd/at_least_int.mzn fzn_ic/at_least_int.mzn \
25	fzn_fd/at_most_int.mzn fzn_ic/at_most_int.mzn \
26	fzn_fd/count.mzn fzn_ic/count.mzn \
27	fzn_fd/cumulative.mzn fzn_ic/cumulative.mzn \
28	fzn_fd/disjoint.mzn fzn_ic/disjoint.mzn \
29	fzn_fd/exactly_int.mzn fzn_ic/exactly_int.mzn \
30	fzn_fd/link_set_to_booleans.mzn fzn_ic/link_set_to_booleans.mzn \
31	fzn_ic/maximum_float.mzn \
32	fzn_ic/maximum_int.mzn \
33	fzn_ic/minimum_float.mzn \
34	fzn_ic/minimum_int.mzn \
35	fzn_fd/sort.mzn fzn_ic/sort.mzn
36
37
38ECL_DEST =	$(ECL_ECI_FILES:%.ecl=$(DESTDIR)/%.ecl) \
39		$(ECL_FILES:%.ecl=$(DESTDIR)/%.ecl)
40ECI_DEST =	$(ECL_ECI_FILES:%.ecl=$(DESTDIR)/%.eci)
41EXTRA_DEST =	$(EXTRA_FILES:%=$(DESTDIR)/%)
42
43
44
45install:	@MAKE_TARGET@
46install_cross:	$(ECL_DEST) $(EXTRA_DEST)
47install_all:	install_cross $(ECI_DEST)
48
49
50clean:
51	rm -rf $(ECL_DEST) $(ECI_DEST) $(EXTRA_DEST)
52
53ecoclean:
54
55archclean:
56
57
58%/.stamp:
59	mkdir -p $(@D)
60	@/bin/chmod $(DIRPERM) $(@D)
61	@touch $@; /bin/chmod $(PERM) $@
62
63$(DESTDIR)/%.eci:	%.eci $(DESTDIR)/.stamp
64	/bin/cp $< $@
65	@/bin/chmod $(PERM) $@
66
67$(DESTDIR)/%.eci:	%.ecl $(DESTDIR)/.stamp
68	$(ECLIPSE) -e 'lib(document),icompile("$(*F)","$(@D)")'
69	-@/bin/chmod $(PERM) $@
70
71$(DESTDIR)/%.ecl:	%.ecl $(DESTDIR)/.stamp
72	/bin/cp $< $@
73	@/bin/chmod $(PERM) $@
74
75$(DESTDIR)/%.eco:	%.ecl $(DESTDIR)/.stamp
76	$(ECLIPSE) -e 'lib(fcompile), set_flag(variable_names,off), set_flag(debug_compile,off), fcompile("$(*F)", [outdir:"$(@D)"])'
77	@/bin/chmod $(PERM) $@
78
79$(DESTDIR)/fzn_eplex/%:	fzn_eplex/% $(DESTDIR)/fzn_eplex/.stamp
80	/bin/cp $< $@
81	@/bin/chmod $(PERM) $@
82
83$(DESTDIR)/fzn_fd/%:	fzn_fd/% $(DESTDIR)/fzn_fd/.stamp
84	/bin/cp $< $@
85	@/bin/chmod $(PERM) $@
86
87$(DESTDIR)/fzn_ic/%:	fzn_ic/% $(DESTDIR)/fzn_ic/.stamp
88	/bin/cp $< $@
89	@/bin/chmod $(PERM) $@
90
91