diff --git a/projects/mtg/Android/AndroidManifest.xml b/projects/mtg/Android/AndroidManifest.xml index 85c688061..46917afe6 100644 --- a/projects/mtg/Android/AndroidManifest.xml +++ b/projects/mtg/Android/AndroidManifest.xml @@ -1,24 +1,18 @@ - - - + + + - - + + - - + + - + - + diff --git a/projects/mtg/build.number.properties b/projects/mtg/build.number.properties new file mode 100644 index 000000000..f576f2225 --- /dev/null +++ b/projects/mtg/build.number.properties @@ -0,0 +1,3 @@ +build.major = 0 +build.minor = 18 +build.point = 4 diff --git a/projects/mtg/build.properties b/projects/mtg/build.properties new file mode 100644 index 000000000..1873b1e75 --- /dev/null +++ b/projects/mtg/build.properties @@ -0,0 +1 @@ +groovy.dir=tools/build/lib diff --git a/projects/mtg/build.xml b/projects/mtg/build.xml new file mode 100644 index 000000000..dddf97f4b --- /dev/null +++ b/projects/mtg/build.xml @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +/* +This file was auto-generated by ant build script on ${TODAY} +*/ + +#ifndef wagic_Wagic_Version_h +#define wagic_Wagic_Version_h + +/* Wagic versions */ +#define WAGIC_VERSION_MAJOR ${build.major} +#define WAGIC_VERSION_MEDIUM ${build.minor} +#define WAGIC_VERSION_MINOR ${build.point} + +#define VERSION_DOT(a, b, c) a ##.## b ##.## c +#define VERSION_WITHOUT_DOT(a, b, c) a ## b ## c +#define VERSION_GAME(a, b, c) VERSION_DOT(a, b, c) +#define VERSION_FILE(a, b, c) VERSION_WITHOUT_DOT(a, b, c) +#define VERSION_TOSTRING(a) #a +#define VERSION_STRINGIFY(a) VERSION_TOSTRING(a) + +#define WAGIC_VERSION VERSION_GAME(WAGIC_VERSION_MAJOR, WAGIC_VERSION_MEDIUM, WAGIC_VERSION_MINOR) +#define WAGIC_RESOURCE_VERSION VERSION_FILE(WAGIC_VERSION_MAJOR, WAGIC_VERSION_MEDIUM, WAGIC_VERSION_MINOR) +#define WAGIC_VERSION_STRING VERSION_STRINGIFY(WAGIC_VERSION) +#define WAGIC_CORE_VERSION_STRING "core_" VERSION_STRINGIFY(WAGIC_RESOURCE_VERSION) +#define WAGIC_RESOURCE_NAME WAGIC_CORE_VERSION_STRING ".zip" + +#endif + + + + + + + + + diff --git a/projects/mtg/include/Wagic_Version.h b/projects/mtg/include/Wagic_Version.h index 3d0b8a050..0482f57c1 100644 --- a/projects/mtg/include/Wagic_Version.h +++ b/projects/mtg/include/Wagic_Version.h @@ -1,15 +1,11 @@ -// -// Wagic_Version.h -// wagic -// -// Created by Michael Nguyen on 2/5/12. -// Copyright (c) 2012 __MyCompanyName__. All rights reserved. -// + +/* +This file was auto-generated by ant build script on Thu, 19-Apr-2012 00::00:30 +*/ #ifndef wagic_Wagic_Version_h #define wagic_Wagic_Version_h - /* Wagic versions */ #define WAGIC_VERSION_MAJOR 0 #define WAGIC_VERSION_MEDIUM 18 @@ -28,5 +24,6 @@ #define WAGIC_CORE_VERSION_STRING "core_" VERSION_STRINGIFY(WAGIC_RESOURCE_VERSION) #define WAGIC_RESOURCE_NAME WAGIC_CORE_VERSION_STRING ".zip" - #endif + + \ No newline at end of file diff --git a/projects/mtg/tools/build/lib/groovy-all-1.8.6.jar b/projects/mtg/tools/build/lib/groovy-all-1.8.6.jar new file mode 100644 index 000000000..03c02efae Binary files /dev/null and b/projects/mtg/tools/build/lib/groovy-all-1.8.6.jar differ diff --git a/projects/mtg/updateAndroidManifest.groovy b/projects/mtg/updateAndroidManifest.groovy new file mode 100644 index 000000000..faa08a747 --- /dev/null +++ b/projects/mtg/updateAndroidManifest.groovy @@ -0,0 +1,49 @@ +import org.w3c.dom.*; +import javax.xml.parsers.*; +import java.io.*; +import javax.xml.transform.*; +import javax.xml.transform.dom.DOMSource; +import javax.xml.transform.stream.StreamResult; + +String android_manifest_filename=args[0]; +File fXmlFile = new File(android_manifest_filename); +DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance(); +DocumentBuilder dBuilder = dbFactory.newDocumentBuilder(); +Document doc = dBuilder.parse(fXmlFile); + +Element rootNode=doc.getDocumentElement(); + +/* + package="net.wagic.app" + android:versionCode="184" + android:versionName="0.18.4" +*/ + + +def props = new Properties(); +new File("build.number.properties").withInputStream { + stream -> props.load(stream) +} +// accessing the property from Properties object using Groovy's map notation +println "capacity.created=" + props["build.major"] + +def config = new ConfigSlurper().parse(props) +// accessing the property from ConfigSlurper object using GPath expression + + +String major_version=props["build.major"]; +String minor_version=props["build.minor"]; +String point_version=props["build.point"]; + +DOMSource source = new DOMSource(doc); + +rootNode.setAttribute("android:versionName", major_version + "." + minor_version + "." + point_version); +rootNode.setAttribute("android:versionCode", major_version + minor_version + point_version); +File outputFile = new File(android_manifest_filename ); +TransformerFactory tFactory = TransformerFactory.newInstance(); +Transformer transformer = tFactory.newTransformer(); + +transformer.setOutputProperty("indent", "yes"); + +StreamResult result = new StreamResult(new FileOutputStream(outputFile) ); +transformer.transform(source, result);