Removed unused echo
[fw/sdcc] / sim / ucsim / Makefile
1 #
2 # uCsim Makefile
3 #
4 # (c) Drotos Daniel, Talker Bt. 1997,99
5 #
6
7 STARTYEAR       = 1997
8
9 SHELL           = /bin/sh
10
11 PRJDIR          = .
12 PKGS            = cmd.src sim.src gui.src s51.src avr.src z80.src doc
13
14 srcdir          = .
15
16
17 # Compiling entire program or any subproject
18 # ------------------------------------------
19 all: checkconf
20         $(MAKE) -f main.mk all
21         @for pkg in $(PKGS); do\
22           cd $$pkg && $(MAKE) $$pkg ; cd ..;\
23         done
24         $(MAKE) -f main.mk main_app
25
26 libs: main.mk
27         $(MAKE) -f main.mk libs
28
29
30 # Compiling and installing everything and runing test
31 # ---------------------------------------------------
32 .PHONY: install INSTALL Install
33 install:
34         $(MAKE) -f main.mk install
35         @for pkg in $(PKGS); do\
36           $(MAKE) -C $$pkg install ;\
37         done
38
39
40 # Deleting all the installed files
41 # --------------------------------
42 uninstall:
43         $(MAKE) -f main.mk uninstall
44         @for pkg in $(PKGS); do\
45           $(MAKE) -C $$pkg uninstall ;\
46         done
47
48
49 # Deleting all files created by building the program
50 # --------------------------------------------------
51 clean:
52         $(MAKE) -f clean.mk clean
53         @for pkg in $(PKGS); do\
54           $(MAKE) -C $$pkg -f clean.mk clean ;\
55         done
56
57
58 # Deleting all files created by configuring or building the program
59 # -----------------------------------------------------------------
60 distclean: clean
61         $(MAKE) -f clean.mk distclean
62         @for pkg in $(PKGS); do\
63           $(MAKE) -C $$pkg -f clean.mk distclean ;\
64         done
65         rm -rf doc/*~ doc/*.bak
66
67
68 # Like clean but some files may still exist
69 # -----------------------------------------
70 mostlyclean: clean
71         $(MAKE) -f clean.mk mostlyclean
72         @for pkg in $(PKGS); do\
73           $(MAKE) -C $$pkg -f clean.mk mostlyclean ;\
74         done
75
76
77 # Deleting everything that can reconstructed by this Makefile. It deletes
78 # everything deleted by distclean plus files created by bison, stc.
79 # -----------------------------------------------------------------------
80 realclean: distclean
81         $(MAKE) -f clean.mk realclean
82         @for pkg in $(PKGS); do\
83           $(MAKE) -C $$pkg -f clean.mk realclean ;\
84         done
85
86
87 # Creating distribution
88 # ---------------------
89 dist: distclean
90         @if [ -f devel ]; then\
91           rm -f devel; mkdist ucsim; touch devel;\
92         else\
93           mkdist ucsim;\
94         fi
95
96
97 # Performing self-test
98 # --------------------
99 check:
100
101
102 # Performing installation test
103 # ----------------------------
104 installcheck:
105
106
107 # Creating dependencies
108 # ---------------------
109 dep:
110         $(MAKE) -f main.mk dep
111         @for pkg in $(PKGS); do\
112           $(MAKE) -C $$pkg dep ;\
113         done
114
115
116 # My rules
117 # --------
118 putcopyright:
119         'put(c)' -s $(STARTYEAR) *.cc *.h *.y *.l
120
121 start:
122         date '+%Y.%m.%d-%H:%M' >.start
123
124 newer: distclean
125         @if [ -f .start ]; then \
126           tar cvf - \
127             `find . -newer .start -type f -print` |\
128           gzip -9c >ucsim-newer-`cat .start`_`date '+%Y.%m.%d-%H:%M'`_`hostname`.tgz; \
129         else \
130           echo ".start file not found.\n"; \
131           exit 1; \
132         fi
133
134 print-newer:
135         @if [ -f .start ]; then \
136           find . -newer .start -type f -print ;\
137         else \
138           echo ".start file not found.\n" ;\
139           exit 1 ;\
140         fi
141
142 new_files:
143         diff -rNu $$HOME/clean-source/sdcc/sim/ucsim .|\
144         grep '^diff' | grep -v CVS | awk '{print $$4}'
145
146 lines:
147         @find . \( -name '*.[ch]' -o -name '*.cc' -o -name '*.hh' \) \
148         -exec cat {} \; | clines
149
150
151 # Remaking configuration
152 # ----------------------
153 configure: configure.in
154         @echo "RE-CREATING CONFIGURE"
155         $(SHELL) autoconf configure.in >configure
156         chmod 755 configure
157
158 config.status: configure
159         @echo "RE-CHECKING CONFIGURATION"
160         ./config.status -recheck
161
162 makefiles: config.status
163         @echo "RE-MAKING MAKEFILES"
164         $(SHELL) ./config.status
165
166 main.mk: $(srcdir)/main_in.mk $(srcdir)/configure.in
167         @echo "RE-MAKING MAIN.MK"
168         $(SHELL) ./config.status
169
170 freshconf: echo_freshconf configure main.mk
171
172 echo_freshconf:
173         @echo "FRESHCONF"
174
175 checkconf:
176         @if [ -f devel ]; then $(MAKE) freshconf; fi
177
178 # End of Makefile