From 9a3c86a521f12fef3699f34d28d2f5e75145f622 Mon Sep 17 00:00:00 2001 From: Bananeweizen Date: Sun, 7 Jul 2013 18:33:43 +0200 Subject: refactoring: make calendar build with Ant --- cgeo-calendar/ant.properties | 5 +- cgeo-calendar/build.xml | 98 ++++++++++++++++++++++++++++++++++++-- cgeo-calendar/proguard-project.txt | 32 +++++++++++++ cgeo-calendar/proguard.cfg | 48 ------------------- cgeo-calendar/project.properties | 3 ++ 5 files changed, 132 insertions(+), 54 deletions(-) create mode 100644 cgeo-calendar/proguard-project.txt delete mode 100644 cgeo-calendar/proguard.cfg (limited to 'cgeo-calendar') diff --git a/cgeo-calendar/ant.properties b/cgeo-calendar/ant.properties index 2537ef3..9d4723d 100644 --- a/cgeo-calendar/ant.properties +++ b/cgeo-calendar/ant.properties @@ -15,9 +15,12 @@ # 'key.alias' for the name of the key to use. # The password will be asked during the build when you use the 'release' target. -proguard.config=proguard.cfg proguard.jar=../main/support/proguard.jar +#jar.libs.dir=../main/libs +#external.libs.dir=../main/libs +#source.dir=src;../main/src + # The following line is needed to resolve the dependency to cgeo.calendar.ICalendar in the main project extensible.classpath=../main/bin/classes diff --git a/cgeo-calendar/build.xml b/cgeo-calendar/build.xml index a4c8db4..b7aecaa 100644 --- a/cgeo-calendar/build.xml +++ b/cgeo-calendar/build.xml @@ -4,7 +4,7 @@ - + - + @@ -46,11 +46,10 @@ - @@ -68,6 +67,95 @@ --> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Instrumenting classes from ${out.absolute.dir}/classes... + + + + + + + + + + + + + + + + + + + + + Creating library output jar file... + + + + + + + Custom jar packaging exclusion: ${android.package.excludes} + + + + + + + + + + + + + + + - + diff --git a/cgeo-calendar/proguard-project.txt b/cgeo-calendar/proguard-project.txt new file mode 100644 index 0000000..453d1a6 --- /dev/null +++ b/cgeo-calendar/proguard-project.txt @@ -0,0 +1,32 @@ +# We use the general android proguard config. See project.properties for details. + +# Suppress notes about classes from the general config, which we don't use at all. +-dontnote **.ILicensingService + +-optimizationpasses 2 +-dontobfuscate +-allowaccessmodification +-optimizations !code/simplification/arithmetic,!code/allocation/variable + +# apache.commons.collections has some bean related collections, which are undefined in Android +-dontwarn java.beans.* + +#-dontnote org.apache.commons.logging.** + +-keep public class cgeo.geocaching.* +-dontwarn cgeo.geocaching.utils.Log + +-keepclasseswithmembers class * { + public (android.content.Context, android.util.AttributeSet); +} + +-keepclasseswithmembers class * { + public (android.content.Context, android.util.AttributeSet, int); +} + +-keep public class * extends android.view.View { + public (android.content.Context); + public (android.content.Context, android.util.AttributeSet); + public (android.content.Context, android.util.AttributeSet, int); + public void set*(...); +} \ No newline at end of file diff --git a/cgeo-calendar/proguard.cfg b/cgeo-calendar/proguard.cfg deleted file mode 100644 index a6b8658..0000000 --- a/cgeo-calendar/proguard.cfg +++ /dev/null @@ -1,48 +0,0 @@ --optimizationpasses 2 --dontpreverify --dontobfuscate --allowaccessmodification --optimizations !code/simplification/arithmetic,!code/allocation/variable - --dontwarn java.beans.* --dontwarn org.mapsforge.android.maps.Test* --dontwarn android.support.v4.** - --keep public class * extends android.app.Activity --keep public class * extends android.app.Application --keep public class * extends android.app.Service --keep public class * extends android.content.BroadcastReceiver --keep public class * extends android.content.ContentProvider --keep public class cgeo.geocaching.* - --keepclasseswithmembers class * { - public (android.content.Context, android.util.AttributeSet); -} - --keepclasseswithmembers class * { - public (android.content.Context, android.util.AttributeSet, int); -} - --keepclassmembers enum * { - public static **[] values(); - public static ** valueOf(java.lang.String); -} - --keep class * implements android.os.Parcelable { - public static final android.os.Parcelable$Creator *; -} - --keepclassmembers class **.R$* { - public static ; -} - --keepclassmembers class cgeo.geocaching.** { - public void *(android.view.View); -} - --keep public class * extends android.view.View { - public (android.content.Context); - public (android.content.Context, android.util.AttributeSet); - public (android.content.Context, android.util.AttributeSet, int); - public void set*(...); -} \ No newline at end of file diff --git a/cgeo-calendar/project.properties b/cgeo-calendar/project.properties index b120021..54e1b7d 100644 --- a/cgeo-calendar/project.properties +++ b/cgeo-calendar/project.properties @@ -6,6 +6,9 @@ # To customize properties used by the Ant build system use, # "ant.properties", and override values to adapt the script to your # project structure. +# +# To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home): +proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt # Project target. target=Google Inc.:Google APIs:4 -- cgit v1.1