/**
- * Author......: Jens Steube <jens.steube@gmail.com>
+ * Authors.....: Jens Steube <jens.steube@gmail.com>
+ * magnum <john.magnum@hushmail.com>
+ *
* License.....: MIT
*/
#include <semaphore.h>
#include <dlfcn.h>
#include <pwd.h>
+#include <limits.h>
-#ifdef LINUX
-#include <termio.h>
+#ifdef __linux__
+#include <termios.h>
+#include <sys/ioctl.h>
#endif
-#ifdef OSX
+#ifdef __APPLE__
#include <termios.h>
#include <sys/ioctl.h>
#include <mach-o/dyld.h>
+#include <mach/mach.h>
+#endif
+
+#ifdef __FreeBSD__
+#include <termios.h>
+#include <sys/ioctl.h>
#endif
typedef void *OCL_LIB;
#ifdef HAVE_HWMON
-typedef void *HM_LIB;
+typedef void *ADL_LIB;
+typedef void *NVAPI_LIB;
+typedef void *NVML_LIB;
+typedef void *XNVCTRL_LIB;
+#ifdef __APPLE__
+#define __stdcall
+#endif
#endif
#endif // _POSIX
typedef UINT32 uint;
typedef UINT64 uint64_t;
+typedef HINSTANCE OCL_LIB;
+
#ifdef HAVE_HWMON
-typedef HINSTANCE HM_LIB;
+typedef HINSTANCE ADL_LIB;
+typedef HINSTANCE NVAPI_LIB;
+typedef HINSTANCE NVML_LIB;
+typedef HINSTANCE XNVCTRL_LIB;
#endif
-typedef HINSTANCE OCL_LIB;
-
#define mkdir(name,mode) mkdir (name)
#endif // _WIN
typedef uint32_t uint; // we need to get rid of this sooner or later, for consistency
-#define SPEED_CACHE 128
-#define SPEED_MAXAGE 4096
+#define EXEC_CACHE 128
-#undef BUFSIZ
-#define BUFSIZ 8192
+#define SPEED_CACHE 128
+#define SPEED_MAXAGE 4096
+
+#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, ...);
#define MIN(a,b) (((a) < (b)) ? (a) : (b))
#define MAX(a,b) (((a) > (b)) ? (a) : (b))
+#define CEIL(a) ((a - (int) (a)) > 0 ? a + 1 : a)
+
#endif // COMMON_H