diff options
author | Thomas Martitz <kugel@rockbox.org> | 2012-01-03 21:15:21 +0000 |
---|---|---|
committer | Thomas Martitz <kugel@rockbox.org> | 2012-01-03 21:15:21 +0000 |
commit | e9cb9538c76fc6560fc8475a0bfcd9821d0a66be (patch) | |
tree | 50f62afc26291c8a8b198461d64c0deddbcbd8ae /android/android.make | |
parent | 84f651f9b6b509224d9b8a57872f846ac4a0c646 (diff) | |
download | rockbox-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.make | 38 |
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 | |||
31 | java2class = $(addsuffix .class,$(basename $(subst $(ANDROID_DIR),$(BUILDDIR),$(1)))) | ||
32 | |||
33 | # API version | 30 | # API version |
34 | ANDROID_PLATFORM_VERSION=11 | 31 | ANDROID_PLATFORM_VERSION=11 |
35 | ANDROID_PLATFORM=$(ANDROID_SDK_PATH)/platforms/android-$(ANDROID_PLATFORM_VERSION) | 32 | ANDROID_PLATFORM=$(ANDROID_SDK_PATH)/platforms/android-$(ANDROID_PLATFORM_VERSION) |
@@ -42,21 +39,27 @@ ZIPALIGN=$(ANDROID_SDK_PATH)/tools/zipalign | |||
42 | KEYSTORE=$(HOME)/.android/debug.keystore | 39 | KEYSTORE=$(HOME)/.android/debug.keystore |
43 | ADB=$(ANDROID_SDK_PATH)/platform-tools/adb | 40 | ADB=$(ANDROID_SDK_PATH)/platform-tools/adb |
44 | 41 | ||
42 | CLASSPATH := $(BUILDDIR)/bin/classes | ||
43 | |||
45 | MANIFEST := $(BUILDDIR)/bin/AndroidManifest.xml | 44 | MANIFEST := $(BUILDDIR)/bin/AndroidManifest.xml |
46 | MANIFEST_SRC := $(ANDROID_DIR)/AndroidManifest.xml | 45 | MANIFEST_SRC := $(ANDROID_DIR)/AndroidManifest.xml |
47 | 46 | ||
48 | R_JAVA := $(BUILDDIR)/gen/$(PACKAGE_PATH)/R.java | 47 | R_JAVA := $(BUILDDIR)/gen/$(PACKAGE_PATH)/R.java |
49 | R_OBJ := $(BUILDDIR)/bin/$(PACKAGE_PATH)/R.class | 48 | R_OBJ := $(CLASSPATH)/$(PACKAGE_PATH)/R.class |
50 | 49 | ||
51 | JAVA_SRC := $(wildcard $(ANDROID_DIR)/src/$(PACKAGE_PATH)/*.java) | 50 | JAVA_SRC := $(wildcard $(ANDROID_DIR)/src/$(PACKAGE_PATH)/*.java) |
52 | JAVA_SRC += $(wildcard $(ANDROID_DIR)/src/$(PACKAGE_PATH)/Helper/*.java) | 51 | JAVA_SRC += $(wildcard $(ANDROID_DIR)/src/$(PACKAGE_PATH)/Helper/*.java) |
53 | JAVA_SRC += $(wildcard $(ANDROID_DIR)/src/$(PACKAGE_PATH)/widgets/*.java) | 52 | JAVA_SRC += $(wildcard $(ANDROID_DIR)/src/$(PACKAGE_PATH)/widgets/*.java) |
54 | JAVA_SRC += $(wildcard $(ANDROID_DIR)/src/$(PACKAGE_PATH)/monitors/*.java) | 53 | JAVA_SRC += $(wildcard $(ANDROID_DIR)/src/$(PACKAGE_PATH)/monitors/*.java) |
55 | JAVA_OBJ := $(call java2class,$(subst $(ANDROID)/src/$(PACKAGE_PATH),$(ANDROID)/bin/$(PACKAGE_PATH),$(JAVA_SRC))) | 54 | |
55 | java2class = $(addsuffix .class,$(basename $(subst $(ANDROID_DIR)/src,$(CLASSPATH),$(1)))) | ||
56 | |||
57 | JAVA_OBJ := $(call java2class,$(JAVA_SRC)) | ||
56 | 58 | ||
57 | 59 | ||
58 | LIBS := $(BINLIB_DIR)/$(BINARY) $(BINLIB_DIR)/libmisc.so | 60 | LIBS := $(BINLIB_DIR)/$(BINARY) $(BINLIB_DIR)/libmisc.so |
59 | LIBS += $(addprefix $(BINLIB_DIR)/lib,$(patsubst %.codec,%.so,$(notdir $(CODECS)))) | 61 | LIBS += $(addprefix $(BINLIB_DIR)/lib,$(patsubst %.codec,%.so,$(notdir $(CODECS)))) |
62 | |||
60 | TEMP_APK := $(BUILDDIR)/bin/_rockbox.apk | 63 | TEMP_APK := $(BUILDDIR)/bin/_rockbox.apk |
61 | TEMP_APK2 := $(BUILDDIR)/bin/__rockbox.apk | 64 | TEMP_APK2 := $(BUILDDIR)/bin/__rockbox.apk |
62 | DEX := $(BUILDDIR)/bin/classes.dex | 65 | DEX := $(BUILDDIR)/bin/classes.dex |
@@ -65,17 +68,17 @@ AP_ := $(BUILDDIR)/bin/resources.ap_ | |||
65 | APK := $(BUILDDIR)/rockbox.apk | 68 | APK := $(BUILDDIR)/rockbox.apk |
66 | 69 | ||
67 | _DIRS := $(BUILDDIR)/___/$(PACKAGE_PATH) | 70 | _DIRS := $(BUILDDIR)/___/$(PACKAGE_PATH) |
68 | DIRS := $(subst ___,bin,$(_DIRS)) | ||
69 | DIRS += $(subst ___,gen,$(_DIRS)) | 71 | DIRS += $(subst ___,gen,$(_DIRS)) |
70 | DIRS += $(subst ___,data,$(_DIRS)) | 72 | DIRS += $(subst ___,data,$(_DIRS)) |
71 | DIRS += $(BUILDDIR)/libs/armeabi | 73 | DIRS += $(BUILDDIR)/libs/armeabi |
72 | DIRS += $(CPUFEAT_BUILD) | 74 | DIRS += $(CPUFEAT_BUILD) |
75 | DIRS += $(CLASSPATH) | ||
73 | 76 | ||
74 | RES := $(wildcard $(ANDROID_DIR)/res/*/*) | 77 | RES := $(wildcard $(ANDROID_DIR)/res/*/*) |
75 | 78 | ||
76 | CLEANOBJS += bin gen libs data | 79 | CLEANOBJS += bin gen libs data |
77 | 80 | ||
78 | JAVAC_OPTS += -implicit:none -classpath $(ANDROID_PLATFORM)/android.jar:$(BUILDDIR)/bin | 81 | JAVAC_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 | ||
105 | jar: $(JAR) | 105 | jar: $(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 | ||
130 | libs: $(LIBS) | 130 | libs: $(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) $@ \ |