Commit graph

11378 commits

Author SHA1 Message Date
Jiyong Park
2b77cefa1b Merge "Ensure that PathsForModuleSrc works with prebuilts"
am: 3ed757ab3a

Change-Id: I264499f517e8fa8501d75336ca97f1083fcad3b4
2019-04-19 20:44:17 -07:00
Jiyong Park
3ed757ab3a Merge "Ensure that PathsForModuleSrc works with prebuilts" 2019-04-20 02:40:19 +00:00
Dan Willemsen
f8b4bdd07a Merge changes from topics "obsolete_broken_dup_copy_headers", "obsolete_broken_phony_targets"
am: 49495ee63f

Change-Id: Iaa35295b6e69383278c080090fa314eeff115bd1
2019-04-19 17:07:04 -07:00
Treehugger Robot
49495ee63f Merge changes from topics "obsolete_broken_dup_copy_headers", "obsolete_broken_phony_targets"
* changes:
  Obsolete BUILD_BROKEN_DUP_COPY_HEADERS
  Obsolete BUILD_BROKEN_PHONY_TARGETS
2019-04-19 23:56:14 +00:00
Yi Kong
bafbdf4239 Merge "Switch to clang-r353983c"
am: db52ce88b0

Change-Id: I80437802cdb52b22bad0e2c67f57b596cc75451a
2019-04-19 16:30:25 -07:00
Yi Kong
db52ce88b0 Merge "Switch to clang-r353983c" 2019-04-19 21:55:45 +00:00
Dan Willemsen
2fbb7571bf Obsolete BUILD_BROKEN_DUP_COPY_HEADERS
There are no remaining users.

Test: treehugger
Change-Id: If8719480f73a8fa009d9733479390d2abd4021b1
2019-04-19 11:22:27 -07:00
Dan Willemsen
6097746769 Obsolete BUILD_BROKEN_PHONY_TARGETS
There are no remaining users.

Also mark BUILD_BROKEN_ANDROIDMK_EXPORTS and BUILD_BROKEN_ENG_DEBUG_TAGS
as deprecated in scripts/build_broken_logs.go

Test: treehugger
Change-Id: If7892bef1b9001f12a99565f886b395cf1985e70
2019-04-19 11:16:52 -07:00
Colin Cross
44619bfa34 Merge "Get default sdk_test.go values from config"
am: 9820aa6cc8

Change-Id: I95da16462ea8c1d3d4eeeb6c0c8fb3b57d2dd059
2019-04-19 10:34:21 -07:00
Treehugger Robot
9820aa6cc8 Merge "Get default sdk_test.go values from config" 2019-04-19 17:13:29 +00:00
Yi Kong
09ecee7686 Switch to clang-r353983c
Test: TreeHugger
Bug: 129712936
Change-Id: I15f1db69de86ad8b9f2a0ae086fa2df87835948a
2019-04-19 16:23:18 +00:00
Jiyong Park
581569e4cc Fix: PathsForModuleSrc does not work for a replaced dependency
am: f2976304f7

Change-Id: Id542e5aec1aa6ea0e69e6af0f93a3440885924d8
2019-04-19 02:04:49 -07:00
Jiyong Park
d4671111ef Ensure that PathsForModuleSrc works with prebuilts
prebuilt_test is amended to ensure
f2976304f7 is not broken.

PathsForModuleSrc is called to check if the file is from correct module
(either from source or prebuilt module)

Bug: 130627486
Test: m

Change-Id: Ic5f467fbc2837727df92102530687e967cd5529f
2019-04-19 17:57:33 +09:00
Jiyong Park
f2976304f7 Fix: PathsForModuleSrc does not work for a replaced dependency
PathsForModuleSrc does not work if a source module is replaced with a
prebuilt module. This is because the function uses GetDirectDepWithTag
with the name of the original source module. Since the dependency is
replaced and the prebuilt module has the name "prebuilt_<name>", the
search always fails.

Fixing this by re-implementing GetDirectDep* functions inside Soong
using VisitDirectDep.

Bug: 130627486
Test: m
Change-Id: I68d52668283c429d5e93c7f2c81f6a8db1f24893
2019-04-19 13:48:33 +09:00
Dan Willemsen
8fa04304e7 Merge "TARGET_FS_CONFIG_GEN is a list, not a single path"
am: 3c4a9159c9

Change-Id: Ia352f2354235fae711d37a8f059ec01d2b0d8b5d
2019-04-18 12:48:20 -07:00
Treehugger Robot
3c4a9159c9 Merge "TARGET_FS_CONFIG_GEN is a list, not a single path" 2019-04-18 19:37:49 +00:00
Colin Cross
60405e50f8 Get default sdk_test.go values from config
This will help avoid merge conflicts between branches that have
additional default libraries.

Test: sdk_test.go
Change-Id: I98d5b8b2ea939df7ef57686f3bd913d6a21edc5d
Merged-In: I98d5b8b2ea939df7ef57686f3bd913d6a21edc5d
2019-04-18 12:35:16 -07:00
Dan Willemsen
e66d6878a4 Merge "Dump make deprecation status to logs"
am: 5ac11b7439

Change-Id: Ic767bb51cae29dfda7bb4b4320cc3ea0be512417
2019-04-18 10:59:08 -07:00
Dan Willemsen
5ac11b7439 Merge "Dump make deprecation status to logs" 2019-04-18 17:44:19 +00:00
Dan Willemsen
54879d193e TARGET_FS_CONFIG_GEN is a list, not a single path
Bug: 130787336
Test: m oemaids_header_gen oemaids_headers passwd group
Test: Set TARGET_FS_CONFIG_GEN to a list of paths
Change-Id: Ic1f7d38239f3f805ca0723c24005d3e18a811870
2019-04-18 17:16:41 +00:00
Pirama Arumuga Nainar
93b008e5b8 Merge "Revert "Revert "Enable lld for windows"""
am: cd9a1e2e73

Change-Id: Ib112923a601eebe26a95a5f8a714b2d862c2c6d6
2019-04-18 08:43:12 -07:00
Pirama Arumuga Nainar
cd9a1e2e73 Merge "Revert "Revert "Enable lld for windows""" 2019-04-18 15:26:42 +00:00
Colin Cross
c1afb65520 Add support for prebuilt java_sdk_library modules
am: 79c7c26d8a

Change-Id: I479bbe64cadae218aa3e373726f9376e5d9bdfcf
2019-04-17 15:08:40 -07:00
Dan Willemsen
368e55671b Dump make deprecation status to logs
So that the output of build_test can be parsed to understand which
devices need changes.

Test: read out/soong.log
Change-Id: I40b25527ef72e3f646c0cfe62114b452fa3f27f6
2019-04-17 14:44:33 -07:00
Colin Cross
79c7c26d8a Add support for prebuilt java_sdk_library modules
Add java_sdk_library_import for use when a java_sdk_library may
be used by unbundled branches that do not have the project that
contains the original java_sdk_library module.

Bug: 130287656
Test: m checkbuild
Change-Id: I62df4bccc0da95ed6c8b31dab8f2c32cc3215e9e
2019-04-17 11:28:34 -07:00
Jiyong Park
9e4d9a2ccd Merge "Fix: HideFromMake is not registered to llndk_* module types"
am: 587fb4de9a

Change-Id: If0bcd3d4a523a5867b28f787578dd192c8bfd68b
2019-04-17 07:58:32 -07:00
Treehugger Robot
587fb4de9a Merge "Fix: HideFromMake is not registered to llndk_* module types" 2019-04-17 14:40:17 +00:00
Paul Duffin
2b9f534fba Merge "Rename -extra-deps to --extra-static-libs and add --extra-libs"
am: 38b122021a

Change-Id: I62fc265b7984d1a10742fdd5181fca2f92ab8ea6
2019-04-17 07:22:47 -07:00
Paul Duffin
38b122021a Merge "Rename -extra-deps to --extra-static-libs and add --extra-libs" 2019-04-17 14:06:48 +00:00
Colin Cross
414d337702 Merge "Use LoadHook to create modules in java_sdk_library"
am: 59d4a31063

Change-Id: Iba2f8ad6b58e90e4bb703ff0f0900da146d85e72
2019-04-17 01:41:33 -07:00
Treehugger Robot
59d4a31063 Merge "Use LoadHook to create modules in java_sdk_library" 2019-04-17 08:28:36 +00:00
Jiyong Park
5e676fe9f0 Fix: HideFromMake is not registered to llndk_* module types
llndk_* module types are not initialized via cc.Module.Init(). As a
consequence, mutated properties like HideFromMake, etc. were not
registered and this caused problem when the mutated properties are set
by one of the mutators like the sanitizerMutator. Specifically, both
asan and non-asan variant of an llndk_header were both exported to Make
although HideFromMake was set to true for the non-asan variant.

Fixing this bug by explicitly registering BaseProperties struct which
contains the mutated properties.

Bug: 130652996
Test: Following works:
$ lunch aosp_cf_x86_pasan-userdebug
$ mkdir frameworks/native/test && mkdir frameworks/native/test/include
$ cat > frameworks/native/test/Android.bp
llndk_headers {
    name: "test_headers",
    export_include_dirs: ["include"],
}
^D
$ SANITIZE_TARGET='address' make

Change-Id: I44e3668460448d79382617df61171b0ab5b4d98d
2019-04-17 13:17:47 +09:00
Colin Cross
676f488b72 Merge "Allow guava to use java_host_for_device"
am: 44d5d22db6

Change-Id: Ib2dd2bc337fc02442fb04a3938e98fb047ebf297
2019-04-16 16:28:46 -07:00
Pirama Arumuga Nainar
6d8c0a50bc Revert "Revert "Enable lld for windows""
This reverts commit 61166dc047.

One difference from the earlier change is that import libraries are now
using the '.lib' extension instead of '.a' to prevent clash with
AdbWinApi.a.

Bug: http://b/110800681

The following flags that the binutils linkers support are not
available in lld for Windows:
  -soname
  --no-undefined
  -rpath

Windows also uses "import libraries", which are stub libraries used only
for linking.  The binutils linkers accepted a DLL and treated them as an
import library.  But lld issues the following error:

  lld-link: error: ...DLL: bad file type. Did you specify a DLL instead
  of an import library?

To resolve this, pass '-out-implib=libFoo.lib' to lld when linking
libFoo.dll to get lld to generate an import library.  Add libFoo.lib as
an implicit output to the 'ld' build rule.

Rewrite the shared libraries when building a library/binary to use the
import library instead of the DLL.  As a side-effect, this also uses the
newly-created AdbWinApi.lib that's alongside
development/host/windows/prebuilt/usb/AdbWinApi.dll

Test: Run Windows tests (go/android-llvm-windows-testing) and check
absence of regressions.  Also check that the following commands pass:
      $ adb.exe devices
      $ fastboot.exe devices

Change-Id: I34e07d345e0207086ac8e8ea12525d8c322b20fd
2019-04-16 16:22:03 -07:00
Colin Cross
44d5d22db6 Merge "Allow guava to use java_host_for_device" 2019-04-16 23:14:12 +00:00
Colin Cross
f8b860a0fb Use LoadHook to create modules in java_sdk_library
Creating new modules in a mutator is dangerous, as other mutators
that need to see the new modules may already have run, in this case
the prebuilts mutator.  Move SdkLibraryMutator to a LoadHook instead.
Also moves registering the LoadHook mutator to testing.go so it is
registered for all tests.

Test: m checkbuild
Change-Id: I08bd76a0e6205d2ca27861058067a1562c339eed
2019-04-16 21:46:28 +00:00
Patrice Arruda
500f586c53 Merge "Soong: Add synopsis to ndk_* modules."
am: 8196356248

Change-Id: Ibc6feab13e7b3bc08983def893d15a770ab61451
2019-04-16 09:28:43 -07:00
Patrice Arruda
8196356248 Merge "Soong: Add synopsis to ndk_* modules." 2019-04-16 16:14:46 +00:00
Patrice Arruda
7ac9db2012 Merge "Soong: Add synopsis to several modules under the cc package."
am: 3cbdeddaf0

Change-Id: Ideab6818d25905e1484f4ce0b5253a98248ca562
2019-04-16 09:07:48 -07:00
Patrice Arruda
3cbdeddaf0 Merge "Soong: Add synopsis to several modules under the cc package." 2019-04-16 15:43:55 +00:00
Paul Duffin
babaf07b13 Rename -extra-deps to --extra-static-libs and add --extra-libs
Allow callers of pom2bp to add dependencies on runtime libraries as
well as static libraries. Renames -extra-deps to --extra-static-libs
to make it clearer what it does.

Bug: 130287656
Test: prebuilts/sdk/update_prebuilts.py --stx 5280039
      prebuilts/misc/common/androidx-test/update-from-gmaven.py

Change-Id: I8a3ee8056aa4ed9935a4f47d563ec423672cf38b
2019-04-16 11:55:48 +01:00
Colin Cross
97add50354 Allow guava to use java_host_for_device
Guava can't compile against a device bootclasspath, it uses methods
that only exist in the host bootclasspath, and then avoids calling
them at runtime.

Bug: 130306229
Test: m checkbuild
Change-Id: I012030cb701c01ea9ff554c1b6156d0242365a4c
Merged-In: I012030cb701c01ea9ff554c1b6156d0242365a4c
Exempt-From-Owner-Approval: cherry pick
(cherry picked from commit b5191a573d)
2019-04-15 21:44:51 -07:00
Jaewoong Jung
6d48aa4186 Merge "Embed CSS entries in soong_build.html."
am: 0a0b3fa605

Change-Id: Ic5e983e1e7698a2fcea0c7a212680fe172ddf391
2019-04-15 18:04:15 -07:00
Colin Cross
4315944c16 Merge "Make makevars deterministic"
am: a88fbdef78

Change-Id: I3049dbbf63e9f889734a6d24e147a4024a1f03a3
2019-04-15 18:03:41 -07:00
Treehugger Robot
0a0b3fa605 Merge "Embed CSS entries in soong_build.html." 2019-04-16 00:49:18 +00:00
Treehugger Robot
a88fbdef78 Merge "Make makevars deterministic" 2019-04-16 00:43:35 +00:00
Dan Willemsen
e71c0691ad Convert yacc to a single RuleBuilder rule
am: 4e0aa23dd3

Change-Id: I5d629683fa99cbbc0b6f97517a1cb9c5e8c6bb89
2019-04-15 17:24:18 -07:00
Dan Willemsen
b933c57635 Support RuleBuilder.Sbox to wrap commands in sbox
am: 633c502295

Change-Id: Ica1be18f391e583cc98317dedd06f41c27afed9c
2019-04-15 17:24:01 -07:00
Jaewoong Jung
5f867c0580 Embed CSS entries in soong_build.html.
This will prevent it from being affected by future css location changes.

Test: m soong_docs
Fixes: 130567020
Change-Id: I80fd7b8a12a32bcea7b270423b8d8f8dc0976177
2019-04-15 15:21:55 -07:00
Dan Willemsen
4e0aa23dd3 Convert yacc to a single RuleBuilder rule
So that <module>/gen/yacc/... is (re)created by a single rule, previous
files are removed, and location.hh is in the build graph when it is
produced.

Test: treehugger
Change-Id: I2f6e47ea07f315e10ae1cb8ad50697e7123d0285
2019-04-15 14:52:05 -07:00