diff --git a/tools/hiddenapi/Android.bp b/tools/hiddenapi/Android.bp new file mode 100644 index 0000000000000..e0eb06cbea7f7 --- /dev/null +++ b/tools/hiddenapi/Android.bp @@ -0,0 +1,30 @@ +/* + * Copyright (C) 2020 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. + */ + +python_binary_host { + name: "merge_csv", + main: "merge_csv.py", + srcs: ["merge_csv.py"], + version: { + py2: { + enabled: false, + }, + py3: { + enabled: true, + embedded_launcher: true + }, + }, +} diff --git a/tools/hiddenapi/merge_csv.py b/tools/hiddenapi/merge_csv.py index 48c07553ffef2..96619273af8dd 100755 --- a/tools/hiddenapi/merge_csv.py +++ b/tools/hiddenapi/merge_csv.py @@ -21,20 +21,19 @@ import csv import sys csv_readers = [ - csv.DictReader(open(csv_file, 'rb'), delimiter=',', quotechar='|') + csv.DictReader(open(csv_file, 'r'), delimiter=',', quotechar='|') for csv_file in sys.argv[1:] ] # Build union of all columns from source files: headers = set() for reader in csv_readers: - headers = headers.union(reader.fieldnames) + headers = headers.union(reader.fieldnames) # Concatenate all files to output: -out = csv.DictWriter(sys.stdout, delimiter=',', quotechar='|', fieldnames = sorted(headers)) +out = csv.DictWriter(sys.stdout, delimiter=',', quotechar='|', quoting=csv.QUOTE_MINIMAL, + dialect='unix', fieldnames=sorted(headers)) out.writeheader() for reader in csv_readers: - for row in reader: - out.writerow(row) - - + for row in reader: + out.writerow(row)