summaryrefslogtreecommitdiff
path: root/include/inspircd.h
diff options
context:
space:
mode:
authorPeter Powell <petpow@saberuk.com>2013-05-07 03:55:29 +0100
committerattilamolnar <attilamolnar@hush.com>2013-05-07 05:00:33 +0200
commitb89aa87280767f47381b8a612f73f1d0fe682e2e (patch)
tree5d6ee39e4b091e90cb3ff6e629aa80d21e3e4ab4 /include/inspircd.h
parent8790551dc182cd8804ee7d8ef89ccb31067cc2a4 (diff)
Clean up cross-platform compatibility.
- Move compatibility macros to a new header file. - Sort system include files in alphabetical order. - Clean up signal handling (thanks to Adam).
Diffstat (limited to 'include/inspircd.h')
-rw-r--r--include/inspircd.h75
1 files changed, 16 insertions, 59 deletions
diff --git a/include/inspircd.h b/include/inspircd.h
index bc0b9cd1b..b0cd8f675 100644
--- a/include/inspircd.h
+++ b/include/inspircd.h
@@ -25,69 +25,31 @@
#pragma once
-#define _FILE_OFFSET_BITS 64
-#ifndef _LARGEFILE_SOURCE
-#define _LARGEFILE_SOURCE
-#endif
-
-#ifndef _WIN32
-#define DllExport
-#define CoreExport
-#else
-#include "inspircd_win32wrapper.h"
-/** Windows defines these already */
-#undef ERROR
-#endif
-
-#ifdef __GNUC__
-#define CUSTOM_PRINTF(STRING, FIRST) __attribute__((format(printf, STRING, FIRST)))
-#else
-#define CUSTOM_PRINTF(STRING, FIRST)
-#endif
-
-#if defined __clang__ || defined __GNUC__
-# define DEPRECATED_METHOD(function) function __attribute__((deprecated))
-#elif defined _MSC_VER
-# define DEPRECATED_METHOD(function) __declspec(deprecated) function
-#else
-# pragma message ("Warning! DEPRECATED_METHOD() does not work on your compiler!")
-# define DEPRECATED_METHOD(function) function
-#endif
-
-// Required system headers.
-#include <ctime>
-#include <cstdarg>
-#include <algorithm>
-#include <cmath>
-#include <cstring>
#include <climits>
+#include <cmath>
+#include <csignal>
+#include <cstdarg>
#include <cstdio>
-#ifndef _WIN32
-#include <unistd.h>
-#endif
+#include <cstring>
+#include <ctime>
-#if defined _LIBCPP_VERSION || defined _WIN32
-# define TR1NS std
-# include <unordered_map>
-#else
-# define TR1NS std::tr1
-# include <tr1/unordered_map>
-#endif
-#include <sstream>
-#include <string>
-#include <vector>
-#include <list>
+#include <algorithm>
+#include <bitset>
#include <deque>
+#include <list>
#include <map>
-#include <bitset>
#include <set>
-#include <time.h>
-#include "config.h"
+#include <sstream>
+#include <string>
+#include <vector>
+
+#include "compat.h"
#include "typedefs.h"
-#include "consolecolors.h"
CoreExport extern InspIRCd* ServerInstance;
+#include "config.h"
+#include "consolecolors.h"
#include "caller.h"
#include "cull_list.h"
#include "extensible.h"
@@ -112,11 +74,6 @@ CoreExport extern InspIRCd* ServerInstance;
#include "inspstring.h"
#include "protocol.h"
-#ifndef PATH_MAX
-#warning Potentially broken system, PATH_MAX undefined
-#define PATH_MAX 4096
-#endif
-
/**
* Used to define the maximum number of parameters a command may have.
*/
@@ -454,7 +411,7 @@ class CoreExport InspIRCd
/** Set to the current signal recieved
*/
- int s_signal;
+ static sig_atomic_t s_signal;
/** Protocol interface, overridden by server protocol modules
*/