1#
2# $Id: Makefile.in,v 1.12 2015/03/29 22:11:50 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
15PL_ECI_FILES =	applic.pl arrays.pl assoc.pl bags.pl between.pl distfix.pl \
16		flat.pl graphs.pl intervals.pl listut.pl \
17		logarr.pl map.pl metutl.pl occur.pl order.pl \
18		project.pl random.pl rdtok.pl read.pl struct.pl \
19		tidy.pl trees.pl
20
21ECL_ECI_FILES =	all_min_cuts.ecl all_min_cuts_eplex.ecl cardinal.ecl \
22		ic_global_gac.ecl fd_global_gac.ecl \
23                grasper.ecl lambda.ecl ldsb.ecl list_collection.ecl cycle.ecl \
24		max_flow_eplex.ecl xml.ecl
25
26PL_FILES =	xml.pl xml_diagnosis.pl xml_pp.pl xml_acquisition.pl \
27		xml_generation.pl xml_utilities.pl \
28		cardinal_comments.pl cardinal_functions.pl cardinal_minmax.pl \
29		cardinal_union.pl cardinal_util.pl
30
31ECL_FILES =	generic_global_gac.ecl
32
33ECI_FILES =
34
35README_FILES =	README
36EMACS_FILES =	
37
38ECL_DEST =	$(ECL_ECI_FILES:%.ecl=$(DESTDIR)/%.ecl) \
39		$(ECL_FILES:%.ecl=$(DESTDIR)/%.ecl)
40PL_DEST =	$(PL_ECI_FILES:%.pl=$(DESTDIR)/%.pl) \
41		$(PL_FILES:%.pl=$(DESTDIR)/%.pl)
42ECI_DEST =	$(PL_ECI_FILES:%.pl=$(DESTDIR)/%.eci) \
43		$(ECL_ECI_FILES:%.ecl=$(DESTDIR)/%.eci) \
44		$(ECI_FILES:%.eci=$(DESTDIR)/%.eci)
45README_DEST =	$(README_FILES:%=$(DESTDIR)/%)
46EMACS_DEST =	$(EMACS_FILES:%=$(DESTDIR)/%)
47
48
49# These files are needed for the visualisation tools or ic_global. 
50# We put a copy in /lib to make them go into the eclipse_basic.tgz package
51DESTDIR_EXTRA = $(PREFIX)/lib
52EXTRA_DEST = $(DESTDIR_EXTRA)/logarr.pl $(DESTDIR_EXTRA)/logarr.eco \
53	     $(DESTDIR_EXTRA)/listut.pl 
54
55
56
57install:	@MAKE_TARGET@
58install_cross:	$(ECL_DEST) $(PL_DEST) $(README_DEST) \
59		$(EMACS_DEST)
60install_all:	install_cross $(ECI_DEST) $(EXTRA_DEST)
61
62
63clean:
64	rm -rf $(ECL_DEST) $(PL_DEST) $(ECI_DEST) $(README_DEST) \
65		$(EMACS_DEST) $(EXTRA_DEST)
66
67ecoclean:
68	rm -f $(DESTDIR_EXTRA)/logarr.eco
69
70archclean:
71
72
73%/.stamp:
74	mkdir -p $(@D)
75	@/bin/chmod $(DIRPERM) $(@D)
76	@touch $@; /bin/chmod $(PERM) $@
77
78$(DESTDIR)/%.eci:	%.eci $(DESTDIR)/.stamp
79	/bin/cp $< $@
80	@/bin/chmod $(PERM) $@
81
82$(DESTDIR)/%.eci:	%.ecl $(DESTDIR)/.stamp
83	$(ECLIPSE) -e 'lib(document),icompile("$(*F)","$(@D)")'
84	-@/bin/chmod $(PERM) $@
85
86$(DESTDIR)/%.eci:	%.pl $(DESTDIR)/.stamp
87	$(ECLIPSE) -e 'lib(document),icompile("$(*F)","$(@D)")'
88	-@/bin/chmod $(PERM) $@
89
90$(DESTDIR)/%.ecl:	%.ecl $(DESTDIR)/.stamp
91	/bin/cp $< $@
92	@/bin/chmod $(PERM) $@
93
94$(DESTDIR)/%.pl:	%.pl $(DESTDIR)/.stamp
95	/bin/cp $< $@
96	@/bin/chmod $(PERM) $@
97
98$(DESTDIR_EXTRA)/%.pl:	%.pl $(DESTDIR_EXTRA)/.stamp
99	/bin/cp $< $@
100	@/bin/chmod $(PERM) $@
101
102$(DESTDIR_EXTRA)/%.ecl:	%.ecl $(DESTDIR_EXTRA)/.stamp
103	/bin/cp $< $@
104	@/bin/chmod $(PERM) $@
105
106$(DESTDIR_EXTRA)/%.eco:	%.pl $(DESTDIR_EXTRA)/.stamp
107	$(ECLIPSE) -e 'lib(fcompile), set_flag(variable_names,off), set_flag(debug_compile,off), fcompile("$(*F)", [outdir:"$(@D)"])'
108	@/bin/chmod $(PERM) $@
109
110$(DESTDIR_EXTRA)/%.eco:	%.ecl $(DESTDIR_EXTRA)/.stamp
111	$(ECLIPSE) -e 'lib(fcompile), set_flag(variable_names,off), set_flag(debug_compile,off), fcompile("$(*F)", [outdir:"$(@D)"])'
112	@/bin/chmod $(PERM) $@
113
114$(DESTDIR)/README:	README $(DESTDIR)/.stamp
115	/bin/cp README $@
116	@/bin/chmod $(PERM) $@
117
118$(DESTDIR)/COPYING:	COPYING $(DESTDIR)/.stamp
119	/bin/cp COPYING $@
120	@/bin/chmod $(PERM) $@
121
122$(DESTDIR)/%.el:	%.el $(DESTDIR)/.stamp
123	/bin/cp $< $@
124	@/bin/chmod $(PERM) $@
125
126