Merge "Export type info."
diff --git a/tools/cargo_embargo/src/bp.rs b/tools/cargo_embargo/src/bp.rs
index 5c661dc..9364c5b 100644
--- a/tools/cargo_embargo/src/bp.rs
+++ b/tools/cargo_embargo/src/bp.rs
@@ -16,13 +16,14 @@
use std::collections::BTreeMap;
/// Build module.
+#[derive(Clone, PartialEq, Eq, PartialOrd, Ord)]
pub struct BpModule {
module_type: String,
pub props: BpProperties,
}
/// Properties of a build module, or of a nested object value.
-#[derive(Clone, PartialEq, Eq)]
+#[derive(Clone, PartialEq, Eq, PartialOrd, Ord)]
pub struct BpProperties {
map: BTreeMap<String, BpValue>,
/// A raw block of text to append after the last key-value pair, but before the closing brace.
@@ -43,7 +44,7 @@
pub raw_block: Option<String>,
}
-#[derive(Clone, PartialEq, Eq)]
+#[derive(Clone, PartialEq, Eq, PartialOrd, Ord)]
pub enum BpValue {
Object(BpProperties),
Bool(bool),
diff --git a/tools/cargo_embargo/src/main.rs b/tools/cargo_embargo/src/main.rs
index dd2caf5..83ee896 100644
--- a/tools/cargo_embargo/src/main.rs
+++ b/tools/cargo_embargo/src/main.rs
@@ -373,6 +373,12 @@
return Ok(());
}
+ // In some cases there are nearly identical rustc invocations that that get processed into
+ // identical BP modules. So far, dedup'ing them is a good enough fix. At some point we might
+ // need something more complex, maybe like cargo2android's logic for merging crates.
+ modules.sort();
+ modules.dedup();
+
modules.sort_by_key(|m| m.props.get_string("name").to_string());
for m in modules {
m.write(&mut bp_contents)?;
diff --git a/tools/repo_pull/gerrit.py b/tools/repo_pull/gerrit.py
index 5cc3f8a..c93461d 100755
--- a/tools/repo_pull/gerrit.py
+++ b/tools/repo_pull/gerrit.py
@@ -495,6 +495,14 @@
return _make_json_post_request(url_opener, url, {})
+def delete(url_opener, gerrit_url, change_id):
+ """Delete a change list."""
+
+ url = '{}/a/changes/{}'.format(gerrit_url, change_id)
+
+ return _make_json_post_request(url_opener, url, {}, method='DELETE')
+
+
def set_topic(url_opener, gerrit_url, change_id, name):
"""Set the topic name."""
diff --git a/tools/repo_pull/repo_review.py b/tools/repo_pull/repo_review.py
index d0d6f58..c431ac8 100755
--- a/tools/repo_pull/repo_review.py
+++ b/tools/repo_pull/repo_review.py
@@ -32,7 +32,7 @@
from gerrit import (
abandon, add_common_parse_args, add_reviewers, create_url_opener_from_args,
- delete_reviewer, delete_topic, find_gerrit_name, normalize_gerrit_name,
+ delete, delete_reviewer, delete_topic, find_gerrit_name, normalize_gerrit_name,
query_change_lists, restore, set_hashtags, set_review, set_topic, submit
)
@@ -96,6 +96,7 @@
parser.add_argument('--abandon', help='Abandon a CL with a message')
parser.add_argument('--restore', action='store_true', help='Restore a CL')
+ parser.add_argument('--delete', action='store_true', help='Delete a CL')
parser.add_argument('--add-hashtag', action='append', help='Add hashtag')
parser.add_argument('--remove-hashtag', action='append',
@@ -126,6 +127,8 @@
return True
if args.restore:
return True
+ if args.delete:
+ return True
if args.add_hashtag or args.remove_hashtag:
return True
if args.set_topic or args.delete_topic:
@@ -196,7 +199,7 @@
if not _has_task(args):
print('error: Either --label, --message, --submit, --abandon, --restore, '
'--add-hashtag, --remove-hashtag, --set-topic, --delete-topic, '
- '--add-reviewer or --delete-reviewer must be specified',
+ '--add-reviewer, --delete-reviewer or --delete must be specified',
file=sys.stderr)
sys.exit(1)
@@ -247,6 +250,9 @@
if args.restore:
_do_task(change, restore, url_opener, args.gerrit, change['id'],
errors=errors)
+ if args.delete:
+ _do_task(change, delete, url_opener, args.gerrit, change['id'],
+ errors=errors)
if args.add_reviewer:
_do_task(change, add_reviewers, url_opener, args.gerrit,
change['id'], new_reviewers, errors=errors)
diff --git a/vndk/tools/header-checker/android/envsetup.sh b/vndk/tools/header-checker/android/envsetup.sh
index 44eaa1c..ead5508 100644
--- a/vndk/tools/header-checker/android/envsetup.sh
+++ b/vndk/tools/header-checker/android/envsetup.sh
@@ -15,5 +15,5 @@
# limitations under the License.
export LLVM_BUILD_HOST_TOOLS=true
-export LLVM_PREBUILTS_VERSION=clang-r487747
+export LLVM_PREBUILTS_VERSION=clang-r487747c
export LLVM_RELEASE_VERSION=17