From ca95cb9a43d594979213a54c90662ac4f3e384b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dominik=20Sch=C3=BCrmann?= Date: Thu, 16 Jan 2014 22:33:11 +0100 Subject: [PATCH] Update gradle build files to 0.7.3 android plugin, add Gradle 1.9 wrapper, add information about build to readme --- OpenPGP-Keychain/build.gradle | 11 ++++++----- OpenPGP-Keychain/res/values/strings.xml | 2 +- README.md | 17 +++++++++++++++++ build.gradle | 4 ++-- gradle/wrapper/gradle-wrapper.jar | Bin 50514 -> 50508 bytes gradle/wrapper/gradle-wrapper.properties | 4 ++-- libraries/ActionBarSherlock/build.gradle | 5 +++++ libraries/HtmlTextView/build.gradle | 14 +++++--------- 8 files changed, 38 insertions(+), 19 deletions(-) diff --git a/OpenPGP-Keychain/build.gradle b/OpenPGP-Keychain/build.gradle index 566559a00..852bfef38 100644 --- a/OpenPGP-Keychain/build.gradle +++ b/OpenPGP-Keychain/build.gradle @@ -4,8 +4,7 @@ buildscript { } dependencies { - // NOTE: Avoid using dynamic versions (+). This breaks offline builds! - classpath 'com.android.tools.build:gradle:0.6.3' + classpath 'com.android.tools.build:gradle:0.7.3' } } @@ -15,9 +14,6 @@ repositories { mavenCentral() } -/* - * NOTE: Avoid dependencies from Maven. Include as much sources as possible for F-Droid! - */ dependencies { compile fileTree(dir: 'libs', includes: ['*.jar'], excludes: ['android-support-v4.jar']) compile 'com.android.support:support-v4:19.0.+' // already in actionbarsherlock @@ -79,4 +75,9 @@ android { } else { buildTypes.release.signingConfig = null } + + // Do not abort build if lint finds errors + lintOptions { + abortOnError false + } } diff --git a/OpenPGP-Keychain/res/values/strings.xml b/OpenPGP-Keychain/res/values/strings.xml index ab2c638fe..190dcfa53 100644 --- a/OpenPGP-Keychain/res/values/strings.xml +++ b/OpenPGP-Keychain/res/values/strings.xml @@ -333,7 +333,7 @@ QR Code malformed! Please try again! QR Code scanning finished! Scan QR Code with \'Barcode Scanner\' - To exchange keys via NFC, the device needs to be unlocked. + To receive keys via NFC, the device needs to be unlocked. Help Get key from clipboard diff --git a/README.md b/README.md index 1e7cea335..6193a301a 100644 --- a/README.md +++ b/README.md @@ -105,6 +105,8 @@ TODO # Libraries + + ## ZXing Barcode Scanner Android Integration Classes can be found under "libraries/zxing-android-integration/". @@ -151,6 +153,21 @@ See http://docs.oseems.com/general/application/eclipse/fix-gc-overhead-limit-exc 1. Open svg file in Inkscape 2. Extensions -> Color -> darker (2 times!) +## Gradle Build System + +We try to make our builds as [reproducible/deterministic](https://blog.torproject.org/blog/deterministic-builds-part-one-cyberwar-and-global-compromise) as possible. +This is also a key requirement to be part of F-Droid. +When changing build files or dependencies, respect the following requirements: +- No precompiled libraries. All libraries should be provided as sourcecode in "libraries" folder +- No dependencies from Maven +- Always use a fixed Android Gradle plugin version not a dynamic one, e.g. ``0.7.3`` instead of ``0.7.+`` +- Commit the corresponding gradle wrapper version to the repository + +TODO: +[ ] include support lib as source +[ ] include Spongy Castle as source +[ ] resolve lint errors (currently abortOnError is false in some build.gradle files of main project and libraries) + # Coding Style ## Code diff --git a/build.gradle b/build.gradle index 06c57cd0b..5d9739785 100644 --- a/build.gradle +++ b/build.gradle @@ -4,7 +4,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:0.6.3' + classpath 'com.android.tools.build:gradle:0.7.3' } } @@ -15,5 +15,5 @@ allprojects { } task wrapper(type: Wrapper) { - gradleVersion = '1.8' + gradleVersion = '1.9' } diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index 667288ad6c2b3b87c990ece1267e56f0bcbf3622..d5c591c9c532da774b062aa6d7ab16405ff8700a 100644 GIT binary patch delta 1769 zcmZ8g4N#MH7=QN;7$2KLoFonfgoMguO(^9btoU=4_&A<~DK8jyM*cScy$NtXTJ=P&cdd-vY&d7qEp^ZAaJu`iXe zc}XI+jUz?b+f&!#3Y5Hc_81~|&$s$3L!_>^@BDg)rk=QrVV6d4HUnmVfIkHcAV1b5 zgK8)GAPtIRHdCOG*(Te8U~)PO7Ip42fh}n2UDG)rJX-bqau8m4j!R6T0mmId)4y5h z1j0h3l<d z0X#kS{8=7-Y7l!mqx=-_;;vki!1?;Dv~1;jo2tUzG)w9RN59zbZJvr$JmVgGZF))? z>zaFeb?k_2PwjAe;jZ{02jk86+nkln6)i61qTvUFcE*~bY~Dmcd42aQQI)6aKZ#zK zvDH&Mdg4Yw+rYbdVV)n&YODPHI`%c2qXH`nk8b!uSBkF?O{1cj5bi8#abZm7tM3!Ve9Z(A z#!ho=U9cqreQH=?pef4BmZH|9{30JTlgCwi)(;TB>4rHX+-N#N$TQD|+d#U8uSSSQ z-kL;w%fc6&>0aGs=0K9l10g$iT4R}bm3-GEg9Wbb42jB-CBBJjgcA-8QzE9{= z04MZ>N6?uK-_@P*OYV5KGt!fpmgQbq6txmJxcI0Psc2`HA2SzpsEf~%qMEKX@TKqK z)5j&~q0t@nN>(8U1J{co5@x<$*@UB~@$0|Hf>EU~q#}jMrz(wuG7Vgy$TjfkvuTVL zwHo{&yh5@uT#2`K3~w#WD*Q|aICdMk=u^E@gjqFR;t@;(%^a9j}{D$K*UtYKM}$J)lC)q{%diljUNb ztyT#S$iP`GTVvrE#~fehK^^$|EOmT;)t7q)7v03Bs7+QJV!0*ZXL1({Pi+sM-cf|+ z>eiyMo~K}V_pqv`7)=z1GP8#z#<%pk$Kuj#@bH)`U3^pugz|e+Ak5s$r?-{hiu}oCukG~apO{mysKJ@@nt zonS{!ur8{2)?oocj*jS)gb$4_D;x=Y^l0LH52GS^;hpKb(+uKEF8H#Xaxf6!X($Ic zK=2EP7ANKq14NO-Js@(0TSXA`In~07CC@cf2u#hw9byRnUAoc@f>puJbSX+!vH+NY zHF75iUTjFFKHK6&)Muyikl2MQ_TZY}=q(7L&3I~C>>|fat5l)#Eul?TdE{leT$Nwo z;))}ZWG>-EnsWH5e27S;I6ui(KbY6&Bk6jwGD%X({$+^YS6-)G`b;BOrr00~5$*VU z?o4jpAK!ImPAsl?Y>g8Sm@5lyiv6zcO}A}J?KWM}eN#p3w{EveX1y|Mcb&gc^y!^x z(n7EK?_!gvs{1&Qyu`(teIn6xkj8+hsPKh zgo=bXCOrV#?9O;um&C%Po?}2*orVPvM5cQ=LXed04_=m|xe6Mz=bMGFw7cL16{jBF zD+Xpre}gjBhB|7fEWYFpOE1f3DD$W34z1-?Tb$oz2ZVf`@ow4a_w8&fNv{l$4nUc03t*8gp7J)j9@4fI-jB5<0p4z-KEdr7@P4{I;jO8E(7wT& zyVLpM79g~Qobdn0Y|!9@jsPvE;W*Moc-&qiLK5^aMyp0>-+?Sy)`8u+oJ?6p&K{X6 zUcfA3>BoUfKK^JX?HEv^p})?Do!;qQ0=um0mNF>?gj&m~;7st5T{a0qD|ox8@mJlep_0;=)j3DW zojI`xt>tO@^>|z#g`<1umYaLX;S5koSx*@FYf9?X+3pApkzVuti23U* kBUEP-*bVoufKuka6vWD#XQ#5_EUPb$9FT~9v~nx|0h*^-6#xJL diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index f984ebc0a..c9e50d492 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Mon Dec 30 23:22:47 CET 2013 +#Thu Jan 16 22:16:02 CET 2014 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=http\://services.gradle.org/distributions/gradle-1.8-bin.zip +distributionUrl=http\://services.gradle.org/distributions/gradle-1.9-bin.zip diff --git a/libraries/ActionBarSherlock/build.gradle b/libraries/ActionBarSherlock/build.gradle index e25786733..1fed282d9 100644 --- a/libraries/ActionBarSherlock/build.gradle +++ b/libraries/ActionBarSherlock/build.gradle @@ -15,4 +15,9 @@ android { res.srcDirs = ['res'] } } + + // Do not abort build if lint finds errors + lintOptions { + abortOnError false + } } diff --git a/libraries/HtmlTextView/build.gradle b/libraries/HtmlTextView/build.gradle index 1fd554404..8c59e4b55 100644 --- a/libraries/HtmlTextView/build.gradle +++ b/libraries/HtmlTextView/build.gradle @@ -1,12 +1,3 @@ -buildscript { - repositories { - mavenCentral() - } - dependencies { - classpath 'com.android.tools.build:gradle:0.6.3' - } -} - apply plugin: 'android-library' @@ -21,4 +12,9 @@ android { res.srcDirs = ['res'] } } + + // Do not abort build if lint finds errors + lintOptions { + abortOnError false + } }