Makefile: Spruce up and release 1.2.0.
[jlisp] / Makefile
1 ABCL_JAR = /home/mdw/src/abcl/abcl.jar
2 JAVAC = javac
3 JAR = jar
4 GPL = /usr/share/common-licenses/GPL-2
5 INSTALLER = setup-dep-ui-$(VERSION).exe
6 ARCHIVE = ftp.distorted.org.uk:~ftp/pub/mdw/
7
8 VERSION = 1.2.0
9
10 all: dep-ui.jar
11
12 abcl.jar: $(ABCL_JAR)
13 cp $(ABCL_JAR) $@
14
15 SUBSTUFF = \
16 *.abcl \
17 *.cls
18
19 TOPSTUFF = \
20 *.class
21
22 SUBFILES = \
23 run.lisp
24
25 %.class: %.java abcl.jar
26 $(JAVAC) -cp abcl.jar $<
27
28 SUBDIR = tmp/org/armedbear/lisp
29 dep-ui.jar: abcl.jar dep-ui.abcl $(SUBFILES) Startup.class
30 rm -rf tmp.jar tmp
31 mkdir -p $(SUBDIR)
32 cp abcl.jar tmp.jar
33 cp $(SUBFILES) $(SUBSTUFF) $(SUBDIR)/
34 cp $(TOPSTUFF) tmp/
35 cd tmp; $(JAR) uf ../tmp.jar *
36 mv tmp.jar $@
37 rm -rf tmp.jar tmp
38
39 jj.abcl swing.abcl queue.abcl dep.abcl:: dep-ui.abcl
40 dep-ui.abcl: build.lisp \
41 jj.lisp swing.lisp queue.lisp dep.lisp dep-ui.lisp
42 abcl --load build.lisp
43
44 GPL.dostxt:
45 cp $(GPL) $@.new
46 todos $@.new
47 mv $@.new $@
48
49 installer: $(INSTALLER)
50 $(INSTALLER): dep-ui.nsis GPL.dostxt dep-ui.jar rolling.lisp
51 makensis dep-ui.nsis
52 mv setup-dep-ui.exe $(INSTALLER)
53
54 clean:
55 rm -f $(TOPSTUFF) $(SUBSTUFF) GPL.dostxt *.jar
56
57 DISTDIR = dep-ui-$(VERSION)
58 distdir:
59 rm -rf $(DISTDIR)
60 mkdir $(DISTDIR)
61 for i in jj.lisp swing.lisp queue.lisp dep.lisp dep-ui.lisp \
62 run.lisp Startup.java rolling.lisp weak.lisp \
63 dep-ui.nsis; do \
64 ln -s ../$$i $(DISTDIR); \
65 done
66
67 zip: distdir
68 zip -r $(DISTDIR).zip $(DISTDIR)
69 rm -rf $(DISTDIR)
70
71 tar: distdir
72 tar chvfz $(DISTDIR).tar.gz $(DISTDIR)
73 rm -rf $(DISTDIR)
74
75 upload: tar installer
76 rsync $(DISTDIR).tar.gz $(INSTALLER) $(ARCHIVE)