4 # (c) Drotos Daniel, Talker Bt. 1997,99
13 #PKGS = cmd.src sim.src gui.src s51.src avr.src z80.src doc
18 # Compiling entire program or any subproject
19 # ------------------------------------------
21 $(MAKE) -f main.mk all
22 @for pkg in $(PKGS); do\
23 cd $$pkg && $(MAKE) $$pkg ; cd ..;\
25 $(MAKE) -f main.mk main_app
28 $(MAKE) -f main.mk libs
31 # Compiling and installing everything and runing test
32 # ---------------------------------------------------
33 .PHONY: install INSTALL Install
35 $(MAKE) -f main.mk install
36 @for pkg in $(PKGS); do\
37 $(MAKE) -C $$pkg install ;\
41 # Deleting all the installed files
42 # --------------------------------
44 $(MAKE) -f main.mk uninstall
45 @for pkg in $(PKGS); do\
46 $(MAKE) -C $$pkg uninstall ;\
50 # Deleting all files created by building the program
51 # --------------------------------------------------
53 $(MAKE) -f clean.mk clean
54 @for pkg in $(PKGS); do\
55 $(MAKE) -C $$pkg -f clean.mk clean ;\
59 # Deleting all files created by configuring or building the program
60 # -----------------------------------------------------------------
62 $(MAKE) -f clean.mk distclean
63 @for pkg in $(PKGS); do\
64 $(MAKE) -C $$pkg -f clean.mk distclean ;\
66 rm -rf doc/*~ doc/*.bak
69 # Like clean but some files may still exist
70 # -----------------------------------------
72 $(MAKE) -f clean.mk mostlyclean
73 @for pkg in $(PKGS); do\
74 $(MAKE) -C $$pkg -f clean.mk mostlyclean ;\
78 # Deleting everything that can reconstructed by this Makefile. It deletes
79 # everything deleted by distclean plus files created by bison, stc.
80 # -----------------------------------------------------------------------
82 $(MAKE) -f clean.mk realclean
83 @for pkg in $(PKGS); do\
84 $(MAKE) -C $$pkg -f clean.mk realclean ;\
88 # Creating distribution
89 # ---------------------
91 @if [ -f devel ]; then\
92 rm -f devel; mkdist ucsim; touch devel;\
98 # Performing self-test
99 # --------------------
101 $(MAKE) -f main.mk check
102 @for pkg in $(PKGS); do\
103 $(MAKE) -C $$pkg check ;\
107 $(MAKE) -f main.mk test
108 @for pkg in $(PKGS); do\
109 $(MAKE) -C $$pkg test ;\
113 # Performing installation test
114 # ----------------------------
118 # Creating dependencies
119 # ---------------------
121 $(MAKE) -f main.mk dep
122 @for pkg in $(PKGS); do\
123 $(MAKE) -C $$pkg dep ;\
130 'put(c)' -s $(STARTYEAR) *.cc *.h *.y *.l
133 date '+%Y.%m.%d-%H:%M' >.start
136 @if [ -f .start ]; then \
138 `find . -newer .start -type f -print` |\
139 gzip -9c >ucsim-newer-`cat .start`_`date '+%Y.%m.%d-%H:%M'`_`hostname`.tgz; \
141 echo ".start file not found.\n"; \
146 @if [ -f .start ]; then \
147 find . -newer .start -type f -print ;\
149 echo ".start file not found.\n" ;\
154 diff -rNu $$HOME/clean-source/sdcc/sim/ucsim .|\
155 grep '^diff' | grep -v CVS | awk '{print $$4}'
158 @find . \( -name '*.[ch]' -o -name '*.cc' -o -name '*.hh' \) \
159 -exec cat {} \; | clines
162 # Remaking configuration
163 # ----------------------
164 configure: configure.in
165 @echo "RE-CREATING CONFIGURE"
166 $(SHELL) autoconf configure.in >configure
169 config.status: configure
170 @echo "RE-CHECKING CONFIGURATION"
171 ./config.status -recheck
173 makefiles: config.status
174 @echo "RE-MAKING MAKEFILES"
175 $(SHELL) ./config.status
177 main.mk: $(srcdir)/main_in.mk $(srcdir)/configure.in
178 @echo "RE-MAKING MAIN.MK"
179 $(SHELL) ./config.status
181 freshconf: echo_freshconf configure main.mk
188 @if [ -f devel ]; then $(MAKE) freshconf; fi