Commit | Line | Data |
---|---|---|
dc2075d6 NR |
1 | ### |
2 | ### You can use this Makefile to generate an executable JAR file | |
3 | ### The available options are: | |
4 | ### - make: will create the default (or currently compiled) JAR | |
5 | ### - make bin/5 && make: will create a Java 1.5 JAR | |
6 | ### - make bin/6 && make: will create a Java 1.6 JAR | |
7 | ### - make bin/7 && make: will create a Java 1.7 JAR | |
8 | ### - make bin/8 && make: will create a Java 1.8 JAR | |
9 | ### - make clean: will clean temporary files | |
10 | ### - make mrpropre: will clean temporary files and remove the JAR file | |
11 | ||
08fbe0fb | 12 | ALL: bin/5 jvcard.jar |
152ba78f | 13 | |
dc2075d6 NR |
14 | .PHONY: ALL clean mrproper mrpropre love |
15 | ||
16 | love: | |
17 | @echo ...not war? | |
18 | ||
19 | clean: | |
20 | @echo Cleaning files... | |
21 | @rm -f bin/[0-9] bin/files bin/lanterna | |
22 | ||
23 | mrproper: mrpropre | |
24 | ||
25 | mrpropre: clean | |
26 | @echo Removing jar files... | |
27 | @rm -f jvcard.jar jvcard-`grep "APPLICATION_VERSION" src/be/nikiroo/jvcard/launcher/Main.java | cut -d'"' -f2`.jar | |
28 | ||
08fbe0fb | 29 | jvcard.jar: bin/be/nikiroo/jvcard/*/* bin/be/nikiroo/jvcard/* |
dc2075d6 NR |
30 | @echo 'Main-Class: be.nikiroo.jvcard.launcher.Main' > bin/manifest |
31 | @echo >> bin/manifest | |
32 | @echo Creating jar file jvcard-`grep "APPLICATION_VERSION" src/be/nikiroo/jvcard/launcher/Main.java | cut -d'"' -f2`.jar... | |
33 | @cd bin && find . | grep -v './[0-9]' | grep -v './manifest' | grep -v './lanterna' | jar -m manifest -cf ../jvcard-`grep "APPLICATION_VERSION" ../src/be/nikiroo/jvcard/launcher/Main.java | cut -d'"' -f2`.jar -@ | |
34 | @rm bin/manifest | |
35 | @echo Copying to jvcard.jar... | |
36 | @cp jvcard-`grep "APPLICATION_VERSION" src/be/nikiroo/jvcard/launcher/Main.java | cut -d'"' -f2`.jar jvcard.jar | |
152ba78f | 37 | |
08fbe0fb | 38 | bin/5: lanterna files |
dc2075d6 | 39 | @echo Compiling in Java 1.5 mode "('make bin/5')"... |
152ba78f | 40 | javac -cp bin/ -encoding UTF-8 -Xlint -source 5 @files -d bin/ |
dc2075d6 NR |
41 | @rm -f bin/[0-9] |
42 | @touch bin/5 | |
152ba78f | 43 | |
08fbe0fb | 44 | bin/6: lanterna files |
dc2075d6 | 45 | @echo Compiling in Java 1.6 mode "('make bin/6')"... |
152ba78f | 46 | javac -cp bin/ -encoding UTF-8 -Xlint -source 6 @files -d bin/ |
dc2075d6 NR |
47 | @rm -f bin/[0-9] |
48 | @touch bin/6 | |
152ba78f | 49 | |
08fbe0fb | 50 | bin/7: lanterna files |
dc2075d6 | 51 | @echo Compiling in Java 1.7 mode "('make bin/7')"... |
152ba78f | 52 | javac -cp bin/ -encoding UTF-8 -Xlint -source 7 @files -d bin/ |
dc2075d6 NR |
53 | @rm -f bin/[0-9] |
54 | @touch bin/7 | |
55 | ||
56 | bin/8: lanterna files | |
57 | @echo Compiling in Java 1.8 mode "('make bin/8')"... | |
58 | javac -cp bin/ -encoding UTF-8 -Xlint -source 8 @files -d bin/ | |
59 | @rm -f bin/[0-9] | |
60 | @touch bin/8 | |
152ba78f | 61 | |
08fbe0fb | 62 | files: src/be/nikiroo/jvcard/*/* src/be/nikiroo/jvcard/* |
dc2075d6 | 63 | @find src/be/ -name '*.java' > files |
152ba78f | 64 | |
dc2075d6 NR |
65 | bin/lanterna: |
66 | @find src/com/ -name '*.java' > bin/lanterna | |
67 | javac -encoding UTF-8 -source 5 @lanterna -d bin/ || rm bin/lanterna | |
68 | @test -e bin/lanterna | |
152ba78f | 69 |