-
Notifications
You must be signed in to change notification settings - Fork 7
/
Makefile
151 lines (123 loc) · 4.6 KB
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
all: builder jx realmode jxcore
build
@date
fast: BFILES
touch JC_CONFIG
@echo Compiling...
@cat BFILES | xargs javac -d edomains/compspec/classes -classpath emulation:edomains/compspec/classes:$(CB0P)
build
@date
jx:
cd jcore; $(MAKE) jx
jxcore:
cd jcore; $(MAKE) jxcore
realmode:
cd jcore; $(MAKE) realmode
rc:
build
clean:
rm -f *~ code.zip libs/*.zip libs/*.jln libs/*.jll libs/COMPONENTS.inc
find libs -name "*.class" | xargs rm -f
find libs -name "*.imcode" | xargs rm -f
find libs -name "Makefile" | xargs rm -f
cvstest:
cvs -nq update | grep -v "^?"
postcommit:
cd /tmp; rm -rf jx-$(LOGNAME) ; mkdir jx-$(LOGNAME) ; cd jx-$(LOGNAME) ; cvs checkout jx ; cd jx ; $(MAKE) ; cvs release
cleanpost:
cd /tmp; rm -rf jx
update: clean
cvs -Pq update -d
commit: clean
cvs commit
comdocs:
rm -rf docs
mkdir docs
@for i in `cat libs/ALLCOMPONENTS` ; do \
( j=`/usr/bin/dirname $$i` ; k=`/bin/basename $$j` ; echo "* Processing component $$k" ; mkdir docs/$$k ; javadoc -author -version -d docs/$$k `find libs/$$k -name "*.java"` ) ; \
done
comdocs1:
rm -rf docs
mkdir docs
@for i in `cat libs/ALLCOMPONENTS` ; do \
( echo "* Processing component $$i" ; mkdir docs/$$i ; javadoc -author -version -d docs/$$k `find libs/$$k -name "*.java"` ) ; \
done
alldocs:
rm -rf docs
mkdir docs
cd docs ; javadoc -author -version -public -windowtitle "JX Documentation" -d . `find ../libs -name "*.java"`
cleandocs:
rm -rf docs
cleanall: clean cleanmakefiles rm-imcode cleandocs
COMPONENTS_BUILDER = zero zero_misc bio classfile zip collections bootrc compspec classstore verifier formats compiler compiler_env
COMPONENTS_BUILDER += xdr timer buffer devices net net_manager rpc rpcgen
EDOMAINS_BUILDER = compiler compspec
EDOMAINS_BUILDER += rpcgen
COMPONENTS_RPCGEN = zero zero_misc bio classfile zip collections bootrc compspec classstore xdr timer buffer devices net net_manager rpc rpcgen
EDOMAINS_RPCGEN=rpcgen
COMPONENTS_VERIFIER = $(COMPONENTS_BUILDER) verifier
EDOMAINS_VERIFIER= $(EDOMAINS_BUILDER) verifier
define SPACE
endef
CB0 = $(COMPONENTS_BUILDER:%=${JXLIBS}/%)
CB0P= $(subst $(SPACE),:,$(CB0))
CR0 = $(COMPONENTS_RPCGEN:%=${JXLIBS}/%)
CR0P= $(subst $(SPACE),:,$(CR0))
CV0 = $(COMPONENTS_VERIFIER:%=${JXLIBS}/%)
CV0P= $(subst $(SPACE),:,$(CV0))
updatebuilder:
@rm -rf BFILES; touch BFILES
@echo Compiling...
javac -d edomains/compspec/classes -classpath emulation:edomains/compspec/classes:$(CB0P) edomains/compspec/jx/compspec/*.java libs/rpcgen/jx/rpcgen/*.java libs/compiler_env/jx/compiler/*.java libs/compiler_env/jx/compiler/vtable/*.java edomains/compiler/jx/compiler/*.java libs/compiler/jx/compiler/*/*.java
BFILES:
@rm -rf BFILES; touch BFILES
@echo Finding Java files...
@for i in $(COMPONENTS_BUILDER) ; do find libs/$$i -name "*.java" >> BFILES; done
@for i in $(EDOMAINS_BUILDER) ; do \
find edomains/$$i -name "*.java" >> BFILES; \
done
builder:
@echo Removing old class files...
@rm -rf edomains/compspec/classes; mkdir edomains/compspec/classes
@rm -rf BFILES; touch BFILES
@echo Finding Java files...
@for i in $(COMPONENTS_BUILDER) ; do find libs/$$i -name "*.java" >> BFILES; done
@for i in $(EDOMAINS_BUILDER) ; do \
find edomains/$$i -name "*.java" >> BFILES; \
done
@echo Compiling...
@cat BFILES | xargs javac -d edomains/compspec/classes -classpath emulation:edomains/compspec/classes:$(CB0P)
rpcgen:
@echo Removing old class files...
@rm -rf edomains/rpcgen/classes; mkdir edomains/rpcgen/classes
@rm -rf BFILES; touch BFILES
@echo Finding Java files...
@for i in $(COMPONENTS_RPCGEN) ; do find libs/$$i -name "*.java" >> BFILES; done
@for i in $(EDOMAINS_RPCGEN) ; do \
find edomains/$$i -name "*.java" >> BFILES; \
done
@echo Compiling...
@cat BFILES | xargs javac -d edomains/rpcgen/classes -classpath emulation:edomains/rpcgen/classes:$(CR0P)
verifier:
@echo Removing old class files...
@rm -rf edomains/verifier/classes; mkdir edomains/verifier/classes
@rm -rf BFILES; touch BFILES
@echo Finding Java files...
@for i in $(COMPONENTS_VERIFIER) ; do find libs/$$i -name "*.java" >> BFILES; done
@for i in $(EDOMAINS_VERIFIER) ; do \
find edomains/$$i -name "*.java" >> BFILES; \
done
@echo Compiling...
@cat BFILES | xargs javac -d edomains/verifier/classes -classpath emulation:edomains/verifier/classes:$(CV0P)
fd0:
mount /dev/fd0 /mnt2
rm -f /mnt2/code.zip /mnt2/jxcore
cp code.zip /mnt2
strip jcore/jxcore ; cat jcore/jxcore | gzip -9 -c > /mnt2/jxcore
umount /mnt2
image:
mount -o loop floppy /mnt2
rm -f /mnt2/code.zip /mnt2/jxcore
cp code.zip /mnt2
strip jcore/jxcore ; cat jcore/jxcore | gzip -c > /mnt2/jxcore
umount /mnt2