config: Add explicit support for building on ESX.
[sliver-openvswitch.git] / lib / command-line.c
index 23ed53f..76a4e74 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2009, 2010 Nicira Networks.
+ * Copyright (c) 2008, 2009, 2010, 2011 Nicira, Inc.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -20,6 +20,9 @@
 #include <limits.h>
 #include <stdlib.h>
 #include "util.h"
+#include "vlog.h"
+
+VLOG_DEFINE_THIS_MODULE(command_line);
 
 /* Given the GNU-style long options in 'options', returns a string that may be
  * passed to getopt() with the corresponding short options.  The caller is
@@ -66,30 +69,30 @@ run_command(int argc, char *argv[], const struct command commands[])
         if (!strcmp(p->name, argv[0])) {
             int n_arg = argc - 1;
             if (n_arg < p->min_args) {
-                ovs_fatal(0, "'%s' command requires at least %d arguments",
-                          p->name, p->min_args);
+                VLOG_FATAL( "'%s' command requires at least %d arguments",
+                            p->name, p->min_args);
             } else if (n_arg > p->max_args) {
-                ovs_fatal(0, "'%s' command takes at most %d arguments",
-                          p->name, p->max_args);
+                VLOG_FATAL("'%s' command takes at most %d arguments",
+                           p->name, p->max_args);
             } else {
                 p->handler(argc, argv);
                 if (ferror(stdout)) {
-                    ovs_fatal(0, "write to stdout failed");
+                    VLOG_FATAL("write to stdout failed");
                 }
                 if (ferror(stderr)) {
-                    ovs_fatal(0, "write to stderr failed");
+                    VLOG_FATAL("write to stderr failed");
                 }
                 return;
             }
         }
     }
 
-    ovs_fatal(0, "unknown command '%s'; use --help for help", argv[0]);
+    VLOG_FATAL("unknown command '%s'; use --help for help", argv[0]);
 }
 \f
 /* Process title. */
 
-#ifdef __linux__
+#ifdef LINUX_DATAPATH
 static char *argv_start;       /* Start of command-line arguments in memory. */
 static size_t argv_size;       /* Number of bytes of command-line arguments. */
 static char *saved_proctitle;  /* Saved command-line arguments. */
@@ -176,7 +179,7 @@ proctitle_restore(void)
         saved_proctitle = NULL;
     }
 }
-#else  /* !__linux__ */
+#else  /* !LINUX_DATAPATH*/
 /* Stubs that don't do anything on non-Linux systems. */
 
 void
@@ -193,4 +196,4 @@ void
 proctitle_restore(void)
 {
 }
-#endif  /* !__linux__ */
+#endif  /* !LINUX_DATAPATH */