OSDN Git Service
Colin Cross [Fri, 14 Feb 2014 00:24:16 +0000 (00:24 +0000)]
Merge changes I2514f66f,I71fed98d
* changes:
support LOCAL_MODULE_TARGET_ARCH for prebuilts
Add generated sources dir to the default include path
Ying Wang [Fri, 14 Feb 2014 00:03:12 +0000 (00:03 +0000)]
Merge "Don't check the existence for the 64-bit modules for 32-bit SDK build."
Ying Wang [Thu, 13 Feb 2014 23:56:34 +0000 (15:56 -0800)]
Don't check the existence for the 64-bit modules for 32-bit SDK build.
Change-Id: I0d5d6ecc07332bef6854466fd98380eb12fc08fc
Colin Cross [Thu, 13 Feb 2014 23:04:18 +0000 (15:04 -0800)]
support LOCAL_MODULE_TARGET_ARCH for prebuilts
Prebuilts often support only a single architecture, allow them to
use LOCAL_MODULE_TARGET_ARCH to specify it.
Change-Id: I2514f66f682ef267bbf1a1ab78510faff0a18b64
Colin Cross [Thu, 13 Feb 2014 21:41:52 +0000 (13:41 -0800)]
Add generated sources dir to the default include path
Change-Id: I71fed98dfbc0bf5efad069a251eee2e5ab2e5fe6
Colin Cross [Thu, 13 Feb 2014 23:00:40 +0000 (23:00 +0000)]
Merge "don't use LOCAL_*_arch for host builds"
Colin Cross [Thu, 13 Feb 2014 05:15:12 +0000 (21:15 -0800)]
don't use LOCAL_*_arch for host builds
The LOCAL_*_$(TARGET_ARCH) variables don't make sense for host
modules, only append use them for target modules.
Also complete the list of LOCAL_*_arch and LOCAL_*_32/64 to be
consistent.
Change-Id: I00c83e5c4e08ed9a844f9f99a79ce4bcc3f0bf11
Colin Cross [Thu, 13 Feb 2014 21:15:00 +0000 (21:15 +0000)]
Merge "make 64-bit builds into multiarch builds"
Colin Cross [Tue, 28 Jan 2014 22:35:16 +0000 (14:35 -0800)]
make 64-bit builds into multiarch builds
Also enable the 64-bit binder interface and make them only use ART.
Change-Id: I05de41ce348c14722c84a658f745659bde5ba423
Ying Wang [Thu, 13 Feb 2014 01:39:41 +0000 (01:39 +0000)]
Merge "Remove dead code."
Ying Wang [Thu, 13 Feb 2014 01:38:46 +0000 (17:38 -0800)]
Remove dead code.
Change-Id: Ia36a04037e15cbf296f375f3ece9a7e977fdca1e
Colin Cross [Wed, 12 Feb 2014 20:57:24 +0000 (20:57 +0000)]
Merge topic 'arm64'
* changes:
HACK: add 64-bit directory blacklist
add support for module supported or unsupported target architectures
Ying Wang [Wed, 12 Feb 2014 20:56:31 +0000 (20:56 +0000)]
Merge "Refactor a little bit and do the validation on also default.prop."
Colin Cross [Fri, 24 Jan 2014 21:38:08 +0000 (13:38 -0800)]
HACK: add 64-bit directory blacklist
Change-Id: I431e8b220db81d51930dc0b3d95995df120c179a
Colin Cross [Thu, 6 Feb 2014 22:45:37 +0000 (14:45 -0800)]
add support for module supported or unsupported target architectures
Add four new variables for module makefiles:
LOCAL_MODULE_TARGET_ARCH specifies that a module is only supported for
one or more architectures. Any architecture not in the list will be
not attempt to build the module. The expected use case is prebuilts
that are only suitable for a single architecture, or modules like llvm
that need per-architecture support.
LOCAL_MODULE_UNSUPPORTED_TARGET_ARCH specifies that a module cannot be
built for one or more architectures.
LOCAL_MODULE_TARGET_ARCH_WARN and LOCAL_MODULE_UNSUPPORTED_TARGET_ARCH_WARN
are the same, but warn that the arch is not supported, which is useful
for modules that are critical but not yet working.
The logic for whether or not to build an architecture is fairly
complicated, so this patch consolidates it into module_arch_supported.mk
Change-Id: I120caf4a375f484e1fd6017b60c2f53882ae01e6
Ying Wang [Wed, 12 Feb 2014 04:44:09 +0000 (20:44 -0800)]
Refactor a little bit and do the validation on also default.prop.
Change-Id: I76c2344d9033eadede7048689a879c9a69a05b7f
Ying Wang [Wed, 12 Feb 2014 03:56:42 +0000 (03:56 +0000)]
Merge "A build property's value is returned empty in runtime when its length exceeds 92 symbols (91 valid symbols + \0). It is better to catch that issue on earlier stage, i.e. fail the build with an appropriate message."
Ying Wang [Wed, 12 Feb 2014 01:31:21 +0000 (01:31 +0000)]
Merge "Clean up dangling module names"
Ying Wang [Wed, 12 Feb 2014 01:28:30 +0000 (17:28 -0800)]
Clean up dangling module names
Those modules have disappeared from the source tree.
https://code.google.com/p/android/issues/detail?id=61210
Change-Id: Iab369d2f591f46eb86b9fccf2087515edf974662
Ying Wang [Wed, 12 Feb 2014 01:26:10 +0000 (01:26 +0000)]
Merge "Refine module name resolving in multilib build"
Yu Liu [Tue, 11 Feb 2014 03:20:36 +0000 (19:20 -0800)]
A build property's value is returned empty in runtime when its length
exceeds 92 symbols (91 valid symbols + \0). It is better to catch that
issue on earlier stage, i.e. fail the build with an appropriate message.
For developer's build, show warning message instead of failing the build
(in the latter case, as developers do not usually care about build properties
too much).
Change-Id: I03ced7b486d43a71b1921e0a9c48b43aa30727c7
Elliott Hughes [Tue, 11 Feb 2014 22:01:32 +0000 (22:01 +0000)]
Merge "Add all-S-files-under."
Elliott Hughes [Tue, 11 Feb 2014 21:48:35 +0000 (13:48 -0800)]
Add all-S-files-under.
Change-Id: I25416e2acc850c61226bc7a8e0536384f6eb2dce
Colin Cross [Tue, 11 Feb 2014 20:58:08 +0000 (20:58 +0000)]
Merge "fix 2nd target clang prebuilt paths"
Colin Cross [Tue, 11 Feb 2014 20:47:52 +0000 (12:47 -0800)]
fix 2nd target clang prebuilt paths
Change-Id: I4c196221bd377e30bbff1aafa265952e29c85cb5
Ying Wang [Tue, 11 Feb 2014 19:27:59 +0000 (19:27 +0000)]
Merge "Runtime resource overlay, iteration 2"
Ying Wang [Tue, 11 Feb 2014 06:26:23 +0000 (22:26 -0800)]
Refine module name resolving in multilib build
-- Added TARGET_PREFER_32_BIT, which sets LOCAL_32_BIT_ONLY for an
executable, if LOCAL_NO_2ND_ARCH is not true.
Name resolving in 64-bit multilib build:
-- Name resolving in PRODUCT_PACKAGES:
foo:32 resolves to foo_32;
foo:64 resolves to foo;
foo resolves to both foo and foo_32 (if foo_32 is defined).
-- Name resolving for LOCAL_REQUIRED_MODULES:
If a module is built for 2nd arch, its required module resolves to
32-bit variant, if it exits;
Otherwise for executable and shared library, a required module
resolves to the default 64-bit variant; for other module classes,
required module foo resolves to both foo and foo_32 (if foo_32 is
defined)
Bug:
12898862
Change-Id: I5fda1a77f58814097b10b5ad2743ee25adfaecc4
David 'Digit' Turner [Mon, 10 Feb 2014 11:31:17 +0000 (11:31 +0000)]
Merge "Add missing font files to SDK system images."
Ben Cheng [Fri, 7 Feb 2014 21:36:45 +0000 (21:36 +0000)]
Merge "Refreshed gcc predefines __ANDROID__"
Ben Cheng [Fri, 7 Feb 2014 21:16:18 +0000 (13:16 -0800)]
Refreshed gcc predefines __ANDROID__
Change-Id: Id76f5a7490fba8190329e5ce3c4b138976a034ce
Ying Wang [Fri, 7 Feb 2014 20:32:01 +0000 (20:32 +0000)]
Merge "Select the arch_variant_cflags for the 2nd arch."
Ying Wang [Fri, 7 Feb 2014 18:40:37 +0000 (10:40 -0800)]
Select the arch_variant_cflags for the 2nd arch.
Change-Id: Id2f9d7073a4aae3ba0fe5e5464045761f4d42b4e
Ying Wang [Fri, 7 Feb 2014 18:03:33 +0000 (18:03 +0000)]
Merge "Refactor llvm_config.mk and support the 2nd arch"
Ying Wang [Fri, 7 Feb 2014 02:08:44 +0000 (18:08 -0800)]
Refactor llvm_config.mk and support the 2nd arch
1. Following the setup of gcc in build/core/combo/,
we added the [HOST|TARGET]_<arch>.mk clang config files,
and load only the configs needed by the current product.
2. Added support for the 2nd arch.
Change-Id: I2a383418a9688a050b39492f8e489d40eeeb5f2d
Colin Cross [Fri, 7 Feb 2014 05:00:21 +0000 (05:00 +0000)]
Merge "don't rename 32-bit packages to *_32"
Colin Cross [Tue, 4 Feb 2014 19:16:16 +0000 (11:16 -0800)]
don't rename 32-bit packages to *_32
Renaming 32-bit packages to *_32 breaks PRODUCT_PACKAGES dependencies.
Change-Id: I5457c07b64885d77a6bd8fbcbba97d28393c581d
Elliott Hughes [Thu, 6 Feb 2014 20:54:04 +0000 (20:54 +0000)]
Merge "Turn 64-bit-related warnings into errors on 64-bit builds."
Elliott Hughes [Thu, 6 Feb 2014 20:14:55 +0000 (20:14 +0000)]
Merge "[MIPS64] Add mips64 target"
Chris Dearman [Mon, 3 Feb 2014 23:01:24 +0000 (15:01 -0800)]
[MIPS64] Add mips64 target
Change-Id: Ice1621101c0d5a3314db288542ca8020e3f406bf
Signed-off-by: Duane Sand <duane.sand@imgtec.com>
Christopher Ferris [Thu, 6 Feb 2014 02:16:35 +0000 (02:16 +0000)]
Merge "Add library test makefile solutions."
Elliott Hughes [Thu, 6 Feb 2014 00:23:47 +0000 (16:23 -0800)]
Turn 64-bit-related warnings into errors on 64-bit builds.
I don't think we can realistically turn this on for 32-bit builds any
time soon.
Also, fix the arm64 stack-protector hack.
Change-Id: Ie1e7c875bbc06fb21bb372b8ca99879a23ef53d4
Christopher Ferris [Wed, 5 Feb 2014 06:09:16 +0000 (22:09 -0800)]
Add library test makefile solutions.
Change-Id: Ibc8df9b0e2342683158936bf011425780df8f02a
Colin Cross [Wed, 5 Feb 2014 23:57:08 +0000 (23:57 +0000)]
Merge topic 'arm64'
* changes:
add support for more LOCAL_*_arch variables
don't rename 32-bit executables to *_32
remove 2nd arch from ARCH_ARM_* defines
Colin Cross [Wed, 5 Feb 2014 23:55:54 +0000 (23:55 +0000)]
Merge "Fix installing 2nd arch shared libraries"
Colin Cross [Tue, 4 Feb 2014 22:53:25 +0000 (14:53 -0800)]
add support for more LOCAL_*_arch variables
Add support for:
LOCAL_SHARED_LIBRARIES_arch
LOCAL_STATIC_LIBRARIES_arch
LOCAL_WHOLE_STATIC_LIBRARIES_arch
LOCAL_GENERATED_SOURCES_arch
LOCAL_REQUIRED_MODULES_arch
Change-Id: Iad91702e140d8dba7dcaee13f236c77b1e626a34
Colin Cross [Wed, 5 Feb 2014 03:42:32 +0000 (19:42 -0800)]
Fix installing 2nd arch shared libraries
2ND_TARGET_DEPENDENCIES_ON_SHARED_LIBRARIES was not set,
which was causing the later += to act like = instead of
:=, and the dependencies would disappear as soon as
LOCAL_MODULE was cleared.
Change-Id: Idea291524fc06377deafec62f37d20eaa7f93bca
Colin Cross [Tue, 4 Feb 2014 19:16:16 +0000 (11:16 -0800)]
don't rename 32-bit executables to *_32
Renaming 32-bit executables to *_32 breaks PRODUCT_PACKAGES
dependencies.
Change-Id: I53d89991633ef4af03c4e618c463769937a70e38
Colin Cross [Tue, 4 Feb 2014 19:15:26 +0000 (11:15 -0800)]
remove 2nd arch from ARCH_ARM_* defines
Users of ARCH_ARM_* defines don't care about first vs. second arch,
set ARCH_ARM_* regardless of which arch is arm.
Change-Id: I2ae83ec5c3f839ff91a0e352c95d76ec2cbd5dc5
David 'Digit' Turner [Tue, 4 Feb 2014 13:49:23 +0000 (14:49 +0100)]
Add missing font files to SDK system images.
This adds a few missing font families to SDK system images.
This allows, in particular, support for the Korean language.
Note that this depends on other patches under device/generic/
to fix some board and product configuration files, otherwise
this change will have no effect.
See http://b.android.com/40340
Change-Id: Idba6471de32232833f511a4da97fd652906fec51
Tim Murray [Mon, 3 Feb 2014 22:35:54 +0000 (22:35 +0000)]
Merge "Add new rs directory to list of Java subdirs of fw/base."
Ying Wang [Sat, 1 Feb 2014 03:25:47 +0000 (03:25 +0000)]
Merge "Dedup the targets and dependencies of required modules."
Ying Wang [Sat, 1 Feb 2014 03:22:35 +0000 (19:22 -0800)]
Dedup the targets and dependencies of required modules.
For whatever reason, two modules may have the same file as their
installed module. In that case circular dependency is created if the two
modules have requited-by relation.
Change-Id: I15ed271ca3f3c343e4662182ded5ccc63d6c42cc
Tim Murray [Tue, 17 Dec 2013 21:27:28 +0000 (13:27 -0800)]
Add new rs directory to list of Java subdirs of fw/base.
Change-Id: I3213a314e7700162e781526c0450678495442759
MÃ¥rten Kongstad [Fri, 31 Jan 2014 13:43:49 +0000 (14:43 +0100)]
Runtime resource overlay, iteration 2
Support any number of overlay packages. Support any target package.
UPDATED PACKAGE MATCHING
------------------------
In Runtime resource overlay, iteration 1, only a single overlay package
was considered. Package matching was based on file paths:
/vendor/overlay/system/framework-res.apk corresponded to
/system/framework-res.apk. Introduce a more flexible matching scheme
where any package is an overlay package if its manifest includes
<overlay targetPackage="com.target.package"/>
For security reasons, an overlay package must fulfill certain criteria
to take effect: see below.
THE IDMAP TOOL AND IDMAP FILES
------------------------------
Idmap files are created by the 'idmap' binary; idmap files must be
present when loading packages. For the Android system, Zygote calls
'idmap' as part of the resource pre-loading. For application packages,
'idmap' is invoked via 'installd' during package installation (similar
to 'dexopt').
UPDATED FLOW
------------
The following is an outline of the start-up sequences for the Android
system and Android apps. Steps marked with '+' are introduced by this
commit.
Zygote initialization
Initial AssetManager object created
+ idmap --scan creates idmaps for overlays targeting 'android', \
stores list of overlays in /data/resource-cache/overlays.list
AssetManager caches framework-res.apk
+ AssetManager caches overlay packages listed in overlays.list
Android boot
New AssetManager's ResTable acquired
AssetManager re-uses cached framework-res.apk
+ AssetManager re-uses cached 'android' overlays (if any)
App boot
ActivityThread prepares AssetManager to load app.apk
+ ActivityThread prepares AssetManager to load app overlays (if any)
New AssetManager's ResTable acquired as per Android boot
SECURITY
--------
Overlay packages are required to be pre-loaded (in /vendor/overlay).
These packages are trusted by definition. A future iteration of runtime
resource overlay may add support for downloaded overlays, which would
likely require target and overlay signatures match for the overlay to
be trusted.
LOOKUP PRIORITY
---------------
During resource lookup, packages are sequentially queried to provide a
best match, given the constraints of the current configuration. If any
package provide a better match than what has been found so far, it
replaces the previous match. The target package is always queried last.
When loading a package with more than one overlay, the order in which
the overlays are added become significant if several packages overlay
the same resource.
Had downloaded overlays been supported, the install time could have been
used to determine the load order. Regardless, for pre-installed
overlays, the install time is randomly determined by the order in which
the Package Manager locates the packages during initial boot. To support
a well-defined order, pre-installed overlay packages are expected to
define an additional 'priority' attribute in their <overlay> tags:
<overlay targetPackage="com.target.package" priority="1234"/>
Pre-installed overlays are loaded in order of their priority attributes,
sorted in ascending order.
Assigning the same priority to several overlays targeting the same base
package leads to undefined behaviour. It is the responsibility of the
vendor to avoid this.
The following example shows the ResTable and PackageGroups after loading
an application and two overlays. The resource lookup framework will
query the packages in the order C, B, A.
+------+------+- -+------+------+
| 0x01 | | ... | | 0x7f |
+------+------+- -+------+------+
| |
"android" Target package A
|
Pre-installed overlay B (priority 1)
|
Pre-installed overlay C (priority 2)
Change-Id: If49c963149369b1957f7d2303b3dd27f669ed24e
Ben Cheng [Thu, 30 Jan 2014 22:01:32 +0000 (22:01 +0000)]
Merge "Add 64-bit gdbclients."
Brian Carlstrom [Thu, 30 Jan 2014 22:00:33 +0000 (22:00 +0000)]
Merge "CleanSpec for
49f1fab8a5b82f6224ff1be601037270ecdb734b: Rename persist.sys.dalvik.vm.lib to allow new default"
Brian Carlstrom [Thu, 30 Jan 2014 21:56:51 +0000 (13:56 -0800)]
CleanSpec for
49f1fab8a5b82f6224ff1be601037270ecdb734b: Rename persist.sys.dalvik.vm.lib to allow new default
Change-Id: I3ed55460864c17a199053a058b2482c6c4579622
Serban Constantinescu [Tue, 14 Jan 2014 10:33:53 +0000 (10:33 +0000)]
Add 64-bit gdbclients.
This patch adds gdbclient combo for arm64, mips64, and x86_64.
Change-Id: I659b662276c93e5cce92aadc203a4bc111f5c2af
Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com>
Brian Carlstrom [Thu, 30 Jan 2014 21:50:48 +0000 (21:50 +0000)]
Merge "build: Rename persist.sys.dalvik.vm.lib to allow new default"
Brian Carlstrom [Thu, 30 Jan 2014 21:14:00 +0000 (13:14 -0800)]
build: Rename persist.sys.dalvik.vm.lib to allow new default
Bug:
12798969
Change-Id: Ie73a3f2b6655d0ae3e3a905a1c64747343c525a0
Brian Carlstrom [Thu, 30 Jan 2014 21:10:25 +0000 (21:10 +0000)]
Merge "CleanSpec for
08d410f53249c18d752f56a881ed2335403080d4: Make libart the default runtime"
Ian Rogers [Thu, 30 Jan 2014 19:54:04 +0000 (19:54 +0000)]
Merge "Disable WITH_HOST_DALVIK on 64bit host builds."
Brian Carlstrom [Thu, 30 Jan 2014 19:11:38 +0000 (11:11 -0800)]
CleanSpec for
08d410f53249c18d752f56a881ed2335403080d4: Make libart the default runtime
Change-Id: Id632beeb2f96dd4502ac4a6c03bab5e4252137ff
Ian Rogers [Thu, 30 Jan 2014 16:47:53 +0000 (08:47 -0800)]
Disable WITH_HOST_DALVIK on 64bit host builds.
Change-Id: I8cea32fe5541c3223e7f317245aab3061e8ad444
Narayan Kamath [Thu, 30 Jan 2014 09:39:33 +0000 (09:39 +0000)]
Merge "Define __STDC_FORMAT_MACROS on Windows host builds."
Ian Rogers [Thu, 30 Jan 2014 05:37:37 +0000 (21:37 -0800)]
Define __STDC_FORMAT_MACROS on Windows host builds.
Change-Id: I89b54a63c3f111b8242fe9e813d94a839c484195
Colin Cross [Thu, 30 Jan 2014 04:06:42 +0000 (04:06 +0000)]
Merge "build: rename LOCAL_32BIT_ONLY to LOCAL_32_BIT_ONLY"
Colin Cross [Thu, 30 Jan 2014 04:06:05 +0000 (04:06 +0000)]
Merge "build: support LOCAL_*_32 and LOCAL_*_64"
Colin Cross [Thu, 30 Jan 2014 02:20:01 +0000 (18:20 -0800)]
build: rename LOCAL_32BIT_ONLY to LOCAL_32_BIT_ONLY
Rename for consistency with TARGET_IS_64_BIT.
Change-Id: I824dcaed0c1e88b8246bcffb21ab3f1772175926
Colin Cross [Thu, 30 Jan 2014 01:46:37 +0000 (17:46 -0800)]
build: support LOCAL_*_32 and LOCAL_*_64
Support the following new variables based on whether the current multilib
target is 32 bit or 64 bit:
LOCAL_CFLAGS_32
LOCAL_CFLAGS_64
LOCAL_LDFLAGS_32
LOCAL_LDFLAGS_64
LOCAL_ASFLAGS_32
LOCAL_ASFLAGS_64
LOCAL_C_INCLUDES_32
LOCAL_C_INCLUDES_64
Change-Id: Ia868d56dff114be301bf8297eec768675f186927
Ian Rogers [Thu, 30 Jan 2014 00:33:35 +0000 (00:33 +0000)]
Merge "Fix the host inttypes.h problem globally."
Ian Rogers [Wed, 29 Jan 2014 21:09:30 +0000 (13:09 -0800)]
Fix the host inttypes.h problem globally.
Bug:
12708004
Change-Id: I2c75647bac304b82e150c540b9e6c5568997596d
Brian Carlstrom [Wed, 29 Jan 2014 20:21:27 +0000 (20:21 +0000)]
Merge "Bump generic_mips BOARD_SYSTEMIMAGE_PARTITION_SIZE for PRODUCT_RUNTIME := libart_runtime_default"
Brian Carlstrom [Wed, 29 Jan 2014 07:33:52 +0000 (23:33 -0800)]
Bump generic_mips BOARD_SYSTEMIMAGE_PARTITION_SIZE for PRODUCT_RUNTIME := libart_runtime_default
(cherry picked from commit
c8501bffcb6fa3f552ae424a5701091b5faa6270)
Change-Id: I12ce7c4e383e74e54d77b54a0406d2499699edbf
Elliott Hughes [Wed, 29 Jan 2014 01:45:17 +0000 (01:45 +0000)]
Merge "gtest needs -lpthread."
Elliott Hughes [Wed, 29 Jan 2014 01:32:30 +0000 (17:32 -0800)]
gtest needs -lpthread.
Host gtests that don't use pthreads themselves need to be linked
against libpthread because gtest itself uses pthreads to ensure
thread-safety. (It can't know in advance whether the code under
test is going to spin up threads, so it has to be pessimistic.)
Change-Id: I14fb1098c163d7fe6ae9a9a0314acead4ec9383d
Brian Carlstrom [Wed, 29 Jan 2014 00:32:23 +0000 (00:32 +0000)]
Merge "Make libart the default runtime"
Elliott Hughes [Tue, 28 Jan 2014 21:23:07 +0000 (21:23 +0000)]
Merge "Fix KERNEL_HEADERS_ARCH for mips and x86."
Elliott Hughes [Tue, 28 Jan 2014 21:07:55 +0000 (13:07 -0800)]
Fix KERNEL_HEADERS_ARCH for mips and x86.
arm and arm64 have distinct headers, but mips and mip64, and x86 and x86_64
use headers that work for both widths. So where arm/arm64 need to handle the
second architecture case specially, all we need to do for the others is
hard-code the name. (x86_64.mk already hard-codes x86; we need to change
x86.mk for the case where we're building the 32-bit binaries for a mixed
system. mips64.mk doesn't exist yet, but when it does, it'll hard-code
just plain "mips" too.)
Change-Id: Ia6b9f77b4eb2c78729b454045875c409e0ea8197
Brian Carlstrom [Tue, 28 Jan 2014 20:45:32 +0000 (20:45 +0000)]
Merge "build: PRODUCT_DEX_PREOPT_IMAGE_IN_DATA"
Brian Carlstrom [Fri, 17 Jan 2014 07:25:27 +0000 (23:25 -0800)]
build: PRODUCT_DEX_PREOPT_IMAGE_IN_DATA
(cherry-picked from commit
cd337c71ee65b17529a67af34d4c0b2824a4f175)
Change-Id: I6d8ab3b3cf52f6a6b15f1c8e8d00cdf59042436b
Brian Carlstrom [Fri, 17 Jan 2014 01:55:07 +0000 (17:55 -0800)]
Make libart the default runtime
Change-Id: I4394f2bdef6f1be36f0f17f3b42d3e62bc2245ef
Colin Cross [Tue, 28 Jan 2014 02:25:45 +0000 (02:25 +0000)]
Merge "Add support for TARGET_GLOBAL_UNSUPPORTED_CFLAGS"
Colin Cross [Tue, 28 Jan 2014 01:34:21 +0000 (17:34 -0800)]
Add support for TARGET_GLOBAL_UNSUPPORTED_CFLAGS
To ease the transition between toolchains, allow a target to specify
a list of cflags that the toolchain does not support. These will be
filtered out of the cflags provided by the module.
Add TARGET_GLOBAL_UNSUPPORTED_CFLAGS := -fstack-protector for the
aarch64 toolchain, it does not yet suport -fstack-protector.
Change-Id: I168d0c6f131326fad305ec86fad46e6a3e03295a
Elliott Hughes [Tue, 28 Jan 2014 00:00:19 +0000 (00:00 +0000)]
Merge "Remove libthread_db from the default include path."
Elliott Hughes [Mon, 27 Jan 2014 23:43:19 +0000 (15:43 -0800)]
Remove libthread_db from the default include path.
This should never have been on the default include path.
The NDK statically links its own libthread_db, so I'm removing
bionic's unused copy from devices.
Bug:
11882807
Change-Id: I49a67fe0902cc4bc178360f6c993959774d74e3a
Ying Wang [Mon, 27 Jan 2014 23:37:18 +0000 (23:37 +0000)]
Merge "ota_from_target_files: Add an option to not sign OTA packages"
Colin Cross [Mon, 27 Jan 2014 23:35:00 +0000 (23:35 +0000)]
Merge changes I62504bad,I16208cca,I4e4ceec6
* changes:
add new gen/ directory for generated sources
warn on LOCAL_MODULE_PATH in multiarch shared libraries
Support LOCAL_MODULE_RELATIVE_PATH
Ying Wang [Mon, 27 Jan 2014 23:20:05 +0000 (23:20 +0000)]
Merge "Don't modify LOCAL_MODULE_TAGS."
Ying Wang [Mon, 27 Jan 2014 23:19:09 +0000 (15:19 -0800)]
Don't modify LOCAL_MODULE_TAGS.
Change-Id: Id70d48c1d7abf02139925bcb3208515ea1a082b9
Ying Wang [Mon, 27 Jan 2014 22:52:13 +0000 (22:52 +0000)]
Merge "collect_gpl_sources.mk: Declare rule to assemble GPL sources FORCE"
Colin Cross [Sat, 25 Jan 2014 07:17:21 +0000 (23:17 -0800)]
add new gen/ directory for generated sources
Allow modules to generate source into $OUT/gen, which will then
be copied into $OUT/obj and $OUT/obj_$(TARGET_2ND_ARCH) as
necessary. This allows a single build rule invocation that includes
generated source to build for the first and second architectures.
Modules will need to change calls to local-intermediates-dir into
local-generated-sources-dir.
Change-Id: I62504bad9454b3d9fde7b84ab9f0a487a2ecf0bf
Colin Cross [Sat, 25 Jan 2014 03:30:27 +0000 (19:30 -0800)]
warn on LOCAL_MODULE_PATH in multiarch shared libraries
Using LOCAL_MODULE_PATH in a shared library module while building a
multiarch target will cause build rules for both architectures to install
into the same path. Warn and suggest LOCAL_MODULE_RELATIVE_PATH.
Change-Id: I16208ccada6d43a26a342af35096f49d8df26e81
Colin Cross [Sat, 25 Jan 2014 03:23:40 +0000 (19:23 -0800)]
Support LOCAL_MODULE_RELATIVE_PATH
Most users of LOCAL_MODULE_PATH are setting a subdirectory of the
normal install path, for example to install HALs into system/lib/hw.
This is problematic for multiarch builds, where the install location
depends on the arch. Allow modules to specify LOCAL_MODULE_RELATIVE_PATH.
HALs will generally use:
LOCAL_MODULE_RELATIVE_PATH := hw
Change-Id: I4e4ceec61d026bbe74ba604554c06104bde42e5e
Andrew Boie [Fri, 13 Dec 2013 22:28:53 +0000 (14:28 -0800)]
collect_gpl_sources.mk: Declare rule to assemble GPL sources FORCE
We have no rigorous way to detect whether the code referenced for this
mechanism changes in between builds. So declare this as a phony target
so that it is rebuilt every time.
Change-Id: Ie1670d96895719d406e7b0defd53ba3cd224dd83
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
Ying Wang [Mon, 27 Jan 2014 18:28:35 +0000 (18:28 +0000)]
Merge "Support arch-specific LOCAL_C_INCLUDES."
Ying Wang [Mon, 27 Jan 2014 18:27:19 +0000 (10:27 -0800)]
Support arch-specific LOCAL_C_INCLUDES.
Bug:
11654773
Change-Id: I89c7ce7ff8bea15cb81f9cd9b0188b54beed3422
Takeshi Kanemoto [Thu, 14 Nov 2013 08:20:50 +0000 (17:20 +0900)]
ota_from_target_files: Add an option to not sign OTA packages
Sometimes it is useful to be able to tell ota_from_target_files
to not sign the output zip file. For instance, the private
release key may not be available when ota_from_target_files
is executed; similarly the release tools may not be available
or executable where the private key is stored.
This change adds an option, '--no_signing', to simply output the
unsigned OTA zip file, instead of spuriously signing it with the
test key even though the zip file would need to be re-signed later
with a different key.
Change-Id: I1f3c4dc8ffa35ce85478f848b147aff3d40fe283
Colin Cross [Sat, 25 Jan 2014 00:46:33 +0000 (00:46 +0000)]
Merge changes Ib1d950e1,I3d020a3c,Ic9594718
* changes:
Add 2nd arch directories for apps
Set up rules to build prebuilts for TARGET_2ND_ARCH
Set up rules to build packages for TARGET_2ND_ARCH
Colin Cross [Fri, 24 Jan 2014 21:37:07 +0000 (13:37 -0800)]
Add 2nd arch directories for apps
Apps built for 2nd arch install in the same directories as when
built for the 1st arch.
Change-Id: Ib1d950e186eef88212b44d04e6bc6c30a3d56155