/* This file is part of Pazpar2.
- Copyright (C) 2006-2008 Index Data
+ Copyright (C) 2006-2009 Index Data
Pazpar2 is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free
#include "settings.h"
#include <yaz/daemon.h>
-#if YAZ_VERSIONL >= 0x03001D
-/* Windows service is available in YAZ 3.0.29 or later */
-#define USE_SC 1
#include <yaz/sc.h>
-#else
-#define USE_SC 0
-#endif
void child_handler(void *data)
{
static void show_version(void)
{
char yaz_version_str[80];
- printf("Pazpar2 " PACKAGE_VERSION "\n");
+ printf("Pazpar2 " PACKAGE_VERSION
+#ifdef PAZPAR2_VERSION_SHA1
+ " "
+ PAZPAR2_VERSION_SHA1
+#endif
+"\n");
yaz_version(yaz_version_str, 0);
printf("Configuration:");
-#if HAVE_ICU
+#if YAZ_HAVE_ICU
printf(" icu:?");
#endif
printf(" yaz:%s", yaz_version_str);
static int sc_main(
-#if USE_SC
yaz_sc_t s,
-#endif
int argc, char **argv)
{
int daemon = 0;
#endif
yaz_log_init_prefix("pazpar2");
-#if YAZ_VERSIONL >= 0x03001B
yaz_log_xml_errors(0, YLOG_WARN);
-#endif
-
while ((ret = options("dDf:h:l:p:t:u:VX", argv, argc, &arg)) != -2)
{
" -u uid\n"
" -V show version\n"
" -X debug mode\n"
+#ifdef WIN32
+ " -install install windows service\n"
+ " -remove remove windows service\n"
+#endif
);
return 1;
}
if (ret)
return ret; /* error starting http listener */
-#if USE_SC
yaz_sc_running(s);
-#endif
yaz_daemon("pazpar2",
(global_parameters.debug_mode ? YAZ_DAEMON_DEBUG : 0) +
}
-#if USE_SC
static void sc_stop(yaz_sc_t s)
{
http_close_server();
}
-#endif
int main(int argc, char **argv)
{
int ret;
-#if USE_SC
yaz_sc_t s = yaz_sc_create("pazpar2", "Pazpar2");
ret = yaz_sc_program(s, argc, argv, sc_main, sc_stop);
yaz_sc_destroy(&s);
-#else
- ret = sc_main(argc, argv);
-#endif
exit(ret);
}
/*
* Local variables:
* c-basic-offset: 4
+ * c-file-style: "Stroustrup"
* indent-tabs-mode: nil
* End:
* vim: shiftwidth=4 tabstop=8 expandtab
*/
+