| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 | 
							- [GetOpt]
 
- #####################
 
- Origin:
 
-    [Lattera FreeBSD]
 
-    [https://github.com/lattera/freebsd/blob/master/lib/libc/stdlib/getopt.c]
 
- Status:
 
-    [So far Zephyr samples were using getopt implementation from: argtable3.c.]
 
- Purpose:
 
-    [Shell users would like to parse options passed to the command handler.]
 
- Description:
 
-    [This library is going to be used by the shell module. Some shell users
 
-    are not satisfied with subcommands alone and need to use the options for
 
-    commands as well. A library is needed that allows the developer to parse
 
-    the arguments string, looking for supported options. Typically, this task
 
-    is accomplished by the getopt function.
 
-    For this purpose I decided to port the getopt library available
 
-    in the FreeBSD project. I had to modify it so that it could be used
 
-    by all instances of the shell at the same time.
 
-    Originally this function was using global variables which were defining
 
-    its state. In my implementation I put those variables in a structure
 
-    and a pointer to that structure is passed as an additional parameter
 
-    to getopt function. In proposed implementation each shell backend has its
 
-    own getopt function state structure which it uses.
 
-    This module is intended to be used inside the shell command handler
 
-    by the abstraction layer "SHELL_GETOPT". For example:
 
-    while ((char c = shell_getopt(shell, argc, argv, "abhc:")) != -1) {
 
-       /* some code */
 
-    }
 
-    ]
 
- Dependencies:
 
-    [This package does not depend on any other component.
 
-    Zephyr project will only need this component if the user configures a shell
 
-    module: SHELL_GETOPT.]
 
- URL:
 
-    [https://github.com/lattera/freebsd]
 
- commit:
 
-    [324e4c082c14aebf00f8dbee0fb7ad285393756a]
 
- Maintained-by:
 
-    [External]
 
- License:
 
-    [BSD 3-Clause "New" or "Revised" License]
 
- License Link:
 
-    [BSD 3-Clause used in getopt: https://spdx.org/licenses/BSD-3-Clause.html]
 
-    [Project license: https://github.com/lattera/freebsd/blob/master/COPYRIGHT]
 
 
  |