X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=altosdroid%2FMakefile.am;h=7fb16404d776cc27a681ee6a87ed7bc183c2b92c;hp=d21cacd87558c6227a69409875cafd9bc50d07ec;hb=65169d0b33ce6651508127a5ca45b6de27616352;hpb=6ff45bef719bafd2c827e479186c8fadf6f779aa diff --git a/altosdroid/Makefile.am b/altosdroid/Makefile.am index d21cacd8..7fb16404 100644 --- a/altosdroid/Makefile.am +++ b/altosdroid/Makefile.am @@ -1,5 +1,11 @@ +DBG_APK=app/build/outputs/apk/debug/app-debug.apk +REL_APK=app/build/outputs/apk/release/app-release.apk + if ANDROID -all_target=bin/AltosDroid-debug.apk bin/AltosDroid-release-unsigned.apk +all_target=$(DBG_APK) +if ANDROID_RELEASE +all_target+=$(REL_APK) +endif else all_target= endif @@ -11,84 +17,80 @@ DX=$(SDK)/platform-tools/dx ADB=$(SDK)/platform-tools/adb AAPT=$(SDK)/platform-tools/aapt APKBUILDER=$(SDK)/tools/apkbuilder -ZIPALIGN=$(SDK)/tools/zipalign - -JAVA_SRC_DIR=src/org/altusmetrum/AltosDroid -EXT_LIBDIR=libs -DRAWABLE_DIR=res/drawable +ZIPALIGN_A=$(SDK)/tools/zipalign +ZIPALIGN_B=$(shell ls $(SDK)/build-tools/*/zipalign | tail -1) + +JAVA_SRC_DIR=app/src/main/java/org/altusmetrum/AltosDroid +EXT_LIBDIR=app/libs +RES_DIR=app/src/main/res +DRAWABLE_DIR=$(RES_DIR)/drawable +LAYOUT_DIR=$(RES_DIR)/layout +MENU_DIR=$(RES_DIR)/menu +VALUES_DIR=$(RES_DIR)/values +XML_DIR=$(RES_DIR)/xml ALTOSLIB_SRCDIR=../altoslib ALTOSLIB_JAR=altoslib_$(ALTOSLIB_VERSION).jar ALTOSLIB=$(EXT_LIBDIR)/$(ALTOSLIB_JAR) -SUPPORT_V4_SRCDIR=$(SDK)/extras/android/support/v4 -SUPPORT_V4_JAR=android-support-v4.jar - -SUPPORT_V4=$(EXT_LIBDIR)/$(SUPPORT_V4_JAR) - -GOOGLE_PLAY_SERVICES_LIB_SRCDIR=$(SDK)/extras/google/google_play_services/libproject -GOOGLE_PLAY_SERVICES_LIB=google-play-services_lib - -JAVA_SRC=$(JAVA_SRC_DIR)/*.java +JAVA_SRC=$(JAVA_SRC_DIR)/*.java $(JAVA_SRC_DIR)/BuildInfo.java DRAWABLES=\ $(DRAWABLE_DIR)/redled.png \ $(DRAWABLE_DIR)/greenled.png \ $(DRAWABLE_DIR)/grayled.png -SRC=$(JAVA_SRC) $(DRAWABLES) +GRADLEW=JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 bash ./gradlew --no-daemon -all: $(all_target) +LAYOUTS=$(LAYOUT_DIR)/*.xml +MENUS=$(MENU_DIR)/*.xml +VALUES=$(VALUES_DIR)/*.xml +XMLS=$(XML_DIR)/*.xml app/src/main/AndroidManifest.xml -$(EXT_LIBDIR): - mkdir -p $(EXT_LIBDIR) +RES=$(LAYOUTS) $(MENUS) $(VALUES) $(XMLS) -$(ALTOSLIB): $(EXT_LIBDIR) $(ALTOSLIB_SRCDIR)/$(ALTOSLIB_JAR) - cd $(EXT_LIBDIR) && ln -sf $(shell echo $(EXT_LIBDIR) | sed 's|[^/]\+|..|g')/$(ALTOSLIB_SRCDIR)/$(ALTOSLIB_JAR) . +SRC=$(JAVA_SRC) $(DRAWABLES) $(RES) -$(SUPPORT_V4): $(EXT_LIBDIR) $(SUPPORT_V4_SRCDIR)/$(SUPPORT_V4_JAR) - cd $(EXT_LIBDIR) && ln -sf $(SUPPORT_V4_SRCDIR)/$(SUPPORT_V4_JAR) . +all: $(all_target) -$(GOOGLE_PLAY_SERVICES_LIB): $(GOOGLE_PLAY_SERVICES_LIB_SRCDIR)/$(GOOGLE_PLAY_SERVICES_LIB) - cp -a $(GOOGLE_PLAY_SERVICES_LIB_SRCDIR)/$(GOOGLE_PLAY_SERVICES_LIB) . - cd $(GOOGLE_PLAY_SERVICES_LIB) && $(SDK)/tools/android update project --target $(SDK_TARGET) --path . +.NOTPARALLEL: -$(JAVA_SRC_DIR)/BuildInfo.java: $(JAVA_SRC) +$(ALTOSLIB): $(ALTOSLIB_SRCDIR)/$(ALTOSLIB_JAR) + mkdir -p $(EXT_LIBDIR) + cd $(EXT_LIBDIR) && ln -sf $(shell echo $(EXT_LIBDIR) | sed 's|[^/]\+|..|g')/$(ALTOSLIB_SRCDIR)/$(ALTOSLIB_JAR) . + +$(JAVA_SRC_DIR)/BuildInfo.java: $(filter-out $(JAVA_SRC_DIR)/BuildInfo.java,$(shell echo $(JAVA_SRC))) ./buildinfo.sh $(DRAWABLE_DIR)/%.png: ../icon/%.png cd $(DRAWABLE_DIR) && ln -sf $(shell echo $(DRAWABLE_DIR) | sed 's|[^/]\+|..|g')/$< . if ANDROID -install-release: bin/AltosDroid-release.apk - $(ADB) install -r bin/AltosDroid-release.apk +install-release: $(REL_APK) + $(ADB) install -r $(REL_APK) -install-debug: bin/AltosDroid-debug.apk - $(ADB) install -r bin/AltosDroid-debug.apk +install-debug: $(DBG_APK) + $(ADB) install -r $(DBG_APK) -bin/AltosDroid-debug.apk: $(SRC) $(ALTOSLIB) $(SUPPORT_V4) $(GOOGLE_PLAY_SERVICES_LIB) - ant debug +$(DBG_APK): $(SRC) $(ALTOSLIB) + $(GRADLEW) assembleDebug -bin/AltosDroid-release-unsigned.apk: $(SRC) $(ALTOSLIB) $(SUPPORT_V4) $(GOOGLE_PLAY_SERVICES_LIB) - ant release +$(REL_APK): $(SRC) $(ALTOSLIB) + $(GRADLEW) build -sign: - jarsigner -keystore release.keystore \ - -signedjar bin/AltosDroid-release-signed.apk \ - bin/AltosDroid-release-unsigned.apk AltosDroid - $(SDK)/tools/zipalign -f 4 \ - bin/AltosDroid-release-signed.apk \ - bin/AltosDroid-release.apk +release: $(REL_APK) -clean: $(GOOGLE_PLAY_SERVICES_LIB) - ant clean - rm -rf $(EXT_LIBDIR) +clean-local: $(GOOGLE_PLAY_SERVICES_LIB) + $(GRADLEW) clean + rm -f $(JAVA_SRC_DIR)/BuildInfo.java rm -f $(DRAWABLES) + rm -rf $(EXT_LIBDIR) rm -rf $(GOOGLE_PLAY_SERVICES_LIB) else -clean: +clean-local: endif +clean: clean-local