35 строки
935 B
Python
Executable File
35 строки
935 B
Python
Executable File
#!/usr/bin/env python
|
|
# Copyright 2016 The Chromium Authors. All rights reserved.
|
|
# Use of this source code is governed by a BSD-style license that can be
|
|
# found in the LICENSE file.
|
|
|
|
"""Merge package entries from different package lists.
|
|
"""
|
|
|
|
# This is used for replacing packages in eg. sid with those in experimental.
|
|
# The updated packages are ABI compatible, but include security patches, so we
|
|
# should use those instead in our sysroots.
|
|
|
|
import sys
|
|
|
|
if len(sys.argv) != 2:
|
|
exit(1)
|
|
|
|
packages = {}
|
|
|
|
def AddPackagesFromFile(file):
|
|
global packages
|
|
lines = file.readlines()
|
|
if len(lines) % 3 != 0:
|
|
exit(1)
|
|
for i in xrange(0, len(lines), 3):
|
|
packages[lines[i]] = (lines[i + 1], lines[i + 2])
|
|
|
|
AddPackagesFromFile(open(sys.argv[1], 'r'))
|
|
AddPackagesFromFile(sys.stdin)
|
|
|
|
output_file = open(sys.argv[1], 'w')
|
|
|
|
for (package, (filename, sha256)) in packages.iteritems():
|
|
output_file.write(package + filename + sha256)
|