Add the Injection use case of Aconfig flag.
Add corresponding tests.
Test: atest AconfigDemo_ContentLibs_Test
Bug: 287644619
Change-Id: I47cea59764b2956644ad0c159945d3cdb3231c09
Add a simple app uses aconfig.
This app can demonstrate
1. declare aconfig flag
2. build aconfig flag in building system
3. generate aconfig java flag
4. use aconfig java flag in java code
Test: atest AconfigDemo_ContentProvide_Test
Bug: 280833426
Change-Id: Ieacbe4b2368a00872254dab1c87dc66c569fc30a
The current cargo2android.py doesn't work well w/ `--cargo_bin`. It would use the full path rustc(/<HOME>/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/rustc) instead of basename(`rustc`). The `RUSTC_PAT` and `RUSTC_VV_CMD_ARGS` regex doesn't match the full path.
This CL uses `(.*\/)?` to match the path if it exists.
Change-Id: If5e4060410c1cd45ad6c9612ebe856552aa14d08
They consume much disk space even though they are not used.
Bug: 284915566
Test: combined_build_test.sh -t cf_x86_64_phone -v userdebug \
-d out/dist -a cf_x86_64_foldable -o -c droid
Change-Id: I4fd5e9326e5c77c28c5e178f63ba396c9e462cbd
The Aconfig demo will be used as
1. As an example for aconfig code lab
2. As an example for user to learn Aconfig
Test: N/A
Bug: 287644619
Change-Id: Ida6c922fdd52caaecfadff99809a70fab8442814
Add the path to the existing architecture-specific runtime directory,
in preparation for when lldb-server is added to the toolchain build by
Iba7efaa62e7d3cc8e3bd1080d9b4a67bc241faf2.
Test: `gdbclient.py -r surfaceflinger` connected to a riscv64 board
Change-Id: I1654378a7ba92fcd7ffe478d2b491f426655e6f1
Redshell unfortunately uses this old version, while the union operator
for dictionaries was only added in Python 3.9.
Test: Ran cargo2android.py on a crate with variants
Change-Id: I7a875acde11c23a3b789ef384f3ab32100d7c6d5
Enable multiple test builds in one command and collect the results
from the build.trace.gz files.
Bug: 284915566
Test: combined_build_test.sh -t cf_x86_64_phone -v userdebug \
-d out/dist -a cf_x86_64_foldable -o -c droid
Change-Id: Ie566fd76463aa615c37130f4c4c7b8287fd8c447
The new argument allows the user to pass a JSON of properties to merge
into the generated launch.json config when setting up vscode-lldb
forwarding. This way the user can add pre-build tasks, extra init
commands etc.
Test: atest gdbclient_test
Test: lldbclient.py --setup-forwarding=vscode-lldb
--vscode-launch-props='{"sourceMap": {"test1": "test2"},
"postDebugTask": "Stop LLDB client", "processCreateCommands" :
["test"]}' -r test
Change-Id: I763dd15dde10421e86bc0a6ddfde974156ef1588
The script tests building two targets with a sigle build artifact
path.
Give two targets A and B, build A and then build B without cleaning
the out directory. After that, build the A again.
Bug: 284915566
Test: combined_build_test.sh -t cf_x86_64_phone \
-a cf_x86_64_foldable -v userdebug -c -d out/dist droid
Change-Id: I143412ca67717a5ee3b437c84b230a58a00b065e
These were needed in build-ndk-prebuilts.sh too. Copy them here.
Bug: None
Test: ./update_ndk_abi.sh
Change-Id: Ia6263ff1b0936aa3a80747042662df24ddfb88e0
In a couple cases it exposed unused arguments or type errors. This
change fixes those as well.
Test: mypy development/scripts/gdbclient.py
Test: gdbclient -r /system/bin/date
Change-Id: If471a1853b813e01c89e321eab3d424f1c256f2d
Though there are no type hints here, exporting this file will at least
suppress errors from importers and will allow mypy to infer the things
it can.
Bug: None
Test: mypy gdbrunner
Test: mypy ndkgdb.py # in the NDK
Change-Id: Idf4b7fc646b53e10f36900d09ea98feaa64fd794
The normal python package structure and setuptools package are required
for py.typed to be seen by importers, which is needed for callers to
type check use of gdbrunner.
Bug: None
Test: ndk-gdb --help && gdbclient --help
Change-Id: I9a6d65595f9572275e31f08b3678c300a78275d5
This adds a suffix to all dependencies, which may be useful for no_std
crates.
Bug: 279614907
Test: Ran on external/rust/crates/ciborium
Change-Id: I4d504fbfdcd079a946814dcf953b42baa0ca3563
Variant test and cargo flags were being ignored.
Bug: 279614907
Test: Ran on external/rust/crates/serde
Change-Id: I9c6cf71c8d04944cc7c532cfb53b50c2efc3e375
These allow most no_std crates to be supported without extra patches.
Bug: 279614907
Test: Ran on external/rust/crates/half
Change-Id: I1a69ff7950fb63320ef7c87d6cd45b20915df801
This is needed because of https://crrev.com/c/4517945. The new resolver
causes there to be multiple `rustc` invocations for some libraries. They
are only trivially different though, so dedup'ing the final output is
sufficient for now.
Bug: 280489895
Test: m cargo_embargo && ./android-merge-2-cargo-embargo.sh
Change-Id: If4a36e4f3847d18d03f76bad63bab6c45a9aef97