Files
linux-kernel-module-cheat/bisect-linux-boot-gem5
Ciro Santilli 六四事件 法轮功 4cd9c533b8 move all builds to components
2018-10-23 09:58:30 +01:00

35 lines
911 B
Python
Executable File

#!/usr/bin/env python3
import imp
import os
import shutil
import sys
import common
build_linux = imp.load_source('build-linux', os.path.join(common.root_dir, 'build_linux'))
run = imp.load_source('run', os.path.join(common.root_dir, 'run'))
parser = common.get_argparse(
argparse_args={
'description': '''Bisect the Linux kernel on gem5 boots.
More information at: https://github.com/cirosantilli/linux-kernel-module-cheat#bisection
'''},
default_args={
'gem5': True,
'linux_build_id': 'bisect',
},
)
args = common.setup(parser)
# We need a clean rebuild because rebuilds at different revisions:
# - may fail
# - may not actually rebuild all files, e.g. on header changes
common.rmrf(common.linux_build_dir)
build_linux.LinuxComponent().do_build(args)
status = run.main(args, {
'eval': 'm5 exit',
})
if status == 125 or status == 127:
status = 1
sys.exit(status)