-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
56 lines (45 loc) · 1.57 KB
/
Makefile
File metadata and controls
56 lines (45 loc) · 1.57 KB
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
version ?= $(shell cat .release-version)
.PHONY: help
help:
@echo "make build - build"
@echo "make jar - build jar (build if required)"
@echo "make run - run (build if required)"
@echo "make run-mac - run with Mac menu (build if required)"
@echo "make run-jar - run via jar (build if required)"
@echo "make run-jar-mac - run via jar with Mac menu (build if required)"
@echo "make dmg - build a Mac DMG (build if required)"
@echo "make clean - delete build artifacts"
build: src lib
rm -rf build
mkdir -p build
javac -O -cp 'lib' -d build src/*.java
VOOPS-$(version).jar: build images
jar --create --manifest MANIFEST.MF --file $@ -C build . -C lib bsh -C images .
.PHONY: jar
jar: VOOPS-$(version).jar
.PHONY: run
run: build
java -Xmx400m -Xms400m -cp 'lib:images:build' VOOPS
.PHONY: run-mac
run-mac: build
java -Dapple.laf.useScreenMenuBar=true -Xmx400m -Xms400m -cp 'lib:images:build' VOOPS
.PHONY: run-jar
run-jar: VOOPS-$(version).jar
java -Xmx600m -Xms600m -jar VOOPS-$(version).jar
.PHONY: run-jar-mac
run-jar-mac: VOOPS-$(version).jar
java -Dapple.laf.useScreenMenuBar=true -Xmx600m -Xms600m -jar VOOPS-$(version).jar
VOOPS-$(version).dmg: mac/options VOOPS-$(version).jar
rm -rf target
mkdir -p target
cp VOOPS-$(version).jar target/
jpackage --app-version $(version) --main-jar VOOPS-$(version).jar @mac/options
rm -rf target
open $@
dmg: VOOPS-$(version).dmg
.PHONY: clean
clean:
rm -rf build
rm -rf target
rm -rf VOOPS*.jar
rm -rf VOOPS*.dmg