platform_build/tools/Android.bp

92 lines
2.2 KiB
Text
Raw Normal View History

// Copyright (C) 2019 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.
[LSC] Add LOCAL_LICENSE_KINDS to build/make Added SPDX-license-identifier-Apache-2.0 to: target/product/sysconfig/Android.bp tools/apicheck/Android.bp tools/product_config/Android.bp tools/releasetools/Android.bp tools/signapk/Android.bp tools/signtos/Android.bp tools/zipalign/Android.bp tools/ziptime/Android.bp Added SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD SPDX-license-identifier-CC-BY SPDX-license-identifier-GPL SPDX-license-identifier-GPL-2.0 SPDX-license-identifier-LGPL SPDX-license-identifier-MIT legacy_not_a_contribution legacy_restricted to: Android.bp Added SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD SPDX-license-identifier-CC-BY SPDX-license-identifier-GPL SPDX-license-identifier-MIT to: tools/Android.bp tools/droiddoc/Android.bp Added SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD SPDX-license-identifier-GPL SPDX-license-identifier-GPL-2.0 SPDX-license-identifier-LGPL SPDX-license-identifier-MIT to: core/base_rules.mk core/dex_preopt_libart.mk core/package_internal.mk Added SPDX-license-identifier-Apache-2.0 legacy_not_a_contribution to: target/board/Android.mk Added legacy_restricted to: core/tasks/tools/package-modules.mk target/product/gsi/Android.bp target/product/gsi/Android.mk target/product/security/Android.bp target/product/security/Android.mk tools/acp/Android.bp tools/atree/Android.bp tools/fs_config/Android.bp tools/fs_config/Android.mk tools/fs_get_stats/Android.bp tools/libhost/Android.bp Bug: 68860345 Bug: 151177513 Bug: 151953481 Test: m all Exempt-From-Owner-Approval: janitorial work Change-Id: Id67a4eb1312940f999643b2ae57f45f34f120724
2021-02-13 06:42:54 +01:00
package {
// See: http://go/android-license-faq
// A large-scale-change added 'default_applicable_licenses' to import
// all of the 'license_kinds' from "build_make_license"
// to get the below license kinds:
// SPDX-license-identifier-Apache-2.0
// SPDX-license-identifier-BSD
// SPDX-license-identifier-CC-BY
// SPDX-license-identifier-GPL
// SPDX-license-identifier-MIT
default_applicable_licenses: ["build_make_license"],
}
python_binary_host {
name: "generate-self-extracting-archive",
srcs: ["generate-self-extracting-archive.py"],
version: {
py2: {
enabled: true,
},
py3: {
enabled: false,
},
},
}
python_binary_host {
name: "post_process_props",
srcs: ["post_process_props.py"],
version: {
py2: {
enabled: false,
},
py3: {
enabled: true,
},
},
}
Support optional prop assignments This CL adds a number of changes to make the assignment of system properties to be less confusing. 1. Added `a ?= b` syntax, which is called optional prop assignments. The prop `a` gets the value `b` only when there is no non-optional prop assignment for `a` such as `a = c`. This is useful for props that provide some reasonable default values as fallback. 2. With the introduction of the optional prop assignment syntax, duplicated non-optional assignments is prohibited; e.g., the follwing now triggers a build-time error: a = b a = c , but the following doesn't: a ?= b a = c Note that the textual order between the optional and non-optional assignments doesn't matter. The non-optional assignment eclipses the optional assignment even when the former appears 'before' the latter. a = c a ?= b In the above, `a` gets the value `c` When there are multiple optional assignments without a non-optional assignments as shown below, the last one wins: a ?= b a ?= c `a` becomes `c`. Specifically, the former assignment is commented out and the latter is converted to a non-optional assignment. 3. post_process_props.py is modified so that when a prop assignment is deleted, changed, or added, the changes are recorded as comments. This is to aid debugging. Previously, it was often difficult to find out why a certain sysprop assignment is missing or is added. 4. post_process_prop.py now has a unittest Bug: 117892318 Bug: 158735147 Test: atest --host post_process_prop_unittest Exempt-From-Owner-Approval: cherry-pick from master Merged-In: I9c073a21c8257987cf2378012cadaeeeb698a4fb (cherry picked from commit 7aeb8de74e08eb2d305686aa8eff45353973e7d7) Change-Id: I9c073a21c8257987cf2378012cadaeeeb698a4fb
2020-06-22 10:30:57 +02:00
python_test_host {
name: "post_process_props_unittest",
main: "test_post_process_props.py",
srcs: [
"post_process_props.py",
"test_post_process_props.py",
],
version: {
py2: {
enabled: false,
},
py3: {
enabled: true,
},
},
test_config: "post_process_props_unittest.xml",
test_suites: ["general-tests"],
}
python_binary_host {
name: "extract_kernel",
srcs: ["extract_kernel.py"],
version: {
py2: {
enabled: false,
},
py3: {
enabled: true,
},
},
}
genrule_defaults {
name: "extract_kernel_release_defaults",
tools: ["extract_kernel", "lz4"],
out: ["kernel_release.txt"],
cmd: "$(location) --tools lz4:$(location lz4) --input $(in) --output-release > $(out)"
}