calculator: separate Android variants between the simple calc and the sci one
[nit.git] / examples / calculator / Makefile
1 NITC=../../bin/nitc
2 NITLS=../../bin/nitls
3
4 all: bin/calculator bin/test
5
6 bin/calculator: $(shell ${NITLS} -M src/calculator.nit linux) ${NITC}
7 mkdir -p bin
8 ${NITC} -o $@ src/calculator.nit -m linux
9
10 bin/scientific: $(shell ${NITLS} -M scientific linux) ${NITC}
11 mkdir -p bin
12 ${NITC} -o $@ src/scientific -m linux
13
14 # ---
15 # Android
16
17 android: bin/calculator.apk bin/scientific.apk
18
19 bin/calculator.apk: $(shell ${NITLS} -M src/android_calculator.nit) ${NITC} android/res/drawable-hdpi/icon.png
20 mkdir -p bin
21 ${NITC} -o $@ src/android_calculator.nit -D debug
22
23 bin/scientific.apk: $(shell ${NITLS} -M src/scientific src/android_calculator.nit) ${NITC} src/scientific/android/res/drawable-hdpi/icon.png
24 mkdir -p bin
25 ${NITC} -o $@ src/scientific -m src/android_calculator.nit -D debug
26
27 android-release: $(shell ${NITLS} -M src/scientific src/android_calculator.nit) ${NITC} android/res/drawable-hdpi/icon.png
28 mkdir -p bin
29 ${NITC} -o bin/calculator.apk src/scientific -m src/android_calculator.nit --release
30
31 android/res/drawable-hdpi/icon.png: art/icon.svg ../../contrib/inkscape_tools/bin/svg_to_icons
32 mkdir -p android/res
33 ../../contrib/inkscape_tools/bin/svg_to_icons art/icon.svg --android --out android/res/
34
35 src/scientific/android/res/drawable-hdpi/icon.png: art/icon_sci.svg ../../contrib/inkscape_tools/bin/svg_to_icons
36 mkdir -p src/scientific/android/res
37 ../../contrib/inkscape_tools/bin/svg_to_icons art/icon-sci.svg --android --out src/scientific/android/res/
38
39 ../../contrib/inkscape_tools/bin/svg_to_icons:
40 make -C ../../contrib/inkscape_tools/
41
42 android-install: bin/calculator.apk
43 adb install -r bin/calculator.apk
44
45 # ---
46 # iOS
47
48 ios: bin/calculator.app bin/scientific.app
49
50 bin/calculator.app: $(shell ${NITLS} -M src/ios_calculator.nit) ${NITC} ios/AppIcon.appiconset/Contents.json
51 mkdir -p bin
52 ${NITC} -o $@ src/ios_calculator.nit -D debug
53
54 bin/scientific.app: $(shell ${NITLS} -M src/scientific src/ios_calculator.nit) ${NITC} src/scientific/ios/AppIcon.appiconset/Contents.json
55 mkdir -p bin
56 ${NITC} -o $@ src/scientific -m src/ios_calculator.nit -D debug
57
58 ios/AppIcon.appiconset/Contents.json: art/icon-ios.svg
59 mkdir -p ios
60 ../../contrib/inkscape_tools/bin/svg_to_icons art/icon-ios.svg --ios --out ios/AppIcon.appiconset/
61
62 src/scientific/ios/AppIcon.appiconset/Contents.json: art/icon-ios.svg
63 mkdir -p ios
64 ../../contrib/inkscape_tools/bin/svg_to_icons art/icon-ios-sci.svg --ios --out src/scientific/ios/AppIcon.appiconset/
65
66 # ---
67 # Tests
68
69 bin/test: $(shell ${NITLS} -M src/calculator_test.nit) ${NITC}
70 mkdir -p bin
71 ${NITC} -o $@ src/calculator_test.nit
72
73 check: bin/test
74 bin/test