Commit Graph

3310 Commits

Author SHA1 Message Date
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
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
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
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
e71c0691ad Convert yacc to a single RuleBuilder rule
am: 4e0aa23dd3

Change-Id: I5d629683fa99cbbc0b6f97517a1cb9c5e8c6bb89
2019-04-15 17:24:18 -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
TreeHugger Robot
353222b81d Merge "Fix package path of android/soong/android pctx" into qt-dev 2019-04-12 17:24:18 +00:00
Christopher Ferris
e0728ccb3a Merge "Do not re-export _Unwind_XXX symbols."
am: 41eed99dc7

Change-Id: I71ecd9be29895f799728d341e5407043e4af1812
2019-04-11 21:58:45 -07:00
Christopher Ferris
c3a1e22060 Do not re-export _Unwind_XXX symbols.
Bug: 130267141

Test: All system shared libraries do not contain global _Unwind_XXX symbols.
Change-Id: I79673753bb8197041bfe8ffb016d9f5fdf4cada5
Merged-In: I79673753bb8197041bfe8ffb016d9f5fdf4cada5
(cherry picked from commit cf78867417)
2019-04-11 17:54:48 -07:00
Christopher Ferris
06af038ad0 Merge "Do not re-export _Unwind_XXX symbols." into qt-dev
am: 8f8b1f1746

Change-Id: Ief4cd4264b80acb1c9b553aec2fda275cdd3dde5
2019-04-11 15:48:49 -07:00
Logan Chien
a85b0a12db Merge "Add --llndk for NDK libs as well" am: b10243dc4e
am: 09b2c81f09

Change-Id: Ide2c9829a1fc94ce68884b77005354cabbfaa08a
2019-04-11 11:11:08 -07:00
Logan Chien
09b2c81f09 Merge "Add --llndk for NDK libs as well"
am: b10243dc4e

Change-Id: I4756fb19c5ac88c1897f19f5217326c337a45c86
2019-04-11 09:51:48 -07:00
Logan Chien
62f1f9488e Add --llndk for NDK libs as well
This commit add `--llndk` to the command line option for
`create_reference_dumps.py` as well.

Bug: 124620774
Bug: 130324828
Test: lunch aosp_arm64-userdebug && make
Change-Id: I117864209b8cf8c934fd3aa1086b7691c1c449e3
2019-04-11 05:40:57 +00:00
Christopher Ferris
cf78867417 Do not re-export _Unwind_XXX symbols.
Bug: 130267141

Test: All system shared libraries do not contain global _Unwind_XXX symbols.
Change-Id: I79673753bb8197041bfe8ffb016d9f5fdf4cada5
2019-04-10 19:23:47 -07:00
Colin Cross
713ef2b424 Fix package path of android/soong/android pctx
android/soong/common was renamed to android/soong/android long
ago, but the pctx package path was still "android/soong/common".
This required all users of rules defined in android/soong/android
to import "android/soong/android" and then
pctx.Import("android/soong/common").

Bug: 130298888
Test: m checkbuild
Change-Id: I20d096522760538f7cfc2bec3d4bfeba99b275d4
2019-04-10 16:49:27 -07:00
Patrice Arruda
6ea42118f2 Soong: Add synopsis to ndk_* modules.
Added synopsis to the following modules under cc package:
    * ndk_headers
    * ndk_library
    * versioned_ndk_headers
    * preprocessed_ndk_headers

Bug: b/128337482
Test: Generated the documentation and verified that the synopsis was
added to each of the module.

Change-Id: I2146919528cf039ed9327b3358de5b1bdb28275a
2019-04-09 18:50:44 -07:00
George Burgess IV
5522cbdde4 Merge "Remove our clang-tidy wrapper" am: 45a5a287af
am: ea2835bb72

Change-Id: Ibd66c5dd3850437948ba56682631338881468876
2019-04-05 18:27:39 -07:00
George Burgess IV
ea2835bb72 Merge "Remove our clang-tidy wrapper"
am: 45a5a287af

Change-Id: Ie120d7f322039f6b382769fb68fd1785b3902096
2019-04-05 17:17:25 -07:00
George Burgess IV
c4624c0189 Remove our clang-tidy wrapper
Looks like the reason for it existing has been fixed. It should probably
just be removed.

Bug: None
Test: WITH_TIDY=1 m

Change-Id: I770b2fec4ac44f265ff31731c9c0bd4da14d5b0f
2019-04-04 17:58:00 -07:00
Patrice Arruda
69f5263d51 Merge "Soong: Add synopsis to vndk_prebuilt_shared module under cc package." am: fc453c79f2
am: efd2678e8c

Change-Id: I0d1d31f8bcfb0de7a93118641b182c28068a844b
2019-04-04 17:43:08 -07:00
Patrice Arruda
efd2678e8c Merge "Soong: Add synopsis to vndk_prebuilt_shared module under cc package."
am: fc453c79f2

Change-Id: Ieffcdfeb0fe47af75b0344e0bb2428545ec120fe
2019-04-04 12:01:10 -07:00
Treehugger Robot
fc453c79f2 Merge "Soong: Add synopsis to vndk_prebuilt_shared module under cc package." 2019-04-04 18:51:11 +00:00
Vic Yang
8f68cbd21d Merge "Blacklist more libraries from no-vendor-variant VNDK" am: f3f1467051
am: fba522bd64

Change-Id: Iceb901408082e2a5b85bad18505f4a01c8abbaed
2019-04-04 08:58:20 -07:00
Vic Yang
fba522bd64 Merge "Blacklist more libraries from no-vendor-variant VNDK"
am: f3f1467051

Change-Id: Iba0a4248bfc4e72e470849e3878ca26d9d0906b0
2019-04-04 01:50:54 -07:00
Colin Cross
11fbb890c9 Fix package path of android/soong/android pctx am: cc0ce80ed5
am: a1c57b4664

Change-Id: Ifba10892f902e70bd0a52a82a20bd5f1b64a61de
2019-04-04 01:39:57 -07:00
Treehugger Robot
f3f1467051 Merge "Blacklist more libraries from no-vendor-variant VNDK" 2019-04-04 08:33:02 +00:00
Colin Cross
a1c57b4664 Fix package path of android/soong/android pctx
am: cc0ce80ed5

Change-Id: Ia266af299fe1a0c8b2f9467c845ceb61cb8236bc
2019-04-03 21:21:10 -07:00
Colin Cross
cc0ce80ed5 Fix package path of android/soong/android pctx
android/soong/common was renamed to android/soong/android long
ago, but the pctx package path was still "android/soong/common".
This required all users of rules defined in android/soong/android
to import "android/soong/android" and then
pctx.Import("android/soong/common").

Test: m checkbuild
Change-Id: I20d096522760538f7cfc2bec3d4bfeba99b275d4
2019-04-04 03:59:34 +00:00
Christopher Ferris
2000f21705 Make libc_scudo always go first.
am: 134f8f6f00

Change-Id: Ib7b568406b3822ece9cf0825957d7a8b8ff6aa01
2019-04-03 16:09:15 -07:00
Christopher Ferris
134f8f6f00 Make libc_scudo always go first.
In addition, add Shared_libs to malloc_not_svelte.

Bug: 123689570

Test: Verified that libc_scudo is first wherever it is added.
Change-Id: Ibdc5dbd019a382630a727c270f846aa4446f8d99
Merged-In: Ibdc5dbd019a382630a727c270f846aa4446f8d99
2019-04-03 14:54:12 -07:00
Patrice Arruda
ea3fcdffc2 Soong: Add synopsis to several modules under the cc package.
Added synopsis to the following modules under cc package:
    * llndk_headers
    * llndk_library
    * vendor_public_library
    * toolchain_library

Bug: b/128337482
Test: Generated the documentation and verified that the synopsis was
added to each of the module.

Change-Id: I0f6e3b01b478d46afeacbe6fc8e05f96d6217c7d
2019-04-03 14:43:03 -07:00
Christopher Ferris
673f43b05f Merge "Make libc_scudo always go first." 2019-04-03 20:44:41 +00:00
Patrice Arruda
ad0315089c Soong: Add synopsis to vndk_prebuilt_shared module under cc package.
Added vndk_prebuilt_shared synopsis.

Bug: b/128337482
Test: Generated the documentation and verified that the synopsis
      was added to the vndk_prebuilt_shared module.

Change-Id: Id40246de65985b8b3b357744083c1d32c872e2ff
2019-04-03 09:07:51 -07:00
Josh Gao
2a5d962ab8 Revert "Enable lld for windows" am: 61166dc047 am: 87fd9dec38
am: 2278b4ea57

Change-Id: I34146cab38c87a85b981eaa4102bab99e626298e
2019-04-02 22:03:25 -07:00
Josh Gao
2278b4ea57 Revert "Enable lld for windows" am: 61166dc047
am: 87fd9dec38

Change-Id: I0f9345529010c691cd86af3a63c9723e740b8c64
2019-04-02 21:06:08 -07:00
Josh Gao
87fd9dec38 Revert "Enable lld for windows"
am: 61166dc047

Change-Id: Ib2088c56f593472c41efcf69ef0ae309db95cd9a
2019-04-02 20:45:04 -07:00
Josh Gao
61166dc047 Revert "Enable lld for windows"
This reverts commit 3c21c0b1d9.

Reason for revert: appears to break AdbWinUsb.dll usage by fastboot (and adb?)

Bug: http://b/129420419
Bug: http://b/110800681
Change-Id: I36d6d87f2e830e08e257ab42d470e49cdbb95819
2019-04-03 00:59:14 +00:00
Christopher Ferris
25bda7ea49 Make libc_scudo always go first.
In addition, add Shared_libs to malloc_not_svelte.

Bug: 123689570

Test: Verified that libc_scudo is first wherever it is added.
Change-Id: Ibdc5dbd019a382630a727c270f846aa4446f8d99
2019-04-02 15:31:29 -07:00
Vic Yang
db1cb10a50 Blacklist more libraries from no-vendor-variant VNDK
These VNDK libraries did not have both core and vendor variants built
for the cuttlefish target when I initially build the list, and thus
they were missed.  Add them back.

Bug: 119423884
Test: Build walleye with no-vendor-variant VNDK enabled.
Change-Id: If446256251eb2e185b0cdba95ce5c1e4f1fb8820
2019-04-02 13:10:23 -07:00
Colin Cross
6e5df47f16 Skip failing test on mac am: 9a4f3f7ea8 am: a9ff20226e
am: 0c39a64d3a

Change-Id: I12bedeced21bc8f8f6bba8b7ff20e7ed09cadaab
2019-04-02 11:07:14 -07:00
Colin Cross
0c39a64d3a Skip failing test on mac am: 9a4f3f7ea8
am: a9ff20226e

Change-Id: Ibd82f3d895774000a57ead77e987b2007beda076
2019-04-02 10:34:50 -07:00
Colin Cross
32762a08eb Add support for protoc plugins am: fe17f6f0e8 am: 91c063cfdc
am: 7299e418df

Change-Id: I30e57f6678343f57233831775b62afa1f043a450
2019-04-02 10:31:28 -07:00
Colin Cross
57205f3cb4 Move proto compilation to RuleBuilder am: 19878da6a0 am: 61918685aa
am: c8a3eb9110

Change-Id: If3922ee1900d6f3888c7291997ac49d4a939c065
2019-04-02 10:31:13 -07:00
Colin Cross
a9ff20226e Skip failing test on mac
am: 9a4f3f7ea8

Change-Id: Ic9475bef508ba636528d17db5e17d739a734232b
2019-04-02 10:25:40 -07:00
Colin Cross
7299e418df Add support for protoc plugins am: fe17f6f0e8
am: 91c063cfdc

Change-Id: I7bda9f891c55b5ad4fa412952583af1e3764ffc3
2019-04-02 10:13:43 -07:00