summaryrefslogtreecommitdiff
path: root/android/android.make
diff options
context:
space:
mode:
authorThomas Martitz <kugel@rockbox.org>2012-01-03 21:15:21 +0000
committerThomas Martitz <kugel@rockbox.org>2012-01-03 21:15:21 +0000
commite9cb9538c76fc6560fc8475a0bfcd9821d0a66be (patch)
tree50f62afc26291c8a8b198461d64c0deddbcbd8ae /android/android.make
parent84f651f9b6b509224d9b8a57872f846ac4a0c646 (diff)
downloadrockbox-e9cb9538c76fc6560fc8475a0bfcd9821d0a66be.tar.gz
rockbox-e9cb9538c76fc6560fc8475a0bfcd9821d0a66be.zip
android: Update build system for recent SDK versions and target ice cream sandwich.
As a result, the java parts can now be build using ant (in the android dir). Just issue "ant debug" after "make libs". Building the java parts from eclipse also still works. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31543 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'android/android.make')
-rw-r--r--android/android.make38
1 files changed, 19 insertions, 19 deletions
diff --git a/android/android.make b/android/android.make
index ec7ba32ea5..6180ef64da 100644
--- a/android/android.make
+++ b/android/android.make
@@ -27,9 +27,6 @@ $(CPUFEAT_BUILD)/cpu-features.o: $(CPUFEAT)/cpu-features.c
27.SECONDEXPANSION: # $$(OBJ) is not populated until after this 27.SECONDEXPANSION: # $$(OBJ) is not populated until after this
28.PHONY: apk classes clean dex dirs libs jar 28.PHONY: apk classes clean dex dirs libs jar
29 29
30
31java2class = $(addsuffix .class,$(basename $(subst $(ANDROID_DIR),$(BUILDDIR),$(1))))
32
33# API version 30# API version
34ANDROID_PLATFORM_VERSION=11 31ANDROID_PLATFORM_VERSION=11
35ANDROID_PLATFORM=$(ANDROID_SDK_PATH)/platforms/android-$(ANDROID_PLATFORM_VERSION) 32ANDROID_PLATFORM=$(ANDROID_SDK_PATH)/platforms/android-$(ANDROID_PLATFORM_VERSION)
@@ -42,21 +39,27 @@ ZIPALIGN=$(ANDROID_SDK_PATH)/tools/zipalign
42KEYSTORE=$(HOME)/.android/debug.keystore 39KEYSTORE=$(HOME)/.android/debug.keystore
43ADB=$(ANDROID_SDK_PATH)/platform-tools/adb 40ADB=$(ANDROID_SDK_PATH)/platform-tools/adb
44 41
42CLASSPATH := $(BUILDDIR)/bin/classes
43
45MANIFEST := $(BUILDDIR)/bin/AndroidManifest.xml 44MANIFEST := $(BUILDDIR)/bin/AndroidManifest.xml
46MANIFEST_SRC := $(ANDROID_DIR)/AndroidManifest.xml 45MANIFEST_SRC := $(ANDROID_DIR)/AndroidManifest.xml
47 46
48R_JAVA := $(BUILDDIR)/gen/$(PACKAGE_PATH)/R.java 47R_JAVA := $(BUILDDIR)/gen/$(PACKAGE_PATH)/R.java
49R_OBJ := $(BUILDDIR)/bin/$(PACKAGE_PATH)/R.class 48R_OBJ := $(CLASSPATH)/$(PACKAGE_PATH)/R.class
50 49
51JAVA_SRC := $(wildcard $(ANDROID_DIR)/src/$(PACKAGE_PATH)/*.java) 50JAVA_SRC := $(wildcard $(ANDROID_DIR)/src/$(PACKAGE_PATH)/*.java)
52JAVA_SRC += $(wildcard $(ANDROID_DIR)/src/$(PACKAGE_PATH)/Helper/*.java) 51JAVA_SRC += $(wildcard $(ANDROID_DIR)/src/$(PACKAGE_PATH)/Helper/*.java)
53JAVA_SRC += $(wildcard $(ANDROID_DIR)/src/$(PACKAGE_PATH)/widgets/*.java) 52JAVA_SRC += $(wildcard $(ANDROID_DIR)/src/$(PACKAGE_PATH)/widgets/*.java)
54JAVA_SRC += $(wildcard $(ANDROID_DIR)/src/$(PACKAGE_PATH)/monitors/*.java) 53JAVA_SRC += $(wildcard $(ANDROID_DIR)/src/$(PACKAGE_PATH)/monitors/*.java)
55JAVA_OBJ := $(call java2class,$(subst $(ANDROID)/src/$(PACKAGE_PATH),$(ANDROID)/bin/$(PACKAGE_PATH),$(JAVA_SRC))) 54
55java2class = $(addsuffix .class,$(basename $(subst $(ANDROID_DIR)/src,$(CLASSPATH),$(1))))
56
57JAVA_OBJ := $(call java2class,$(JAVA_SRC))
56 58
57 59
58LIBS := $(BINLIB_DIR)/$(BINARY) $(BINLIB_DIR)/libmisc.so 60LIBS := $(BINLIB_DIR)/$(BINARY) $(BINLIB_DIR)/libmisc.so
59LIBS += $(addprefix $(BINLIB_DIR)/lib,$(patsubst %.codec,%.so,$(notdir $(CODECS)))) 61LIBS += $(addprefix $(BINLIB_DIR)/lib,$(patsubst %.codec,%.so,$(notdir $(CODECS))))
62
60TEMP_APK := $(BUILDDIR)/bin/_rockbox.apk 63TEMP_APK := $(BUILDDIR)/bin/_rockbox.apk
61TEMP_APK2 := $(BUILDDIR)/bin/__rockbox.apk 64TEMP_APK2 := $(BUILDDIR)/bin/__rockbox.apk
62DEX := $(BUILDDIR)/bin/classes.dex 65DEX := $(BUILDDIR)/bin/classes.dex
@@ -65,17 +68,17 @@ AP_ := $(BUILDDIR)/bin/resources.ap_
65APK := $(BUILDDIR)/rockbox.apk 68APK := $(BUILDDIR)/rockbox.apk
66 69
67_DIRS := $(BUILDDIR)/___/$(PACKAGE_PATH) 70_DIRS := $(BUILDDIR)/___/$(PACKAGE_PATH)
68DIRS := $(subst ___,bin,$(_DIRS))
69DIRS += $(subst ___,gen,$(_DIRS)) 71DIRS += $(subst ___,gen,$(_DIRS))
70DIRS += $(subst ___,data,$(_DIRS)) 72DIRS += $(subst ___,data,$(_DIRS))
71DIRS += $(BUILDDIR)/libs/armeabi 73DIRS += $(BUILDDIR)/libs/armeabi
72DIRS += $(CPUFEAT_BUILD) 74DIRS += $(CPUFEAT_BUILD)
75DIRS += $(CLASSPATH)
73 76
74RES := $(wildcard $(ANDROID_DIR)/res/*/*) 77RES := $(wildcard $(ANDROID_DIR)/res/*/*)
75 78
76CLEANOBJS += bin gen libs data 79CLEANOBJS += bin gen libs data
77 80
78JAVAC_OPTS += -implicit:none -classpath $(ANDROID_PLATFORM)/android.jar:$(BUILDDIR)/bin 81JAVAC_OPTS += -implicit:none -classpath $(ANDROID_PLATFORM)/android.jar:$(CLASSPATH)
79 82
80.PHONY: 83.PHONY:
81$(MANIFEST): $(MANIFEST_SRC) $(DIRS) 84$(MANIFEST): $(MANIFEST_SRC) $(DIRS)
@@ -86,21 +89,18 @@ $(R_JAVA) $(AP_): $(MANIFEST) $(RES) | $(DIRS)
86 -J $(BUILDDIR)/gen -M $(MANIFEST) -S $(ANDROID_DIR)/res \ 89 -J $(BUILDDIR)/gen -M $(MANIFEST) -S $(ANDROID_DIR)/res \
87 -I $(ANDROID_PLATFORM)/android.jar -F $(AP_) 90 -I $(ANDROID_PLATFORM)/android.jar -F $(AP_)
88 91
89$(BUILDDIR)/bin/$(PACKAGE_PATH)/R.class: $(R_JAVA) 92$(CLASSPATH)/$(PACKAGE_PATH)/R.class: $(R_JAVA)
90 $(call PRINTS,JAVAC $(subst $(ROOTDIR)/,,$<))javac -d $(BUILDDIR)/bin \ 93 $(call PRINTS,JAVAC $(subst $(ROOTDIR)/,,$<))javac -d $(BUILDDIR)/bin \
91 $(JAVAC_OPTS) \ 94 $(JAVAC_OPTS) -sourcepath $(ANDROID_DIR)/gen $<
92 -sourcepath $(ANDROID_DIR)/gen $<
93 95
94$(BUILDDIR)/bin/$(PACKAGE_PATH)/%.class: $(ANDROID_DIR)/src/$(PACKAGE_PATH)/%.java $(BUILDDIR)/bin/$(PACKAGE_PATH)/R.class 96$(CLASSPATH)/$(PACKAGE_PATH)/%.class: $(ANDROID_DIR)/src/$(PACKAGE_PATH)/%.java $(CLASSPATH)/$(PACKAGE_PATH)/R.class
95 $(call PRINTS,JAVAC $(subst $(ROOTDIR)/,,$<))javac -d $(BUILDDIR)/bin \ 97 $(call PRINTS,JAVAC $(subst $(ROOTDIR)/,,$<))javac -d $(CLASSPATH) \
96 $(JAVAC_OPTS) \ 98 $(JAVAC_OPTS) -sourcepath $(ANDROID_DIR)/src $<
97 -sourcepath $(ANDROID_DIR)/src $<
98 99
99$(JAR): $(JAVA_SRC) $(R_JAVA) 100$(JAR): $(JAVA_SRC) $(R_JAVA)
100 $(call PRINTS,JAVAC $(subst $(ROOTDIR)/,,$?))javac -d $(BUILDDIR)/bin \ 101 $(call PRINTS,JAVAC $(subst $(ROOTDIR)/,,$?))javac -d $(CLASSPATH) \
101 $(JAVAC_OPTS) \ 102 $(JAVAC_OPTS) -sourcepath $(ANDROID_DIR)/src:$(ANDROID_DIR)/gen $?
102 -sourcepath $(ANDROID_DIR)/src:$(ANDROID_DIR)/gen $? 103 $(call PRINTS,JAR $(subst $(BUILDDIR)/,,$@))jar cf $(JAR) -C $(CLASSPATH) org
103 $(call PRINTS,JAR $(subst $(BUILDDIR)/,,$@))jar cf $(JAR) -C $(BUILDDIR)/bin org
104 104
105jar: $(JAR) 105jar: $(JAR)
106 106
@@ -127,7 +127,7 @@ $(BINLIB_DIR)/libmisc.so: $(BUILDDIR)/rockbox.zip
127$(BINLIB_DIR)/lib%.so: $(BUILDDIR)/apps/codecs/%.codec 127$(BINLIB_DIR)/lib%.so: $(BUILDDIR)/apps/codecs/%.codec
128 $(call PRINTS,CP $(@F))cp $^ $@ 128 $(call PRINTS,CP $(@F))cp $^ $@
129 129
130libs: $(LIBS) 130libs: $(DIRS) $(LIBS)
131 131
132$(TEMP_APK): $(AP_) $(LIBS) $(DEX) | $(DIRS) 132$(TEMP_APK): $(AP_) $(LIBS) $(DEX) | $(DIRS)
133 $(call PRINTS,APK $(subst $(BUILDDIR)/,,$@))$(APKBUILDER) $@ \ 133 $(call PRINTS,APK $(subst $(BUILDDIR)/,,$@))$(APKBUILDER) $@ \