VirtualBox

Changeset 1187 in kBuild


Ignore:
Timestamp:
Oct 5, 2007 10:54:02 PM (17 years ago)
Author:
bird
Message:

Added version and help.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/kDepPre/kDepPre.c

    r785 r1187  
    207207
    208208
    209 static void usage(const char *argv0)
     209static int usage(FILE *pOut,  const char *argv0)
    210210{
    211     printf("syntax: %s [-l=c] -o <output> -t <target> [-f] [-s] < - | <filename> | -e <cmdline> >\n", argv0);
     211    fprintf(pOut,
     212            "usage: %s [-l=c] -o <output> -t <target> [-f] [-s] < - | <filename> | -e <cmdline> >\n"
     213            "   or: %s --help\n"
     214            "   or: %s --version\n",
     215            argv0, argv0, argv0);
     216    return 1;
    212217}
    213218
     
    232237     */
    233238    if (argc <= 1)
    234     {
    235         usage(argv[0]);
    236         return 1;
    237     }
     239        return usage(stderr, argv[0]);
    238240    for (i = 1; i < argc; i++)
    239241    {
    240242        if (argv[i][0] == '-')
    241243        {
    242             switch (argv[i][1])
     244            const char *psz = &argv[i][1];
     245            if (*psz == '-')
     246            {
     247                if (!strcmp(psz, "-help"))
     248                    psz = "h";
     249                else if (!strcmp(psz, "-version"))
     250                    psz = "V";
     251            }
     252
     253            switch (*psz)
    243254            {
    244255                /*
     
    359370
    360371                /*
     372                 * The obligatory help and version.
     373                 */
     374                case 'h':
     375                    usage(stdout, argv[0]);
     376                    return 0;
     377
     378                case 'V':
     379                    printf("kDepPre - kBuild version %d.%d.%d\n"
     380                           "Copyright (C) 2005-2007 Knut St. Osmundse\n",
     381                           KBUILD_VERSION_MAJOR, KBUILD_VERSION_MINOR, KBUILD_VERSION_PATCH);
     382                    return 0;
     383
     384                /*
    361385                 * Invalid argument.
    362386                 */
    363387                default:
    364388                    fprintf(stderr, "%s: syntax error: Invalid argument '%s'.\n", argv[0], argv[i]);
    365                     usage(argv[0]);
    366                     return 1;
     389                    return usage(stderr, argv[0]);
    367390            }
    368391        }
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette