/* */
/* */
/* */
-/* (C) 1998 Ullrich von Bassewitz */
-/* Wacholderweg 14 */
-/* D-70597 Stuttgart */
-/* EMail: uz@musoftware.de */
-/* */
-/* */
+/* (C) 1998-2009, Ullrich von Bassewitz */
+/* Roemerstrasse 52 */
+/* D-70794 Filderstadt */
+/* EMail: uz@cc65.org */
+/* */
+/* */
/* This software is provided 'as-is', without any expressed or implied */
/* warranty. In no event will the authors be held liable for any damages */
/* arising from the use of this software. */
-/* */
+/* */
/* Permission is granted to anyone to use this software for any purpose, */
/* including commercial applications, and to alter it and redistribute it */
/* freely, subject to the following restrictions: */
-/* */
+/* */
/* 1. The origin of this software must not be misrepresented; you must not */
/* claim that you wrote the original software. If you use this software */
/* in a product, an acknowledgment in the product documentation would be */
/* be misrepresented as being the original software. */
/* 3. This notice may not be removed or altered from any source */
/* distribution. */
-/* */
+/* */
/*****************************************************************************/
#include <string.h>
#include <time.h>
-#include "../common/version.h"
+/* common */
+#include "cmdline.h"
+#include "print.h"
+#include "version.h"
#include "global.h"
-#include "error.h"
-#include "mem.h"
#include "add.h"
#include "del.h"
#include "list.h"
static void Usage (void)
/* Print usage information and exit */
{
- fprintf (stderr,
- "Usage: %s <operation> lib file|module ...\n"
- "Operation is one of:\n"
- "\ta\tAdd modules\n"
- "\td\tDelete modules\n"
- "\tl\tList library contents\n"
- "\tx\tExtract modules\n"
- "\tV\tPrint the archiver version\n",
- ProgName);
+ printf ("Usage: %s <operation> lib file|module ...\n"
+ "Operation is one of:\n"
+ "\ta\tAdd modules\n"
+ "\td\tDelete modules\n"
+ "\tl\tList library contents\n"
+ "\tx\tExtract modules\n"
+ "\tV\tPrint the archiver version\n",
+ ProgName);
exit (EXIT_FAILURE);
}
int main (int argc, char* argv [])
/* Assembler main program */
{
- int I;
+ unsigned I;
+
+ /* Initialize the cmdline module */
+ InitCmdLine (&argc, &argv, "ar65");
/* We must have a file name */
- if (argc < 2) {
+ if (ArgCount < 2) {
Usage ();
}
/* Check the parameters */
I = 1;
- while (I < argc) {
+ while (I < ArgCount) {
/* Get the argument */
- const char* Arg = argv [I];
+ const char* Arg = ArgVec [I];
/* Check for an option */
if (strlen (Arg) != 1) {
switch (Arg [0]) {
case 'a':
- AddObjFiles (argc - I - 1, &argv [I+1]);
+ AddObjFiles (ArgCount - I - 1, &ArgVec[I+1]);
break;
case 'd':
- DelObjFiles (argc - I - 1, &argv [I+1]);
+ DelObjFiles (ArgCount - I - 1, &ArgVec [I+1]);
break;
case 'l':
- ListObjFiles (argc - I - 1, &argv [I+1]);
+ ListObjFiles (ArgCount - I - 1, &ArgVec [I+1]);
break;
case 'v':
- ++Verbose;
+ ++Verbosity;
break;
case 'x':
- ExtractObjFiles (argc - I - 1, &argv [I+1]);
+ ExtractObjFiles (ArgCount - I - 1, &ArgVec [I+1]);
break;
case 'V':
fprintf (stderr,
- "ar65 V%u.%u.%u - (C) Copyright 1998-1999 Ullrich von Bassewitz\n",
- VER_MAJOR, VER_MINOR, VER_PATCH);
+ "ar65 V%s - (C) Copyright 1998-2009 Ullrich von Bassewitz\n",
+ GetVersionAsString ());
break;
default: