Commit Graph

2324 Commits

Author SHA1 Message Date
Yi Kong
9d256a5aa1 Merge "Revert "Revert "Remove unnecessary warning suppression"""
am: 3a33fe535e

Change-Id: I81421f5340798c181c7f9b72faea5bc433bc0ed5
2018-12-04 01:47:51 -08:00
Yi Kong
3a33fe535e Merge "Revert "Revert "Remove unnecessary warning suppression""" 2018-12-04 09:30:54 +00:00
Justin Yun
2a428940a3 Merge "VNDK lib must not have product_specific: true" am: 2098eb8c2a
am: ec8bf83f9c

Change-Id: Ic99179293d988bfadd3d25beae81851b6ac315fa
2018-12-04 01:03:55 -08:00
Justin Yun
ec8bf83f9c Merge "VNDK lib must not have product_specific: true"
am: 2098eb8c2a

Change-Id: Iac87ea02330944d0dce438209433186220114c6e
2018-12-04 00:57:43 -08:00
Jiyong Park
25fc6a9cc9 Stubs variant is used when building for APEX
When a native module is built for an APEX and is depending on a native
library having stubs (i.e. stubs.versions property is set), the stubs
variant is used unless the dependent lib is directly included in the
same APEX with the depending module.

Example:

apex {
    name: "myapex",
    native_shared_libs: ["libX", "libY"],
}

cc_library {
    name: "libX",
    shared_libs: ["libY", "libZ"],
}

cc_library {
    name: "libY",
    stubs: { versions: ["1", "2"], },
}

cc_library {
    name: "libZ",
    stubs: { versions: ["1", "2"], },
}

In this case, libX is linking to the impl variant of libY (that provides
private APIs) while libY is linking to the version 2 stubs of libZ. This is
because libY is directly included in the same apex via
native_shared_libs property, but libZ isn't.

Bug: 112672359
Test: apex_test added
Change-Id: If9871b70dc74a06bd828dd4cd1aeebd2e68b837c
2018-12-04 17:46:22 +09:00
Treehugger Robot
2098eb8c2a Merge "VNDK lib must not have product_specific: true" 2018-12-04 08:39:35 +00:00
Dan Willemsen
172e8d3ac0 Merge "Apply system_shared_libs to static libraries" am: 6f3e24ab55
am: 1bd48bd2b2

Change-Id: I1eeb1440f1c2dfc53771ccb13f9a725f2e8005b3
2018-12-03 22:35:08 -08:00
Dan Willemsen
1bd48bd2b2 Merge "Apply system_shared_libs to static libraries"
am: 6f3e24ab55

Change-Id: I67b4841cf66fd01528e542334a28734c6aa0c8dd
2018-12-03 22:30:52 -08:00
Justin Yun
9357f4aeda VNDK lib must not have product_specific: true
VNDK libs are system defined libraries. They must not be product
specific. Adding sanity check and a test to prevent setting
`product_specific: true` on VNDK libs.

Bug: 119575107
Test: building a vndk lib with 'product_specific: true,'
      must return error.

Change-Id: Ie0326540a692573f076ee08baf5d2e2f09d1007e
2018-12-04 14:10:59 +09:00
Yi Kong
734a07c66d Revert "Revert "Remove unnecessary warning suppression""
This reverts commit afedf3bdc9.

Build failure fixed.

Change-Id: I46e7e222c2b5bfa5b1846f3fe87444afb70f1b31
2018-12-04 00:42:27 +00:00
Dan Willemsen
3a26eefdbe Apply system_shared_libs to static libraries
Even though we aren't doing any linking for static libraries, the
default libraries (libc, libm, libdl) are now exporting headers, so we
should be using those for both static and shared libraries (especially
when re-using objects between the two). Without this we've been in a
state where a cc_library will compile differently than a
cc_library_shared, as we'd re-use the compilation units from the static
variant in the shared library.

This does require marking many of libc's dependencies as not using libc
with system_shared_libs, otherwise we run into dependency loops.

Test: treehugger
Change-Id: Ie42edc5184f315f998db953594e425214b810e0e
2018-12-03 15:38:39 -08:00
Evgenii Stepanov
44ab1d9f09 Merge "Add sanitizer runtime library to recovery when needed." am: 5b46a085d7
am: 792684273d

Change-Id: Ie37758e2906bb7ee611d8ff9794850183350ed2a
2018-12-03 14:43:34 -08:00
Evgenii Stepanov
792684273d Merge "Add sanitizer runtime library to recovery when needed."
am: 5b46a085d7

Change-Id: I7115159d4bd3eb88636699c4164fabe07501554f
2018-12-03 13:53:18 -08:00
Treehugger Robot
5b46a085d7 Merge "Add sanitizer runtime library to recovery when needed." 2018-12-03 20:42:37 +00:00
Zhizhou Yang
9759e5e76a Merge "Do not generate SHT_RELR relocations before API 28" am: 89df00c216
am: e74941431e

Change-Id: Ib4b63e48374e239dc71318e1d39c76087ae5d75b
2018-12-03 12:20:17 -08:00
Zhizhou Yang
e74941431e Merge "Do not generate SHT_RELR relocations before API 28"
am: 89df00c216

Change-Id: I76f45bbea868f137906074dfda233ecad02d9caa
2018-12-03 11:27:53 -08:00
Treehugger Robot
89df00c216 Merge "Do not generate SHT_RELR relocations before API 28" 2018-12-03 18:40:59 +00:00
Pirama Arumuga Nainar
7bb60504c5 Merge "Use libucrt instead of libmsvcr110" am: 7ef2700761
am: 81c3d410fb

Change-Id: I6ddca4684065170c788751b6855638b20b077e34
2018-12-03 10:06:53 -08:00
Pirama Arumuga Nainar
81c3d410fb Merge "Use libucrt instead of libmsvcr110"
am: 7ef2700761

Change-Id: I8aedf207323172895f103b4939c3c4170bec096e
2018-12-03 10:01:33 -08:00
Pirama Arumuga Nainar
7ef2700761 Merge "Use libucrt instead of libmsvcr110" 2018-12-03 17:53:43 +00:00
Yi Kong
ec10bb5d51 Merge "Revert "Remove unnecessary warning suppression"" am: cf492adb34
am: 1e8681d22f

Change-Id: I2debeb50164d6c5f8d516fe66a6870d34f9dd3eb
2018-11-30 15:47:19 -08:00
Yi Kong
1e8681d22f Merge "Revert "Remove unnecessary warning suppression""
am: cf492adb34

Change-Id: If2941e0eb1a19194bce00af67e5e81aab6368286
2018-11-30 15:42:10 -08:00
Yi Kong
cf492adb34 Merge "Revert "Remove unnecessary warning suppression"" 2018-11-30 23:20:11 +00:00
Elliott Hughes
de93ddd67e Merge "C++17: switch the default." am: 3633e8641e
am: 0d64de3c0f

Change-Id: Ib6c1c6ba366276da72523acdd111c20a4f7a8b38
2018-11-30 14:14:58 -08:00
Elliott Hughes
0d64de3c0f Merge "C++17: switch the default."
am: 3633e8641e

Change-Id: I45e98afc8f6fce72ca98ec40c251ffee1f860dea
2018-11-30 14:09:50 -08:00
Zhizhou Yang
9100b1d83d Do not generate SHT_RELR relocations before API 28
This patch fixes an issue that SHR_RELR relocation is not supported by
SDK version earlier than API 28. We only turn it on when SDK is not
used, or SDK version is newer than or equal to API 28.

Test: m -j48 for aosp_taimen-userdebug
Bug: http://b/119086751
Change-Id: I33124ae4f35fb8c00ae9103e8c04e2d4ccd5fec3
2018-11-30 22:07:35 +00:00
Elliott Hughes
3633e8641e Merge "C++17: switch the default." 2018-11-30 22:03:45 +00:00
Pirama Arumuga Nainar
087bba7356 Use libucrt instead of libmsvcr110
Bug: http://b/117796718

ucrt is either preinstalled in newer Windows or can be installed in
older Windows, whereas a dependence on msvcr110 doesn't work on Windows
without additional dependencies.

Test: Run generated binaries on Windows VM (7, 8, and 10) without
installing any extra dependencies.

Change-Id: Ibfaea5d78ac85ff4eeed35c97ad8cae4b44dadbc
2018-11-30 21:42:33 +00:00
Vishnu Nair
afedf3bdc9 Revert "Remove unnecessary warning suppression"
This reverts commit ee53a98e31.

Reason for revert: build break

Change-Id: I065b702d6eaa2e72d47a2b7a404fdd7fe51661c3
2018-11-30 21:01:30 +00:00
Yi Kong
a9c6ec0c95 Merge "Remove unnecessary warning suppression" am: da5cf6a7f3
am: 779ec3a2dc

Change-Id: I581200aa4df67c8ab7076bfbfa9b110b8c15e5ec
2018-11-30 12:05:28 -08:00
Yi Kong
779ec3a2dc Merge "Remove unnecessary warning suppression"
am: da5cf6a7f3

Change-Id: I84ae0cb712c26ff4941aaea583bfa467378292a5
2018-11-30 11:51:03 -08:00
Yi Kong
da5cf6a7f3 Merge "Remove unnecessary warning suppression" 2018-11-30 19:24:35 +00:00
Nikita Iashchenko
3d043a6ebb Merge "Revert "C++17: switch the default."" am: a9e5a40bb8
am: 1ba2e34897

Change-Id: I853197b418817bd09e99b43f5b875a1260619907
2018-11-30 08:26:50 -08:00
Nikita Iashchenko
1ba2e34897 Merge "Revert "C++17: switch the default.""
am: a9e5a40bb8

Change-Id: I29aa03b1dbb6b149fd3c393070d89461a1815d73
2018-11-30 08:22:29 -08:00
Elliott Hughes
34e4e416e7 C++17: switch the default.
Bug: http://b/111067277
Change-Id: I07af7cd9e65a6e238d7d256c65927fe128a0f052
Test: builds
2018-11-30 16:03:06 +00:00
Nikita Iashchenko
a9e5a40bb8 Merge "Revert "C++17: switch the default."" 2018-11-30 14:27:16 +00:00
Jerome Gaillard
80e1b1250c Merge "Add flags for Windows assembly builds" am: ba0653cdb4
am: dacb269342

Change-Id: Iea9ad5904ffb2eef10354faf1989e8239fd0c552
2018-11-30 04:47:39 -08:00
Jerome Gaillard
dacb269342 Merge "Add flags for Windows assembly builds"
am: ba0653cdb4

Change-Id: I7e60185582a0a55e81529d353fbd633873b7a408
2018-11-30 04:43:31 -08:00
Jerome Gaillard
ba0653cdb4 Merge "Add flags for Windows assembly builds" 2018-11-30 12:30:06 +00:00
Nikita Iashchenko
7a782203b9 Revert "C++17: switch the default."
This reverts commit c35fc0e130.

Reason for revert: fix broken targets in the internal master.

Change-Id: I70447a05ae5b2afa7efc7ab21c0432e651cab1ba
2018-11-30 11:15:16 +00:00
Elliott Hughes
60bc94c195 Merge "C++17: switch the default." am: b44bdb2be3
am: 92fbd0699e

Change-Id: Ibd90ee82cb36c3e3884d42e016414e09ab60a39f
2018-11-30 00:47:34 -08:00
Elliott Hughes
92fbd0699e Merge "C++17: switch the default."
am: b44bdb2be3

Change-Id: Ib4fd903bd957d3114e9c7e87712497ea65eb9a17
2018-11-30 00:32:12 -08:00
Treehugger Robot
b44bdb2be3 Merge "C++17: switch the default." 2018-11-30 08:06:02 +00:00
Evgenii Stepanov
98f5b0642c Add sanitizer runtime library to recovery when needed.
Make sanitized targets in recovery depend on ".recovery" flavor of
sanitizer runtime library. This forces installation of the runtime
library in recovery image as long as at least one target depends on it.

Test: hwasan build can boot into recovery
Bug: 112438058
Bug: 119582521
Change-Id: I1b7f9fa4ff5f29acb03c27074512ea24467a3d37
2018-11-29 23:22:20 +00:00
Ivan Lozano
672e74cede Merge "Disable AArch64 XOM when not using lld." am: a6703fe6b7
am: 2ba4fd10f4

Change-Id: I94a1808e7021672b9666230d7539a88c86e2aa95
2018-11-29 08:33:19 -08:00
Ivan Lozano
2ba4fd10f4 Merge "Disable AArch64 XOM when not using lld."
am: a6703fe6b7

Change-Id: I6af0beba0c9766b3793534aa7c364cea46545dc0
2018-11-29 08:20:00 -08:00
Ivan Lozano
a6703fe6b7 Merge "Disable AArch64 XOM when not using lld." 2018-11-29 15:58:39 +00:00
Jerome Gaillard
80fec097b1 Add flags for Windows assembly builds
This is necessary to build libjpeg for Windows.

Test: lunch sdk, make libjpeg
Change-Id: I6ace0e524d1d710b5ce78320e7a06777511d1634
2018-11-29 15:47:31 +00:00
Stephen Hines
cafef7bd53 Merge "Support Qualcomm Kryo 385 CPU variant." am: c027b309f1
am: 8284a728de

Change-Id: I6d4166c54bf7d274db52c9fbbdbd65d25c232ddd
2018-11-29 00:13:28 -08:00
Stephen Hines
8284a728de Merge "Support Qualcomm Kryo 385 CPU variant."
am: c027b309f1

Change-Id: I69def413ca375096f37620398a44462e2779b753
2018-11-29 00:06:55 -08:00