CLICK-MKMINDRIVER(1)

NAME
click-mkmindriver - generates a build environment for a minimal Click driver

SYNOPSIS
click-mkmindriver -p packagename [options] \
[router-files...]

DESCRIPTION
The click-mkmindriver tool generates a build environment for a minimal Click driver -- that is, a driver containing only the elements necessary to run the configurations in the router-files. You must supply a name for the driver, packagename. Running `make MINDRIVER=packagename' will create either a user-level driver named `packagenameclick', or a Linux kernel module named `packagenameclick.o'. Run click-mkmindriver from the respective Click build directory, or supply a relevant --directory option.

Sometimes one element depends weakly on another, especially for parsing. For instance, the element can take advantage of protocol names supplied by the class; if IPNameInfo is not available, IPEncap will still work, it just won't be able to parse protocol names. Click-mkmindriver does not include weakly dependent elements automatically, so you must supply them explicitly with -E options if you want them. Common examples include IPNameInfo and IPFieldInfo. If a configuration fails to parse, try including these elements.

OPTIONS
If any filename argument is a single dash "-", click-mkmindriver will use the standard input or output instead, as appropriate.

-p packagename
--package packagename
    Specifies the package name.

-f file
--file file
    Read a router configuration from file.

-e expr
--expression expr
    Use expr, a string in the Click language, as a router configuration.

-a, --all
    Include every primitive element class, even those in compound elements that are not themselves used, in the following router configurations. This is useful to add support for for example.

-k, --linuxmodule
    Output a build environment for a Linux kernel module driver.

-u, --userlevel
    Output a build environment for a user-level driver. This is the default.

-d dir
--directory dir
    Write output file `elements_packagename.conf' to the directory dir. This directory must already contain a normal build environment for the Click Linux module or user-level driver. (The driver required depends on the -k and -u options.) The default directory is `.'.

-E elts
--elements elts
    Include the element classes elts, a space-separated list of element class names. Click-mkmindriver will also read a router configuration, but see --no-file below.

-A, --align
    Include element classes required by Currently, this is the single class.

-V, --verbose
    Print verbose progress information to standard error.

--help
    Print usage information and exit.

--version
    Print the version number and some quickie warranty information and exit.

SEE ALSO

AUTHOR
Eddie Kohler, kohler@cs.ucla.edu
http://www.read.cs.ucla.edu/click/