ucsim-0.2.37-pre3 into CVS
[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 s51.src avr.src z80.src gui.src doc
13
14 srcdir          = .
15
16
17 # Compiling entire program or any subproject
18 # ------------------------------------------
19 all: main.mk
20         $(MAKE) -f main.mk all
21         @for pkg in $(PKGS); do\
22           cd $$pkg && $(MAKE) $$pkg ; cd ..;\
23         done
24
25 libs: main.mk
26         $(MAKE) -f main.mk libs
27
28
29 # Compiling and installing everything and runing test
30 # ---------------------------------------------------
31 install:
32         $(MAKE) -f main.mk install
33         @for pkg in $(PKGS); do\
34           $(MAKE) -C $$pkg install ;\
35         done
36
37
38 # Deleting all the installed files
39 # --------------------------------
40 uninstall:
41         $(MAKE) -f main.mk uninstall
42         @for pkg in $(PKGS); do\
43           $(MAKE) -C $$pkg uninstall ;\
44         done
45
46
47 # Deleting all files created by building the program
48 # --------------------------------------------------
49 clean:
50         $(MAKE) -f clean.mk clean
51         @for pkg in $(PKGS); do\
52           $(MAKE) -C $$pkg -f clean.mk clean ;\
53         done
54
55
56 # Deleting all files created by configuring or building the program
57 # -----------------------------------------------------------------
58 distclean: clean
59         $(MAKE) -f clean.mk distclean
60         @for pkg in $(PKGS); do\
61           $(MAKE) -C $$pkg -f clean.mk distclean ;\
62         done
63         rm -rf doc/*~ doc/*.bak
64
65
66 # Like clean but some files may still exist
67 # -----------------------------------------
68 mostlyclean: clean
69         $(MAKE) -f clean.mk mostlyclean
70         @for pkg in $(PKGS); do\
71           $(MAKE) -C $$pkg -f clean.mk mostlyclean ;\
72         done
73
74
75 # Deleting everything that can reconstructed by this Makefile. It deletes
76 # everything deleted by distclean plus files created by bison, stc.
77 # -----------------------------------------------------------------------
78 realclean: distclean
79         $(MAKE) -f clean.mk realclean
80         @for pkg in $(PKGS); do\
81           $(MAKE) -C $$pkg -f clean.mk realclean ;\
82         done
83
84
85 # Creating distribution
86 # ---------------------
87 dist: distclean
88         @if [ -f devel ]; then\
89           rm -f devel; mkdist ucsim; touch devel;\
90         else\
91           mkdist ucsim;\
92         fi
93
94
95 # Performing self-test
96 # --------------------
97 check:
98
99
100 # Performing installation test
101 # ----------------------------
102 installcheck:
103
104
105 # Creating dependencies
106 # ---------------------
107 dep:
108         $(MAKE) -f main.mk dep
109         @for pkg in $(PKGS); do\
110           $(MAKE) -C $$pkg dep ;\
111         done
112
113
114 # My rules
115 # --------
116 putcopyright:
117         'put(c)' -s $(STARTYEAR) *.cc *.h *.y *.l
118
119
120 # Remaking configuration
121 # ----------------------
122 configure: configure.in
123         $(SHELL) autoconf
124
125 main.mk: $(srcdir)/main_in.mk $(srcdir)/configure.in config.status
126         $(SHELL) ./config.status
127
128 config.status: configure
129         $(SHELL) ./config.status --recheck
130
131 makefiles:
132         $(SHELL) ./config.status
133
134 freshconf: main.mk
135
136 checkconf:
137         @if [ -f devel ]; then\
138           $(MAKE) freshconf;\
139         fi
140
141 # End of Makefile