This is needed for test mapping to have module-info.json built out for
device targets so that test harness can do some checks to ensure the
test is properly configured in TEST_MAPPING files.
module-info has alreay depended on droidcore, which will be
built out in the infrastructure.
Verified in a forrest run: https://android-build.googleplex.com/builds/forrest/run/L81000000840964024
Bug: 154931418
Test: m -j droidcore
m -j module-info
Change-Id: I76b97debe3fbd51c2dc033c91ed9c2eb73cfa8a2
aosp/1401989 has a bug to add .TEST_CONFIG after the config file path.
It should be removed.
Bug: 163344047
Test: build and check module-info.json
Change-Id: I5c60250ce26204acf98b79084c5c2839b2adcb56
Current information is not enough if the prebuilt modules are depend on
AAR libs Therefore, AIDEGen has to collect the classes.jar of the
prebuilt modules from build system.
Build module-info.json without this change:
Build time: 1m55.001s
File size: 14,918,354 Bytes
Build module-info.json with this change:
Build time: 1m56.292s
File size: 15,577,031 Bytes
Bug: 132768299
Test: 1. Checkout the internal master branch
2. Patch this CL
3. m -j out/target/product/generic_x86_64/module-info.json
4. Open the module-info.json
5. For verifying soong_java_prebuilt.mk, check the classes.jar of
module prebuilt-google-play-* exists.
e.g.
"prebuilt-google-play-...": {
...
"classes_jar": [
"out/target/common/obj/JAVA_LIBRARIES/
prebuilt-google-..._intermediates/classes.jar"
]
}
5. For verifying java_prebuilt_internal.mk, check the classes.jar
of module ink exists.
e.g.
"ink": {
...
"classes_jar": [
"out/target/common/obj/JAVA_LIBRARIES/ink_intermediates/
classes.jar"
]
}
Change-Id: I09518c92260db47d2686493fa13951f316159d13
By design doc: go/aidegen-doc-generate-R
In order to generate R.java of app modules, AIDEGen needs to build
the module. It might cause system.img oversized so we turn to build
the target srcjar file if it exists in module-info.json.
Build module-info.json without this change:
Build time: 1m47.227s
File size: 14,186,429 Bytes
Build module-info.json with this change:
Build time: 1m46.796s
File size: 14,614,470 Bytes
Bug: 132407603
Test: 1. m out/target/product/generic_x86_64/module-info.json
2. by grep "target/common/obj/APPS/Settings_intermediates/aapt2.srcjar"
in module-info.json.
Change-Id: I09c812aede0324bc38acbead0a863a85ae15b33e
This way if a BoardConfig.mk configures a specific image to exist (so it
doesn't end up as a folder on /system), but does not configure for it to
be created (like the device targets on AOSP that use a prebuilt), we
won't unnecessarily trigger the build system to build the contents.
Test: `m` before and after, comparing file lists
Test: check treehugger builds before/after
Change-Id: If0e4b958b3dfaa02771a5da70f970379635f904e
- add "dependencies" and "srcs" to collect in module-info.mk.
- add "Srcs" in core/base_rules.mk
Bug: 112523202
Test: make out/target/product/generic_x86_64/module-info.json and
generate out/target/product/generic_x86_64/module-info.json
Change-Id: I0669377b2e5e6b4ee225f1930bda208eff092dea
ATest's original module_name is designed as a single string.
The different type maybe cause some problem when loading module_name
data. Due to it expected it as a list but actually it will be a single
string after mod-info obj handling this data.
Bug: 113317515
Test: atest aapt2_tests
atest hello_world_test
atest BluetoothInstrumentationTests
atest packages/apps/Bluetooth/tests/unit/Android.mk
atest RunBluetoothRoboTests
atest com.android.bluetooth
atest libcore/luni/src/test/java/libcore/javax/net/ssl/SSLSocketTest.java
Multiple tests found:
0: libjavacore-unit-tests
1: jsr166-tests
2: core-ojtests-public
...
atest SSLSocketTest # Brings up 2 prompts, one for which file then one for which module
make -j bit
bit Settings
bit hello_world_test
bit BluetoothInstrumentationTests
bit RunBluetoothRoboTests (Could not find module, but the same situation
before applying this patch)
Change-Id: I46a14c675eabd7cebd82562954380a9a769e80b5
Add actual module_name information to module-info.json, and atest can
get the actual module name instead of module_name with suffix.
Bug: 77288544
Test: make -j8
m out/target/product/generic_x86_64/module-info.json
Change-Id: I1e2dfced10db7ef5d31d26dfeb6a6c50a073a519
This change allows one to run atest <module name>. The TradeFed test
config file will be automatically created in testcases directory based
on the settings.
Bug: 69929803, 69932044
Test: m -j NotificationStressTests libminijail_test
add following lines in notificationtests/Android.mk,
before "include $(BUILD_PACKAGE)"
LOCAL_COMPATIBILITY_SUITE := general-test
Change-Id: Ib5e9cd152d957b5d5beb6ed23a899a021a7e06d6
Test: m out/target/product/<lunch target>/module-info.json
And I see the following line in module-info.json:
"CtsSampleHostTestCases": { "class": ["JAVA_LIBRARIES"], "path":
["cts/hostsidetests/sample"], "tags": ["tests"], "installed":
["out/host/linux-x86/framework/CtsSampleHostTestCases.jar"],
"compatibility_suites": ["cts", "general-tests", "vts"] },
Change-Id: I67a78de4153c762977b145ed62ca8b6ecd0b7947