| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
Extract Soong's install path and put it in the generated Android.mk file
so that tests get installed in the correct place.
Change-Id: Id4726855c5677855406de20773a5da533bdd4cea
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Refactor all of cc in order to use composition instead of inheritance.
All cc module types exported by cc are now *cc.Module objects, with
compilation, linking, and installing steps delegated to different
objects in order to form the full module type. Additional features that
modify dependencies and flags can be inserted in a features object list,
and custom module types can be created by adding a Customizer object
that can modify properties.
Change-Id: Ie1283d14920f7856f6947b0530606b2f4d58fab0
|
| |
|
|
|
|
| |
Matches changes in I1226f24b50319e321ea538362b2f26fcd227ca39
Change-Id: Iecb2c7388d91fe9975dbe035b5ce6fec8d32a435
|
| |
|
|
|
|
|
|
|
|
|
|
| |
These are the environment variables used by make to override the
llvm/clang prebuilts. As far as I know, these should only be used when
building or testing a new clang drop.
I would have this handled by make and put in soong.variables, but I
expect this to be one of the first options removed from make and
exported from Soong to Kati.
Change-Id: I7a3a70ee44fc4b1e56a5e200e2a7ced77d4c5692
|
| |
|
|
|
|
|
|
| |
Currently, whole_static_libs with missing dependencies are silently
ignored. Instead, when getting the object files from the other module,
add its missing dependencies to the current module.
Change-Id: I12472dede2dfafdded56268bfd37f60063b637c4
|
| |
|
|
|
|
| |
Port of https://android-review.googlesource.com/206366
Change-Id: Ife2e0ab84de839ea73744cb65f995a11e3145304
|
| |
|
|
|
|
|
|
|
|
| |
Build binaries usable on older machines even if older SDKs are not
installed. Older SDKs can no longer be installed on newer Xcode
versions.
Port of https://android-review.googlesource.com/207242
Change-Id: If66f2eef7593bce9fb858fc7b71369f55dd362e4
|
| |
|
|
|
|
| |
Port of https://android-review.googlesource.com/207241
Change-Id: Idad81a528a2104579de0225b0724bb81293eea44
|
| |
|
|
|
|
| |
Match the order we use in make.
Change-Id: I7959f72841bd058b13d6c8fc6efb3c78b5de9d35
|
| |
|
|
|
|
| |
This matches make
Change-Id: I2ee2e47065439afa02b946ede3a7718f1a8dc71b
|
| |
|
|
|
|
|
|
|
|
|
| |
In make these clang-specific flags are marked as EXTRA and added after
the common flags.
This was causing differences between compiled objects in make and soong
because -fstack-protector-strong was before -fstack-protector in soong
instead of after.
Change-Id: I59dd6dcfdaf5ec9184a09e79efe80b62cfe48dbb
|
| |
|
|
| |
Change-Id: I4f0f8ec7620e4477f60bf9cf1ae0c005470c89d4
|
| |
|
|
|
|
| |
Soong port of https://android-review.googlesource.com/204887
Change-Id: I15faf62cec1932dd859a082f66942b2606d0ff45
|
| |\
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* changes:
Add system/media/audio/include to commonGlobalIncludes
Add -Werror=date-time to target builds
DeviceUsesClang should default to true
clang now supports -fdebug-prefix-map=.
Turn on ninja errors for duplicate rules
Update to use the latest clang-2629532
|
| | |
| |
| |
| |
| |
| | |
This list now matches the make build system.
Change-Id: Ife723733f269bdcc00a0c2e9096e3e2cb7e6f88e
|
| | |
| |
| |
| |
| |
| | |
Soong port of https://android-review.googlesource.com/195464
Change-Id: I68acfb53be962ffd5c488337517dadb950a13b6f
|
| | |
| |
| |
| |
| |
| | |
Soong port of https://android-review.googlesource.com/204111
Change-Id: Id0569831f09845871d8e6990c310516bea5a2510
|
| | |
| |
| |
| |
| |
| | |
Soong port of https://android-review.googlesource.com/204812
Change-Id: Ib6c94bc57f7145c1cc9b14338126132fc4648509
|
| |/
|
|
|
|
| |
Soong port of https://android-review.googlesource.com/195737
Change-Id: I9ab6dc149c258f7642bc36c3fa32f90ff7ee51a4
|
| |
|
|
|
|
|
|
|
| |
Sandy Bridge actually doesn't have all of these options. For example AVX is only
available on the higher-end SKUs (not on Celeron G550).
Soong port of https://android-review.googlesource.com/204730
Change-Id: Ib595a9a6b464626d0c88525c6aaa4d69176645cc
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Now, instead of combining multiple binaries into a single BUILD_PREBUILT
definition, use separate instances for every module variant. This fixes
HOST vs HOST_CROSS prebuilts, and should be saner overall. From make,
these should look the same, we're only just using one instance of
prebuilt_internal per BUILD_PREBUILT call instead of multiple.
With that simplification, we don't have to store as much state, and can
directly write into the buffer.
Also switch from io.WriteString to fmt.Fprintln, which will require
fewer explicit string concatentations, and we don't need to worry about
newlines.
Allow the module-provided functions to return errors.
Change-Id: If30453b21fa21387f635626618d8fabfc78e6859
|
| |
|
|
|
| |
Bug: 26957718
Change-Id: I5cfa2f44c27eac0805d21865c45546ed3c2c2103
|
| |
|
|
|
|
| |
Don't use clang cflags if the device uses clang by default.
Change-Id: Ice8474ae1f5e6f37fc8b47b1679d7fbdb9249e5a
|
| |
|
|
|
|
| |
Otherwise we're missing -m32 and -m64 in x86/x86_64 builds.
Change-Id: If63cc6ce12795921584437e4cee4530c0dfb634f
|
| |
|
|
|
|
| |
Like make, it needs -fPIC to be added to compile successfully.
Change-Id: I1d6f1388c42a84f331bbce1ecd669669441d986e
|
| |
|
|
|
|
|
|
|
| |
We should be using libprofile_rt for clang builds, but we only need to
add either one if code coverage is enabled. This will be added again
when we get more complete support.
Bug: 26525326
Change-Id: Ic3da07c896be266bb35747a79c184e3d5bb8df70
|
| |
|
|
|
|
|
|
| |
Move the clang extra flags into the *ClangGlobal*flags variables,
instead of adding them to every clang-based module. This means that
they're only applied when !no_default_compiler_flags, like make.
Change-Id: I43b1378d1d932d9aecfd8724a492d0d7716f7631
|
| |
|
|
|
|
| |
This pulls a number of cflag changes from make since our last sync.
Change-Id: I8c77fc215ed7677b8ac15a6d39143b519068dd55
|
| |
|
|
|
|
|
| |
Some branches may not include libnativehelper, or anything that depends
on jni.h
Change-Id: Id8bb9c101aecfacc5d62048818ea0c1c88b7d77c
|
| |
|
|
|
|
|
|
|
|
| |
That way we get the other special cc_test features (test_per_src,
multilib-both default, nativetest install path).
Restrict test_per_src to CCTest instead of allowing all CCBinaries to
use it.
Change-Id: I767540841fe5d1f9755883ee7c3d1f24004f9631
|
| |
|
|
|
|
|
| |
This roughly matches what make uses, but with less string parsing.
Also use a full path to "ar", so that we can depend on it.
Change-Id: I5e9d4c06b6cbbbfbf93e563dace128943db21b02
|
| |
|
|
|
|
|
|
| |
Explicitly allow installation into the data partition instead of using
"../data" for tests. At the same time, pipe through the information
required for vendor modules.
Change-Id: I6baf9d828c285e1080e43074beef8aebdbb38875
|
| |
|
|
|
|
|
|
| |
Only add them to the global C include paths if they exist. And make sure
to set up proper dependencies so that we notice when they are added or
removed.
Change-Id: Ia9df14f6ae6869927ad3d3a15fb5a8081f616a81
|
| |
|
|
|
|
|
|
|
| |
Unbundled builds may use a subset of the tree, which can bring in unused
modules but not their dependencies. Delay handling of dependency errors
for unbundled builds to ninja time, which will prevent errors if only
modules with satisified dependencies are built.
Change-Id: Ib93bae93fcfa0b55df500a30d8e35231ffb0987c
|
| |
|
|
|
|
|
| |
Add __BRILLO__ to global cflags when building for a brillo product.
Bug: 26165350
Change-Id: I0100a8821b763075d1873d0d48fd5bd217afb580
|
| |
|
|
|
|
| |
See build/ commit da9c00da5f7b
Change-Id: I65878931ab61124ae75e2c738cc733adfb107afc
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This centralizes verification and common operations, like converting the
path to a source file to the path for a built object.
It also embeds the configuration knowledge into the path, so that we can
remove "${SrcDir}/path" from the ninja file. When SrcDir is '.', that
leads to paths like './path' instead of just 'path' like make is doing,
causing differences in compiled binaries.
Change-Id: Ib4e8910a6e867ce1b7b420d927c04f1142a7589e
|
| |
|
|
|
|
|
|
|
|
|
|
| |
In order to validate that the NDK STL paths exists, we need to know
the full path, including the Gcc version during the go execution. So
instead of returning a ninja variable reference, just return the
contents of the variable.
This also fixes a few invalid uses of armGccVersion to the proper
variable.
Change-Id: I54398ba4aa4000235b7d537a2c4efe3ecbbeec8b
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Darwin's ld does not support --version-script, but it does support
-unexported_symbols_list, -force_symbols_not_weak_list, and
-force_symbols_weak_list that all take files as arguments.
Instead of expecting these to be added to the ldflags manually, add
properties for them so that the dependencies are handled appropriately.
Also sanity checks the darwin vs non-darwin usages early, so that the
error message is faster and more obvious.
Change-Id: I42526cc4367b6ea9adfdbb58753e12824e8c321c
|
| |
|
|
| |
Change-Id: I96daa69af27bd19c8bfbe327a1318f51c738fc03
|
| |
|
|
| |
Change-Id: I8faf5a245f61fc412ba617ac762831d9fcdb8e73
|
| |
|
|
|
|
| |
This looks cleaner when we need to enable windows builds for modules.
Change-Id: I61553e2124e08002b0bd9e35c1406c905718f2f7
|
| |
|
|
|
|
|
|
| |
This defines another mutator between HostOrDevice and Arch that will
expand host modules into a module for each host type
(Darwin/Linux/Windows) that is currently being built.
Change-Id: I4c8ac6b616c229f6bd45ad8a35902652fb6a4fff
|
| |
|
|
| |
Change-Id: I2b4adbc1a1568b66515243005beda2c56a4a0519
|
| |
|
|
| |
Change-Id: Icb05292877a60939542ce09d9774e4b9d1353502
|
| |
|
|
| |
Change-Id: Ib0f31d147546ae187697867c6a0b937266bb9b39
|
| |
|
|
| |
Change-Id: I28e78cd49b184e0aa50c1c562b6bf719300e0832
|
| |
|
|
|
|
|
|
| |
x86 crt partial ld steps need to pass -m32 through ldflags. Use gcc to
run partial ld instead of going directly to ld. Allows reusing
ToolchainLdflags, which have linker arguments prefixed with "-Wl,".
Change-Id: I1e01ca5831061a11c9f550ab198d8e5b8dccf8bd
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Some cflags are part of the toolchain selection and should not be
removed by no_default_compiler_flags = true, for example -m32 for x86
compiles. Removing all the cflags results in hacks such as in crt.mk
where the bare minimum cflags are reinserted.
Add new toolchain interface functions ToolchainCflags, ToolchainLdflags
and ToolchainClangCflags that will always be used.
Change-Id: I0ba02d7611e2afb9ad913319740e00c1bb2d654c
|
| |
|
|
| |
Change-Id: I8997bc4d765a18c789f2926da26610178a57be74
|