Bug: 5398808
Before this change we have duplicate code in the Makefile and the
python-based releasetool. That's a real headache to maintain.
Change-Id: I8ddf04a79c6886540e89d990f723d8f77c9dd883
They are relative to PRODUCT_OUT so can be used in PRODUCT_COPY_FILES.
If TARGET_COPY_OUT_VENDOR instead of hardcoded system/vendor is used, we
will be able to transition smoothly to a separate vendor staging directory.
Change-Id: Ia9fdb208768cf4699180306280b4c02421b2ea9c
Set "LOCAL_DEX_PREOPT := nostripping" to do dex-preopt while not strip
the classes.dex.
Bug: 5396625 5502338
Change-Id: Ie8dea4414ebeefeae89c6433b246faea27baa5e7
Compile all programs on Android with -fPIE and -pie. This enables
PIE (Position Independent Executables), which helps protect Android
applications from exploitation due to memory management bugs.
Stop using the armelf.x linker script. This script hard codes the
load address of the executable, defeating the position independence
PIE requires.
Note: PIE *static* executables are not supported at this time and
require additional linker changes.
Bug: 5323301
Change-Id: Ieafcc9c4f142495847e163881889d371a59d0878
While building Android with latest host gcc, it causes the following
build error:
Install: out/host/linux-x86/bin/mkbootimg
host C++: obbtool <= frameworks/base/tools/obbtool/Main.cpp
<command-line>:0:0: error: "_FORTIFY_SOURCE" redefined [-Werror]
<built-in>:0:0: note: this is the location of the previous definition
cc1plus: all warnings being treated as errors
In order to make build system happy, this patch does unset macro
_FORTIFY_SOURCE and then define it in host cflags.
Change-Id: Ic37a90f05081a2c3650b3335bc87e9e895900fb2
Before, if a module had several proto source files,
they would all be compiled in a single invocation
of aprotoc. If any of the files imported one of the
other files, you got an aprotoc error about duplicates.
And if you removed the files that were imported
from the list of source files, no Java code
would be generated for the imported files,
causing a Java compile time error.
This changes compiles each proto file separately, which
avoids both of the problems above. It's slightly more
inefficient, but aprotoc is really fast.
Change-Id: I7bd8092ec2953c20269367a1c68ff84acceea3be
To use the new aapt --preferred-configurations option. For use with Prime
to be able to strip everything but xhdpi density bitmaps selectively,
not stripping when this would result in no data for the resource.
Change-Id: I4e1012929b8f9b0b1e79c06496647f69661ba1f2
To package libstlport_shared.so, use the following syntax in the app
module definition:
LOCAL_NDK_STL_VARIANT := stlport_shared
LOCAL_NDK_VERSION := <num>
The rationale behind is:
The NDK prebiult libstlport_shared.so is intentionally different from
the system libstlport.so.
Essentially they are slightly different versions of the library so
shouldn't be mixed up.
libstlport.so is used by the system, but not exposed by the NDK, it is
routinely tweaked in various ways between platform releases, and there
is no guarantee that its ABI is stable, or that it will not be replaced
by something else in the future.
libstlport_shared.so is typically distributed with application packages,
and should not be part of the system.
Change-Id: I72c9911781f7d8402687e9891f3f605f3a60be22
Bug: 5430740
- Remove nonexistent names in PRODUCT_PACKAGES.
- Push down bluetooth-health, hostapd and wpa_supplicant.conf to
generic_no_telephony.mk and large_emu_hw.mk because they are not needed
by sdk builds.
- Remove core.mk from generic_armv5.mk and generic_x86.mk because they
already inherit from generic.mk.
Change-Id: Ie44b95f1cae7ed0d4cf827ffce6a91d41902434d
The fingerprint should only say dev-keys if it's actually using custom
keys; builds with the old default (from build/target/product/security)
should still say test-keys.
Change-Id: Ib8c662c348cf63f5db47e2f8f81bc3246cb15fdc
Since dev keys can now vary per device, we can't assume they are
checked in with the correct signature.
Change-Id: I7577a3a6bd98d005c15936c99b2944acc4412798
Generate an empty target even if there is no packages defined in the
source tree. Such case can happen when building in an unbundled branch.
Change-Id: Id8b94bc00557cd5ea2066859e440427474ced5f5