diff --git a/src/foobar.c b/src/foobar.c
index 927c8688d205b08c6c6ed1146ba500b13b334284..4a84f8e5ba73d283e9f1b2b40021243788d6491e 100644 (file)
--- a/src/foobar.c
+++ b/src/foobar.c
/*
* foobar - src/foobar.c
- * Copyright (C) 2008 Sebastian Harl <sh@tokkee.org>
+ * Copyright (C) 2011 Sebastian 'tokkee' Harl <sh@tokkee.org>
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ *OR:
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+ * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+ * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+ * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+ * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
/*
* A short description of this module...
*/
-#if HAVE_CONFIG_H
-# include "config.h"
-#endif /* HAVE_CONFIG_H */
-
#include "foobar.h"
+#include "fb_features.h"
-#if HAVE_LIBGEN_H
-# include <libgen.h>
-#else /* HAVE_LIBGEN_H */
-# define basename(path) (path)
-#endif /* ! HAVE_LIBGEN_H */
-
-#include <stdio.h>
-#include <stdlib.h>
-
-#include <unistd.h>
+/*
+ * public API
+ */
-static void exit_usage(char *name, int status)
+unsigned int
+fb_version(void)
{
- printf("Usage: %s <options>\n"
+ return FB_VERSION;
+} /* fb_version */
- "\nOptions:\n"
- " -h display this help and exit\n"
- " -V display the version number and copyright\n"
-
- "\nfoobar "VERSION", http://tokkee.org\n", basename(name));
- exit(status);
-} /* exit_usage */
-
-static void exit_version(void)
+const char *
+fb_version_string(void)
{
- printf("foobar version "VERSION", built "BUILD_DATE"\n"
- "Copyright (C) 2008 Sebastian Harl <sh@tokkee.org>\n"
-
- "\nThis is free software under the terms of the GNU GPLv2; see "
- "the source for\ncopying conditions. There is NO WARRANTY; not "
- "even for MERCHANTABILITY or\nFITNESS FOR A PARTICULAR "
- "PURPOSE.\n");
- exit(0);
-} /* exit_version */
+ return FB_VERSION_STRING;
+} /* fb_version_string */
-int main(int argc, char **argv)
+const char *
+fb_version_extra(void)
{
- while (42) {
- int opt = getopt(argc, argv, "hV");
-
- if (-1 == opt)
- break;
-
- switch (opt) {
- case 'h':
- exit_usage(argv[0], 0);
- break;
- case 'V':
- exit_version();
- break;
- default:
- exit_usage(argv[0], 1);
- }
- }
-
- if (optind < argc)
- exit_usage(argv[0], 1);
- return 0;
-} /* main */
+ return FB_VERSION_EXTRA;
+} /* fb_version_extra */
/* vim: set tw=78 sw=4 ts=4 noexpandtab : */