summaryrefslogtreecommitdiffstats
path: root/scripts/lib
diff options
context:
space:
mode:
authorTom Zanussi <tom.zanussi@intel.com>2013-01-18 18:27:09 (GMT)
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-01-20 13:05:39 (GMT)
commitbd1cb7b36dd1ba61a7d18520d85d09b215d6dfba (patch)
tree078bf41671f553f9bddfee320e2b2dd54c32be35 /scripts/lib
parentbe425050b19bc9f257b31738be3c77d182efdf2e (diff)
downloadpoky-bd1cb7b36dd1ba61a7d18520d85d09b215d6dfba.tar.gz
yocto-layer: add help/usage
This is essentially 'the documentation' for the yocto-layer tool. (From meta-yocto rev: 34229b931bad8fc0e4d4431bb5cb46fccbea03bf) Signed-off-by: Tom Zanussi <tom.zanussi@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'scripts/lib')
-rw-r--r--scripts/lib/bsp/help.py228
1 files changed, 228 insertions, 0 deletions
diff --git a/scripts/lib/bsp/help.py b/scripts/lib/bsp/help.py
index 3a1f52c..eac172a 100644
--- a/scripts/lib/bsp/help.py
+++ b/scripts/lib/bsp/help.py
@@ -595,6 +595,234 @@ DESCRIPTION
595""" 595"""
596 596
597## 597##
598# yocto-layer help and usage strings
599##
600
601yocto_layer_usage = """
602
603 Create a generic Yocto layer.
604
605 usage: yocto-layer [--version] [--help] COMMAND [ARGS]
606
607 Current 'yocto-layer' commands are:
608 create Create a new generic Yocto layer
609 list List available values for input options and properties
610
611 See 'yocto-layer help COMMAND' for more information on a specific command.
612"""
613
614yocto_layer_help_usage = """
615
616 usage: yocto-layer help <subcommand>
617
618 This command displays detailed help for the specified subcommand.
619"""
620
621yocto_layer_create_usage = """
622
623 Create a new generic Yocto layer
624
625 usage: yocto-layer create <layer-name> [-o <DIRNAME> | --outdir <DIRNAME>]
626 [-i <JSON PROPERTY FILE> | --infile <JSON PROPERTY_FILE>]
627
628 This command creates a generic Yocto layer based on the specified
629 parameters. The new layer will be a new Yocto layer contained by
630 default within the top-level directory specified as
631 'meta-layer-name'. The -o option can be used to place the layer in a
632 directory with a different name and location.
633
634 NOTE: Once created, you should add your new layer to your
635 bblayers.conf file in order for it to be subsequently seen and
636 modified by the yocto-kernel tool. Instructions for doing this can
637 be found in the README file generated in the layer's top-level
638 directory.
639
640 See 'yocto layer help create' for more detailed instructions.
641"""
642
643yocto_layer_create_help = """
644
645NAME
646 yocto-layer create - Create a new generic Yocto layer
647
648SYNOPSIS
649 yocto-layer create <layer-name> [-o <DIRNAME> | --outdir <DIRNAME>]
650 [-i <JSON PROPERTY FILE> | --infile <JSON PROPERTY_FILE>]
651
652DESCRIPTION
653 This command creates a generic Yocto layer based on the specified
654 parameters. The new layer will be a new Yocto layer contained by
655 default within the top-level directory specified as
656 'meta-layer-name'. The -o option can be used to place the layer
657 in a directory with a different name and location.
658
659 The layer-specific properties that define the values that will be
660 used to generate the layer can be specified on the command-line
661 using the -i option and supplying a JSON object consisting of the
662 set of name:value pairs needed by the layer.
663
664 If the -i option is not used, the user will be interactively
665 prompted for each of the required property values, which will then
666 be used as values for layer generation.
667
668 The set of properties available can be listed using the
669 'yocto-layer list' command.
670
671 Specifying -c causes the Python code generated and executed to
672 create the layer to be dumped to the 'bspgen.out' file in the
673 current directory, and is useful for debugging.
674
675 NOTE: Once created, you should add your new layer to your
676 bblayers.conf file in order for it to be subsequently seen and
677 modified by the yocto-kernel tool. Instructions for doing this
678 can be found in the README file generated in the layer's top-level
679 directory.
680
681 For example, assuming your poky repo is at /path/to/poky, your new
682 layer is at /path/to/poky/meta-mylayer, and your build directory
683 is /path/to/build:
684
685 $ gedit /path/to/build/conf/bblayers.conf
686
687 BBLAYERS ?= " \\
688 /path/to/poky/meta \\
689 /path/to/poky/meta-yocto \\
690 /path/to/poky/meta-mylayer \\
691 "
692"""
693
694yocto_layer_list_usage = """
695
696 usage: yocto-layer list properties
697 [-o <JSON PROPERTY FILE> | --outfile <JSON PROPERTY_FILE>]
698 yocto-layer list property <xxx>
699 [-o <JSON PROPERTY FILE> | --outfile <JSON PROPERTY_FILE>]
700
701 This command enumerates the complete set of possible values for a
702 specified option or property needed by the layer creation process.
703
704 The first form enumerates all the possible properties that exist and
705 must have values specified for them in the 'yocto-layer create'
706 command.
707
708 The second form enumerates all the possible values that exist and can
709 be specified for any of the enumerable properties in the 'yocto-layer
710 create' command.
711
712 See 'yocto-layer help list' for more details.
713"""
714
715yocto_layer_list_help = """
716
717NAME
718 yocto-layer list - List available values for layer input options and properties
719
720SYNOPSIS
721 yocto-layer list properties
722 [--o <JSON PROPERTY FILE> | -outfile <JSON PROPERTY_FILE>]
723 yocto-layer list property <xxx>
724 [--o <JSON PROPERTY FILE> | -outfile <JSON PROPERTY_FILE>]
725
726DESCRIPTION
727 This command enumerates the complete set of possible values for a
728 specified option or property needed by the layer creation process.
729
730 The first form enumerates all the possible properties that exist
731 and must have values specified for them in the 'yocto-layer
732 create' command. This command is mainly meant to aid the
733 development of user interface alternatives to the default
734 text-based prompting interface. If the -o option is specified,
735 the list of properties, in addition to being displayed, will be
736 written to the specified file as a JSON object. In this case, the
737 object will consist of the set of name:value pairs corresponding
738 to the (possibly nested) dictionary of properties defined by the
739 input statements used by the BSP. Some example output for the
740 'list properties' command:
741
742 $ yocto-layer list properties
743 "example_bbappend_name" : {
744 "default" : example
745 "msg" : Please enter the name you'd like to use for your bbappend file:
746 "type" : edit
747 "prio" : 20
748 "filename" : /home/trz/yocto/yocto-layer-dev/scripts/lib/bsp/substrate/target/arch/layer/layer-questions.noinstall
749 }
750 "create_example_recipe" : {
751 "default" : n
752 "msg" : Would you like to have an example recipe created? (y/n)
753 "type" : boolean
754 "prio" : 20
755 "filename" : /home/trz/yocto/yocto-layer-dev/scripts/lib/bsp/substrate/target/arch/layer/layer-questions.noinstall
756 }
757 "example_recipe_name" : {
758 "default" : example
759 "msg" : Please enter the name you'd like to use for your example recipe:
760 "type" : edit
761 "prio" : 20
762 "filename" : /home/trz/yocto/yocto-layer-dev/scripts/lib/bsp/substrate/target/arch/layer/layer-questions.noinstall
763 }
764 "layer_priority" : {
765 "default" : 6
766 "msg" : Please enter the layer priority you'd like to use for the layer:
767 "type" : edit
768 "prio" : 20
769 "filename" : /home/trz/yocto/yocto-layer-dev/scripts/lib/bsp/substrate/target/arch/layer/layer-questions.noinstall
770 }
771 "create_example_bbappend" : {
772 "default" : n
773 "msg" : Would you like to have an example bbappend file created? (y/n)
774 "type" : boolean
775 "prio" : 20
776 "filename" : /home/trz/yocto/yocto-layer-dev/scripts/lib/bsp/substrate/target/arch/layer/layer-questions.noinstall
777 }
778 "example_bbappend_version" : {
779 "default" : 0.1
780 "msg" : Please enter the version number you'd like to use for your bbappend file (this should match the recipe you're appending to):
781 "type" : edit
782 "prio" : 20
783 "filename" : /home/trz/yocto/yocto-layer-dev/scripts/lib/bsp/substrate/target/arch/layer/layer-questions.noinstall
784 }
785
786 Each entry in the output consists of the name of the input element
787 e.g. "layer_priority", followed by the properties defined for that
788 element enclosed in braces. This information should provide
789 sufficient information to create a complete user interface. Two
790 features of the scheme provide for conditional input. First, if a
791 Python "if" statement appears in place of an input element name,
792 the set of enclosed input elements apply and should be presented
793 to the user only if the 'if' statement evaluates to true. The
794 test in the if statement will always reference another input
795 element in the list, which means that the element being tested
796 should be presented to the user before the elements enclosed by
797 the if block. Secondly, in a similar way, some elements contain
798 "depends-on" and depends-on-val" tags, which mean that the
799 affected input element should only be presented to the user if the
800 element it depends on has already been presented to the user and
801 the user has selected the specified value for that element.
802
803 The second form enumerates all the possible values that exist and
804 can be specified for any of the enumerable properties in the
805 'yocto-layer create' command. If the -o option is specified, the
806 list of values for the given property, in addition to being
807 displayed, will be written to the specified file as a JSON object.
808 In this case, the object will consist of the set of name:value
809 pairs corresponding to the array of property values associated
810 with the property.
811
812 $ yocto-layer list property layer_priority
813 [no output - layer_priority is a text field that has no enumerable values]
814
815 The second form as well is meant mainly for developers of
816 alternative interfaces - it allows the developer to fetch the
817 possible values for a given input element on-demand. This
818 on-demand capability is especially valuable for elements that
819 require relatively expensive remote operations to fulfill, such as
820 the example that returns the set of branches available in a remote
821 git tree above.
822
823"""
824
825##
598# test code 826# test code
599## 827##
600 828