Add -Wa,--noexecstack and -Wl,-z,noexecstack as default
flags when compiling applications. This enables NX
protections, which prevent code from executing on the
stack or heap. NX protections can block a large number
of buffer overflow attacks, and is an important security
feature.
Change-Id: Iad4bab9f8664584ba6ce832a5318d07680d7a908
* Added mappings for most of the libraries that didn't already
have them (as observed from my build).
* Re-canonicalized all the offsets in the mappings file,
per the official policy of keeping things megabyte-aligned.
* Added comments on each line indicating what size the library
actually appeared to be in my build (to help with future rejiggerings).
* Added a bit of documentation about the whole deal.
Even with this change, I know there are other libraries that will
still need to be included, but I think what I have here is a good
step. Also, this change only reserves room for the new libraries, but
subsequent changes (in other subprojects) are required to actually
start prelinking the new libraries. Those changes will be forthcoming
as well.
Bug: 2651381
Change-Id: I7a06382fc2b8a14bbd3261de58df3f8a31e4108e
Static libraries that include other static libraries were being incorrectly
built with .a files inside the top level .a file, as well as the .o files
that were extracted from the component .a files. This patch fixes the
final ar call to only add .o files to the archive.
Change-Id: Ic1ff025129e3c379fa56b4da2f09e9f16ea3c4fb
Merge commit 'ae4e14556bb3a789c4263ebba7ed42b3035e13f6' into kraken
* commit 'ae4e14556bb3a789c4263ebba7ed42b3035e13f6':
Adapt to new location of libcore
Make expr more POSIXy
generic_x86 support
Remove obsolete machine-setup.html reference.
For Mac OS uses BSD sed, it doesn't support "\n". Then, "make modules"
command cannot work correctly under Mac OS. Using tr command to replace
sed command, it has the same behavior under both Mac OS and Linux.
Change-Id: I29e044cc66bf24f6459cbb33164fd9f55f772e3c
A package can define a LOCAL_LDFLAGS. If a LOCAL_LDFLAGS
exists, it should come after the global LDFLAGS, to allow
the local flags to override the global flags.
Change-Id: I6e44c17949c1f11c808d0ed3f327d63fb51a1468
Merge commit '381ee392e8ebba35cb65321415f4cdb537b446ed' into kraken
* commit '381ee392e8ebba35cb65321415f4cdb537b446ed':
Support building Windows SDK under Linux.
- envsetup.mk & config.mk: we define a new BUILD_OS and a minimal set
of things like BUILD_OUT to be able to use some local tools when
doing cross-compilation. This allows us to use the Linux version of
ACP when cross-compiling the tools to Windows.
- Makfile: include windows_sdk.mk when needed to build a Windows SDK.
- main.mk: support a win_sdk target (e.g. PRODUCT-sdk-win_sdk)
(Merge master Change I9d08d0df)
Merge commit '966c7355c3705095532bcc71ae6d893bdbe3531d' into kraken
* commit '966c7355c3705095532bcc71ae6d893bdbe3531d':
Add clean step for SDK version change.
Everywhere we build...
Froyo is now Android 2.2, API 8.
This breaks the YouTube prebuilt (yay prebuilts!) but little else.
Does this mean we are becoming mature?
Change-Id: I15d228d57853a0dfabc47dda253d55339a5b3d17
http://b/issue?id=2451361
With this CL, you can inherit a testing package to test a inheriting package.
Note: we change the meaning of $(5), so we need to change any existing calls
to inherit-package in other projects.
Change-Id: I673155d1b8b6006953d14e1ab87066536ebd1e54
Store a dump of the desired uid/gid/mode for every system file in the
target_files zip. Modify ota_from_target_files to use this stored
information when it is available, instead of running fs_config from
the current client (which might be out of sync from the one where the
target_files zip was built).
b/2516887 - New android_filesystem_config.h needed
Change-Id: I8409a0265d1d50daad9c2bc033c99b74b8931b20
This adds "-lpthread" to TARGET_GLOBAL_LDFLAGS when TARGET_SIMULATOR
is true. This is much easier than inserting it into individual
makefiles as needed. Has no effect on other builds.
Should fix the sim-eng build breakage in libcameraservice.
Change-Id: I4dcd7d54b93d1be1622b8ce78a1662d28ca9f9f2
I found these kicking around my system/app with old timestamps, and old
packages just cause trouble. Depending on the build flavor they may or
may not still be there, but it's harmless to clean them.