Added or modified utility version and usage display.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2162 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
ywang
2007-01-03 22:09:16 +00:00
parent 67fca228ca
commit 52be9a3b67
4 changed files with 111 additions and 22 deletions

View File

@@ -41,7 +41,10 @@ Abstract:
#include "EfiUtilityMsgs.h"
#define MAX_PATH 256
#define PROGRAM_NAME "GenCapsuleHdr"
#define UTILITY_NAME "GenCapsuleHdr"
#define UTILITY_MAJOR_VERSION 1
#define UTILITY_MINOR_VERSION 0
#define UNICODE_BACKSLASH L'\\'
#define UNICODE_FILE_START 0xFEFF
@@ -158,6 +161,12 @@ SplitCapsule (
INT8 *CapsuleFileName
);
static
void
Version (
VOID
);
static
void
Usage (
@@ -273,7 +282,7 @@ Returns:
//
// Specify our program name to the error printing routines.
//
SetUtilityName (PROGRAM_NAME);
SetUtilityName (UTILITY_NAME);
//
// Process the command-line arguments
//
@@ -2355,10 +2364,22 @@ Returns:
Argc--;
Argv++;
if (Argc == 0) {
if (Argc < 1) {
Usage ();
return STATUS_ERROR;
}
if ((strcmp(Argv[0], "-h") == 0) || (strcmp(Argv[0], "--help") == 0) ||
(strcmp(Argv[0], "-?") == 0) || (strcmp(Argv[0], "/?") == 0)) {
Usage();
return STATUS_ERROR;
}
if ((strcmp(Argv[0], "-V") == 0) || (strcmp(Argv[0], "--version") == 0)) {
Version();
return STATUS_ERROR;
}
//
// Process until no more options
//
@@ -2622,6 +2643,31 @@ Returns:
return STATUS_SUCCESS;
}
static
void
Version(
void
)
/*++
Routine Description:
Print out version information for this utility.
Arguments:
None
Returns:
None
--*/
{
printf ("%s v%d.%d -EDK utility to create a capsule header.\n", UTILITY_NAME, UTILITY_MAJOR_VERSION, UTILITY_MINOR_VERSION);
printf ("Copyright (c) 1999-2006 Intel Corporation. All rights reserved.\n");
}
static
void
Usage (
@@ -2645,13 +2691,13 @@ Returns:
{
int Index;
static const char *Str[] = {
PROGRAM_NAME " -- create a capsule header",
" Usage: "PROGRAM_NAME " {options} [CapsuleFV]",
"\nUsage: "UTILITY_NAME " {options} [CapsuleFV]",
//
// {FfsFileNames}",
//
" Options include:",
" -h or -? for this help information",
" -h,--help,-?,/? to display help messages",
" -V,--version to display version information",
" -script fname to take capsule header info from unicode script",
" file fname",
" -o fname write output to file fname (required)",
@@ -2668,6 +2714,9 @@ Returns:
//
NULL
};
Version();
for (Index = 0; Str[Index] != NULL; Index++) {
fprintf (stdout, "%s\n", Str[Index]);
}