on some toolchains and architectures building non-PIC
code renders more efficient assembly
Bug: 29635686
Change-Id: I6274f40d24e1bb43f03b45c60b5487abed02b7fc
Signed-off-by: Alexey Polyudov <apolyudov@google.com>
The introduction of java.lang.invoke.MethodType and its supporting
classes, in particular.
bug: 30550796
test: make checkbuild
Change-Id: Id2b84d3bb911f4bc5aef0761d357b1e9121030ab
Anything product specific in here should be caught by an explicit
dependency, or the command line changing. This drastically reduces the
build time after an installclean.
Before this change, we were re-running all dex2oat commands after each
installclean, even if nothing changed.
Change-Id: I9c735fe2c5d82109d56996021502319179e43671
PRODUCT_AAPT_CONFIG and PRODUCT_AAPT_PREF_CONFIG don't affect the
installed file list, they only affect how some files are built. The
changing command line is already noticed by ninja, so we'll only re-run
the necessary commands instead of a full installclean.
Change-Id: Ib918b2edeefc539b7f88cb22a1d751c397973b1d
We supported de-duplicating LOCAL_INIT_RC across multiple architecture
variants in a single module definition, but that didn't work if the
module was defined with two different BUILD_PREBUILT definitions. That's
how we're exporting modules from Soong to Make.
Change-Id: Ifc93b15ef78ea3d8e78005d428a3ec57d7e414e8
Creates a build_system_stats.txt build artifact that contains statistics
on how many BUILD_* modules are defined in a build. Also writes out
information about the Soong module types sent from the Soong build.
Merged-In: Iaf0c7062f542dc6942b5349854f3d49267cac4a5
Change-Id: Iaf0c7062f542dc6942b5349854f3d49267cac4a5
The list of libraries is currently empty. Will add migrated libraries
in a follow up patch.
Test: Still builds.
Bug: http://b/27533932
Change-Id: Ibd9750620ca2ae86fe888a8a993bd26493bc1c8a
This allows a module to avoid being installed to the common library
directory.
Test: Prevents copying of NDK libraries with the NDK sysroot patches.
Bug: http://b/27533932
Change-Id: I24f11d5a70595bcd524ac5bd85034c226d2de211
This ensures that we're not accidentally linking the wrong version of
a library with the same name thanks to -L.
Test: Still builds.
Change-Id: I22e9e28412844ff4f8bda42ebbc300ea6574e474
* This enables 5 performance related checks:
performance-faster-string-find
performance-for-range-copy
performance-implicit-cast-in-loop
performance-unnecessary-copy-initialization
performance-unnecessary-value-param
* Recognize these new warnings in warn.py.
Bug: http://b/27779618
Change-Id: I7af3fdc262dd44db90d3b62eb37c5eac5a2eaa01
Test: build with WITH_TIDY=1 and run warn.py with build.log
libbrillo-http was actually never used but it was being liked into
delta_generator anyway.
Bug: None
TEST=`lddtree delta_generator` doesn't show librillo-http.
Change-Id: I69ac66c87847d925b5798cf261c79466a3ff432a
This reverts commit ef31fc6477.
It's now using unique_host_soname to use a different installed name,
but keeping the libevent module name.
Change-Id: I1cb6e8e670636089993054236b089da059629da1
Tracks libcore change that adds the first classes from this package
to core-oj.jar. Note that packages need to be whitelisted even if
the classes in question aren't public API.
Test: make checkbuild docs
Change-Id: I917dc63899124ca30bbeb2902787faea6754bb43
Split the variables that contain header directories into ones that
should be prefixed with -isystem and ones that should be prefixed with
-I in preparation for moving some headers from -isystem to -I.
Add $(wildcard) around SRC_HEADERS to match the soong behavior, and move
users of SRC_HEADERS from config.mk to binary.mk so that the exported
soong value is present.
Test: no changes to build.ninja compile rules
Change-Id: Iadecbbf4351a01e53cb57e721d31f4f836bb82d9
* Count new clang-tidy warnings:
google-runtime-references
google-runtime-operator
* Count new clang warnings:
-Wconst-conversion similar to -Wliteral-conversion
-Wundefined-var-template
* Modified static analyzer warning message about
"Null passed to a callee that requires a non-null ..."
* Disable google-runtime-references by default and
disable misc-macro-parentheses in vendor projects;
too many old C/C++ code have this warning.
Change-Id: Ib35e0af85875aada17c92b0237b76cd5ae3bfcc8
Test: build with clang-tidy.
Refactor includes in transform-*-to-o to simplify future changes to the
default include paths.
Test: whitespace-only changes to the compile rules in build.ninja
Change-Id: I766af1f22a4838d933691b6df37530db3ba4e21d
This CL removes the GOMA_HERMETIC setting from goma.mk so that
the default setting will be used. By default, GOMA will fallback
to local compiler if the exactly matched compiler is not available.
Change-Id: I22c83594f6bd30bc8ed1334ab7bb256ef218567b
http://b/28149048http://b/29823425
Disable -Wnull-dereference. The second bug above tracks that this
warning gets re-enabled.
Test: Tested build, boot and common usage for Arm, Arm64, x86, x86_64,
Mips images in AOSP and internal branch.
Change-Id: Ie41a495dd9bb247d3609f4848d7669d1faaeeb79
Test: Tested build, boot and common usage for Arm, Arm64, x86, x86_64,
Mips images in AOSP and internal branch.
Bug: http://b/29823425
Change-Id: I97299c8b41ff9d3ac7019a349aa569609a099233
linker_asan is only needed by shared exectuables, prevent adding it as a
dependency of anything else. Avoids a dependency loop from
linker_asan -> linker -> linker_asan.
Change-Id: Id7744ad8a5901468518fac80741c75e764adb559
Specifying LOCAL_MODULE_SYMLINKS will create symlinks to the installed
module in the same directory.
Change-Id: Idecb2b75f0c9999eb000eed9a79a989244ccf6c2
There's no need to use a different name for target and host modules, and
in Soong, it's better to use the same for both.
Change-Id: Ib2d8d0cc8a1e0f7f95d7c2795a360f02d946fa1a
All instances of this have been removed from the downstream trees. The
APK->JNI_SHARED_LIBRARY and Java->Java checks remain as warnings.
Change-Id: I3eaee284500deee0f26a4f9cdd96497e99ec533e
When Soong was optional, the make build system needed extra complexity
to ignore Android.mk files that had an associated Android.bp file. Now
that Soong is required and the Android.mk files that were obsoleted by
an associated Android.bp file have been removed, remove all of the logic
that found associated Android.bp files. Android.mk files and Android.bp
files are now handled independently.
Change-Id: Ia6643d151b920689219ca8abd59ede44d230ba35
Java code using the SDK should not link to java code built with the
platform APIs or the system SDK. Java code using the system SDK should
not link to the platform APIs either, but it can link to java code using
another SDK.
Change-Id: Iaae0a7e01993cfa1e023649fbd8a7974b5eca709