Previously, this imported the soong_config_module_type definitions from
a manually curated file. That had a couple of problems:
1. It required that the file be manually updated everytime that a new
module_type was added to an sdk snapshot controlled by a specific
config variable.
2. Adding a new config variable required creating another file to be
manually curated.
3. It made a snapshot that was generated for an earlier release
dependent on an additional file from that release which was in a
separate repository and would require a lot of extra work to update
if necessary.
This change generates the soong_config_module_type inline in the
snapshot Android.bp file and while it makes it slightly bigger and does
duplicate some of these definitions in snapshots that use the same
config variable it makes each snapshot much more self contained and
makes it easier to add module specific config variables.
The latter is the main driver for this change as follow up changes will
add module specific variables for the optional modules.
Bug: 233965247
Test: atest mainline_modules_sdks_test
packages/modules/common/build/mainline_modules_sdks.sh
# Compare before and after to make sure that they are
# consistent.
Change-Id: Ie6b6d99e1fcb17ebd8ed291a5bc7d4664fceea92
Moves the generated Android.bp file from the root of the snapshot zip
file into the sdk_library/ sub-directory to allow the zip to be
unpacked in a directory that already contains an Android.bp file that
defines the apex_set for the corresponding APEX.
Also, removes the stubs_src property from the generated Android.bp
file.
Bug: 218685706
Test: packages/modules/common/build/mainline_modules_sdks.sh --build-release=R
atest --host mainline_modules_sdks_test
# deleted vendor/unbundled_google/modules/IpSecGooglePrebuilt from rvc-dev checkout.
# unpacked out/soong/mainline-sdks/for-R-build/ipsec-module-sdk-current.zip
# ran "m nothing"
Change-Id: I03e2060dc06338a8d0102744f79c75d33d567a17
This change replicates the behavior of the generate_ml_bundle.sh that
creates an Android.bp file along with the necessary file structure for
an R build.
It adds the information needed to a ForRBuild object which is set on
those MainlineModules that need to provide SDKs for R. That includes
a list of SdkLibrary objects each of which has a name and a flag that
indicates whether it is a shared library.
The R BuildRelease creator function builds the sdk snapshots as normal
and then extracts information from those snapshot files to construct
snapshots suitable for an R build. It then passes the directory
containing those new snapshot files to populate_dist() which will then
copy them into the correct location in the dist directory.
For each MainlineModule that provides an SDK for R the following is
created in the out/soong/mainline-sdks/for-R-build directory:
* A sub-directory using the apex name containing:
* An Android.bp file with definitions for each SdkLibrary.
* A file structure containing API txt file, removed API txt file,
a srcjar containing the stub sources and a stubs jar.
* A zip file containing the contents of the previous directory whose
name is <sdk-name>-current.zip, to match the files that are
generated by Soong when building sdk snapshots.
As R does not support the Soong config boilerplate code that
transformation is disabled for R.
Test: atest --host mainline_modules_sdks_test
packages/modules/common/build/mainline_modules_sdks.sh
pyformat -s 4 --force_quote_type double -i build/mainline_modules_sdks*.py
/usr/bin/pylint --rcfile $ANDROID_BUILD_TOP/tools/repohooks/tools/pylintrc build/mainline_modules_sdks*.py
Change-Id: I70001782496a3e9805bf56181c0e08419e31e191
The soong config variables should be controlled via
$(call soong_config_set/get) instead of using the
underlaying variable. Update the comments in the
auto generated makefiles to reflect that.
Bug: 220940864
Test: m mainline_modules_sdks_test && /ssd/aosp-master/out/host/linux-x86/nativetest64/mainline_modules_sdks_test/mainline_modules_sdks_test
Change-Id: I8907d89ceb12e0a1e9ce53220a784e4a69502687
Change the list of modules to match AOSP list.
Bug: 205100626
Test: atest mainline_modules_sdks_test
Change-Id: I250c4aafcda5c3c1d636dac27ff5ffaa78b69b2a