Commit graph

76 commits

Author SHA1 Message Date
Ying Wang
83dbd2f158 Option to keep the generated R class in static Java libarry
Bug: 6404748
Set LOCAL_KEEP_R_CLASS_IN_STATIC_JAVA_LIBRARY to true to do that.

Change-Id: Ieee3cae431e3b1484ec598312729f2c871db2315
2012-04-26 12:27:38 -07:00
Kevin Hester
db8698be85 am 6c703628: Allow packages to place manifest files in any directory
* commit '6c703628c54275797caf2b524686d3dd2e34385c':
  Allow packages to place manifest files in any directory
2012-04-13 07:53:58 -07:00
Kevin Hester
6c703628c5 Allow packages to place manifest files in any directory
via a new definition LOCAL_ABS_MANIFEST_FILE.  The existing
LOCAL_MANIFEST_FILE variable will also be supported.

(Necessary if manifests are being programmatically generated in the
intermediates directory)

Change-Id: I77a8eb1b8040b966b944464281d00c161ff34d3c
2012-04-12 15:35:53 -07:00
Ying Wang
4394aaef7e Merge "Build system support to export include paths" 2012-04-09 12:43:09 -07:00
Evgeniy Stepanov
6cc9c06854 Add support for building with AddressSanitizer.
Change-Id: I559d21bbeb9f869f51e48ce18247ceaf766768b4
2012-04-03 14:59:01 +04:00
Ying Wang
dfbe79b803 Don't expose the compiler dependency.
Change-Id: Ia472eaab3e8e883a32e8b441a2480562db278e45
2012-03-22 11:26:22 -07:00
Evgeniy Stepanov
b71e2df30a Add LOCAL_CLANG variable to switch C/C++ build environment to Clang.
Change-Id: I8ca1c24f51aa5546ac9618d31566a52e4fdb1436

Conflicts:

	core/clear_vars.mk
2012-03-22 07:31:27 -07:00
Svetoslav Ganov
49932f1edb Adding clean variables for some variables used in CTS.
1. A CTS package can specify the test runner used to launch
   its tests from the device. This is useful for preparing
   and cleaning the device through some shell commands if
   necessary.

bug:5946699

Change-Id: Ib1d6454c4274b1c37323235c9b3a195f3b9d8131
2012-03-12 19:56:05 -07:00
Brian Muramatsu
393dde5525 resolved conflicts for merge of 80fa947b to master
Change-Id: I0febb15b690932ad342da4b10eb9c0f13d1d1517
2011-12-14 15:39:46 -08:00
Brian Muramatsu
f098c807d0 am fea66cee: Merge "Build Support for CTS Native Tests" into ics-mr1
* commit 'fea66cee1cd661b6bf8ead1988cf008fa61b01a7':
  Build Support for CTS Native Tests
2011-12-14 15:33:33 -08:00
Brian Muramatsu
237fa07339 Build Support for CTS Native Tests
Bug 4970300

Adds two new variables, CTS_TEST_CASES and CTS_TEST_XMLS, to be read
from CtsTestCaseList.mk. The CTS_TEST_CASES variable can be used to
copy any sort of file to the repository/testcases CTS directory.
The CTS_TEST_XMLS variable can be used to inject test package xmls
from any source rather than relying upon the monolithic and
mostly serial buildCts.py script.

The existing CTS_CORE_CASE_LIST is coded to only support APKs, so
it could not be retrofitted to support native tests. However, the
two new variables can do even more than CTS_CORE_CASE_LIST due to
their generality. In the future, the idea is move away from
CTS_CORE_CASE_LIST and also generate XMLs using separate tools
rather than just buildCts.py.

Change-Id: Ib52722861c37e0f4d511f9041928395bcaba5dea
2011-12-13 14:14:36 -08:00
Ying Wang
dbb31be413 Restrict vendor modules to help AOSP product distribution.
Bug: 5692177

If you set "PRODUCT_RESTRICT_VENDOR_FILES := true" in a product
configuration, this changes restricts that:
- No overlays in the vendor tree.
- No PRODUCT_COPY_FILES coming from the vendor tree.
- Any referenced package with Android.mk in the vendor tree must have
  LOCAL_MODULE_OWNER set to a value that's compared against a whitelist
  stored in the core build system.

Change-Id: I172b84c7c853e9a04bf9879ea8dec90bd5054230
2011-12-12 14:17:55 -08:00
Stephen Hines
914f7a2990 Enable -Wall/-Werror with LOCAL_RENDERSCRIPT_FLAGS.
Change-Id: Ia2a058e6711839d89072c2e96f0c60aa4cedda6b
2011-12-07 11:41:28 -08:00
Ying Wang
5f074803fb Build system support to export include paths
Bug: 5573756
With this change, we can set LOCAL_EXPORT_C_INCLUDE_DIRS in the module
definition to export include dir paths.
Paths in LOCAL_EXPORT_C_INCLUDE_DIRS should be relative to the top dir
of the source tree.
If a library (shared or static) exports some include paths, any module
using it will import the include paths and add them to the compiler
command line.

Change-Id: I49aabc589d2cf214044d13ccd5532ef68209adf0
2011-11-17 10:52:32 -08:00
Joe Onorato
c72b1403e4 Add a tool to let you enforce layering between packages in a java module.
And build system support for it too.

Change-Id: I4dd5ed0b9edab6e8884b0d00cfeeae5fa38d967a
2011-10-30 21:37:35 -07:00
Ying Wang
79e3dec83e new LOCAL_DEX_PREOPT option "nostripping"
Set "LOCAL_DEX_PREOPT := nostripping" to do dex-preopt while not strip
the classes.dex.

Bug: 5396625 5502338
Change-Id: Ie8dea4414ebeefeae89c6433b246faea27baa5e7
2011-10-24 12:29:25 -07:00
Ying Wang
415f1f6613 Merge "Install path support for vendor modules." 2011-09-20 20:02:27 -07:00
Dianne Hackborn
14169bcea8 New LOCAL_SDK_RES_VERSION config var.
This allows an app to target a different SDK level for its resources
than it uses for its Java code.  This is useful because it is generally
safe to use various newer symbols like attribute names, as older versions
of the platform will simply ignore them.

Change-Id: Ida19ec9f259c4ea70de846e9a63546e263b1c91e
2011-09-19 10:42:04 -07:00
Ying Wang
8f77936dd8 Install path support for vendor modules.
Bug: 5284764
Set "LOCAL_PROPRIETARY_MODULE := true" to install module to vendor
partition.

Change-Id: I1301acc10664a12e313f3b868d9fd6400ac8b133
2011-09-13 13:57:26 -07:00
Stephen Hines
a941d137fa Provide LOCAL_RENDERSCRIPT_TARGET_API override.
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
2011-08-29 19:00:25 -07:00
Stephen Hines
d4136c0fc6 Provide mechanism to override llvm-rs-cc headers.
Change-Id: I87fd496069a9dfde633e2d232e436fa5d7315cc0
2011-08-23 22:01:49 -07:00
Doug Kwan
e3c3c6d4fe Allow per module RTTI setting. This fixes a bug in previous check-ins.
Change-Id: I5fcac192a7945720fd7667f7497078d310370bc5
2011-06-07 10:55:48 -07:00
Doug Kwan
6f937973ff Revert "Clear LOCAL_RTTI_FLAG."
This reverts commit f524df7ce1.
2011-06-06 12:11:19 -07:00
Doug Kwan
f524df7ce1 Clear LOCAL_RTTI_FLAG.
Change-Id: I0f1388e76af1ce0592cd3271a689fbb6c0ea3eba
2011-06-03 18:26:48 -07:00
Ying Wang
4387dc3ee1 am 823f6389: am 3487736b: am 7d83ef8f: Support custom RenderScript compiler
* commit '823f63894fb4ad5c1280a5ee7eb004792223a488':
  Support custom RenderScript compiler
2011-06-02 16:49:33 -07:00
Ying Wang
7d83ef8ff7 Support custom RenderScript compiler
Change-Id: I85e38e84565e04f99dd26217f280274883dc322d
2011-05-27 13:47:17 -07:00
Ying Wang
fcdabd4bdb Add LOCAL_GROUP_STATIC_LIBRARIES
Set LOCAL_GROUP_STATIC_LIBRARIES := true to group the static libraries,
in case we need gcc flags "-Wl,--start-group" and "-Wl,--end-group" to
fix circular references.

Change-Id: I03c4901670112fcdd2bb0fe660b6924e5776fcf8
2011-04-25 14:22:41 -07:00
Iliyan Malchev
b375e71d30 build: remove prelinker build build system
This patch removes support for prelinking from the build system.  By now, the
prelinker has outlived its usefulness for several reasons.  Firstly, the
speedup that it afforded in the early days of Android is now nullified by the
speed of hardware, as well as by the presence of Zygote.  Secondly, the space
savings that come with prelinking (measued at 17MB on a recent honeycomb
stingray build) are no longer important either.  Thirdly, prelinking reduces
the effectiveness of Address-Space-Layout Randomization.  Finally, since it is
not part of the gcc suite, the prelinker needs to be maintained separately.

The patch deletes apriori, soslim, lsd, isprelinked, and iself from the source
tree.  It also removes the prelink map.

LOCAL_PRELINK_MODULE becomes a no-op.  Individual Android.mk will get cleaned
separately.  Support for prelinking will have to be removed from the recovery
code and from the dynamic loader as well.

Change-Id: I5839c9c25f7772d5183eedfe20ab924f2a7cd411
2011-03-12 14:59:46 -08:00
Ying Wang
cce4c973e4 Support stl variants when LOCAL_NDK_VERSION is set.
LOCAL_NDK_STL_VARIANT can be set to system, stlport_static, stlport_shared
or gnustl_static. It defaults to system.

Change-Id: I2840d30ff732a00bc0ea70eab8a8179aea0abbdf
2011-03-04 10:48:28 -08:00
Jeff Brown
703e7c6d50 Build system tweaks for Valgrind.
Added LOCAL_NO_CRT to enable building executables that do not link
to the C runtime library.

Removed support for LOCAL_MODULE_SUBDIR since it was broken
and unused.  (Was going to use it but ended up using LOCAL_MODULE_PATH
instead.)

Change-Id: I3b6f5ab7e5ae6aaa7119899adccece2b4ab1cbb3
2011-02-08 16:38:56 -08:00
Ying Wang
8b07ed87fa LOCAL_AAPT_INCLUDE_ALL_RESOURCES
Set this flag to include all the resources in the given dirs.
Bug: 3313179

Change-Id: I68c02b24174bebe41a5948810cc2f49cc916e51c
2010-12-28 13:16:06 -08:00
Ying Wang
33c0d952fc Allow module-specific protoc flags.
You can add local protoc flags via LOCAL_PROTOC_FLAGS.

Change-Id: If246a4edafe1edcec6a7f193bde8ce3c83de745b
2010-11-05 11:30:58 -07:00
Ying Wang
a5fc87a937 Integrate protocol buffer compiler into the build system.
Bug: 3152546
Change-Id: Ida3ca3d633ce45704dc8e80d044cdbd3ca69aca5
2010-11-02 19:25:47 -07:00
Ying Wang
ed7211848a am 3c3bf677: am 0b9382c7: Separate out Proguard flag files to fix dependency.
Merge commit '3c3bf6773ac7e2324c1d06282c625b81f799e427'

* commit '3c3bf6773ac7e2324c1d06282c625b81f799e427':
  Separate out Proguard flag files to fix dependency.
2010-09-30 11:27:04 -07:00
Ying Wang
3c3bf6773a am 0b9382c7: Separate out Proguard flag files to fix dependency.
Merge commit '0b9382c792c303a93f5805adf4eba377dac01950' into gingerbread-plus-aosp

* commit '0b9382c792c303a93f5805adf4eba377dac01950':
  Separate out Proguard flag files to fix dependency.
2010-09-30 09:31:38 -07:00
Ying Wang
0b9382c792 Separate out Proguard flag files to fix dependency.
Bug: 3048005
Change-Id: I3e77ca1082cf7c92a43b249e5c887e3fbdf4ba11
2010-09-29 16:08:17 -07:00
Ying Wang
3efd768a0d resolved conflicts for merge of 9f28f0d7 to master
Change-Id: I8fbf8846fcb41ca6cb5f3e362484ec895fe7f4aa
2010-09-22 17:19:11 -07:00
Ying Wang
9f28f0d76e am e7874c43: Integrate dexpreopt into the build system.
Merge commit 'e7874c430895b9a4e631c89f1e7729da9264d167' into gingerbread-plus-aosp

* commit 'e7874c430895b9a4e631c89f1e7729da9264d167':
  Integrate dexpreopt into the build system.
2010-09-22 16:57:01 -07:00
Ying Wang
e7874c4308 Integrate dexpreopt into the build system.
Change-Id: Id67f85d0f5c8674f5bc22e431114ca73625811ef
2010-09-22 16:51:53 -07:00
Ying Wang
6d76cad5fe resolved conflicts for merge of 31d4f53b to master
Change-Id: I87eff140bf68908d009e45687aff26f447a9b9b4
2010-09-10 17:38:54 -07:00
Ying Wang
31d4f53b96 am f7912e4e: Support to build host dex.
Merge commit 'f7912e4ee0ceb014117c66369485f0aa9ea7cf08' into gingerbread-plus-aosp

* commit 'f7912e4ee0ceb014117c66369485f0aa9ea7cf08':
  Support to build host dex.
2010-09-10 17:21:33 -07:00
Ying Wang
f7912e4ee0 Support to build host dex.
Change-Id: I55df5e4051dbeb89a70d6d7b89fb6110f133d9d7
2010-09-10 16:19:24 -07:00
Ying Wang
54b634dce8 am a79db6e4: am 3dae0ee4: Fix inherited dependency when instrmentation.
Merge commit 'a79db6e47a378cb089021a56637a9c6925f14261'

* commit 'a79db6e47a378cb089021a56637a9c6925f14261':
  Fix inherited dependency when instrmentation.
2010-09-03 10:36:41 -07:00
Ying Wang
a79db6e47a am 3dae0ee4: Fix inherited dependency when instrmentation.
Merge commit '3dae0ee46cf5fcde6eb424f9ab0c69f2d901a671' into gingerbread-plus-aosp

* commit '3dae0ee46cf5fcde6eb424f9ab0c69f2d901a671':
  Fix inherited dependency when instrmentation.
2010-09-03 10:21:37 -07:00
Ying Wang
3dae0ee46c Fix inherited dependency when instrmentation.
It turns out we should also LOCAL_INSTRUMENTATION_FOR.
To disambiguate LOCAL_INSTRUMENTATION_FOR_PACKAGE_NAME is renamed to LOCAL_MANIFEST_INSTRUMENTATION_FOR.

Bug: 2902591
Change-Id: I6cb893c135736fc4170aa2259105b4c5eea798a1
2010-09-03 10:05:39 -07:00
Ying Wang
512802772a Now slang supports "-I" options.
Change-Id: I32aef6c913d9d30f9982a593397145f1562aecf9
2010-09-01 13:28:52 -07:00
Evan Charlton
9b6865f826 am 606540b7: resolved conflicts for merge of f2bfa76c to gingerbread-plus-aosp
Merge commit '606540b739599c8f079baa2a03b5f0501b148eb2'

* commit '606540b739599c8f079baa2a03b5f0501b148eb2':
  Packages can specify where to find AndroidManifest.xml
2010-07-26 10:31:25 -07:00
Evan Charlton
606540b739 resolved conflicts for merge of f2bfa76c to gingerbread-plus-aosp
Change-Id: I67b9af3ef344cfa7502f780d82c1a3d8a1a33f6d
2010-07-26 08:53:19 -07:00
Evan Charlton
f2bfa76cf8 resolved conflicts for merge of 121a7873 to gingerbread
Change-Id: I7b5cecd4236f263c31d4af73d929ff6b5729089e
2010-07-23 12:21:48 -07:00
Evan Charlton
121a78733a Packages can specify where to find AndroidManifest.xml
By overriding LOCAL_MANIFEST_FILE, a package can now specify which
AndroidManifest.xml file to use. This also allows for AndroidManifest.xml to
be in a non-standard location, though that's not recommended.

Change-Id: Ib6d1baeef7601e5a93d4ce64d18883d45373fc12
2010-07-23 11:03:29 -07:00