]> Pileus Git - ~andy/spades/blobdiff - makefile
Clear logs on quit
[~andy/spades] / makefile
index 4491afd740b36d0904028920ebe7c7e61f16c7d7..dc3d20adf012480b46984178b6a0d511b26b7287 100644 (file)
--- a/makefile
+++ b/makefile
@@ -7,16 +7,16 @@ KEYFILE ?= ~/.android/android.p12
 KEYTYPE ?= pkcs12
 KEYNAME ?= android
 ANDROID ?= /opt/android-sdk-update-manager/platforms/android-10/android.jar
+SDKLIB  ?= /opt/android-sdk-update-manager/tools/lib/sdklib.jar
 
-# Sources
-RES     := $(shell find res -type f)
-SRC     := $(shell find src -name '*.java')
-
-# Objects
-GEN     := gen/$(subst .,/,$(PACKAGE))/R.java
-OBJ     := $(subst .java,.class,   \
-                $(SRC:src/%=obj/%) \
-                $(GEN:gen/%=obj/%))
+# Variables
+DIR     := $(subst .,/,$(PACKAGE))
+RES     := $(wildcard res/*/*.*)
+SRC     := $(wildcard src/$(DIR)/*.java)
+GEN     := gen/$(DIR)/R.java
+OBJ     := obj/$(DIR)/R.class
+APK     := java -classpath $(SDKLIB) \
+                com.android.sdklib.build.ApkBuilderMain
 
 # Targets
 debug: bin/$(PROGRAM).dbg
@@ -73,13 +73,13 @@ convert:
 # Rules
 %.dbg: %.dex %.res | bin
        @echo "APK    $@.in"
-       @apkbuilder $@.in -f $*.dex -z $*.res
+       @$(APK) $@.in -f $*.dex -z $*.res
        @echo "ALIGN  $@"
        @zipalign -f 4 $@.in $@
 
 %.apk: %.dex %.res | bin
        @echo "APKU   $@.in"
-       @apkbuilder $@.in -u -f $*.dex -z $*.res
+       @$(APK) $@.in -u -f $*.dex -z $*.res
        @echo "SIGN   $@.in"
        @jarsigner -storetype $(KEYTYPE)  \
                   -keystore  $(KEYFILE)  \
@@ -100,7 +100,7 @@ convert:
                -F $*.res
 
 $(OBJ): $(SRC) $(GEN) | obj
-       @echo "JAVAC  *.class"
+       @echo "JAVAC  obj/*.class"
        @javac -g -Xlint:unchecked        \
                -bootclasspath $(ANDROID) \
                -encoding      UTF-8      \
@@ -127,6 +127,5 @@ $(GEN): AndroidManifest.xml $(RES) | gen
 bin gen obj:
        @mkdir -p $@
 
-# Use parallel javac instead
-.PRECIOUS: %.dex %.res
-.NOTPARALLEL:
+# Keep intermediate files
+.SECONDARY: