Files
build/tools/compliance/Android.bp
Bob Badour c817845ea5 license metadata reverse trace
Introduce the below command-line tool:

rtrace outputs a list of targets and conditions causing one or more
projects or target nodes to require sharing to resolve a restricted
condition.

Bug: 68860345
Bug: 151177513
Bug: 151953481
Bug: 213388645
Bug: 210912771

Test: m all
Test: m systemlicense
Test: m rtrace; out/soong/host/linux-x85/rtrace -rtrace=...

where ... is a project or license metadata file followed by the path to
the .meta_lic file for the system image. In my case if

$ export PRODUCT=$(realpath $ANDROID_PRODUCT_OUT --relative-to=$PWD)

... can be expressed as:

system/core ${PRODUCT}/gen/META/lic_intermediates/${PRODUCT}/system.img.meta_lic
or
${PRODUCT}/gen/META/lic_intermediates/${PRODUCT}/system.img.meta_lic ${PRODUCT}/gen/META/lic_intermediates/${PRODUCT}/system.img.meta_lic

Change-Id: I40a0586699d9b8a8dd2bd4ba26756c9649ebf964
2022-01-31 14:16:23 -08:00

125 lines
3.4 KiB
Plaintext

//
// Copyright (C) 2021 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package {
default_applicable_licenses: ["Android-Apache-2.0"],
}
blueprint_go_binary {
name: "bom",
srcs: ["cmd/bom/bom.go"],
deps: ["compliance-module"],
testSrcs: ["cmd/bom/bom_test.go"],
}
blueprint_go_binary {
name: "checkshare",
srcs: ["cmd/checkshare/checkshare.go"],
deps: ["compliance-module"],
testSrcs: ["cmd/checkshare/checkshare_test.go"],
}
blueprint_go_binary {
name: "listshare",
srcs: ["cmd/listshare/listshare.go"],
deps: ["compliance-module"],
testSrcs: ["cmd/listshare/listshare_test.go"],
}
blueprint_go_binary {
name: "dumpgraph",
srcs: ["cmd/dumpgraph/dumpgraph.go"],
deps: ["compliance-module"],
testSrcs: ["cmd/dumpgraph/dumpgraph_test.go"],
}
blueprint_go_binary {
name: "dumpresolutions",
srcs: ["cmd/dumpresolutions/dumpresolutions.go"],
deps: ["compliance-module"],
testSrcs: ["cmd/dumpresolutions/dumpresolutions_test.go"],
}
blueprint_go_binary {
name: "htmlnotice",
srcs: ["cmd/htmlnotice/htmlnotice.go"],
deps: ["compliance-module"],
testSrcs: ["cmd/htmlnotice/htmlnotice_test.go"],
}
blueprint_go_binary {
name: "rtrace",
srcs: ["cmd/rtrace/rtrace.go"],
deps: ["compliance-module"],
testSrcs: ["cmd/rtrace/rtrace_test.go"],
}
blueprint_go_binary {
name: "shippedlibs",
srcs: ["cmd/shippedlibs/shippedlibs.go"],
deps: ["compliance-module"],
testSrcs: ["cmd/shippedlibs/shippedlibs_test.go"],
}
blueprint_go_binary {
name: "textnotice",
srcs: ["cmd/textnotice/textnotice.go"],
deps: ["compliance-module"],
testSrcs: ["cmd/textnotice/textnotice_test.go"],
}
bootstrap_go_package {
name: "compliance-module",
srcs: [
"condition.go",
"conditionset.go",
"doc.go",
"graph.go",
"noticeindex.go",
"policy_policy.go",
"policy_resolve.go",
"policy_resolvenotices.go",
"policy_resolveshare.go",
"policy_resolveprivacy.go",
"policy_shareprivacyconflicts.go",
"policy_shipped.go",
"policy_walk.go",
"readgraph.go",
"resolution.go",
"resolutionset.go",
],
testSrcs: [
"condition_test.go",
"conditionset_test.go",
"readgraph_test.go",
"policy_policy_test.go",
"policy_resolve_test.go",
"policy_resolvenotices_test.go",
"policy_resolveshare_test.go",
"policy_resolveprivacy_test.go",
"policy_shareprivacyconflicts_test.go",
"policy_shipped_test.go",
"policy_walk_test.go",
"resolutionset_test.go",
"test_util.go",
],
deps: [
"golang-protobuf-proto",
"golang-protobuf-encoding-prototext",
"license_metadata_proto",
],
pkgPath: "android/soong/tools/compliance",
}