AutoGen - The Automated Program Generator: 7.5.3.2 shell-process: emit Bourne shell results

[ < ] | [ > ] |  | [ << ] | [ Up ] | [ >> ] |  |  |  |  | [Top] | [Contents] | [Index] | [ ? ]

#### 7.5.3.2 shell-process: emit Bourne shell results

This will produce a `main()` procedure that parses the command line options and emits to `stdout` Bourne shell commands that puts the option state into environment variables. This can be used within a shell script as follows:

    unset OPTION_CT
    eval "`opt_parser \"$@\"`"
    test -z "${OPTION_CT}" && exit 1
    test ${OPTION_CT} -gt 0 && shift ${OPTION_CT}

If the option parsing code detects an error or a request for usage, it will not emit an assignment to OPTION_CT and the script should just exit. If the options are set consistently, then something along the lines of the following will be written to `stdout` and evaled:

        OPTION_CT=4
        export OPTION_CT
        MYPROG_SECOND='first'
        export MYPROG_SECOND
        MYPROG_ANOTHER=1 # 0x1
        export MYPROG_ANOTHER

If the arguments are to be reordered, however, then the resulting set of operands will be emitted and `OPTION_CT` gets set to zero. For example, the following would be appended to the above:

        set -- 'operand1' 'operand2' 'operand3'
        OPTION_CT=0

`OPTION_CT` is set to zero since it is not necessary to shift off any options.

This document was generated by Bruce Korb on August, 12 2006 using texi2html 1.76.