Commit 9f10396274c0fae006b9fefc1878192da8e502b7
1 parent
c7bab6e7
Exists in
master
and in
5 other branches
Android: Alterando Makefile para gerar automaticamente o .apk de debug
Showing
3 changed files
with
108 additions
and
8 deletions
Show diff stats
android/Makefile
@@ -23,13 +23,18 @@ | @@ -23,13 +23,18 @@ | ||
23 | # perry.werneck@gmail.com (Alexandre Perry de Souza Werneck) | 23 | # perry.werneck@gmail.com (Alexandre Perry de Souza Werneck) |
24 | # | 24 | # |
25 | 25 | ||
26 | -JAVAH=javah | ||
27 | -JAVAC=javac | 26 | +JAVA_HOME=/usr/java/jdk1.7.0_05 |
27 | +JAVAH=$(JAVA_HOME)/bin/javah | ||
28 | +JAVAC=$(JAVA_HOME)/bin/javac | ||
29 | +ANT=/usr/bin/ant | ||
30 | + | ||
31 | +ANDROIDSDK=/opt/android-sdk | ||
32 | + | ||
28 | NDKBUILD=/opt/android-ndk-r8/ndk-build | 33 | NDKBUILD=/opt/android-ndk-r8/ndk-build |
29 | CLASSPATH=br/com/bb/pw3270 | 34 | CLASSPATH=br/com/bb/pw3270 |
30 | -ANDROIDSDK=/opt/android-sdk | ||
31 | MKDIR=/bin/mkdir -p | 35 | MKDIR=/bin/mkdir -p |
32 | CONVERT=rsvg-convert | 36 | CONVERT=rsvg-convert |
37 | +JAVASRCDIR=src/br/com/bb/pw3270 | ||
33 | 38 | ||
34 | RESOLUTION=xhdpi mdpi ldpi hdpi | 39 | RESOLUTION=xhdpi mdpi ldpi hdpi |
35 | 40 | ||
@@ -62,16 +67,19 @@ res/drawable-hdpi/%.png: %.svg | @@ -62,16 +67,19 @@ res/drawable-hdpi/%.png: %.svg | ||
62 | 67 | ||
63 | #---[ Targets ]---------------------------------------------------------------- | 68 | #---[ Targets ]---------------------------------------------------------------- |
64 | 69 | ||
65 | -all: jni/lib3270jni.h icons | ||
66 | - @$(NDKBUILD) | 70 | +Debug: bin/pw3270-debug.apk |
71 | + | ||
72 | +bin/pw3270-debug.apk: icons libs/armeabi/lib3270.so $(JAVASRCDIR)/*.java | ||
73 | + $(ANT) debug | ||
67 | 74 | ||
68 | -Debug: jni/lib3270jni.h icons | 75 | + |
76 | +libs/armeabi/lib3270.so: jni/lib3270jni.h jni/*.cpp | ||
69 | @$(NDKBUILD) | 77 | @$(NDKBUILD) |
70 | 78 | ||
71 | icons: $(foreach DIR, $(RESOLUTION), res/drawable-$(DIR)/ic_launcher.png) \ | 79 | icons: $(foreach DIR, $(RESOLUTION), res/drawable-$(DIR)/ic_launcher.png) \ |
72 | $(foreach DIR, $(RESOLUTION), res/drawable-$(DIR)/ic_connect.png) \ | 80 | $(foreach DIR, $(RESOLUTION), res/drawable-$(DIR)/ic_connect.png) \ |
73 | $(foreach DIR, $(RESOLUTION), res/drawable-$(DIR)/ic_disconnect.png) \ | 81 | $(foreach DIR, $(RESOLUTION), res/drawable-$(DIR)/ic_disconnect.png) \ |
74 | - $(foreach DIR, $(RESOLUTION), res/drawable-$(DIR)/ic_settings.png) | 82 | + $(foreach DIR, $(RESOLUTION), res/drawable-$(DIR)/ic_settings.png) |
75 | 83 | ||
76 | clean: | 84 | clean: |
77 | @rm -fr obj | 85 | @rm -fr obj |
@@ -108,4 +116,3 @@ sigs.txt: bin/classes/$(CLASSPATH)/lib3270.class | @@ -108,4 +116,3 @@ sigs.txt: bin/classes/$(CLASSPATH)/lib3270.class | ||
108 | jni/lib3270jni.h: bin/classes/$(CLASSPATH)/lib3270.class | 116 | jni/lib3270jni.h: bin/classes/$(CLASSPATH)/lib3270.class |
109 | @echo " GEN `basename $@`" | 117 | @echo " GEN `basename $@`" |
110 | @$(JAVAH) -o $@ -classpath $(ANDROIDSDK)/platforms/android-15/android.jar:bin/classes $(subst /,.,$(CLASSPATH)).lib3270 | 118 | @$(JAVAH) -o $@ -classpath $(ANDROIDSDK)/platforms/android-15/android.jar:bin/classes $(subst /,.,$(CLASSPATH)).lib3270 |
111 | - |
@@ -0,0 +1,83 @@ | @@ -0,0 +1,83 @@ | ||
1 | +<?xml version="1.0" encoding="UTF-8"?> | ||
2 | +<project name="pw3270" default="help"> | ||
3 | + | ||
4 | + <!-- The local.properties file is created and updated by the 'android' tool. | ||
5 | + It contains the path to the SDK. It should *NOT* be checked into | ||
6 | + Version Control Systems. --> | ||
7 | + <property file="local.properties" /> | ||
8 | + | ||
9 | + <!-- The ant.properties file can be created by you. It is only edited by the | ||
10 | + 'android' tool to add properties to it. | ||
11 | + This is the place to change some Ant specific build properties. | ||
12 | + Here are some properties you may want to change/update: | ||
13 | + | ||
14 | + source.dir | ||
15 | + The name of the source directory. Default is 'src'. | ||
16 | + out.dir | ||
17 | + The name of the output directory. Default is 'bin'. | ||
18 | + | ||
19 | + For other overridable properties, look at the beginning of the rules | ||
20 | + files in the SDK, at tools/ant/build.xml | ||
21 | + | ||
22 | + Properties related to the SDK location or the project target should | ||
23 | + be updated using the 'android' tool with the 'update' action. | ||
24 | + | ||
25 | + This file is an integral part of the build system for your | ||
26 | + application and should be checked into Version Control Systems. | ||
27 | + | ||
28 | + --> | ||
29 | + <property file="ant.properties" /> | ||
30 | + | ||
31 | + <!-- The project.properties file is created and updated by the 'android' | ||
32 | + tool, as well as ADT. | ||
33 | + | ||
34 | + This contains project specific properties such as project target, and library | ||
35 | + dependencies. Lower level build properties are stored in ant.properties | ||
36 | + (or in .classpath for Eclipse projects). | ||
37 | + | ||
38 | + This file is an integral part of the build system for your | ||
39 | + application and should be checked into Version Control Systems. --> | ||
40 | + <loadproperties srcFile="project.properties" /> | ||
41 | + | ||
42 | + <!-- quick check on sdk.dir --> | ||
43 | + <fail | ||
44 | + message="sdk.dir is missing. Make sure to generate local.properties using 'android update project' or to inject it through an env var" | ||
45 | + unless="sdk.dir" | ||
46 | + /> | ||
47 | + | ||
48 | + <!-- | ||
49 | + Import per project custom build rules if present at the root of the project. | ||
50 | + This is the place to put custom intermediary targets such as: | ||
51 | + -pre-build | ||
52 | + -pre-compile | ||
53 | + -post-compile (This is typically used for code obfuscation. | ||
54 | + Compiled code location: ${out.classes.absolute.dir} | ||
55 | + If this is not done in place, override ${out.dex.input.absolute.dir}) | ||
56 | + -post-package | ||
57 | + -post-build | ||
58 | + -pre-clean | ||
59 | + --> | ||
60 | + <import file="custom_rules.xml" optional="true" /> | ||
61 | + | ||
62 | + <!-- Import the actual build file. | ||
63 | + | ||
64 | + To customize existing targets, there are two options: | ||
65 | + - Customize only one target: | ||
66 | + - copy/paste the target into this file, *before* the | ||
67 | + <import> task. | ||
68 | + - customize it to your needs. | ||
69 | + - Customize the whole content of build.xml | ||
70 | + - copy/paste the content of the rules files (minus the top node) | ||
71 | + into this file, replacing the <import> task. | ||
72 | + - customize to your needs. | ||
73 | + | ||
74 | + *********************** | ||
75 | + ****** IMPORTANT ****** | ||
76 | + *********************** | ||
77 | + In all cases you must update the value of version-tag below to read 'custom' instead of an integer, | ||
78 | + in order to avoid having your file be overridden by tools such as "android update project" | ||
79 | + --> | ||
80 | + <!-- version-tag: 1 --> | ||
81 | + <import file="${sdk.dir}/tools/ant/build.xml" /> | ||
82 | + | ||
83 | +</project> |
@@ -0,0 +1,10 @@ | @@ -0,0 +1,10 @@ | ||
1 | +# This file is automatically generated by Android Tools. | ||
2 | +# Do not modify this file -- YOUR CHANGES WILL BE ERASED! | ||
3 | +# | ||
4 | +# This file must *NOT* be checked into Version Control Systems, | ||
5 | +# as it contains information specific to your local configuration. | ||
6 | + | ||
7 | +# location of the SDK. This is only used by Ant | ||
8 | +# For customization when using a Version Control System, please read the | ||
9 | +# header note. | ||
10 | +sdk.dir=/opt/android-sdk |