Commit Graph

13141 Commits

Author SHA1 Message Date
Pirama Arumuga Nainar 6f8716cf42 Merge "Revert "Revert "Enable lld for windows""" am: cd9a1e2e73
am: 93b008e5b8

Change-Id: I7efda949709415f333db20b78eca6a358ebe30e6
2019-04-18 08:47:41 -07: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 a2181fdc2d Add support for prebuilt java_sdk_library modules am: 79c7c26d8a
am: c1afb65520

Change-Id: Ia26c7f53332a4821218476d6c796f7ab39928b87
2019-04-17 16:03:54 -07: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
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 55646a3ca3 Merge "Fix: HideFromMake is not registered to llndk_* module types" am: 587fb4de9a
am: 9e4d9a2ccd

Change-Id: I094794d9e54002e1c3e6309f8609193d8c25daad
2019-04-17 08:03:40 -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 0018e7f48b Merge "Rename -extra-deps to --extra-static-libs and add --extra-libs" am: 38b122021a
am: 2b9f534fba

Change-Id: I1a607c72ad7f1a71b7dcc0aa216beee2b868776f
2019-04-17 07:32:57 -07: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 f449d2aedb Merge "Use LoadHook to create modules in java_sdk_library" am: 59d4a31063
am: 414d337702

Change-Id: Ide9449f45066883662d05946fbbd43b142ec208f
2019-04-17 01:46:32 -07: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 54f4042eae [automerger skipped] Merge "Make makevars deterministic" into qt-dev
am: 5cd481adde -s ours
am skip reason: change_id I4153977705da05a5c73e641f93d02f408209c897 with SHA1 91268c668c is in history

Change-Id: I4bdc6ccd4d9b688d4dd7a7faa170d33b9f8f8d98
2019-04-16 19:25:47 -07:00
TreeHugger Robot 5cd481adde Merge "Make makevars deterministic" into qt-dev 2019-04-17 00:23:03 +00:00
Colin Cross 512abc6448 [automerger skipped] Merge "Allow guava to use java_host_for_device" am: 44d5d22db6
am: 676f488b72 -s ours
am skip reason: change_id I012030cb701c01ea9ff554c1b6156d0242365a4c with SHA1 b5191a573d is in history

Change-Id: I7367bb0fe24d1829b31dd94803972f1183e7d582
2019-04-16 17:11:22 -07: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 1bdf650bb1 Make makevars deterministic
Sort map keys before iterating over them to produce makevars.

Bug: 130411407
Test: m checkbuild
Change-Id: I4153977705da05a5c73e641f93d02f408209c897
Merged-In: I4153977705da05a5c73e641f93d02f408209c897
(cherry picked from commit 91268c668c)
2019-04-16 14:50:10 -07: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
Jaewoong Jung 37ce25e85e [automerger skipped] Merge "Embed CSS entries in soong_build.html." into qt-dev
am: cf0caaa98d -s ours
am skip reason: change_id I80fd7b8a12a32bcea7b270423b8d8f8dc0976177 with SHA1 5f867c0580 is in history

Change-Id: I620c95cedfbaef08b376356b8ea16b248e398ebe
2019-04-16 14:03:52 -07:00
Colin Cross 36372ca581 Fix missing genrule srcs and tools with ALLOW_MISSING_DEPENDENCIES=true
am: c6de83c8d1

Change-Id: I840fe4a8832f9562655ced294f474f9b0dae88bb
2019-04-16 13:13:16 -07:00
Jaewoong Jung cf0caaa98d Merge "Embed CSS entries in soong_build.html." into qt-dev 2019-04-16 19:56:40 +00:00
Jaewoong Jung 892c512fd8 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
Merged-In: I80fd7b8a12a32bcea7b270423b8d8f8dc0976177
(cherry picked from commit 5f867c0580)
2019-04-16 11:38:05 -07:00
Patrice Arruda 9761b49928 Merge "Soong: Add synopsis to ndk_* modules." am: 8196356248
am: 500f586c53

Change-Id: Iccbbcf20c3ed0f9f29179e61527aada54ad057a7
2019-04-16 09:31:26 -07: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 7e83210077 Merge "Soong: Add synopsis to several modules under the cc package." am: 3cbdeddaf0
am: 7ac9db2012

Change-Id: If1c72243e37ad40e938029777386800287e71e0c
2019-04-16 09:12:53 -07: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 c6de83c8d1 Fix missing genrule srcs and tools with ALLOW_MISSING_DEPENDENCIES=true
Set the location label for missing srcs and tools to avoid
nonsensical errors when parsing the command.

Cherry-pick note: Being cherry-picked to qt-dev to fix unbundled -qt
builds, see b/130588113.
Bug: 130588113

Test: genrule_test.go
Test: paths_test.go
Test: unbundled branch with missing framework-res module needed by robolectric genrule
Change-Id: I9c1f1cd82a80f048c0e903b8e93910b1ae34b0b1
(cherry picked from commit ba71a3fb11)
2019-04-16 09:39:09 +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
Colin Cross bd9183c02b Merge "Allow guava to use java_host_for_device" into qt-dev-plus-aosp 2019-04-16 03:35:50 +00:00
Jaewoong Jung a7d23ae804 Merge "Embed CSS entries in soong_build.html." am: 0a0b3fa605
am: 6d48aa4186

Change-Id: I0e162fdc0eabafc152686f637436b41295540935
2019-04-15 18:17:14 -07:00
Colin Cross 3b4319f2a9 Merge "Make makevars deterministic" am: a88fbdef78
am: 4315944c16

Change-Id: Ibca9e4b4a685ad0debde6972ec311c2f038071d5
2019-04-15 18:16:42 -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
Dan Willemsen c74ce7d85f Convert yacc to a single RuleBuilder rule am: 4e0aa23dd3
am: e71c0691ad

Change-Id: I8e5b153cfeb7887777065dc8ee33d04dda36e613
2019-04-15 17:51:03 -07:00
Dan Willemsen 891af48379 Support RuleBuilder.Sbox to wrap commands in sbox am: 633c502295
am: b933c57635

Change-Id: I07cb4998e8d860f97c4ae00f9f776744cc8a5adf
2019-04-15 17:50:48 -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