We need to know instruction set featues at runtime as well so that the
apps get compiled on target with the proper features. The properties are
read by installd and passed to dex2oat.
Bug: 16716262
(cherry picked from commit 28be9d8884)
Change-Id: I45b363558dea17e9b049e4a83a55990b4911d9d8
Improves performance for LOCAL_WHOLE_STATIC_LIBS by copying the first .a
to the new .a rather than extracting and recreating
Change-Id: Iecdb5e4bb2ce987bb41a70c3393d18a6d72ae689
We should probably try to remove these files completely, but this at
least takes care of the stuff that's completely obsolete.
Change-Id: Ic71b7b491c119963068294e258dc6afe5a45b40d
There were a few cases that my_clang was being used without being
stripped. This was causing uses like the following to fail because it
would be partially applied (use clang as the compiler, but don't strip
out incompatible cflags).
LOCAL_CLANG := true # explanation
To avoid this problem in the future, just strip my_clang when it is
assigned.
Change-Id: I41c2f36a4d4c3aa305a25b4a151c066dad5ffe0f
This fixes mips unbundled build since we switched to mips64el toolchain
for both mips and mips64.
TODO: multilib build support.
Change-Id: I7add92d2cecfc3ab739785ceef6700240a25093a
Since we switched to $(HOST_OUT)/lib64 for 64-bit libraries and
$(HOST_OUT)/lib for 32-bit libraries.
Change-Id: Ie43bc03c37e2ac8542412a7543a6af5d60c6f725
If WITH_DEXOPT_BOOT_IMG_ONLY=true and WITH_DEXPREOPT=true then we will
only preopt the boot.art and boot.oat files, leaving everything else to
be compiled at first boot. This has fast startup times of WITH_DEXPREOPT
but has a smaller space usage and allows one to update the non-image
parts of /system without reflashing.
Bug: 16938924
Change-Id: Ib366b6b5ad80f7078f01bf51f9fbc29ea7e5d777
We've been using -fPIC and -fPIE together in the global cflags all this
time. These options are incompatible. The only reason we haven't been
hit by this before is because of the forced -Bsymbolic in GCC. To fix
this, pass -fpic when compiling objects for shared libraries and -fpie
when compiling objects for executables. For static libraries, also use
-fpic. We have to do this because static libraries might be included in
either a shared library or an executable. Code compiled with -fpie
cannot be included in a shared library, but code compiled with -fpic
may be included in an executable.
We've also been using -fpic and -fPIC together. These are different
options, and only the latter will take effect.
http://stackoverflow.com/a/967010
The final thing this fixes is that we had -f(PIC|PIE) flags being passed
to link commands. These are compile time flags, and don't do anything at
link time.
Bug: 16823325
Change-Id: Ic76f47e63dc2c81b7e1a8058bae1b3dc8565d606
Change DexPreOpt to include patch information of all compiled files so
we can relocate at runtime.
Bug: 15358152
Change-Id: Ibe92d8b55a24bbf718b0416a21b76e5df7a2de26