aboutsummaryrefslogtreecommitdiffstats
path: root/files/ant/build.xml
Commit message (Collapse)AuthorAgeFilesLines
...
* | Never add R/R$* classes to the library jar files.Xavier Ducrohet2012-02-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previous change added excluding Manifest and BuildConfig but made it so that it was only for the current app package. The problem is that project that depends on libraries also generates R classes for their libraries. If the project itself is a library then the R classes from the libraries would get in the library jar output. If the main project had some diamond dependencies in its libraries then the same R class from a library could be added twice to its dex input causing an error. Change-Id: I0ef4a3c3f84bf9099de27e275fa856b6c044978d
* | Improve "ant all clean" to clean libraries only once.Xavier Ducrohet2012-02-271-1/+2
| | | | | | | | | | | | | | | | This is done by going through the flat dependency of the main project and not having the libs look at their own dependencies. This is similar to what has been done for the regular build steps. Change-Id: I597c8f931c231c5260cc5b33965b9938fe24c01f
* | Ensure R/Manifest/BuildConfig classes are not added to the library jar file.Xavier Ducrohet2012-02-271-1/+9
|/ | | | | | | First, their are not needed there, second they can create a dx conflict if the library uses the same package as the app. Change-Id: I67b3f478d5d7ab79d02b6ece8b1eae31b8ed104e
* Fork javac on windows to prevent file locking.Xavier Ducrohet2012-02-231-1/+13
| | | | | | | | | | | | | | On Windows, when using java 1.5/1.6 running javac without fork=true can result in file locking preventing further changes to them. This changes sets fork=true in this case (win, java 1.5/1.6). More info: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6558476 Bug: 24577 Change-Id: I6477ab0615c5a535b2011f2e9f40bc8f818f67a2
* Split ProGuard file into two halvesTor Norbye2012-02-211-1/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This changeset splits the proguard.cfg into two halves: (1) All the general Android settings go into $ANDROID_SDK/proguard/proguard-android.txt. This defines shrinking rules like keep custom views, etc. The crucial point is that this information is maintained and updated by Tools updates, so whenever new APIs are added to Android, or whenever bugs are found in the configuration such as flags needed to work with Dalvik, we can make the updates - we don't have old snapshots living on in projects. (2) Any project specific settings go to proguard-project.txt in the project. (3) The proguard.config property in project.properties now refers to a *path* of configuration files, which are all passed to ProGuard in the given order. The code which processes this setting will substitute android.sdk.home and user.home variables, so the path does not have to be hardcoded to point to the project-android.txt file. The default project templates have been updated to include a commented out configuration setting up proguard as described above. The default proguard file name was changed from proguard.cfg to proguard-project.txt such that it can be directly opened in Eclipse and to make it clear it's an editable text file. Lint was updated to find the Proguard file via the proguard.config property as well as via the old and new default names for projects not enabled with ProGuard. A subsequent CL will add a lint check which identifies projects containing the old setup (full local configuration) and offer to replace it with the new setup. Change-Id: I44b4c97a160114c2382f02f843c95486a0dc9d6b
* Add post package and post build Ant hooks.Xavier Ducrohet2012-01-301-14/+18
| | | | Change-Id: I3bae567328e1ba615df478cacca72667ef3e6359
* Add coverage filters.Keita Kita2012-01-271-2/+5
| | | | | | | | | | * Add exclusion filters prevent from including generated R and BuildConfig class in coverage report. * Add emma.filter property for filtering (inclusion and exclusion) instrumentation. Change-Id: I0b6764e5f60917d004b7b3335ac060e82921c603
* Misc Ant build fixesXavier Ducrohet2011-11-231-3/+13
| | | | | | | | | | | | - project name on standard build rules - allow override out.final.file - allow passing custom javac parameters - allow note having local.properties as long as sdk.dir is present anyway - -pre-clean target allows custom clean build Bug 21023, 21267, 21465, 21525 Change-Id: I4bee2f8c15fab664b1f4ff54d754920d2487f6c7
* Add nodeps support to install/uninstall.Xavier Ducrohet2011-10-211-6/+18
| | | | Change-Id: Ia03a4c55567680a8365df8a83079c7d370747697
* Fix ant test, ant installt and ant uninstall (for test projects)Xavier Ducrohet2011-10-211-16/+30
| | | | | | Bug http://code.google.com/p/android/issues/detail?id=20979 Change-Id: Id861d493c9b73dcfc9e81bdc8fb6c8b7c8ed0e55
* Fix "ant test".Xavier Ducrohet2011-10-201-1/+1
| | | | Change-Id: If7dab5116ec0351f712aa26673c3b3d36026bb96
* Rename the modifier target only to nodeps.Xavier Ducrohet2011-10-141-6/+6
| | | | Change-Id: I26dc7be4f06758c0be7f4dbcbc358b805ba44945
* Fix NPE when building project with no code.Xavier Ducrohet2011-10-141-1/+1
| | | | | | | | The lack of dex file made the Ant package task throw an NPE. Also some minor typo fix. Change-Id: Ic617ee66017c402f211f5400baf5a00eb7e6cff5
* Improve indirect library dependency support.Xavier Ducrohet2011-10-141-5/+20
| | | | | | | | | | | | | | | | | | | | | Previously with the following setup: Main app depends on Lib1, Lib2. Lib1 and Lib2 both depends on Lib3. Lib3 would be compiled 3 times, as the main app would attempt to build it and then Libr1, and Lib2 would do it too. Of course it wasn't actually built 3 times. After the first time it would do nothing, checking dependencies and do nothing. However, for projects will a lot of libraries and a lot of indirect dependencies this could slow down a lot compilations, as the build would spend its time checking whether to build the same library many times. This ensure that only the main project attempts to build all of its library dependencies (direct and indirect), in the right order of course. When libraries are built they are told (through the "only" target) to not build their dependencies. Change-Id: Ie80f32a96e3c473d897aca5d05bf6fe9ea086884
* Add BuildConfig to ant SDK project.Xavier Ducrohet2011-10-141-29/+84
| | | | | | | | | | | | | | | The BuildConfig class contains a single boolean constant called DEBUG which is true only for debug/instrumented builds. This allows developers to create debug only code that's automatically stripped from release builds. Also fixed some issues with dependency check for other tasks, notably the aapt task that would always find new files due to not filtering out files that are ignored by aapt itself (hidden files, version control files, etc...) Change-Id: I4391a87c064a185d6b337ca46e3a9f0e43c5174d
* Improved RenderScript support in SDK build.Xavier Ducrohet2011-10-101-1/+2
| | | | | | | | - renderscript output is now in bin/res/ instead of res/ - Ant build system properly handle dependencies to only recompile files that need it. Change-Id: Ic2cd4487a26e7a7fcb0b475ee52fa0ccf8a07c0b
* Ant build didn't use -non-constant-id for libraries!Xavier Ducrohet2011-10-061-0/+1
| | | | Change-Id: I966b8796008b87dd3e6101d8c6d09271e2621c52
* Also process and cache the png files in libraries.Xavier Ducrohet2011-09-281-11/+8
| | | | | | | | | | | The png in the libraries were not processed by the crunch step. Because aapt never processes png files anymore (relying on the crunch step to do it), the png files in libraries were never processed. While this is less a problem for standard png files, this completely breaks 9-patches that must be processed to actually behaves as 9-patch. Change-Id: I0a1fe14ea34f6d36a368b456494410945afc3c44
* Make the zip align ant step check timestamp on intput/output.Xavier Ducrohet2011-09-231-13/+9
| | | | | | If the output is more recent than the input, zipalign does nothing. Change-Id: Ic1d7518a28fbb2db8895903e5cd0fd2976931b41
* Add dependency support for ApkBuilder ant step.Xavier Ducrohet2011-09-231-12/+19
| | | | Change-Id: I7230a2aa3df5fab8b420f1ed2f359621fbda7f5a
* Pass -target-api to the renderscript compiler.Xavier Ducrohet2011-09-151-6/+7
| | | | | | | This allows to use a single llvm executable to target all API versions. Change-Id: Ib27f7fc9e54c548d31fc98fc323f439cb99218d5
* Make the dependency graph use extension restrictions per folder.Xavier Ducrohet2011-09-011-2/+1
| | | | | | | | | | | | | | | | Before there was a way to filter touched file by extension(s) but this was for all input folders. Now each input folder can have a different set of extension restrictions. This will allow apkbuilder to use DependencyGraph and extension restriction for all its input folders. Also fixed an issue where aapt would not package the resources if an xml files was touched. This is because it didn't make a difference between compiling the resources for IDs and packaging the resource values. Change-Id: I797d3a24c6c1f999e9d412c4ff8aa826ed16fc09
* Add proper dependency support in the dex step of the Ant-based build.Xavier Ducrohet2011-09-011-18/+14
| | | | | | | | | | The dex step now generates a dependency file that is reused during following builds to check whether dex should occur. Also optimized the part that figures out if any dependencies have been modified/have gone missing. Change-Id: I7f6e915fc7b571ad973260daa506badced3a9c2a
* Add support for proper dependency detection in the aidl ant compilation step.Xavier Ducrohet2011-09-011-4/+7
| | | | | | | | | | Aidl compilation now generates dependency files that are reused on further compilations to only recompile files that needs it based on source files modifications. Also clean up output (and dependency) files when a source file is deleted. Change-Id: I3131463fd7939ffc4b5bbdfa49940e03f0249a28
* Prevent running debug and release targets at the same time.Xavier Ducrohet2011-08-231-12/+26
| | | | | | | This is not possible since they rely on the same properties which cannot be updated after they are set. Change-Id: I2fbc0f53b656f5906c2b026d8fd41d78a4461803
* Renable test coverage from Ant.Xavier Ducrohet2011-08-221-31/+44
| | | | | | | | Added a warning regarding the requirement of a rooted device. Also made it so that the test can be run without having to build and install the packages with just "ant emma test" Change-Id: Id643b5f56585954b91c9c85c3eb33c4ef31c196a
* Don't regenerate R.java if a non xml resource is modified.Xavier Ducrohet2011-08-181-1/+2
| | | | Change-Id: Ie28359234cbb56e14c42274434831e4795bf3ee3
* Rename main_rules.xml to build.xmlXavier Ducrohet2011-08-171-0/+1204
This is the final name. I kept main_rules to make the previous review easier. Change-Id: I3dfcd36a49f2893665e712ed9391acb4486d713e