aboutsummaryrefslogtreecommitdiff
path: root/Examples
diff options
context:
space:
mode:
authorWilliam S Fulton <wsf@fultondesigns.co.uk>2013-04-17 18:50:38 +0100
committerWilliam S Fulton <wsf@fultondesigns.co.uk>2013-04-19 22:47:27 +0100
commit1d77a1b9818c791c64cad35b739917b8dd08b329 (patch)
tree288868192ff961e0bc9c0bc9be45d4eb4cf94de5 /Examples
parent19975300c70a3e5d62507daf8882066dd5195f45 (diff)
downloadswig-1d77a1b9818c791c64cad35b739917b8dd08b329.tar.gz
Android makefiles rewrite to use common code
Diffstat (limited to 'Examples')
-rw-r--r--Examples/Makefile.in46
-rw-r--r--Examples/android/class/Makefile22
-rw-r--r--Examples/android/extend/Makefile22
-rw-r--r--Examples/android/simple/Makefile22
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