/**
- * Author......: Jens Steube <jens.steube@gmail.com>
+ * Authors.....: Jens Steube <jens.steube@gmail.com>
+ * magnum <john.magnum@hushmail.com>
+ *
* License.....: MIT
*/
#include <sys/stat.h>
#include <sys/types.h>
#include <search.h>
+#include <fcntl.h>
#ifdef _POSIX
#include <sys/time.h>
#include <semaphore.h>
#include <dlfcn.h>
#include <pwd.h>
+#include <limits.h>
#ifdef LINUX
-#include <termio.h>
+#include <termios.h>
+#include <sys/ioctl.h>
#endif
-#ifdef OSX
+#ifdef DARWIN
#include <termios.h>
#include <sys/ioctl.h>
+#include <mach-o/dyld.h>
+#include <mach/mach.h>
#endif
-typedef void *HM_LIB;
+typedef void *OCL_LIB;
+
+#ifdef HAVE_HWMON
+typedef void *ADL_LIB;
+typedef void *NVAPI_LIB;
+typedef void *NVML_LIB;
+typedef void *XNVCTRL_LIB;
+#ifdef DARWIN
+#define __stdcall
+#endif
#endif
+#endif // _POSIX
+
#ifdef _WIN
#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#include <tchar.h>
#include <psapi.h>
#include <io.h>
-#include <fcntl.h>
typedef UINT8 uint8_t;
typedef UINT16 uint16_t;
typedef UINT32 uint;
typedef UINT64 uint64_t;
-typedef HINSTANCE HM_LIB;
+typedef HINSTANCE OCL_LIB;
+
+#ifdef HAVE_HWMON
+typedef HINSTANCE ADL_LIB;
+typedef HINSTANCE NVAPI_LIB;
+typedef HINSTANCE NVML_LIB;
+typedef HINSTANCE XNVCTRL_LIB;
+#endif
#define mkdir(name,mode) mkdir (name)
-#endif
+#endif // _WIN
+
+typedef uint8_t u8;
+typedef uint16_t u16;
+typedef uint32_t u32;
+typedef uint64_t u64;
+
+typedef uint32_t uint; // we need to get rid of this sooner or later, for consistency
+
+#define EXEC_CACHE 128
-#define SPEED_CACHE 128
-#define SPEED_MAXAGE 4096
+#define SPEED_CACHE 128
+#define SPEED_MAXAGE 4096
-#undef BUFSIZ
-#define BUFSIZ 8192
+#define HCBUFSIZ 0x50000 // general large space buffer size in case the size is unknown at compile-time
+
+#define EXPECTED_ITERATIONS 10000
/**
* functions
*/
-void log_out_nn (FILE *fp, const char *fmt, ...);
-void log_info_nn (const char *fmt, ...);
-void log_error_nn (const char *fmt, ...);
+int log_out_nn (FILE *fp, const char *fmt, ...);
+int log_info_nn (const char *fmt, ...);
+int log_error_nn (const char *fmt, ...);
-void log_out (FILE *fp, const char *fmt, ...);
-void log_info (const char *fmt, ...);
-void log_error (const char *fmt, ...);
+int log_out (FILE *fp, const char *fmt, ...);
+int log_info (const char *fmt, ...);
+int log_error (const char *fmt, ...);
-typedef uint32_t uint; // we should rename to u32, sooner or later, for consistency
-typedef uint64_t u64;
+#define MIN(a,b) (((a) < (b)) ? (a) : (b))
+#define MAX(a,b) (((a) > (b)) ? (a) : (b))
-#endif
+#define CEIL(a) ((a - (int) (a)) > 0 ? a + 1 : a)
+
+#endif // COMMON_H