summaryrefslogtreecommitdiff
path: root/devel
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2013-04-15 11:16:47 +0200
committerJohannes Berg <johannes.berg@intel.com>2013-04-15 11:32:31 +0200
commit320f4dba26a7b09bf058b2d145737d913649daf4 (patch)
tree775034e1e3a23c9bd6155afa6ed5205d38ab45cd /devel
parentd55e4f525eabff4ffb6394a6f82bfb54fa723b53 (diff)
ckmake: optionally fail on linker failures
This will be enabled by default later, but right now it fails on media/regulator drivers. Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'devel')
-rwxr-xr-xdevel/ckmake16
1 files changed, 15 insertions, 1 deletions
diff --git a/devel/ckmake b/devel/ckmake
index a0deb7d5..0b738e5a 100755
--- a/devel/ckmake
+++ b/devel/ckmake
@@ -68,6 +68,8 @@ def get_status_name(status):
return 'TERM'
elif (status == 1234):
return 'INIT'
+ elif (status == 1235):
+ return 'LINK'
elif (status == -2):
return 'TERM'
else:
@@ -80,6 +82,8 @@ def get_stat_pos(status):
return 33
elif (status == 1234):
return 33
+ elif (status == 1235):
+ return 33
elif (status == -2):
return 33
else:
@@ -175,9 +179,17 @@ def process_kernel(num, kset, cmdline_args):
p.wait()
log_file.close()
+ status = p.returncode
+ if status == 0 and cmdline_args.check_exports:
+ warn = re.compile('^WARNING:.*undefined.*')
+ log_file = open(log_file_name, 'r')
+ for l in log_file:
+ if warn.match(l):
+ status = 1235
+ break
null_file.close()
- kset.update_status(rel, p.returncode)
+ kset.update_status(rel, status)
kset.queue.task_done()
kset.completed(rel)
@@ -401,6 +413,8 @@ if __name__ == "__main__":
help='Build allyesconfig rather than only backport code.')
parser.add_argument('--defconfig', metavar='<name>', type=str,
help='Build this defconfig rather than only backport code.')
+ parser.add_argument('--check-exports', const=True, default=False, action="store_const",
+ help='Check for linker warnings indicating exported symbols are missing.')
args = parser.parse_args()
if not os.path.exists(modules):