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