aboutsummaryrefslogtreecommitdiff
path: root/gradle/build.gradle
AgeCommit message (Collapse)Author
2013-12-04Refactor build logic.Xavier Ducrohet
Change-Id: I303e83b8b38b114ee248c2d64022974fa3c792e0
2013-11-08Move to Proguard 4.10Xavier Ducrohet
Change-Id: I9410c371627faca9cb76df2b5306c37dc41dd2fb
2013-09-26Now it is possible to compile projects with Gradle 1.8Alex Ruiz
Fixes issue https://code.google.com/p/android/issues/detail?id=60433 Change-Id: I0db3bdee268867725ca31956559b10905c720734
2013-09-12Add way to override the local repo destination.Xavier Ducrohet
'./gradlew -PlocalRepo=/path/to/repo publishLocal' Change-Id: I8a262aafa2f559657c6cc5ed52ac1529615642db
2013-09-06Lint support.Wing Lam
Can run lint on a project and an XML and HTML file will be generated for each variant. Change-Id: Iab2649847aa7ac9dacdc40f8d88b1df43a0d84ee
2013-08-21ProGuard support for libraries.Wing Lam
Change-Id: I38069666a4cc9f84c07337f26bd6dcdb0b253548
2013-07-09Refactor model in single library.Xavier Ducrohet
Nothing in gradle-model is gradle specific (besides the test) so move all the classes in builder-model. Also add javadoc everywhere, and rename BuildConfig into BaseConfig. Change-Id: Ib1d647e8259c3ecc675bd643118174da1257df5a
2013-05-08Add builder and plugin version to apk manifest.Xavier Ducrohet
Change-Id: I2bfc7563fc5a5bbcffa8821dbbeecf598169e0f8
2013-04-29Unify all temp local repo.Xavier Ducrohet
Also stop putting all dependencies inside the builder artifact, and instead let it depend on other artifacts. Change-Id: I0f3adb2883ac9f34dc82bff420964243487e09a4
2013-04-18Proguard support.Xavier Ducrohet
Change-Id: I236458b4ae883481ff3afa9123f0167dbd270ac1
2013-04-16Use the internal plugins and the cloned artifacts.Xavier Ducrohet
Change-Id: Id5e15ea3631225132dd4df3a74cba01b39172a29
2013-04-04New module for the model.Xavier Ducrohet
This model will be shared between the plugin and the IDE. Change-Id: Ia521ed8d6f47301545679334157ea2ed8629bbb1
2013-02-07Automate testing build output on devices.Xavier Ducrohet
This is to test the plugin itself, not a feature of the plugin. 'gradlew deviceTest' is similar to 'gradlew buildTest' in that it requires an SDK through ANDROID_HOME, and then builds a set of projects. It differs in that it then pushed the project (and its test project) to a connected device and runs the test there. Note: This is even longer running that buildTest, and since it requires a device, it is not a dependence on check. This must be run separately. Change-Id: I9d211ef22a680a4fba62314e943de3fdd54e4eee
2013-01-10Custom Junit test report.Xavier Ducrohet
Duplicated the report classes from Gradle to customize them in order to show the device the test run on, or which flavor and project the test is coming from. This duplicated code is in its own source folder to separate this from AOSP code and retains the original copyright. The "test" tasks which runs all test<Flavor> tasks now also aggregate the results of the test<Flavor> tasks and is designed to run even when those fails by telling them to ignore errors if the "test" task is set to run. Added a new plugin strictly to do aggregate for the subprojects. Plugin is called 'android-reporting' It's meant to be used by the root project. It behaves similarly as the "test" class in the android project, by telling sub tasks to ignore errors. The aggregate tasks will throw an exception if the sub test tasks saw errors in order to ensure that the caller to gradle can manage errors still. Change-Id: I2c1df77cf8073fb74b4145b09aa7609d7999ef6c
2013-01-02Add crunch support to the ResourceManager.Xavier Ducrohet
This relies on a newer version of aapt that is able to do single file crunch. All crunching is done through a thread controlled by an executor. Change-Id: I578f970660f152031ed1a4f4074382fcf4d7b2b8
2012-12-21Add task on gradle plugin to run android tests on a device.Xavier Ducrohet
This is not final as the on-device errors are not properly processed. When it's final it'll get added to the check task. This also fixes some issue with installing/uninstalling due to the incremental changes that went in today. Change-Id: I280a1b8c4cfd4daae99fd68e4c93e52f9b3a9c0e
2012-12-20Prepare support for device tests.Xavier Ducrohet
This refactors the name and location of the build test, and creates a new tasks to run tests that require devices. Change-Id: Iddcfaae9c3d7a29bbb686adfe41201f3cecee78b
2012-12-13Update build files to not require some local properties.Xavier Ducrohet
No need to have a sonatype username/password or signing info anymore, the build won't fail if they are not available. Change-Id: Ic4a3ec0b68f604f9fb16ec9bf9cad4b33276f0ce
2012-12-10running integrationTest should force uploading both artifacts.Xavier Ducrohet
integrationTest was made to depend on publishLocal but that's only the one for the gradle artifact which means the builder one could be out of sync. Now, gradle:publishLocal.dependsOn builder:publishLocal making sure both will be deployed when running the test. Change-Id: I10a9955b48f181df4be3aca6d44f2e124279200b
2012-12-10Use the ResourceMerger to handle overlay.Xavier Ducrohet
This creates a merged res folder that is then fed to aapt. Right now the merged folder does not have its image crunched, nor is it incremental. This means the build will be slower (previously crunching was incremental). Next step is to change aapt to be able to crunch single images and then make the merging itself incremental. Details: The processImage task is replaced by mergeResourceTask. It is also used for library project that had to merge their resources before bundling, so the previous copy task is removed and the merge is done directly in the bundle folder. The API for AndroidBuilder is changed to reflect those changes. processResource now only takes one res folder which is meant to be the merged one. The getResourceInputs on VariantConfig is changed to return a list of ResourceSets (except not actual ResourceSet since this would load the resources, so instead a list of list of files). Also changed build.gradle for the gradle plugin to have the integration test first deploy the plugin locally in order to use the right one. Change-Id: Ide96f733be835d94518b831baee7ee77b9a61dec
2012-12-07Configure idea plugin to support integration test src folder.Xavier Ducrohet
Change-Id: I63da243d7072024b56e473e0d07a6db1b1aad754
2012-11-12Move test projects into integration-testXavier Ducrohet
This allows to run these long running tests, which also require a full SDK to be run separately from the normal unit tests. Change-Id: I2c8a359d63b15126128467223fba541ee5cf6b9d
2012-11-09Continue support for build variant API.Xavier Ducrohet
Change-Id: Iec8b33ae0410932aca14ef75f56afe8aff01efdf
2012-10-22Add some basic test of the plugin.Xavier Ducrohet
Change-Id: Ib4b00ac416a43ac0ea37b86dedabd7c012becf22
2012-10-02Add developers section to the POM.Xavier Ducrohet
Change-Id: I823aa4f89b69c467a2822ec3ac99acd9b69a281c
2012-10-01Add publishLocal while UploadArchives goes to mavenCentral.Xavier Ducrohet
Change-Id: I8ce7137aa3ae9490b84e6e37a526e0cd07fec802
2012-09-28Fix manifest merging.Xavier Ducrohet
minSdkVersion/targetSdkVersion/versionCode/versionName are now inserted into the generated/merged manifest instead of when packaging the APK. This allows proper conflict detection when merging the manifest of the library projects. Also move all testapps to not use mavenLocal due to an issue with it (failure to read resource file inside the plugin). Change-Id: I46aa9563cbc31fe45bc0f1a44ed48ae110cb376e
2012-09-28Update the build scripts to be able to upload to mavencentralXavier Ducrohet
Also renamed the artifacts. Change-Id: Ie08895f3a5347630df8ca00847437725a2a106aa
2012-09-27Prepare to upload the gradle plugin to maven.Xavier Ducrohet
Change the groupId to com.android.tools.build Create javadoc and source artifacts. Move all samples to using the local maven repo, so that the uploadArchives task can target the real Maven repo once we're ready to upload there. Create a release.gradle init script that will not use the -SNAPSHOT qualifier when building the artifacts. Change-Id: Ie17e6299ae5335535c440ab99695e6e408c1f352
2012-08-28Split android-builder out of android-gradle.Xavier Ducrohet
Both should be separate artifacts in Maven. Change-Id: I96a0d1fffb195a7542cffeab99fabad5ad243d08
2012-08-22Create a fat jar that contains the classes of the plugin and all dependencies.Adam Murdoch
Change-Id: I72c2c6a8942135cf1da809f56373e58bb3864062
2012-08-21Start integration of the builder lib in the gradle plug-inXavier Ducrohet
First step: move to the BuildType and ProductFlavor classes from the builder library. Change-Id: Ib83c590ff7dbf38774022d7539634835de9f31c0
2012-08-21Changed plugin group and package names.Adam Murdoch
Now uses package 'com.android.build.gradle' for source, and group 'com.android.build'. The packages for the test applications have not been changed, yet. Change-Id: Id55eb9ea91295c72d989844b1f1cdee1ca9b58c3
2012-08-21Separated the prototype into plugin and test apps.Adam Murdoch
The plugin implementation has moved to the gradle/ directory, and the test applications have moved under the testapps/ directory. This change means that you now have to run ./gradlew uploadArchives in the root directory to make the plugin available to the test application builds via a local repository (in repo/). See the readme.md for more details about building and using the test applications. Change-Id: Id9b268aa1d6d1a5621513fb788b2dc90ca2793e8