Bug: 6987838
- With this change, use "EMMA_INSTRUMENT=true" to enable emma in full or
unbundled build.
- You don't need to add "LOCAL_STATIC_JAVA_LIBRARIES += emma" any more for
unbundled apps.
- Now a single var LOCAL_EMMA_INSTRUMENT replaces the previous
LOCAL_NO_EMMA_INSTRUMENT and LOCAL_NO_EMMA_COMPILE.
- By default, if EMMA_INSTRUMENT is true, emma is enabled for only
non-test apps.
- A new global var EMMA_INSTRUMENT_STATIC. It enables EMMA_INSTRUMENT
and builds emma into apk/jar as static library, instead of using emma
as part of shared library core.jar.
Change-Id: I0aa219e83074879ececc159b5b07c39eb07ccc00
Based on existing setup, when EMMA_INSTRUMENT is used on a full
build, all Java modules will be processed with emma instrument
unless otherwise marked in their own Makefiles.
For the purpose of collecting code coverage, emma-instrument
all Java modules aren't that useful, instead, instrumenting all
the app packages is more useful. This change adds a new flag
EMMA_FULL_APP_INSTRUMENT, which can be used with a full build
to instrument all app packages.
Change-Id: Ie143fed49c23402b21f6cccac2ef25741726be45
Set "LOCAL_SOURCE_FILES_ALL_GENERATED := true" if you want to build a
Java library from only generated source files, without any static
source files. Previously this is not allowed.
This is needed by building api stub libraries, which have only source
files of generated stub files.
Bug: 6814443
Change-Id: Idb2ae9c71a473b796154a03ef07a3403461c4f3c
- three levels: not defined, sdk, platform
- TARGET_BUILD_PDK_JAVA_PLATFORM gives the original meaning of java platform API
supported for java.mk
- remove libexif from user tag
- libexif_jni is pulled from f/b/media
Bug: 6623618
Change-Id: I5fa085bd10f43963350c57b7f885c700de8963e5
- make platform-java will add necessary Java stuffs from out/target/common/
to platform.zip
- make platform works as before: no Java libraries
- normal fusion build will pick up the file, and define TARGET_BUILD_PDK_JAVA
besides TARGET_BUILD_PDK if Java stuffs are included
- For TARGET_BUILD_PDK_JAVA, java.mk does not touch LOCAL_SDK_VERSION, which will lead into
pulling non-SDK Java APIs
Bug: 6482799
Change-Id: I90b1a0b06dc774150711680a6612f2b97b9eab3f
Bug: 6465084
With this change and prebuilt current SDK checked in, you can build
unbundled apps with LOCAL_SDK_VERSION current in an unbundled branch.
Change-Id: I4efcee611d08a3a903bd6bf5a80de11500564206
This is part of the multi-project commit to move the filter-framework
from system/media/mca to frameworks/base/media/mca.
Note that the filter-framework will soon be replaced with a refactored
version currently under API review (also to go under frameworks/base).
This move is done now to unblock the PDK efforts.
Change-Id: I3d12882239e0bb66e11d3fb5ec952cc474be4f0a
Bug: 5448433
Instead of deferring the removal to building the app.
In that case any R/Manifest classes in any static Java libraries will be
deleted, no matter if they are generated from Android resource, or just
source R.java/Manifest.java in the source tree by accident.
Change-Id: I656f45e3cbc3796c5d4832363231480b3f1dc5b8
BUG=5206223
This allows us to set the RS API level independent of the other SDK
versions that a developer might choose.
Change-Id: Id8b476abcbbbdaa86e04ba0ea16414cb2fa5bd15
Since classes from this jar are part of the public API, it should be
included by default.
Also add the jar into the dex_preopt list.
Bug: 5098987
Change-Id: Ib39deffea43714eb56630ad1d65411cfde5878fd
Acp can not handle high resolution file timestamp on ext4.
We need this to fix incremental build on ext4.
Change-Id: I54e45c73ffa44c4253c7a431375d419fa4dccfd9
Merge commit 'b7019e2147173a962febeab0e0693cdec9f80789'
* commit 'b7019e2147173a962febeab0e0693cdec9f80789':
Any intermediate targets between Progaurd and the built_dex should be differently named.
Change-Id: Ifb01b1fcf24ba0c5b98aa02dd604cd81918e1841
To do that, we have to move classes.jar step before proguard, so classes.jar is always with the full names.
Merge commit '3c3bf6773ac7e2324c1d06282c625b81f799e427'
* commit '3c3bf6773ac7e2324c1d06282c625b81f799e427':
Separate out Proguard flag files to fix dependency.
With this change, in a user build the dependency looks like:
package.apk -> progaurd.classes.dex -> ... -> proguard.classes.jar
While in an eng build:
package.apk -> noproguard.classes.dex -> ... -> noproguard.classes.jar
Because package.apk is product-specific and removed when switching between
user and eng builds, it can always be built with the correct and up-to-date .dex file.
Bug: 3022484
Change-Id: I3a732cb3e256f193088c294dc4a0573188283cb2
With this change, you can add your .rs files to LOCAL_SRC_FILES.
The .rs files will be compiled by slang and the output .java files
will be compiled into the jar, while the generated .bc files will
be put into the final apk as raw resources.
Change-Id: Icde3d6139951d6d039b4b37376e72e1fc5c8b0d4
JarJar, like DX, can't handle the local var corruption that Emma
performs. To fix this, I'm moving the JarJar step before the Emma
step.
Couple other minor changes:
* Improved the comment about emma hardcoding its output filename,
since this took me about an hour to track down.
* Changed one line from "Copying $<" to "Copying $@". It seems to be
the convention that such lines print the destination, not the
source, so I made it consistent.
Change-Id: I9f5c36b4f5af15daf15025b89860e942f15bb668
Merging from master because I'm bringing my maps API work into
gingerbread.
Fix and enable JarJar in Java builds.
java.mk contained a target to enable JarJar in Java builds, but it was
being bypassed. This change enabled JarJar as part of the build
process, and fixes a slight bug with the way it was set up.
Change-Id: I814e64eb30b41bf249a63d683c03040e2658fe0d
commit 7401608f3b9b52b3348e32ec9fefe7583d6c2fa4
Author: Guang Zhu <guangzhu@google.com>
Date: Fri Apr 23 11:54:37 2010 -0700
collect emm meta files for emma instrumented build
when doing 'make dist', with EMMA_INSTRUMENT on the coverage.em files
generated for each module will be collected into one emma_meta.zip file
Change-Id: I382c39a97005e6cae5c79ad7eaef1c8857f658af
commit 8376d70938f6507d54b66fe5832a637aa883974e
Author: Guang Zhu <guangzhu@google.com>
Date: Wed Mar 10 15:48:03 2010 -0800
enhancement for building app with emma code coverage
* global filter to avoid applying instrumentation on emma classes
* remove local variable information at dex step instead of compile time
Change-Id: If04c27bc717f34816077a98ead9ceb0dbcbb0d2f
Change-Id: I971bd0f291bede2568b21347247d37a7d035c661
java.mk contained a target to enable JarJar in Java builds, but it was
being bypassed. This change enabled JarJar as part of the build
process, and fixes a slight bug with the way it was set up.
Change-Id: If24113f399a168939a1a1d0738c5df57caf8d05f
Also extending the arbitrary limit on build argument sizes,
which I ran up against in building after this change.
Change-Id: Iba79a37b27e7d5efa2b02a99aa253a2eec7ede75
* global filter to avoid applying instrumentation on emma classes
* remove local variable information at dex step instead of compile time
Change-Id: If04c27bc717f34816077a98ead9ceb0dbcbb0d2f
The Dalvik core libraries team would like to start making warnings
errors in certain packages by definition LOCAL_JAVACFLAGS. This will
allow easier debuging of warnings in other packages by supplying
"-Xlint:..." options.
1. Dedup LOCAL_JAVA_LIBRARIES.
2. Even no resource or asset for a package, we still need to set
package_expected_intermediates_COMMON, which is anyway used by ProGuard.
Now, by default, instead of fully building everything,
we skip dexing the modules that aren't going to be included
in the current build.
This will slow down some of the incremental builds (like tests),
but it improves the regular eng build from 27.5 minutes on my
Mac Pro to 25 minutes. That's not as much of an improvement
as I had hoped for, but it's still better.
There is also a change in here that puts the java-source-list
file which is used to get around limited command line lengths
in the proper directory. Before this change, it was an
accident that the directory for that file existed!
Original change by joeo@abreu on 2009/04/06 19:54:13.
Implement SDK add-ons in the build system.
- Add an option to use the standard javadoc doclet instead
of droiddoc, since droiddocs non-sdk templates aren't
ready for prime time.
- Add the notion of a stubs for a library. It's only
implemented for java libraries, but when we do native
libraries in the NDK or sdk-addons, it will work there too.
Original author: joeo
Merged from: //branches/cupcake/...
Automated import of CL 145618