summaryrefslogtreecommitdiffstats
path: root/core/static_java_library.mk
Commit message (Collapse)AuthorAgeFilesLines
* build: Fix manual invocation of aar targets.Adnan Begovic2016-05-021-2/+2
| | | | | Change-Id: Ic5a4980d1d45df24f6242e31fdfd86543f56e19c TICKET: RM-232
* build: Make sure to check for variable definition during execution.Adnan Begovic2016-05-021-3/+3
| | | | | TICKET: RM-232 Change-Id: Ic5b3850a81b959b05a218cd967dcec71c15a4cd5
* build: allow to set a consumer proguard fileJorge Ruesga2016-04-291-0/+4
| | | | | | | | | This allow to specify a proguard file by defining LOCAL_CONSUMER_PROGUARD_FILE that will inserted in the root directory of the aar and to be consumed by another apk via gradle plugin Change-Id: Ia3c11e5ea8e694800fb262b835432f86a6777f86 Signed-off-by: Jorge Ruesga <jorge@ruesga.com>
* build-with-colors: moar colorsChirayu Desai2015-10-061-1/+1
| | | | | | | | | | | | | | | | - rename CL_PFX and CL_INS to better match the colors they show. - add more colors. Output of: - most host stuff is yellow - most target stuff is green - installing/copying files is cyan - import/export includes and notice files is cyan - bootimage/recoveryimage is cyan - and some more colors in many places ;) Change-Id: I5532afa4ba608e0a7c408516dc9f912f9ca389f7
* Change built module of static java librariesYohann Roussel2015-02-181-0/+4
| | | | | | | | | Set LOCAL_BUILT_MODULE of static java libraries when Jack is enabled to classes.jack instead of javalib.jar. This allows that running mm in those libraries will build classes.jack instead of the jar. Change-Id: I96b4b227848e971df96331b3f0cc731e856be349
* Engage Jack incremental on demandYohann Roussel2015-02-041-4/+4
| | | | | | | | | | | Each module may engage Jack incremental with LOCAL_JACK_ENABLED := incremental Include renaming of LOCAL_USE_JACK to LOCAL_JACK_ENABLED that is now accepting 3 values "disabled", "full" and "incremental". Change-Id: Icbff275b397bee36b29312e821f3e8d45f83fbcc
* Running jarjar on Java resources.Ying Wang2015-01-211-2/+2
| | | | | | | | | | | | | | | | | | | | | | Before this change, Java resources are added as a separate step (add-java-resources-to-package) after dex is run, so jarjar isn't run on the resource files. With this change, we add Java resources immediately after we call javac, so jarjar is run on the resource files (the module's own resource, as well as resources carried by static Java libraries). When we generate the final apk/jar, we use the jarjar'ed jar as the inital pacakge file, with class files and empty folders removed. When jack is enabled, in jack-java-to-dex we add the Java resources to a temp jar using the PRIVATE_EXTRA_JAR_ARGS, and extrac the files in a temp dir. Jack will process the resource files and output the result to PRIVATE_JACK_INTERMEDIATES_DIR. When we package the final apk/jar, we need to call add-carried-jack-resources to readd the resources. (TODO: if jack can output all resources to a jar/zip file, we can use that file as the initial package file as well.) Bug: 18837479 Change-Id: I8d7296e30ec8d005054cf04c4f2aed6d7a0d823b
* Revert "Running jarjar on Java resources."Narayan Kamath2015-01-211-2/+2
| | | | | | | | This reverts commit 140274707e31c9585aa28b0de2f1418c64ecd272. Breaks the build on uiautomator_compat. Change-Id: I6d14f39e3432bf5e691027bbb8e7260e4bec8e8d
* Running jarjar on Java resources.Ying Wang2015-01-201-2/+2
| | | | | | | | | | | | | | | | | | | | | | Before this change, Java resources are added as a separate step (add-java-resources-to-package) after dex is run, so jarjar isn't run on the resource files. With this change, we add Java resources immediately after we call javac, so jarjar is run on the resource files (the module's own resource, as well as resources carried by static Java libraries). When we generate the final apk/jar, we use the jarjar'ed jar as the inital pacakge file, with class files and empty folders removed. When jack is enabled, in jack-java-to-dex we add the Java resources to a temp jar using the PRIVATE_EXTRA_JAR_ARGS, and extrac the files in a temp dir. Jack will process the resource files and output the result to PRIVATE_JACK_INTERMEDIATES_DIR. When we package the final apk/jar, we need to call add-carried-jack-resources to readd the resources. (TODO: if jack can output all resources to a jar/zip file, we can use that file as the initial package file as well.) Bug: 18837479 Change-Id: I15ecf282bfb65fd53dd03fbd03dd4c71927c186a
* Support to build AAR for static Java libraries.Ying Wang2014-12-181-1/+23
| | | | | | | | | | Set up rules to build $(built_aar), if a static Java library has Android resources. If you run "tapas my_lib && make dist", my_lib.aar will be built and put in the DIST_DIR. Bug: 18759503 Change-Id: I36b912eb7bbab241fe48319115ea320efe77c705
* Compile using Jack.Yohann Roussel2014-12-021-2/+12
| | | | | | | | | | | | | | | | | | | | | | | | This allows to compile dex targeted java sources using Jack and Jill. Default is still to compile with the legacy toolchain. Default can be switched to the new toolchain by setting environement variable: export ANDROID_COMPILE_WITH_JACK=true Toolchain can also be forced for one module by defining LOCAL_USE_JACK:=true # false in the mk portion defining the module. Jack execution environement can be controlled with: Global variable ANDROID_JACK_VM allow to change the jvm executing Jack. Global variable ANDROID_JACK_VM_ARGS allows to change default args given to the jvm. Global variable ANDROID_JACK_EXTRA_ARGS allows to define some default args to give to Jack LOCAL_JACK_VM_ARGS allows to override default args given to the jvm for the module. LOCAL_JACK_EXTRA_ARGS allows to override default args passed to Jack. Change-Id: Ib81a0fd5f86a51d1e0edbb81cc791d828a05dd29
* Support "LOCAL_SDK_VERSION := system_current"Ying Wang2014-07-191-2/+2
| | | | | | | | A module can declare "LOCAL_SDK_VERSION := system_current" to build against the android system stubs generated from source. For now this is only supported in platform build. Change-Id: I1e9bbd159886bc0ea3a02b1dc4cbcb1a56e9cb15
* am bb964f00: am 432cd6dd: Merge "Allow LOCAL_RESOURCE_DIR pointing to dir ↵Ying Wang2014-06-251-4/+5
|\ | | | | | | | | | | | | generated during the build" * commit 'bb964f00403a23d2f1ec3313f7b579a9e7f0f12a': Allow LOCAL_RESOURCE_DIR pointing to dir generated during the build
| * Allow LOCAL_RESOURCE_DIR pointing to dir generated during the buildYing Wang2014-06-251-4/+5
| | | | | | | | | | Bug: 15850610 Change-Id: I46b98adb556d8e6bf166761f8bb240006dbe5b14
* | Set up rules to merge AndroidManifest.xmlsYing Wang2014-02-051-8/+1
|/ | | | | | | | | | Now you can merge the library manifest files to the main app's AndroidManifest.xml with LOCAL_FULL_LIBS_MANIFEST_FILES. LOCAL_FULL_LIBS_MANIFEST_FILES is a list of paths relative to the top of the source tree. Bug: 12907528 Change-Id: I16a347c83dfb6fbbb7d5d40284b7c65aa682fdd2
* Better handle of need_compile_java.Ying Wang2013-08-281-0/+2
| | | | Change-Id: I609a27e2b35b08962243b6516c6c525c0c938d3c
* Make it a fatal error if no source files for Java module.Ying Wang2013-08-281-0/+2
| | | | Change-Id: Ia04158c11381b6b1687b9d5c699a9ea8ae3cb317
* Allow to run Proguard on static Java libraryYing Wang2013-03-261-3/+17
| | | | | | | | 1. Let aapt output the proguard_options file 2. If proguard is enabled, switch the dependency from $(full_classes_jar) to $(full_classes_proguard_jar). Change-Id: Idc641a1515b8899a4623a2aeec5cd494f6c1c1c5
* More flexibility to keep/remove R.class in static Java libraryYing Wang2012-06-191-7/+10
| | | | | | | | | | | | | | | | | | - Usually you don't need to set LOCAL_JAR_EXCLUDE_FILES in your Android.mk, if your static library is directly used by an app. - If your library will be included by another library that need reference the R/Manifest class, you can set LOCAL_JAR_EXCLUDE_FILES := none to keep the generated classes. - If your library includes another static library that has Android resource and you want to remove the generated classes carried by the static library, set: LOCAL_JAR_EXCLUDE_FILES := $(ANDROID_RESOURCE_GENERATED_CLASSES) With the LOCAL_JAR_EXCLUDE_FILES value "none", deprecate the old long variable LOCAL_KEEP_R_CLASS_IN_STATIC_JAVA_LIBRARY. Change-Id: I3b9ad5d66f0262f784feb09bc1537c5b01256258
* Support to build against prebuilt current SDK in unbundled branchYing Wang2012-05-101-1/+1
| | | | | | | | 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
* Option to keep the generated R class in static Java libarryYing Wang2012-04-261-0/+2
| | | | | | | Bug: 6404748 Set LOCAL_KEEP_R_CLASS_IN_STATIC_JAVA_LIBRARY to true to do that. Change-Id: Ieee3cae431e3b1484ec598312729f2c871db2315
* Default LOCAL_SDK_RES_VERSION to LOCAL_SDK_VERSIONYing Wang2012-01-031-0/+5
| | | | | | in static_java_library.mk. Change-Id: I25ad47fea0fdb10c8aa0a0cb0d4c5ed117cd76ef
* Remove the R/Manifest classes when building the static Java libraryYing Wang2011-12-151-0/+8
| | | | | | | | | | | 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
* Support to build static Java library with Android resourceYing Wang2011-12-141-0/+70
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug: 5714516 The rationale behind this change: - the library is compiled into a jar file, but its R class is generated making the constant not constant (static, not final static) (aapt option --non-constant-id). Also the jar file does not contain the R class. - this allows the integer value to not be inlined in the compiled class files. Note that this prevents using switch statements. - the main project use this jar file as a normal static library: it will add all the class files except the R.class. - the main project uses the library res folder as a resource folder with lower priority than the main project (basically the main project is an overlay. This is accomplished using aapt's --auto-add-overlay to handle resources only in the main project (which the normal overlay mechanism doesn't allow). - the main project creates R classes in the main project's package but also in the library's package. This is done with aapt's --extra-packages which accept as many packages as needed, separated by a :. - manifest merging is not done yet, so activities/services/permissions/etc... have to be manually declared in the main app. To use a static library with Android resource in your app, 1. Add the library's resource dir to your app as an overlay: LOCAL_RESOURCE_DIR := <app_resource_dir> <static_library_resource_dirs> 2. Set the proper aapt flags: LOCAL_AAPT_FLAGS := <apps_own_flags> --auto-add-overlay \ --extra-packages <lib1_package_name>:<lib2_package_name>:... Change-Id: Ifb4d2300b952ea4aaee74da1bb0c6c72ea0698a3
* auto import from //depot/cupcake/@135843The Android Open Source Project2009-03-031-0/+25
|
* auto import from //depot/cupcake/@135843The Android Open Source Project2009-03-031-25/+0
|
* Initial ContributionThe Android Open Source Project2008-10-211-0/+25