aboutsummaryrefslogtreecommitdiffstats
path: root/cc
Commit message (Collapse)AuthorAgeFilesLines
* Merge "Soong: Add synopsis to several modules under cc package."Treehugger Robot2019-03-263-7/+22
|\
| * Soong: Add synopsis to several modules under cc package.Patrice Arruda2019-03-253-7/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added synopsis to the following modules under cc package: * cc_binary * cc_binary_host * cc_defaults * cc_genrule * cc_test * cc_test_host Bug: b/128337482 Test: Generated the documentation and verified that the synopsis was added to each of the module. Change-Id: I23b7eda449c340783d7cc592df5d2bd399255bf9
* | Merge "Support LLD ThinLTO cache/threshold option"Yi Kong2019-03-261-4/+4
|\ \
| * | Support LLD ThinLTO cache/threshold optionYi Kong2019-03-221-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | LLD has different option syntax for specifying ThinLTO cache. Change it to LLD syntax and drop the support for GOLD, since there aren't many projects that are linked with it. Test: USE_THINLTO_CACHE=true m Change-Id: I5c6c5281a05793414a6387d52ae48d9b43822ee9
* | | Treat stl: "system" the same way as default.Sasha Smundak2019-03-241-1/+1
| |/ |/| | | | | | | | | | | Test: verify that adding `stl: "system"` does not change the module build. Change-Id: I55fbde223e4a4695df7524213e1bf3671da84e8e
* | ATest: GTest auto gen config support run_test_as in Android.bp .yelinhsieh2019-03-231-0/+14
|/ | | | | | | | | | | | | | | | | | | | | | | Feature request from developer, support setting uid in Android.bp. This relands I5604af5f20c45728d19f4c01396a20a74997f8a8 on top of I2210c15b84f9b30e1cc23b426d463b34cf9ef94f. Bug: 113359343 Test: source build/envsetup.sh ; lunch vim platform_testing/tests/example/native/Android.bp add test_options: { run_test_as: "1234", }, in cc_test make hello_world_test cat out/target/product/xxxx/testcases/hello_world_test/hello_world_test.config Will see <option name="run-test-as" value="1234" /> below <test class="com.android.tradefed.testtype.GTest" > Change-Id: I0b167c44c00ff0eab51443fc93dd8fa2abbe54cf
* Pass -fsanitize-hwaddress-abi=platform when building with hwasan.Peter Collingbourne2019-03-211-1/+2
| | | | | | | Reduces size of walleye_hwasan-userdebug system.img by another 4.5MB. Bug: 122363025 Change-Id: I6d15c237dc5f330ad574a73147b2b2c712fe125e
* Add support for no-vendor-variant VNDKVic Yang2019-03-216-6/+201
| | | | | | | | | | | | | | | | | | When no-vendor-variant VNDK is enabled, the vendor variant of VNDK libraries are not installed. Since not all VNDK libraries will be ready for this, we keep a list of library names in cc/vndk.go to indicate which libraries must have their vendor variants always installed regardless of whether no-vendor-variant VNDK is enabled. Also add --remove-build-id option to the strip script to facilitate the check of functional identity of the two variants. Bug: 119423884 Test: Add a dummy VNDK library and build with TARGET_VNDK_USE_CORE_VARIANT := true, with the corresponding build/make change. Change-Id: Ieb1589488690e1cef1e310669a8b47a8b8759dac
* Merge "Turn on string-plus-int warning"Yi Kong2019-03-201-4/+0
|\
| * Turn on string-plus-int warningYi Kong2019-03-201-4/+0
| | | | | | | | | | | | | | | | | | All instances for the warning are fixed/suppressed, turn the warning back on. Test: m checkbuild Bug: 128878287 Change-Id: Ifd5f9a64cb7ff1ce47f498ed38436056b493ee92
* | Enable lld for windowsPirama Arumuga Nainar2019-03-204-18/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.a' to lld when linking libFoo.dll. Add libFoo.a as an implicit output to the 'ld' build rule. Rewrite the shared libraries for a library/binary to use the import library instead of the DLL. As a side-effect, this also (correctly) uses the AdbWinApi.a that's alongside development/host/windows/prebuilt/usb/AdbWinApi.dll Test: Run Windows tests (go/android-llvm-windows-testing) and check absence of regressions. Change-Id: I15a178589aa6882caa6e7e38650cc6ef48109764
* | Pass -hwasan-allow-ifunc when building with hwasan.Peter Collingbourne2019-03-201-1/+5
| | | | | | | | | | | | | | | | Now that the toolchain and bionic both support ifuncs in static executables, we can turn this on. Reduces size of walleye_hwasan-userdebug system.img by 11MB. Change-Id: I2f19b22518153328eee3fdca79d0c851cc513c3a
* | Replace ctx.ExpandSources with android.PathsForModuleSrcColin Cross2019-03-205-8/+8
| | | | | | | | | | | | | | | | | | | | | | Move the logic from ctx.ExpandSources into android.PathsForModuleSrc and ctx.ExpandSource into android.PathForModuleSrc, and deprecate them. When combined with the pathDepsMutator this will let all properties that take source paths also take filegroups or genrule outputs, as long as they are tagged with `android:"path"`. Test: All soong tests Change-Id: I01625e76b5da19240e9649bf26a014eeeafcab8f
* | Remove ModuleSrcPathColin Cross2019-03-201-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ModuleSrcPath was designed as a type that ensured that modules only referenced sources inside the directory that contained the Android.bp file. In practice they don't work very well, because allowing filegroups and genrules as inputs to any module that takes a source path means that the path might end up being to a file in another source directory or to a generated file in the output directory. Remove ModuleSrcPath, replacing it with SourcePath in the places that need to explicitly refer to a path in the source tree, or Path where it may be a source path or a generated path. Make PathForModuleSrc return a Path instead of a SourcePath in preparation for consolidation with ctx.ExpandSources, which will make it possibly return paths to generated files. Test: All soong tests Change-Id: I973a78470ed14307eea5f6d0cc93942775a65715
* | Merge "Remove workarounds for old compiler versions."Peter Collingbourne2019-03-201-10/+2
|\ \ | |/ |/|
| * Remove workarounds for old compiler versions.Peter Collingbourne2019-03-061-10/+2
| | | | | | | | | | | | | | LLVM r349610 was released, so these workarounds are no longer required. Bug: 112907825 Change-Id: Ia6ba0034881f2ab657d8420df3047c21757c7d9b
* | Add -faddrsig to ClangExtraCflagsYi Kong2019-03-201-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Emit address-significance table which allows linker to perform safe ICF. Clang does not emit the table by default on Android since NDK still uses GNU binutils. With the flag, binary size is decreased. For Marlin: -fno-addrsig -faddrsig diff /system/bin 28012K 27108K -3.33% /system/lib 88220K 86964K -1.44% /system/lib64 151936K 148108K -2.58% Test: m checkbuild Bug: 128940110 Change-Id: I99511f038a6d4b88b5c849a0f8943c24731ab6ea
* | Merge "Switch clang to r353983"Yi Kong2019-03-193-4/+7
|\ \
| * | Switch clang to r353983Yi Kong2019-03-193-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | Bug: 126457671 Bug: 123638879 Bug: 128878287 Test: go/clang-r353983-testing Change-Id: I7f16e68f0f521ff55587084932d175b704e452c9
* | | Merge "Install symlink to the runtime APEX only for device"Treehugger Robot2019-03-182-2/+6
|\ \ \
| * | | Install symlink to the runtime APEX only for deviceJiyong Park2019-03-162-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Host does not need the symlink. It also broke master-art-host targets. Test: ALLOW_MISSING_DEPENDENCIES=true DIST_DIR=~/temp ./art/tools/dist_linux_bionic.sh -j50 showcommands com.android.runtime.host Change-Id: Ie8e02553c5a1b6cd5afebd73a64268d2950fc18e
* | | | Add stoney ridge x86 variantBenjamin Gordon2019-03-152-0/+8
|/ / / | | | | | | | | | | | | | | | Bug: 124445930 Test: compile and deploy to grunt Change-Id: Ie63217c7c68f5688bf070cbabf9ea5a1b82d3acc
* | | Merge "Create symlink for bionic files"Treehugger Robot2019-03-155-10/+64
|\ \ \
| * | | Create symlink for bionic filesJiyong Park2019-03-155-10/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change creates following symlinks for bionic files. /system/lib/libc.so -> /apex/com.android.runtime/lib/bionic/libc.so /system/lib/libm.so -> /apex/com.android.runtime/lib/bionic/libm.so /system/lib/libdl.so -> /apex/com.android.runtime/lib/bionic/libdl.so /system/bin/linker -> /apex/com.android.runtime/bin/linker ... This allows us to not have mountpoints under /bionic. Bug: 125549215 Test: m and inspect the symlinks in the system partition. Change-Id: I3a58bf4f88c967862dbf06065a1af8fc4700dda3
* | | | Add AVX/AVX2 supported archs in build systemShalini Salomi Bodapati2019-03-132-0/+17
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds new arch features avx2 and avx512 and their supported archictectures for x86 and x86_64 Bug: 123376719 Test: m checkbuild Change-Id: I3c079741815b39d7dbb4072e12ef7c9c2c15f5fe Signed-off-by: Shalini Salomi Bodapati <shalini.salomi.bodapati@intel.com>
* | | Annotate paths and deprecate ExtractSource(s)DepsColin Cross2019-03-077-60/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | Add `android:"path"` to all properties that take paths to source files, and remove the calls to ExtractSource(s)Deps, the pathsDepsMutator will add the necessary SourceDepTag dependency. Test: All soong tests Change-Id: I488ba1a5d680aaa50b04fc38acf693e23c6d4d6d
* | | cc_test: emit errors if there's duplicate in srcsJooyung Han2019-03-071-0/+15
| |/ |/| | | | | | | | | | | | | | | | | | | | | In general "srcs" property allows duplication in the list. But when cc_test's "test_per_src" property is set "true", there will be variants according to "srcs" list. Therefore, it should fail if there is a duplicate entry in srcs list. Bug: 113629474 Test: mma Change-Id: I543624459c30dd296494a3a80e28ce5503a3ea2f
* | Add checks for double_loadable dependenciesJooyung Han2019-03-062-21/+342
|/ | | | | | | | | | | | Vendor-available libs can be double-loaded if LLNDK libs depend on them. Currently soong checks only 'direct' dependency bewteen LLNDK and VNDK lib. With this change, soong checks if every dependencies from LLNDK is also LLNDK or VNDK-SP or marked as 'double_loadable:true'. This change causes many libs to be marked as 'double_loadable'. Bug: 121280180 Test: m -j Change-Id: Ibc1879b6fd465a3141520abe0150018c3051c0a7
* Add blueprint:mutated to sysprop propertiesInseob Kim2019-03-051-1/+1
| | | | | | | | | Because this flag is used internally by sysprop_library. Bug: N/A Test: m -j Test: build cc_library with setting sysprop property and fail Change-Id: I478889b8923f99407a067e5b9efee9322c3e5ae8
* Replace *Escape with *EscapeListColin Cross2019-03-043-3/+3
| | | | | | | | | | Follow the change to blueprint to make *Escape take and return a string and add *EscapeList that take and return slices of strings. Fix up a few places that were unnecessarily converting a string to a slice and back to a string. Test: m nothing Change-Id: I3fa87de175522205f36544ef76aa2f04aef1b936
* Build System: Collect native dependent information from cc.go.bralee2019-03-041-0/+4
| | | | | | | | | | Bug: 126957990 Test: 1. m aidegen 2. $ANDROID_HOST_OUT/bin/aidegen-dev frameworks/native -v 3. open out/soong/module_bp_java_deps.json check *.a and *.so files are added. Change-Id: I82ba49d023621908f0be12abf529553aee45fa5b
* Autogenerate some extra_options based on some build propertiesJulien Desprez2019-03-011-1/+6
| | | | | | | | | | If an Android.bp specifies Isolated=true, make sure it's tagged as not-shardable, since b/126376458 is not resolved. Test: make bionic-benchmarks-tests (with and without isolated=true) Bug: 124024827 Change-Id: I2210c15b84f9b30e1cc23b426d463b34cf9ef94f
* Fix: sysprop module can't be used with whole_static_libsJiyong Park2019-02-261-4/+10
| | | | | | | | | When a sysprop module is listed in whole_static_libs, it is renamed to "lib" + <module> to actually refer to the generated C++ library for the sysprop module. Test: m (sysprop_test amended) Change-Id: I05eddb24433d444376787be567830929ef078159
* Merge "Allow linking against SystemConfiguration framework on Mac"Treehugger Robot2019-02-201-0/+1
|\
| * Allow linking against SystemConfiguration framework on MacDan Willemsen2019-02-201-0/+1
| | | | | | | | | | | | | | This is needed for Python Test: m py2-cmd; py2-cmd -murllib Change-Id: I156bd281cb341eba7bdd7e7a15b87e8e90ecee1d
* | Merge "Add 16bit and 32bit nanopb library."Yu Shan2019-02-201-1/+13
|\ \
| * | Add 16bit and 32bit nanopb library.Yu Shan2019-02-191-1/+13
| |/ | | | | | | | | | | | | | | | | When compiling nanopb static library, we need to add 16bit or 32bit flag if we need to use 16bit or 32bit size, default is 8bit. Change-Id: Ib74478996cb2487accc1e46a32fba8170214c47f Test: None Bug: b/122292884
* | Merge "DO NOT MERGE - Merge PPRL.190205.001 into master"Xin Li2019-02-201-1/+1
|\ \
| * \ Merge "Annotate No_libcrt with arch_variant"Yi Kong2019-02-151-1/+1
| |\ \ | | | | | | | | | | | | | | | | | | | | am: 4e3c60128f Change-Id: Ia170a78cb583297f5a7eeb24656b914c5bc50fab
| * \ \ Merge "Do not enable coverage for platform/llndk stub libraries"Pirama Arumuga Nainar2019-02-151-0/+2
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | am: ff1b5c7b90 Change-Id: If62904ecb83ad3a3f0419ebb758b9f3d2b045143
| * \ \ \ Remove prefer_sanitize.* propertiesJiyong Park2019-02-131-0/+9
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | am: f97782b18c Change-Id: I89cf55ff2cea384e1cf25c59f538dc185088a0cc
| * \ \ \ \ Extend coverage mutator to allow variants with coverage on and offPirama Arumuga Nainar2019-02-132-19/+66
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | am: 1acd4475f2 Change-Id: I3b3dcf65f68bae50f3476e70d690a9ff63c2fb2d
| * \ \ \ \ \ Create sysprop_library soong moduleInseob Kim2019-02-136-165/+281
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | am: c0907f191a Change-Id: I5ec9366b92ab8ca07ed41c93b8e2324a301a2bed
| * \ \ \ \ \ \ Merge "Use no_libcrt property instead of hard coding projects to exclude"Yi Kong2019-02-131-7/+2
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | am: 02e4b568dc Change-Id: I7e143026e60cb2263ce2a37b5bd856ea133ac128
| * \ \ \ \ \ \ \ Merge "Static variant of a stubs lib is correctly tracked"Jiyong Park2019-02-083-0/+52
| |\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | am: eebdf43337 Change-Id: I431341b18a2601b25fa459c0fb108ce9ae36b860
| * \ \ \ \ \ \ \ \ Merge "Handle the case when a symbol is annotated with "# apex vndk""Jiyong Park2019-02-082-6/+17
| |\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | am: 3415780021 Change-Id: I2567afe4afab0f9a71d87f3cafffb21f35fdf0a0
| * \ \ \ \ \ \ \ \ \ Make MakeVarsContext a PathContextColin Cross2019-02-071-1/+1
| |\ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | am: 65494b962b Change-Id: I1a2eab146c5f5327591c44faf224b562aac86610
| * \ \ \ \ \ \ \ \ \ \ Merge "Update NDK library list"Aurimas Liutikas2019-02-071-0/+1
| |\ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | am: 7cf14099b7 Change-Id: I2963a3359f1e20f67990ba0473340ad70bbcecbe
| * \ \ \ \ \ \ \ \ \ \ \ Return early after NDK->non-NDK library link errorDan Willemsen2019-02-061-0/+1
| |\ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | am: 155d17c1da Change-Id: I8d11bf8c71a3df036e5545f6d796ce970813e123
| * \ \ \ \ \ \ \ \ \ \ \ \ Don't emit symbol for stubs librariesJiyong Park2019-02-061-1/+3
| |\ \ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | am: 47e4fcb6d3 Change-Id: I1a3eb5401c79881469d290c5bc959ef96be725a3