qemu/scripts/qemu-stamp.py

25 lines
614 B
Python
Raw Normal View History

#! /usr/bin/env python3
# Usage: scripts/qemu-stamp.py STRING1 STRING2... -- FILE1 FILE2...
import hashlib
import os
import sys
sha = hashlib.sha1()
is_file = False
for arg in sys.argv[1:]:
if arg == '--':
is_file = True
continue
if is_file:
with open(arg, 'rb') as f:
for chunk in iter(lambda: f.read(65536), b''):
sha.update(chunk)
else:
sha.update(os.fsencode(arg))
sha.update(b'\n')
# The hash can start with a digit, which the compiler doesn't
# like as an symbol. So prefix it with an underscore
print("_" + sha.hexdigest())