diff options
Diffstat (limited to 'scripts/lib/bsp/kernel.py')
-rw-r--r-- | scripts/lib/bsp/kernel.py | 133 |
1 files changed, 66 insertions, 67 deletions
diff --git a/scripts/lib/bsp/kernel.py b/scripts/lib/bsp/kernel.py index 07832282c3..5bfa663809 100644 --- a/scripts/lib/bsp/kernel.py +++ b/scripts/lib/bsp/kernel.py | |||
@@ -42,7 +42,7 @@ def find_bblayers(): | |||
42 | try: | 42 | try: |
43 | builddir = os.environ["BUILDDIR"] | 43 | builddir = os.environ["BUILDDIR"] |
44 | except KeyError: | 44 | except KeyError: |
45 | print "BUILDDIR not found, exiting. (Did you forget to source oe-init-build-env?)" | 45 | print("BUILDDIR not found, exiting. (Did you forget to source oe-init-build-env?)") |
46 | sys.exit(1) | 46 | sys.exit(1) |
47 | bblayers_conf = os.path.join(builddir, "conf/bblayers.conf") | 47 | bblayers_conf = os.path.join(builddir, "conf/bblayers.conf") |
48 | 48 | ||
@@ -53,7 +53,7 @@ def find_bblayers(): | |||
53 | stdout=subprocess.PIPE).stdout.read() | 53 | stdout=subprocess.PIPE).stdout.read() |
54 | 54 | ||
55 | if not bitbake_env_lines: | 55 | if not bitbake_env_lines: |
56 | print "Couldn't get '%s' output, exiting." % bitbake_env_cmd | 56 | print("Couldn't get '%s' output, exiting." % bitbake_env_cmd) |
57 | sys.exit(1) | 57 | sys.exit(1) |
58 | 58 | ||
59 | for line in bitbake_env_lines.split('\n'): | 59 | for line in bitbake_env_lines.split('\n'): |
@@ -62,8 +62,7 @@ def find_bblayers(): | |||
62 | break | 62 | break |
63 | 63 | ||
64 | if not bblayers: | 64 | if not bblayers: |
65 | print "Couldn't find BBLAYERS in %s output, exiting." % \ | 65 | print("Couldn't find BBLAYERS in %s output, exiting." % bitbake_env_cmd) |
66 | bitbake_env_cmd | ||
67 | sys.exit(1) | 66 | sys.exit(1) |
68 | 67 | ||
69 | raw_layers = bblayers.split() | 68 | raw_layers = bblayers.split() |
@@ -110,8 +109,8 @@ def find_bsp_layer(machine): | |||
110 | if layer.endswith(machine): | 109 | if layer.endswith(machine): |
111 | return layer | 110 | return layer |
112 | 111 | ||
113 | print "Unable to find the BSP layer for machine %s." % machine | 112 | print("Unable to find the BSP layer for machine %s." % machine) |
114 | print "Please make sure it is listed in bblayers.conf" | 113 | print("Please make sure it is listed in bblayers.conf") |
115 | sys.exit(1) | 114 | sys.exit(1) |
116 | 115 | ||
117 | 116 | ||
@@ -190,8 +189,8 @@ def yocto_kernel_config_list(scripts_path, machine): | |||
190 | """ | 189 | """ |
191 | config_items = read_config_items(scripts_path, machine) | 190 | config_items = read_config_items(scripts_path, machine) |
192 | 191 | ||
193 | print "The current set of machine-specific kernel config items for %s is:" % machine | 192 | print("The current set of machine-specific kernel config items for %s is:" % machine) |
194 | print gen_choices_str(config_items) | 193 | print(gen_choices_str(config_items)) |
195 | 194 | ||
196 | 195 | ||
197 | def yocto_kernel_config_rm(scripts_path, machine): | 196 | def yocto_kernel_config_rm(scripts_path, machine): |
@@ -202,7 +201,7 @@ def yocto_kernel_config_rm(scripts_path, machine): | |||
202 | """ | 201 | """ |
203 | config_items = read_config_items(scripts_path, machine) | 202 | config_items = read_config_items(scripts_path, machine) |
204 | 203 | ||
205 | print "Specify the kernel config items to remove:" | 204 | print("Specify the kernel config items to remove:") |
206 | input = raw_input(gen_choices_str(config_items)) | 205 | input = raw_input(gen_choices_str(config_items)) |
207 | rm_choices = input.split() | 206 | rm_choices = input.split() |
208 | rm_choices.sort() | 207 | rm_choices.sort() |
@@ -213,18 +212,18 @@ def yocto_kernel_config_rm(scripts_path, machine): | |||
213 | try: | 212 | try: |
214 | idx = int(choice) - 1 | 213 | idx = int(choice) - 1 |
215 | except ValueError: | 214 | except ValueError: |
216 | print "Invalid choice (%s), exiting" % choice | 215 | print("Invalid choice (%s), exiting" % choice) |
217 | sys.exit(1) | 216 | sys.exit(1) |
218 | if idx < 0 or idx >= len(config_items): | 217 | if idx < 0 or idx >= len(config_items): |
219 | print "Invalid choice (%d), exiting" % (idx + 1) | 218 | print("Invalid choice (%d), exiting" % (idx + 1)) |
220 | sys.exit(1) | 219 | sys.exit(1) |
221 | removed.append(config_items.pop(idx)) | 220 | removed.append(config_items.pop(idx)) |
222 | 221 | ||
223 | write_config_items(scripts_path, machine, config_items) | 222 | write_config_items(scripts_path, machine, config_items) |
224 | 223 | ||
225 | print "Removed items:" | 224 | print("Removed items:") |
226 | for r in removed: | 225 | for r in removed: |
227 | print "\t%s" % r | 226 | print("\t%s" % r) |
228 | 227 | ||
229 | 228 | ||
230 | def yocto_kernel_config_add(scripts_path, machine, config_items): | 229 | def yocto_kernel_config_add(scripts_path, machine, config_items): |
@@ -239,7 +238,7 @@ def yocto_kernel_config_add(scripts_path, machine, config_items): | |||
239 | 238 | ||
240 | for item in config_items: | 239 | for item in config_items: |
241 | if not item.startswith("CONFIG") or (not "=y" in item and not "=m" in item): | 240 | if not item.startswith("CONFIG") or (not "=y" in item and not "=m" in item): |
242 | print "Invalid config item (%s), exiting" % item | 241 | print("Invalid config item (%s), exiting" % item) |
243 | sys.exit(1) | 242 | sys.exit(1) |
244 | if item not in cur_items and item not in new_items: | 243 | if item not in cur_items and item not in new_items: |
245 | new_items.append(item) | 244 | new_items.append(item) |
@@ -249,16 +248,16 @@ def yocto_kernel_config_add(scripts_path, machine, config_items): | |||
249 | if len(new_items) > 0: | 248 | if len(new_items) > 0: |
250 | cur_items.extend(new_items) | 249 | cur_items.extend(new_items) |
251 | write_config_items(scripts_path, machine, cur_items) | 250 | write_config_items(scripts_path, machine, cur_items) |
252 | print "Added item%s:" % ("" if len(new_items)==1 else "s") | 251 | print("Added item%s:" % ("" if len(new_items)==1 else "s")) |
253 | for n in new_items: | 252 | for n in new_items: |
254 | print "\t%s" % n | 253 | print("\t%s" % n) |
255 | 254 | ||
256 | if len(dup_items) > 0: | 255 | if len(dup_items) > 0: |
257 | output="The following item%s already exist%s in the current configuration, ignoring %s:" % \ | 256 | output="The following item%s already exist%s in the current configuration, ignoring %s:" % \ |
258 | (("","s", "it") if len(dup_items)==1 else ("s", "", "them" )) | 257 | (("","s", "it") if len(dup_items)==1 else ("s", "", "them" )) |
259 | print output | 258 | print(output) |
260 | for n in dup_items: | 259 | for n in dup_items: |
261 | print "\t%s" % n | 260 | print("\t%s" % n) |
262 | 261 | ||
263 | def find_current_kernel(bsp_layer, machine): | 262 | def find_current_kernel(bsp_layer, machine): |
264 | """ | 263 | """ |
@@ -348,8 +347,8 @@ def yocto_kernel_patch_list(scripts_path, machine): | |||
348 | """ | 347 | """ |
349 | patches = read_patch_items(scripts_path, machine) | 348 | patches = read_patch_items(scripts_path, machine) |
350 | 349 | ||
351 | print "The current set of machine-specific patches for %s is:" % machine | 350 | print("The current set of machine-specific patches for %s is:" % machine) |
352 | print gen_choices_str(patches) | 351 | print(gen_choices_str(patches)) |
353 | 352 | ||
354 | 353 | ||
355 | def yocto_kernel_patch_rm(scripts_path, machine): | 354 | def yocto_kernel_patch_rm(scripts_path, machine): |
@@ -359,7 +358,7 @@ def yocto_kernel_patch_rm(scripts_path, machine): | |||
359 | """ | 358 | """ |
360 | patches = read_patch_items(scripts_path, machine) | 359 | patches = read_patch_items(scripts_path, machine) |
361 | 360 | ||
362 | print "Specify the patches to remove:" | 361 | print("Specify the patches to remove:") |
363 | input = raw_input(gen_choices_str(patches)) | 362 | input = raw_input(gen_choices_str(patches)) |
364 | rm_choices = input.split() | 363 | rm_choices = input.split() |
365 | rm_choices.sort() | 364 | rm_choices.sort() |
@@ -368,17 +367,17 @@ def yocto_kernel_patch_rm(scripts_path, machine): | |||
368 | 367 | ||
369 | filesdir = find_filesdir(scripts_path, machine) | 368 | filesdir = find_filesdir(scripts_path, machine) |
370 | if not filesdir: | 369 | if not filesdir: |
371 | print "Couldn't rm patch(es) since we couldn't find a 'files' dir" | 370 | print("Couldn't rm patch(es) since we couldn't find a 'files' dir") |
372 | sys.exit(1) | 371 | sys.exit(1) |
373 | 372 | ||
374 | for choice in reversed(rm_choices): | 373 | for choice in reversed(rm_choices): |
375 | try: | 374 | try: |
376 | idx = int(choice) - 1 | 375 | idx = int(choice) - 1 |
377 | except ValueError: | 376 | except ValueError: |
378 | print "Invalid choice (%s), exiting" % choice | 377 | print("Invalid choice (%s), exiting" % choice) |
379 | sys.exit(1) | 378 | sys.exit(1) |
380 | if idx < 0 or idx >= len(patches): | 379 | if idx < 0 or idx >= len(patches): |
381 | print "Invalid choice (%d), exiting" % (idx + 1) | 380 | print("Invalid choice (%d), exiting" % (idx + 1)) |
382 | sys.exit(1) | 381 | sys.exit(1) |
383 | filesdir_patch = os.path.join(filesdir, patches[idx]) | 382 | filesdir_patch = os.path.join(filesdir, patches[idx]) |
384 | if os.path.isfile(filesdir_patch): | 383 | if os.path.isfile(filesdir_patch): |
@@ -388,9 +387,9 @@ def yocto_kernel_patch_rm(scripts_path, machine): | |||
388 | 387 | ||
389 | write_patch_items(scripts_path, machine, patches) | 388 | write_patch_items(scripts_path, machine, patches) |
390 | 389 | ||
391 | print "Removed patches:" | 390 | print("Removed patches:") |
392 | for r in removed: | 391 | for r in removed: |
393 | print "\t%s" % r | 392 | print("\t%s" % r) |
394 | 393 | ||
395 | 394 | ||
396 | def yocto_kernel_patch_add(scripts_path, machine, patches): | 395 | def yocto_kernel_patch_add(scripts_path, machine, patches): |
@@ -402,19 +401,19 @@ def yocto_kernel_patch_add(scripts_path, machine, patches): | |||
402 | 401 | ||
403 | for patch in patches: | 402 | for patch in patches: |
404 | if os.path.basename(patch) in existing_patches: | 403 | if os.path.basename(patch) in existing_patches: |
405 | print "Couldn't add patch (%s) since it's already been added" % os.path.basename(patch) | 404 | print("Couldn't add patch (%s) since it's already been added" % os.path.basename(patch)) |
406 | sys.exit(1) | 405 | sys.exit(1) |
407 | 406 | ||
408 | filesdir = find_filesdir(scripts_path, machine) | 407 | filesdir = find_filesdir(scripts_path, machine) |
409 | if not filesdir: | 408 | if not filesdir: |
410 | print "Couldn't add patch (%s) since we couldn't find a 'files' dir to add it to" % os.path.basename(patch) | 409 | print("Couldn't add patch (%s) since we couldn't find a 'files' dir to add it to" % os.path.basename(patch)) |
411 | sys.exit(1) | 410 | sys.exit(1) |
412 | 411 | ||
413 | new_patches = [] | 412 | new_patches = [] |
414 | 413 | ||
415 | for patch in patches: | 414 | for patch in patches: |
416 | if not os.path.isfile(patch): | 415 | if not os.path.isfile(patch): |
417 | print "Couldn't find patch (%s), exiting" % patch | 416 | print("Couldn't find patch (%s), exiting" % patch) |
418 | sys.exit(1) | 417 | sys.exit(1) |
419 | basename = os.path.basename(patch) | 418 | basename = os.path.basename(patch) |
420 | filesdir_patch = os.path.join(filesdir, basename) | 419 | filesdir_patch = os.path.join(filesdir, basename) |
@@ -425,9 +424,9 @@ def yocto_kernel_patch_add(scripts_path, machine, patches): | |||
425 | cur_items.extend(new_patches) | 424 | cur_items.extend(new_patches) |
426 | write_patch_items(scripts_path, machine, cur_items) | 425 | write_patch_items(scripts_path, machine, cur_items) |
427 | 426 | ||
428 | print "Added patches:" | 427 | print("Added patches:") |
429 | for n in new_patches: | 428 | for n in new_patches: |
430 | print "\t%s" % n | 429 | print("\t%s" % n) |
431 | 430 | ||
432 | 431 | ||
433 | def inc_pr(line): | 432 | def inc_pr(line): |
@@ -462,7 +461,7 @@ def kernel_contents_changed(scripts_path, machine): | |||
462 | 461 | ||
463 | kernel = find_current_kernel(layer, machine) | 462 | kernel = find_current_kernel(layer, machine) |
464 | if not kernel: | 463 | if not kernel: |
465 | print "Couldn't determine the kernel for this BSP, exiting." | 464 | print("Couldn't determine the kernel for this BSP, exiting.") |
466 | sys.exit(1) | 465 | sys.exit(1) |
467 | 466 | ||
468 | kernel_bbfile = os.path.join(layer, "recipes-kernel/linux/" + kernel + ".bbappend") | 467 | kernel_bbfile = os.path.join(layer, "recipes-kernel/linux/" + kernel + ".bbappend") |
@@ -598,8 +597,8 @@ def yocto_kernel_feature_list(scripts_path, machine): | |||
598 | """ | 597 | """ |
599 | features = read_features(scripts_path, machine) | 598 | features = read_features(scripts_path, machine) |
600 | 599 | ||
601 | print "The current set of machine-specific features for %s is:" % machine | 600 | print("The current set of machine-specific features for %s is:" % machine) |
602 | print gen_choices_str(features) | 601 | print(gen_choices_str(features)) |
603 | 602 | ||
604 | 603 | ||
605 | def yocto_kernel_feature_rm(scripts_path, machine): | 604 | def yocto_kernel_feature_rm(scripts_path, machine): |
@@ -610,7 +609,7 @@ def yocto_kernel_feature_rm(scripts_path, machine): | |||
610 | """ | 609 | """ |
611 | features = read_features(scripts_path, machine) | 610 | features = read_features(scripts_path, machine) |
612 | 611 | ||
613 | print "Specify the features to remove:" | 612 | print("Specify the features to remove:") |
614 | input = raw_input(gen_choices_str(features)) | 613 | input = raw_input(gen_choices_str(features)) |
615 | rm_choices = input.split() | 614 | rm_choices = input.split() |
616 | rm_choices.sort() | 615 | rm_choices.sort() |
@@ -621,18 +620,18 @@ def yocto_kernel_feature_rm(scripts_path, machine): | |||
621 | try: | 620 | try: |
622 | idx = int(choice) - 1 | 621 | idx = int(choice) - 1 |
623 | except ValueError: | 622 | except ValueError: |
624 | print "Invalid choice (%s), exiting" % choice | 623 | print("Invalid choice (%s), exiting" % choice) |
625 | sys.exit(1) | 624 | sys.exit(1) |
626 | if idx < 0 or idx >= len(features): | 625 | if idx < 0 or idx >= len(features): |
627 | print "Invalid choice (%d), exiting" % (idx + 1) | 626 | print("Invalid choice (%d), exiting" % (idx + 1)) |
628 | sys.exit(1) | 627 | sys.exit(1) |
629 | removed.append(features.pop(idx)) | 628 | removed.append(features.pop(idx)) |
630 | 629 | ||
631 | write_features(scripts_path, machine, features) | 630 | write_features(scripts_path, machine, features) |
632 | 631 | ||
633 | print "Removed features:" | 632 | print("Removed features:") |
634 | for r in removed: | 633 | for r in removed: |
635 | print "\t%s" % r | 634 | print("\t%s" % r) |
636 | 635 | ||
637 | 636 | ||
638 | def yocto_kernel_feature_add(scripts_path, machine, features): | 637 | def yocto_kernel_feature_add(scripts_path, machine, features): |
@@ -644,7 +643,7 @@ def yocto_kernel_feature_add(scripts_path, machine, features): | |||
644 | 643 | ||
645 | for item in features: | 644 | for item in features: |
646 | if not item.endswith(".scc"): | 645 | if not item.endswith(".scc"): |
647 | print "Invalid feature (%s), exiting" % item | 646 | print("Invalid feature (%s), exiting" % item) |
648 | sys.exit(1) | 647 | sys.exit(1) |
649 | new_items.append(item) | 648 | new_items.append(item) |
650 | 649 | ||
@@ -653,9 +652,9 @@ def yocto_kernel_feature_add(scripts_path, machine, features): | |||
653 | 652 | ||
654 | write_features(scripts_path, machine, cur_items) | 653 | write_features(scripts_path, machine, cur_items) |
655 | 654 | ||
656 | print "Added features:" | 655 | print("Added features:") |
657 | for n in new_items: | 656 | for n in new_items: |
658 | print "\t%s" % n | 657 | print("\t%s" % n) |
659 | 658 | ||
660 | 659 | ||
661 | def find_feature_url(git_url): | 660 | def find_feature_url(git_url): |
@@ -715,7 +714,7 @@ def print_feature_descs(layer, feature_dir): | |||
715 | feature_dir + "/" + file) | 714 | feature_dir + "/" + file) |
716 | f = open(fullpath) | 715 | f = open(fullpath) |
717 | feature_desc = find_feature_desc(f.readlines()) | 716 | feature_desc = find_feature_desc(f.readlines()) |
718 | print feature_dir + "/" + file + ": " + feature_desc | 717 | print(feature_dir + "/" + file + ": " + feature_desc) |
719 | 718 | ||
720 | 719 | ||
721 | def yocto_kernel_available_features_list(scripts_path, machine): | 720 | def yocto_kernel_available_features_list(scripts_path, machine): |
@@ -726,7 +725,7 @@ def yocto_kernel_available_features_list(scripts_path, machine): | |||
726 | layer = find_bsp_layer(machine) | 725 | layer = find_bsp_layer(machine) |
727 | kernel = find_current_kernel(layer, machine) | 726 | kernel = find_current_kernel(layer, machine) |
728 | if not kernel: | 727 | if not kernel: |
729 | print "Couldn't determine the kernel for this BSP, exiting." | 728 | print("Couldn't determine the kernel for this BSP, exiting.") |
730 | sys.exit(1) | 729 | sys.exit(1) |
731 | 730 | ||
732 | context = create_context(machine, "arch", scripts_path) | 731 | context = create_context(machine, "arch", scripts_path) |
@@ -738,7 +737,7 @@ def yocto_kernel_available_features_list(scripts_path, machine): | |||
738 | feature_cmd = "wget -q -O - " + feature_url | 737 | feature_cmd = "wget -q -O - " + feature_url |
739 | tmp = subprocess.Popen(feature_cmd, shell=True, stdout=subprocess.PIPE).stdout.read() | 738 | tmp = subprocess.Popen(feature_cmd, shell=True, stdout=subprocess.PIPE).stdout.read() |
740 | 739 | ||
741 | print "The current set of kernel features available to %s is:\n" % machine | 740 | print("The current set of kernel features available to %s is:\n" % machine) |
742 | 741 | ||
743 | if tmp: | 742 | if tmp: |
744 | tmpline = tmp.split("\n") | 743 | tmpline = tmp.split("\n") |
@@ -755,9 +754,9 @@ def yocto_kernel_available_features_list(scripts_path, machine): | |||
755 | feature_type = feature_def[0].strip() | 754 | feature_type = feature_def[0].strip() |
756 | feature = feature_def[1].strip() | 755 | feature = feature_def[1].strip() |
757 | desc = get_feature_desc(giturl, feature) | 756 | desc = get_feature_desc(giturl, feature) |
758 | print "%s: %s" % (feature, desc) | 757 | print("%s: %s" % (feature, desc)) |
759 | 758 | ||
760 | print "[local]" | 759 | print("[local]") |
761 | 760 | ||
762 | print_feature_descs(layer, "cfg") | 761 | print_feature_descs(layer, "cfg") |
763 | print_feature_descs(layer, "features") | 762 | print_feature_descs(layer, "features") |
@@ -801,7 +800,7 @@ def yocto_kernel_feature_describe(scripts_path, machine, feature): | |||
801 | 800 | ||
802 | kernel = find_current_kernel(layer, machine) | 801 | kernel = find_current_kernel(layer, machine) |
803 | if not kernel: | 802 | if not kernel: |
804 | print "Couldn't determine the kernel for this BSP, exiting." | 803 | print("Couldn't determine the kernel for this BSP, exiting.") |
805 | sys.exit(1) | 804 | sys.exit(1) |
806 | 805 | ||
807 | context = create_context(machine, "arch", scripts_path) | 806 | context = create_context(machine, "arch", scripts_path) |
@@ -811,7 +810,7 @@ def yocto_kernel_feature_describe(scripts_path, machine, feature): | |||
811 | 810 | ||
812 | desc = get_feature_desc(giturl, feature) | 811 | desc = get_feature_desc(giturl, feature) |
813 | 812 | ||
814 | print desc | 813 | print(desc) |
815 | 814 | ||
816 | 815 | ||
817 | def check_feature_name(feature_name): | 816 | def check_feature_name(feature_name): |
@@ -819,11 +818,11 @@ def check_feature_name(feature_name): | |||
819 | Sanity-check the feature name for create/destroy. Return False if not OK. | 818 | Sanity-check the feature name for create/destroy. Return False if not OK. |
820 | """ | 819 | """ |
821 | if not feature_name.endswith(".scc"): | 820 | if not feature_name.endswith(".scc"): |
822 | print "Invalid feature name (must end with .scc) [%s], exiting" % feature_name | 821 | print("Invalid feature name (must end with .scc) [%s], exiting" % feature_name) |
823 | return False | 822 | return False |
824 | 823 | ||
825 | if "/" in feature_name: | 824 | if "/" in feature_name: |
826 | print "Invalid feature name (don't specify directory) [%s], exiting" % feature_name | 825 | print("Invalid feature name (don't specify directory) [%s], exiting" % feature_name) |
827 | return False | 826 | return False |
828 | 827 | ||
829 | return True | 828 | return True |
@@ -837,11 +836,11 @@ def check_create_input(feature_items): | |||
837 | return False | 836 | return False |
838 | 837 | ||
839 | if feature_items[1].endswith(".patch") or feature_items[1].startswith("CONFIG_"): | 838 | if feature_items[1].endswith(".patch") or feature_items[1].startswith("CONFIG_"): |
840 | print "Missing description and/or compatibilty [%s], exiting" % feature_items[1] | 839 | print("Missing description and/or compatibilty [%s], exiting" % feature_items[1]) |
841 | return False | 840 | return False |
842 | 841 | ||
843 | if feature_items[2].endswith(".patch") or feature_items[2].startswith("CONFIG_"): | 842 | if feature_items[2].endswith(".patch") or feature_items[2].startswith("CONFIG_"): |
844 | print "Missing description and/or compatibility [%s], exiting" % feature_items[1] | 843 | print("Missing description and/or compatibility [%s], exiting" % feature_items[1]) |
845 | return False | 844 | return False |
846 | 845 | ||
847 | return True | 846 | return True |
@@ -869,7 +868,7 @@ def yocto_kernel_feature_create(scripts_path, machine, feature_items): | |||
869 | if ("=y" in item or "=m" in item): | 868 | if ("=y" in item or "=m" in item): |
870 | cfg_items.append(item) | 869 | cfg_items.append(item) |
871 | else: | 870 | else: |
872 | print "Invalid feature item (must be .patch or CONFIG_*) [%s], exiting" % item | 871 | print("Invalid feature item (must be .patch or CONFIG_*) [%s], exiting" % item) |
873 | sys.exit(1) | 872 | sys.exit(1) |
874 | 873 | ||
875 | feature_dirname = "cfg" | 874 | feature_dirname = "cfg" |
@@ -878,7 +877,7 @@ def yocto_kernel_feature_create(scripts_path, machine, feature_items): | |||
878 | 877 | ||
879 | filesdir = find_filesdir(scripts_path, machine) | 878 | filesdir = find_filesdir(scripts_path, machine) |
880 | if not filesdir: | 879 | if not filesdir: |
881 | print "Couldn't add feature (%s), no 'files' dir found" % feature | 880 | print("Couldn't add feature (%s), no 'files' dir found" % feature) |
882 | sys.exit(1) | 881 | sys.exit(1) |
883 | 882 | ||
884 | featdir = os.path.join(filesdir, feature_dirname) | 883 | featdir = os.path.join(filesdir, feature_dirname) |
@@ -887,7 +886,7 @@ def yocto_kernel_feature_create(scripts_path, machine, feature_items): | |||
887 | 886 | ||
888 | for patch in patches: | 887 | for patch in patches: |
889 | if not os.path.isfile(patch): | 888 | if not os.path.isfile(patch): |
890 | print "Couldn't find patch (%s), exiting" % patch | 889 | print("Couldn't find patch (%s), exiting" % patch) |
891 | sys.exit(1) | 890 | sys.exit(1) |
892 | basename = os.path.basename(patch) | 891 | basename = os.path.basename(patch) |
893 | featdir_patch = os.path.join(featdir, basename) | 892 | featdir_patch = os.path.join(featdir, basename) |
@@ -911,8 +910,8 @@ def yocto_kernel_feature_create(scripts_path, machine, feature_items): | |||
911 | new_feature_file.write("kconf non-hardware " + feature_basename + ".cfg\n") | 910 | new_feature_file.write("kconf non-hardware " + feature_basename + ".cfg\n") |
912 | new_feature_file.close() | 911 | new_feature_file.close() |
913 | 912 | ||
914 | print "Added feature:" | 913 | print("Added feature:") |
915 | print "\t%s" % feature_dirname + "/" + feature | 914 | print("\t%s" % feature_dirname + "/" + feature) |
916 | 915 | ||
917 | 916 | ||
918 | def feature_in_use(scripts_path, machine, feature): | 917 | def feature_in_use(scripts_path, machine, feature): |
@@ -950,18 +949,18 @@ def yocto_kernel_feature_destroy(scripts_path, machine, feature): | |||
950 | 949 | ||
951 | if feature_in_use(scripts_path, machine, "features/" + feature) or \ | 950 | if feature_in_use(scripts_path, machine, "features/" + feature) or \ |
952 | feature_in_use(scripts_path, machine, "cfg/" + feature): | 951 | feature_in_use(scripts_path, machine, "cfg/" + feature): |
953 | print "Feature %s is in use (use 'feature rm' to un-use it first), exiting" % feature | 952 | print("Feature %s is in use (use 'feature rm' to un-use it first), exiting" % feature) |
954 | sys.exit(1) | 953 | sys.exit(1) |
955 | 954 | ||
956 | filesdir = find_filesdir(scripts_path, machine) | 955 | filesdir = find_filesdir(scripts_path, machine) |
957 | if not filesdir: | 956 | if not filesdir: |
958 | print "Couldn't destroy feature (%s), no 'files' dir found" % feature | 957 | print("Couldn't destroy feature (%s), no 'files' dir found" % feature) |
959 | sys.exit(1) | 958 | sys.exit(1) |
960 | 959 | ||
961 | feature_dirname = "features" | 960 | feature_dirname = "features" |
962 | featdir = os.path.join(filesdir, feature_dirname) | 961 | featdir = os.path.join(filesdir, feature_dirname) |
963 | if not os.path.exists(featdir): | 962 | if not os.path.exists(featdir): |
964 | print "Couldn't find feature directory (%s)" % feature_dirname | 963 | print("Couldn't find feature directory (%s)" % feature_dirname) |
965 | sys.exit(1) | 964 | sys.exit(1) |
966 | 965 | ||
967 | feature_fqn = os.path.join(featdir, feature) | 966 | feature_fqn = os.path.join(featdir, feature) |
@@ -969,11 +968,11 @@ def yocto_kernel_feature_destroy(scripts_path, machine, feature): | |||
969 | feature_dirname = "cfg" | 968 | feature_dirname = "cfg" |
970 | featdir = os.path.join(filesdir, feature_dirname) | 969 | featdir = os.path.join(filesdir, feature_dirname) |
971 | if not os.path.exists(featdir): | 970 | if not os.path.exists(featdir): |
972 | print "Couldn't find feature directory (%s)" % feature_dirname | 971 | print("Couldn't find feature directory (%s)" % feature_dirname) |
973 | sys.exit(1) | 972 | sys.exit(1) |
974 | feature_fqn = os.path.join(featdir, feature_filename) | 973 | feature_fqn = os.path.join(featdir, feature_filename) |
975 | if not os.path.exists(feature_fqn): | 974 | if not os.path.exists(feature_fqn): |
976 | print "Couldn't find feature (%s)" % feature | 975 | print("Couldn't find feature (%s)" % feature) |
977 | sys.exit(1) | 976 | sys.exit(1) |
978 | 977 | ||
979 | f = open(feature_fqn, "r") | 978 | f = open(feature_fqn, "r") |
@@ -990,8 +989,8 @@ def yocto_kernel_feature_destroy(scripts_path, machine, feature): | |||
990 | 989 | ||
991 | feature_remove(scripts_path, machine, feature) | 990 | feature_remove(scripts_path, machine, feature) |
992 | 991 | ||
993 | print "Removed feature:" | 992 | print("Removed feature:") |
994 | print "\t%s" % feature_dirname + "/" + feature | 993 | print("\t%s" % feature_dirname + "/" + feature) |
995 | 994 | ||
996 | 995 | ||
997 | def base_branches(context): | 996 | def base_branches(context): |
@@ -1000,7 +999,7 @@ def base_branches(context): | |||
1000 | """ | 999 | """ |
1001 | giturl = find_giturl(context) | 1000 | giturl = find_giturl(context) |
1002 | 1001 | ||
1003 | print "Getting branches from remote repo %s..." % giturl | 1002 | print("Getting branches from remote repo %s..." % giturl) |
1004 | 1003 | ||
1005 | gitcmd = "git ls-remote %s *heads* 2>&1" % (giturl) | 1004 | gitcmd = "git ls-remote %s *heads* 2>&1" % (giturl) |
1006 | tmp = subprocess.Popen(gitcmd, shell=True, stdout=subprocess.PIPE).stdout.read() | 1005 | tmp = subprocess.Popen(gitcmd, shell=True, stdout=subprocess.PIPE).stdout.read() |
@@ -1030,7 +1029,7 @@ def all_branches(context): | |||
1030 | """ | 1029 | """ |
1031 | giturl = find_giturl(context) | 1030 | giturl = find_giturl(context) |
1032 | 1031 | ||
1033 | print "Getting branches from remote repo %s..." % giturl | 1032 | print("Getting branches from remote repo %s..." % giturl) |
1034 | 1033 | ||
1035 | gitcmd = "git ls-remote %s *heads* 2>&1" % (giturl) | 1034 | gitcmd = "git ls-remote %s *heads* 2>&1" % (giturl) |
1036 | tmp = subprocess.Popen(gitcmd, shell=True, stdout=subprocess.PIPE).stdout.read() | 1035 | tmp = subprocess.Popen(gitcmd, shell=True, stdout=subprocess.PIPE).stdout.read() |