chiark / gitweb /
C89 friendly declarations
[disorder] / clients / disorder.c
index 7966dbc7eda6a18fd2073397e7d391b01026c8bf..949eacf7cb2a2dda9c49cf7399f852aff183ba6d 100644 (file)
@@ -1,6 +1,6 @@
 /*
  * This file is part of DisOrder.
- * Copyright (C) 2004-2012 Richard Kettlewell
+ * Copyright (C) 2004-2013 Richard Kettlewell
  *
  * 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
 
 #include <getopt.h>
 #include <sys/types.h>
-#include <sys/socket.h>
-#include <sys/un.h>
+#if HAVE_SYS_SOCKET_H
+# include <sys/socket.h>
+#endif
+#if HAVE_SYS_UN_H
+# include <sys/un.h>
+#endif
 #include <errno.h>
 #include <locale.h>
 #include <time.h>
 #include <stddef.h>
-#include <unistd.h>
-#include <pcre.h>
+#if HAVE_UNISTD_H
+# include <unistd.h>
+#endif
+#if HAVE_PCRE_H
+# include <pcre.h>
+#endif
 #include <ctype.h>
-#include <gcrypt.h>
-#include <langinfo.h>
+#if HAVE_GCRYPT_H
+# include <gcrypt.h>
+#endif
+#if HAVE_LANGINFO_H
+# include <langinfo.h>
+#endif
 
 #include "configuration.h"
 #include "syscalls.h"
@@ -307,9 +319,10 @@ static void cf_random_enable(char attribute((unused)) **argv) {
 static void cf_stats(char attribute((unused)) **argv) {
   char **vec;
   int nvec;
+  int n;
 
   if(disorder_stats(getclient(), &vec, &nvec)) exit(EXIT_FAILURE);
-  for(int n = 0; n < nvec; ++n)
+  for(n = 0; n < nvec; ++n)
     xprintf("%s\n", nullcheck(utf82mb(vec[n])));
   free_strings(nvec, vec);
 }
@@ -617,10 +630,11 @@ static void cf_adopt(char **argv) {
 static void cf_playlists(char attribute((unused)) **argv) {
   char **vec;
   int nvec;
+  int n;
 
   if(disorder_playlists(getclient(), &vec, &nvec))
     exit(EXIT_FAILURE);
-  for(int n = 0; n < nvec; ++n)
+  for(n = 0; n < nvec; ++n)
     xprintf("%s\n", nullcheck(utf82mb(vec[n])));
   free_strings(nvec, vec);
 }
@@ -633,10 +647,11 @@ static void cf_playlist_del(char **argv) {
 static void cf_playlist_get(char **argv) {
   char **vec;
   int nvec;
+  int n;
 
   if(disorder_playlist_get(getclient(), argv[0], &vec, &nvec))
     exit(EXIT_FAILURE);
-  for(int n = 0; n < nvec; ++n)
+  for(n = 0; n < nvec; ++n)
     xprintf("%s\n", nullcheck(utf82mb(vec[n])));
   free_strings(nvec, vec);
 }
@@ -849,9 +864,11 @@ int main(int argc, char **argv) {
   const char *user = 0, *password = 0;
 
   mem_init();
+#if HAVE_PCRE_H
   /* garbage-collect PCRE's memory */
   pcre_malloc = xmalloc;
   pcre_free = xfree;
+#endif
   if(!setlocale(LC_CTYPE, "")) disorder_fatal(errno, "error calling setlocale");
   if(!setlocale(LC_TIME, "")) disorder_fatal(errno, "error calling setlocale");
   while((n = getopt_long(argc, argv, "+hVc:dHlNu:p:", options, 0)) >= 0) {
@@ -882,11 +899,13 @@ int main(int argc, char **argv) {
     config->connect.af = -1;
   n = optind;
   optind = 1;                          /* for subsequent getopt calls */
+#if HAVE_GCRYPT_H
   /* gcrypt initialization */
   if(!gcry_check_version(NULL))
     disorder_fatal(0, "gcry_check_version failed");
   gcry_control(GCRYCTL_INIT_SECMEM, 0);
   gcry_control (GCRYCTL_INITIALIZATION_FINISHED, 0);
+#endif
   /* accumulate command args */
   while(n < argc) {
     if((i = TABLE_FIND(commands, name, argv[n])) < 0)