diff options
author | William S Fulton <wsf@fultondesigns.co.uk> | 2013-04-17 18:50:38 +0100 |
---|---|---|
committer | William S Fulton <wsf@fultondesigns.co.uk> | 2013-04-19 22:47:27 +0100 |
commit | 1d77a1b9818c791c64cad35b739917b8dd08b329 (patch) | |
tree | 288868192ff961e0bc9c0bc9be45d4eb4cf94de5 /Examples | |
parent | 19975300c70a3e5d62507daf8882066dd5195f45 (diff) | |
download | swig-1d77a1b9818c791c64cad35b739917b8dd08b329.tar.gz |
Android makefiles rewrite to use common code
Diffstat (limited to 'Examples')
-rw-r--r-- | Examples/Makefile.in | 46 | ||||
-rw-r--r-- | Examples/android/class/Makefile | 22 | ||||
-rw-r--r-- | Examples/android/extend/Makefile | 22 | ||||
-rw-r--r-- | Examples/android/simple/Makefile | 22 |
4 files changed, 78 insertions, 34 deletions
diff --git a/Examples/Makefile.in b/Examples/Makefile.in index 94d008b13..f0077ce0b 100644 --- a/Examples/Makefile.in +++ b/Examples/Makefile.in @@ -598,12 +598,56 @@ java_clean: ##### ANDROID ###### ################################################################## +ANDROID = android +ANDROID_NDK_BUILD = ndk-build +ANDROID_ADB = adb +ANT = ant +TARGETID = 1 + +# ---------------------------------------------------------------- +# Build an Android dynamically loadable module (C) +# ---------------------------------------------------------------- + +android: $(SRCS) + $(ANDROID) update project --target $(TARGETID) --name $(PROJECTNAME) --path . + $(SWIG) -java $(SWIGOPT) -o $(INTERFACEDIR)$(TARGET)_wrap.c $(INTERFACEPATH) + $(ANDROID_NDK_BUILD) + $(ANT) debug + +# ---------------------------------------------------------------- +# Build an Android dynamically loadable module (C++) +# ---------------------------------------------------------------- + +android_cpp: $(SRCS) + $(ANDROID) update project --target $(TARGETID) --name $(PROJECTNAME) --path . + $(SWIG) -java -c++ $(SWIGOPT) -o $(INTERFACEDIR)$(TARGET)_wrap.cpp $(INTERFACEPATH) + $(ANDROID_NDK_BUILD) + $(ANT) debug + +# ---------------------------------------------------------------- +# Android install +# ---------------------------------------------------------------- + +android_install: + -$(ANDROID_ADB) uninstall $(PACKAGENAME) + $(ANDROID_ADB) install $(INSTALLOPTIONS) bin/$(PROJECTNAME)-debug.apk + # ----------------------------------------------------------------- # Version display # ----------------------------------------------------------------- android_version: - adb version + $(ANDROID_ADB) version + +# ----------------------------------------------------------------- +# Cleaning the Android examples +# ----------------------------------------------------------------- + +android_clean: + ant -q -logfile /dev/null clean + rm -f $(INTERFACEDIR)$(TARGET)_wrap.* + rm -f `find $(PACKAGEDIR) -name \*.java | grep -v $(PROJECTNAME).java` + rm -rf obj ################################################################## ##### MODULA3 ###### diff --git a/Examples/android/class/Makefile b/Examples/android/class/Makefile index 9e5a30dcd..6155d9494 100644 --- a/Examples/android/class/Makefile +++ b/Examples/android/class/Makefile @@ -2,6 +2,7 @@ TOP = ../.. SWIG = $(TOP)/../preinst-swig TARGET = example INTERFACE = example.i +INTERFACEDIR = jni/ PACKAGEDIR = src/org/swig PACKAGENAME= org.swig.classexample SWIGOPT = -package $(PACKAGENAME) -outdir $(PACKAGEDIR)/classexample @@ -9,18 +10,17 @@ PROJECTNAME= SwigClass TARGETID = 1 #INSTALLOPTIONS = -s # To install on SD Card -check: - android update project --target $(TARGETID) --name $(PROJECTNAME) --path . - $(SWIG) -c++ -java $(SWIGOPT) -o jni/$(TARGET)_wrap.cpp jni/$(INTERFACE) - ndk-build - ant debug +check: build + +build: + $(MAKE) -f $(TOP)/Makefile CXXSRCS='$(CXXSRCS)' SWIG='$(SWIG)' SWIGOPT='$(SWIGOPT)' \ + TARGET='$(TARGET)' INTERFACE='$(INTERFACE)' INTERFACEDIR='$(INTERFACEDIR)' \ + PROJECTNAME='$(PROJECTNAME)' TARGETID='$(TARGETID)' android_cpp install: - -adb uninstall $(PACKAGENAME) - adb install $(INSTALLOPTIONS) bin/$(PROJECTNAME)-debug.apk + $(MAKE) -f $(TOP)/Makefile INSTALLOPTIONS='$(INSTALLOPTIONS)' PROJECTNAME='$(PROJECTNAME)' \ + PACKAGEDIR='$(PACKAGEDIR)' PACKAGENAME='$(PACKAGENAME)' android_install clean: - ant clean - rm -f jni/$(TARGET)_wrap.cpp - rm -f `find $(PACKAGEDIR) -name \*.java | grep -v $(PROJECTNAME).java` - rm -rf obj + $(MAKE) -f $(TOP)/Makefile TARGET='$(TARGET)' PROJECTNAME='$(PROJECTNAME)' \ + PACKAGEDIR='$(PACKAGEDIR)' INTERFACEDIR='$(INTERFACEDIR)' android_clean diff --git a/Examples/android/extend/Makefile b/Examples/android/extend/Makefile index 3811fd501..ec53013af 100644 --- a/Examples/android/extend/Makefile +++ b/Examples/android/extend/Makefile @@ -2,6 +2,7 @@ TOP = ../.. SWIG = $(TOP)/../preinst-swig TARGET = example INTERFACE = example.i +INTERFACEDIR = jni/ PACKAGEDIR = src/org/swig PACKAGENAME= org.swig.extendexample SWIGOPT = -package $(PACKAGENAME) -outdir $(PACKAGEDIR)/extendexample @@ -9,18 +10,17 @@ PROJECTNAME= SwigExtend TARGETID = 1 #INSTALLOPTIONS = -s # To install on SD Card -check: - android update project --target $(TARGETID) --name $(PROJECTNAME) --path . - $(SWIG) -c++ -java $(SWIGOPT) -o jni/$(TARGET)_wrap.cpp jni/$(INTERFACE) - ndk-build - ant debug +check: build + +build: + $(MAKE) -f $(TOP)/Makefile CXXSRCS='$(CXXSRCS)' SWIG='$(SWIG)' SWIGOPT='$(SWIGOPT)' \ + TARGET='$(TARGET)' INTERFACE='$(INTERFACE)' INTERFACEDIR='$(INTERFACEDIR)' \ + PROJECTNAME='$(PROJECTNAME)' TARGETID='$(TARGETID)' android_cpp install: - -adb uninstall $(PACKAGENAME) - adb install $(INSTALLOPTIONS) bin/$(PROJECTNAME)-debug.apk + $(MAKE) -f $(TOP)/Makefile INSTALLOPTIONS='$(INSTALLOPTIONS)' PROJECTNAME='$(PROJECTNAME)' \ + PACKAGEDIR='$(PACKAGEDIR)' PACKAGENAME='$(PACKAGENAME)' android_install clean: - ant clean - rm -f jni/$(TARGET)_wrap.h jni/$(TARGET)_wrap.cpp - rm -f `find $(PACKAGEDIR) -name \*.java | grep -v $(PROJECTNAME).java` - rm -rf obj + $(MAKE) -f $(TOP)/Makefile TARGET='$(TARGET)' PROJECTNAME='$(PROJECTNAME)' \ + PACKAGEDIR='$(PACKAGEDIR)' INTERFACEDIR='$(INTERFACEDIR)' android_clean diff --git a/Examples/android/simple/Makefile b/Examples/android/simple/Makefile index 2c6dace2f..7e7ff40e1 100644 --- a/Examples/android/simple/Makefile +++ b/Examples/android/simple/Makefile @@ -2,6 +2,7 @@ TOP = ../.. SWIG = $(TOP)/../preinst-swig TARGET = example INTERFACE = example.i +INTERFACEDIR = jni/ PACKAGEDIR = src/org/swig PACKAGENAME= org.swig.simple SWIGOPT = -package $(PACKAGENAME) -outdir $(PACKAGEDIR)/simple @@ -9,18 +10,17 @@ PROJECTNAME= SwigSimple TARGETID = 1 #INSTALLOPTIONS = -s # To install on SD Card -check: - android update project --target $(TARGETID) --name $(PROJECTNAME) --path . - $(SWIG) -java $(SWIGOPT) -o jni/$(TARGET)_wrap.c jni/$(INTERFACE) - ndk-build - ant debug +check: build + +build: + $(MAKE) -f $(TOP)/Makefile CXXSRCS='$(CXXSRCS)' SWIG='$(SWIG)' SWIGOPT='$(SWIGOPT)' \ + TARGET='$(TARGET)' INTERFACE='$(INTERFACE)' INTERFACEDIR='$(INTERFACEDIR)' \ + PROJECTNAME='$(PROJECTNAME)' TARGETID='$(TARGETID)' android install: - -adb uninstall $(PACKAGENAME) - adb install $(INSTALLOPTIONS) bin/$(PROJECTNAME)-debug.apk + $(MAKE) -f $(TOP)/Makefile INSTALLOPTIONS='$(INSTALLOPTIONS)' PROJECTNAME='$(PROJECTNAME)' \ + PACKAGEDIR='$(PACKAGEDIR)' PACKAGENAME='$(PACKAGENAME)' android_install clean: - ant clean - rm -f jni/$(TARGET)_wrap.c - rm -f `find $(PACKAGEDIR) -name \*.java | grep -v $(PROJECTNAME).java` - rm -rf obj + $(MAKE) -f $(TOP)/Makefile TARGET='$(TARGET)' PROJECTNAME='$(PROJECTNAME)' \ + PACKAGEDIR='$(PACKAGEDIR)' INTERFACEDIR='$(INTERFACEDIR)' android_clean |