aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Set LOCAL_APKCERTS_FILE for apk_set modules in apexesColin Cross2020-07-092-0/+5
| | | | | | | | | | I321e80fd636a955213761f56a3ac64bfe7f7f7c0 missed setting LOCAL_APKCERTS_FILE for apk_set modules in apexes, which causes invalid apkcerts.txt files. Bug: 160652723 Test: m apkcerts-list Change-Id: I1ccaafd04978374d0da10363a1d782cfeae428e7
* Use a default exclude filter for JaCoCo in Soong.Chris Gross2020-07-084-4/+7
| | | | | | | | | | | | | | | | | Instrumented builds should exclude certain classes from instrumenation by default. (e.g. JaCoCo itself) Leverage the existing DefaultJacocoExclusionFilter to do this. Note: Two different default filters exist now (one for Make and one for Soong), as they have different wildcard rules. Test: EMMA_INSTRUMENT=true EMMA_INSTRUMENT_STATIC=true m -j32 TeleService and inspected the resulting temporary jar that was instrumented to confirm that anything from org/jacoco was excluded. Bug: 159748844 Change-Id: I5466b0a03957edfbe53971d5d1a7729fdb8337db Merged-In: I5466b0a03957edfbe53971d5d1a7729fdb8337db
* Add soong cc and java deps to general-tests distLiz Kammer2020-07-072-0/+36
| | | | | | | | | | | | Test: m SOONG_COLLECT_CC_DEPS=true SOONG_COLLECT_JAVA_DEPS=true dist general-tests and verify module_bp_java_deps.json and module_bp_cc_deps.json is in out/dist Test: m SOONG_COLLECT_CC_DEPS=true SOONG_COLLECT_JAVA_DEPS=true checkbuild dist general-tests Bug: 154845369 Merged-In: I683fe1d7e17f7abaab40206770d09db705493ffb Change-Id: I683fe1d7e17f7abaab40206770d09db705493ffb
* Merge "Add sandbox property to the javadoc rule." into rvc-devRamy Medhat2020-07-062-30/+57
|\
| * Add sandbox property to the javadoc rule.Ramy Medhat2020-07-062-30/+57
| | | | | | | | | | | | | | | | | | | | | | The sandbox property indicates whether metalava should only read inputs explicitly specified on the command line. This CL adds the property and sets the appropriate configuration for RBE depending on whether the sandbox is set or not. Bug: b/156613606 Test: built aosp_crosshatch-userdebug with/without RBE_METALAVA. Change-Id: I7256d29f18e0af18dbe65d1c7dbbf62fd3d65f4c Merged-In: I7256d29f18e0af18dbe65d1c7dbbf62fd3d65f4c
* | Merge changes from topic "gcov-clang-migration" into rvc-devOliver Nguyen2020-07-067-19/+63
|\ \ | |/ |/| | | | | | | | | * changes: Make native_coverage clause work with ClangCoverage Introduce product variables to select Java code coverage paths in Soong. Rename native code coverage paths product variables in Soong.
| * Make native_coverage clause work with ClangCoverageColin Cross2020-07-026-11/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make uses NATIVE_COVERAGE to enable gcov coverage and CLANG_COVERAGE to enable clang coverage. NATIVE_COVERAGE is translated to the Soong Native_coverage product variable which triggers the native_coverage clause in Android.bp files. The clause also needs to be triggered for CLANG_COVERAGE. Rename the existing Native_coverage product variable to GcovCoverage, and regenerate Native_coverage when either GcovCoverage or ClangCoverage are set. Also remove NativeLineCoverage, it wasn't doing anything differently than Native_coverage. Bug: 159059537 Test: m checkbuild Merged-In: I215124a9b35a2ad50ad562079d392e3d33da11f4 Change-Id: I215124a9b35a2ad50ad562079d392e3d33da11f4
| * Introduce product variables to select Java code coverage paths in Soong.Roland Levillain2020-06-303-1/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Introduce product variables `JavaCoveragePaths` and `JavaCoverageExcludePaths` (resp. populated from environment variables `JAVA_COVERAGE_PATHS` and `JAVA_COVERAGE_EXCLUDE_PATHS`). Use them to control which Java modules are candidate for instrumentation based on their source path. By default (when `JavaCoveragePaths` is empty), have all Java module be candidate for instrumentation, to preserve the existing behavior. Test: export EMMA_INSTRUMENT=true \ && export EMMA_INSTRUMENT_FRAMEWORK=true \ && export JAVA_COVERAGE_PATHS=art \ && m Bug: 158212027 Bug: 156284897 Merged-In: Ibe9c1f41ed6110867411952689c5a7ad6536f277 Change-Id: Ibe9c1f41ed6110867411952689c5a7ad6536f277
| * Rename native code coverage paths product variables in Soong.Roland Levillain2020-06-303-11/+16
| | | | | | | | | | | | | | | | | | | | | | | | Rename `CoveragePath` and `CoverageExcludePaths` as `NativeCoveragePath` and `NativeCoverageExcludePaths` (resp.). Also rename function `android.CoverageEnabledForPath` as `android.NativeCoverageEnabledForPath`. Test: m nothing Bug: 158212027 Merged-In: Id2c11a638e88088096420b537effa866d7667304 Change-Id: Id2c11a638e88088096420b537effa866d7667304
* | Merge "DO NOT MERGE apex: install flattened from apex_set" into rvc-devJooyung Han2020-07-011-5/+31
|\ \
| * | DO NOT MERGE apex: install flattened from apex_setJooyung Han2020-06-301-5/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | apex_set is a set of prebuilt apex files. To support GSI which installs both flattened and unflattened APEXes when apex_set is used, we extract the contents from the selected APEX file. Bug: 159711661 Test: TARGET_PRODUCT=gsi_gms_arm64 m should install flattened apexes in /system/system_ext/apex Change-Id: I0a51b9f4a4537d3230aaa3eece532664ea18bc7c
* | | Merge "Include shared lib in vendor snapshot if isVndkExt" into rvc-devInseob Kim2020-07-011-2/+17
|\ \ \
| * | | Include shared lib in vendor snapshot if isVndkExtBill Peckham2020-06-301-2/+17
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A VDNK extension is an image:vendor module provided by a vendor-modified framework project. So it should be provided to the vendor build as a prebuilt (for the purposes of building against a vendor snapshot). Bug: 160189878 Test: manual Change-Id: I3eb4794c1be2949b9c85fd52f823e5e14df4ad7d
* | | Merge "Output apkcerts file for android_app_set." into rvc-devJaewoong Jung2020-07-016-24/+75
|\ \ \
| * | | Output apkcerts file for android_app_set.Jaewoong Jung2020-06-306-24/+75
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Soong and Make have no ways to figure out what splits will be outputted from a given android_app_set, so it's impossible for them to provide full PACKAGES.$(LOCAL_MODULE).CERTIFICATE entries, which are required to build a final apkcerts.txt. This change makes extract_apks produce apkcerts.txt files for each input modules instead. The Make-side counterpart of this change merges all local apkcerts.txt into a final one. Fixes: 160119159 Test: main_test.go Test: m apkcerts-list Change-Id: I321e80fd636a955213761f56a3ac64bfe7f7f7c0
* | | Merge "Propagate owner property for apex modules" into rvc-devAnton Hansson2020-06-302-0/+4
|\ \ \
| * | | Propagate owner property for apex modulesAnton Hansson2020-06-302-0/+4
| |/ / | | | | | | | | | | | | | | | Bug: 160165426 Test: lunch aosp_taimen && m nothing Change-Id: I1d274ea376c58ff44d69ef5440c919b67079ae4a
* | | Merge "[HWASan] Disable GlobalISel/FastISel w/ HWASan." into rvc-devMitch Phillips2020-06-301-0/+4
|\ \ \ | |/ / |/| |
| * | [HWASan] Disable GlobalISel/FastISel w/ HWASan.Mitch Phillips2020-06-301-0/+4
| | | | | | | | | | | | | | | | | | Bug: 159343917 Test: See upstream testing at https://reviews.llvm.org/D82249 Change-Id: Ib644a857caa048d7fc3dd5e5f20553e0b4a47d43
* | | Apply hiddenapi encoding to java_sdk_library .implPaul Duffin2020-06-263-7/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds a ConfigurationName property, and ConfigurationName() method that allows a library to separate its name (e.g. framework-tethering.impl) from the name used in the build configuration, e.g. ctx.Config().BootJars(). Updates hiddenapi processing to use ConfigurationName() instead of ctx.ModuleName(). Changes java_sdk_library to set the ConfigurationName property of the implementation library to the name of the module instead of <module>.impl so that it will match the name in the boot jars list. Bug: 159683330 Test: m framework-tethering dexdump ${PRODUCT_OUT}/apex/com.android.tethering/javalib/framework-tethering.jar | grep hiddenapi | wc -l Verify that there are >0 hiddenapi entries. Add java_sdk_library_import prefer=true for framework-tethering and repeat the above to verify that there are 0 hiddenapi entries. Apply this change, repeat above and verify that there are the same # of entries as before. Remove the prebuilt for framework-tethering Repeat the above and verify that there is no change to the # of entries Change-Id: I6c3016c35d0fcb1b95d4f9b37a307a69878f8e0a
* | | Merge "Add exclude_shared_libs, expand exclude_static_libs to cover ↵Victor Khimenko2020-06-251-1/+6
|\ \ \ | |_|/ |/| | | | | static_libs" into rvc-dev
| * | Add exclude_shared_libs, expand exclude_static_libs to cover static_libsColin Cross2020-06-241-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | Allow variants to exclude shared or static libs. Bug: 153609531 Test: manual Change-Id: I6ac9c445ed233c774a051743ed6760058c9918e9
* | | Merge changes Ie163a4da,I16375b88 into rvc-devColin Cross2020-06-242-8/+17
|\ \ \ | | | | | | | | | | | | | | | | | | | | * changes: Set root dir in lint project.xml Set ANDROID_SDK_HOME when running lint
| * | | Set root dir in lint project.xmlColin Cross2020-06-232-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Set the root dir in the project.xml for lint so that the paths in the lint report are relative to the top of the tree instead of relative to the project.xml. Bug: 153485543 Test: run lint Change-Id: Ie163a4dadd976e708f798855de73e58084931a91 Merged-In: Ie163a4dadd976e708f798855de73e58084931a91 (cherry picked from commit c31efeb25cac61fd3c2af3fed5bedeca2d401994)
| * | | Set ANDROID_SDK_HOME when running lintColin Cross2020-06-231-6/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Lint tries to create ~/.android, set ANDROID_SDK_HOME to keep it from attempting to write to the home directory, which may not be writable. Test: run lint Bug: 159676171 Change-Id: I16375b88d309a8fa416b3a8efeabe15759889ae3 Merged-In: I16375b88d309a8fa416b3a8efeabe15759889ae3 (cherry picked from commit 977b6a822d4239c6af060340c1670582c6af647d)
* | | | Change how override_modules work with prebuilts.Jaewoong Jung2020-06-231-6/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If an override module is overridden by a prebuilt, only skip its installation instead of completely ignoring it, so that other modules rely on it can still get configured and built properly. Fixes: 159694118 Test: m checkbuild Change-Id: I96d24f1440ff8a8aa8b1253fc22fd532b5588339
* | | | Merge "Stem name should be fixed the same was as masterFile" into rvc-devTreeHugger Robot2020-06-231-1/+1
|\ \ \ \
| * | | | Stem name should be fixed the same was as masterFileSasha Smundak2020-06-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | BUG: 159641682 Test: TH Change-Id: Ic0300676c35821cedc693eeb7b970318790f6189
* | | | | Merge "VNDK listing contains device modules only" into rvc-devTreeHugger Robot2020-06-233-11/+54
|\ \ \ \ \
| * | | | | VNDK listing contains device modules onlyYo Chiang2020-06-183-11/+54
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix a bug where host-only modules were incorrectly listed as VNDK. Also refactor VndkMutator() / apexVndkDepsMutator() module skipping logic. Bug: 158543482 Test: Add unit test to cc/cc_test.go Change-Id: I50b09f526cbc081149d8241c2a091e3ee48ef4d7 Merged-In: I50b09f526cbc081149d8241c2a091e3ee48ef4d7 (cherry picked from commit bba545e039419a8eac4c061f2481826391726968)
* | | | | | Merge "Enforce permitted_packages for Q+ and R+ modules" into rvc-devTreeHugger Robot2020-06-223-0/+242
|\ \ \ \ \ \
| * | | | | | Enforce permitted_packages for Q+ and R+ modulesAndrei Onea2020-06-183-0/+242
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Q+ and R+ mainline modules may only add code in a restricted set of Java package prefixes, that may never be changed. If a mainline module owns the Java package prefix "foo.bar", it may have classes in "foo.bar", "foo.bar.baz", "foo.bar.baz.bat" etc. Test: m Bug: 156725734 Change-Id: I30bf510ed473309871469bf439d7c81575450931
* | | | | | Merge "apex: make allowed_files prop overridable" into rvc-devJooyung Han2020-06-223-5/+63
|\ \ \ \ \ \ | |_|/ / / / |/| | | | |
| * | | | | apex: make allowed_files prop overridableJooyung Han2020-06-203-5/+63
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Because override_apex can modify the contents of the base apex, allowed_files (which describes the contents) should be overridable. Bug: 159503079 Bug: 159392784 Bug: 158169437 Test: m (soong test added) Change-Id: I12744b0465dc3cfc90a66643867e65b4092cd0f7
* | | | | Merge "Fix build breakages when WITHOUT_CHECK_API=true" into rvc-devPaul Duffin2020-06-222-10/+20
|\ \ \ \ \
| * | | | | Fix build breakages when WITHOUT_CHECK_API=truePaul Duffin2020-06-192-10/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug: 158578354 Test: export WITHOUT_CHECK_API=true m checkbuild Change-Id: I7b5fff40b870c9d754f779ff1c3314bac7e42440
* | | | | | Instrument the java_sdk_library implementation libraryPaul Duffin2020-06-201-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug: 159241638 Test: build jacoco-report-classes-all.jar with and without prebuilt for framework-tethering. Ensure it contains the jacoco-report-classes.jar for framework-tethering. Change-Id: I8183bd9613dfaf0ded5f9ac36567d5d29a8941e8 Merged-In: I8183bd9613dfaf0ded5f9ac36567d5d29a8941e8
* | | | | | Fix check-boot-jars when a boot jar is provided by prebuiltPaul Duffin2020-06-204-4/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, when a boot jar was provided by a java_sdk_library_import module the check-boot-jars check failed because the file it depended on was not available. In an incremental build the build failed due to the file in the out directory not having a rule to generate it. That was because the module was named prebuilt_<module>.<apex> instead of <module>.<apex>. This was fixed by simply removing prebuilt_ prefix from the name if it was present. After fixing that the check-boot-jars still did not work properly because it was expecting a jar file containing .class files but instead was given a jar file containing .dex files which meant the check did not work properly. This was fixed by defining a new ApexDependency interface for use by the apex/apex.go code to use instead of java.Dependency for generating the androidmk entries. The *SdkLibraryImport type then implemented those, by delegating to the implementation library. Bug: 158304459 Bug: 159112414 Test: m check-boot-jars m checkbuild manual inspection of the .jar file used by check-boot-jars to ensure it contained .class files and not .dex files. Change-Id: I545c5c9072dd472337d2f9b4dfdf08f53c981662 Merged-In: I545c5c9072dd472337d2f9b4dfdf08f53c981662
* | | | | | Merge changes I25c77994,I7da78ef4,I89197d0a into rvc-devColin Cross2020-06-193-11/+47
|\ \ \ \ \ \ | | |_|/ / / | |/| | / / | |_|_|/ / |/| | | | | | | | | | | | | | * changes: Support adding extra lint checks Allow kotlin modules to skip packaging the kotlin stdlib Fix annotation processors in kotlin modules that generate resources
| * | | | Support adding extra lint checksColin Cross2020-06-192-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a lint.extra_check_modules property to list modules to use as plugins to Lint. Bug: 153485543 Test: m checkbuild Change-Id: I25c7799438cfec43163e757637c65b8657488d36 Merged-In: I25c7799438cfec43163e757637c65b8657488d36 (cherry picked from commit 92e4b46af561503506b54f9e4c925615bd03a069)
| * | | | Allow kotlin modules to skip packaging the kotlin stdlibColin Cross2020-06-191-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Host tools like lint may package their own version of the kotlin stdlib, and any jars loaded by them shouldn't contain the platform version. Add a static_kotlin_stdlib property that defaults to true to allow building the module without staticalling including the kotlin stdlib. Bug: 153485543 Test: m ApiFinder Change-Id: I7da78ef493806ce4ab0050e4ee9e8d330b0509c8 Merged-In: I7da78ef493806ce4ab0050e4ee9e8d330b0509c8 (cherry picked from commit 0b67a8bd0fc87c7c584d165abfeeb9314ce22f18)
| * | | | Fix annotation processors in kotlin modules that generate resourcesColin Cross2020-06-192-9/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The kapt rule was only keeping the generated sources, and not the generated classes directory. The generated classes directory will contain resources generated by the annotation processor and needs to be added to the final jar. Test: m ApiFinder Bug: 153485543 Change-Id: I89197d0afcb1eee011c01aa400f9977e66f43768 Merged-In: I89197d0afcb1eee011c01aa400f9977e66f43768 (cherry picked from commit 9ca38d22a49127901dadb14ffa093e29a2942f2d)
* | | | | Merge changes from topic "soong-lint" into rvc-devColin Cross2020-06-1912-64/+747
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * changes: Add support for running Android lint on java and android modules. Consolidate adding common java properties
| * | | | Add support for running Android lint on java and android modules.Colin Cross2020-06-1811-0/+710
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a rule that runs Android lint on each java and android module and produces reports in xml, html and text formats. Bug: 153485543 Test: m out/soong/.intermediates/packages/apps/Settings/Settings-core/android_common/lint-report.html Change-Id: I5a530975b73ba767fef45b257d4f9ec901a19fcb Merged-In: I5a530975b73ba767fef45b257d4f9ec901a19fcb (cherry picked from commit 014489c1e6cbd2801970b88d5b608dc5c45b403c)
| * | | | Consolidate adding common java propertiesColin Cross2020-06-186-64/+37
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use a method to add the properties that are present on all java modules. Bug: 153485543 Test: m checkbuild Change-Id: I7803b15eb0de810c8ab8d4b9acf2511935a26fb6 Merged-In: I7803b15eb0de810c8ab8d4b9acf2511935a26fb6 (cherry picked from commit ce6734e666086814df721b681158dc90f7bcf6dd)
* | | | Merge "Don't remove entries for overriddable modules" into rvc-devTreeHugger Robot2020-06-192-7/+1
|\ \ \ \ | |_|/ / |/| | |
| * | | Don't remove entries for overriddable modulesJiyong Park2020-06-182-7/+1
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, when there is apex_set that is overriding another module, the entry for the overridden module is removed from apexkeys.txt. However, this is wrong because the existence of the apex_set module doesn't necessary mean that the module is insatalled instead of the overridden module. That is determined by PRODUCT_PACKAGES which Soong has no knowledge of. Therefore, we don't delete the entry for the overridden (actually possibly overridable) modules in the file. Bug: 158729168 Test: m Change-Id: I85d0c756f862323bae556bf657d66ec50038985f
* | | Merge "Exclude kernel_headers from vendor snapshot" into rvc-devInseob Kim2020-06-191-0/+4
|\ \ \ | |/ / |/| |
| * | Exclude kernel_headers from vendor snapshotInseob Kim2020-06-171-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Vendor snapshot is supposed to have AOSP-defined modules which are installed to vendor. kernel_headers are excluded from snapshot because they always depend on vendor, regardless of locations they are defined. Bug: 157106227 Test: m vendor-snapshot Change-Id: If47634678797973266fcf502739216daf28ad790 Merged-In: If47634678797973266fcf502739216daf28ad790 (cherry picked from commit 65ca36a72e7c1b5f353208faa94e665b2625e51a)
* | | apex_sets is added to apexkeys.txtJiyong Park2020-06-173-21/+100
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | apex_sets is a new module type that can be used to deliver pre-signed APEXes, which previously could be done only via prebuilt_apex. Soon gnow understands apex_sets module types and emits the signing info of the modules to apexkeys.txt Exempt-From-Owner-Approval: cherry-pic from AOSP Bug: 158729168 Test: m Merged-In: I9507375342ec053309660d94c931a79bf4f21218 (cherry picked from commit 8d6c51ebcc5d2703b5c3b4d7c6164c2790b3ed84) Change-Id: I9507375342ec053309660d94c931a79bf4f21218