Ensure package check is run for java_library in APEX
Package checks were not being run for java libraries that were in an
APEX and not on the platform. This change fixes that and updates the
script to report all failing classes to make it easier to update the
list of packages.
Test: m java
Bug: 157633658
Change-Id: I28044e08d3a40e9f3464bb2158ef6a28d57264d1
(cherry picked from commit 63d8febd35
)
This commit is contained in:
parent
a84756c827
commit
c552427032
|
@ -69,7 +69,26 @@ func (library *Library) AndroidMkEntries() []android.AndroidMkEntries {
|
|||
if !library.ApexModuleBase.AvailableFor(android.AvailableToPlatform) {
|
||||
hideFromMake = true
|
||||
}
|
||||
if !hideFromMake {
|
||||
if hideFromMake {
|
||||
// May still need to add some additional dependencies. This will be called
|
||||
// once for the platform variant (even if it is not being used) and once each
|
||||
// for the APEX specific variants. In order to avoid adding the dependency
|
||||
// multiple times only add it for the platform variant.
|
||||
checkedModulePaths := library.additionalCheckedModules
|
||||
if library.IsForPlatform() && len(checkedModulePaths) != 0 {
|
||||
mainEntries = android.AndroidMkEntries{
|
||||
Class: "FAKE",
|
||||
// Need at least one output file in order for this to take effect.
|
||||
OutputFile: android.OptionalPathForPath(checkedModulePaths[0]),
|
||||
Include: "$(BUILD_PHONY_PACKAGE)",
|
||||
ExtraEntries: []android.AndroidMkExtraEntriesFunc{
|
||||
func(entries *android.AndroidMkEntries) {
|
||||
entries.AddStrings("LOCAL_ADDITIONAL_CHECKED_MODULE", checkedModulePaths.Strings()...)
|
||||
},
|
||||
},
|
||||
}
|
||||
}
|
||||
} else {
|
||||
mainEntries = android.AndroidMkEntries{
|
||||
Class: "JAVA_LIBRARIES",
|
||||
DistFile: android.OptionalPathForPath(library.distFile),
|
||||
|
|
|
@ -52,6 +52,7 @@ zip_contents=`zipinfo -1 $jar_file`
|
|||
# Check all class file names against the expected prefixes.
|
||||
old_ifs=${IFS}
|
||||
IFS=$'\n'
|
||||
failed=false
|
||||
for zip_entry in ${zip_contents}; do
|
||||
# Check the suffix.
|
||||
if [[ "${zip_entry}" = *.class ]]; then
|
||||
|
@ -65,8 +66,11 @@ for zip_entry in ${zip_contents}; do
|
|||
done
|
||||
if [[ "${found}" == "false" ]]; then
|
||||
echo "Class file ${zip_entry} is outside specified packages."
|
||||
exit 1
|
||||
failed=true
|
||||
fi
|
||||
fi
|
||||
done
|
||||
if [[ "${failed}" == "true" ]]; then
|
||||
exit 1
|
||||
fi
|
||||
IFS=${old_ifs}
|
||||
|
|
Loading…
Reference in New Issue