diff --git a/ext/journald_native/journald_dummy.c b/ext/journald_native/journald_dummy.c new file mode 100644 index 0000000..330cfb5 --- /dev/null +++ b/ext/journald_native/journald_dummy.c @@ -0,0 +1,9 @@ +#include "journald_native.h" + +#ifdef JOURNALD_NATIVE_COMPILE_DUMMY + +int sd_journal_print(int priority, const char *format, ...) { return 0; } +int sd_journal_sendv(const iovec_t *iov, int n) { return 0; } +int sd_journal_perror(const char *message) { return 0; } + +#endif diff --git a/ext/journald_native/sd_journal_dummy.h b/ext/journald_native/journald_dummy.h similarity index 82% rename from ext/journald_native/sd_journal_dummy.h rename to ext/journald_native/journald_dummy.h index 7e5159e..1c97dc8 100644 --- a/ext/journald_native/sd_journal_dummy.h +++ b/ext/journald_native/journald_dummy.h @@ -19,6 +19,11 @@ /* dummy code to be used in sd_journal.h on non-linux system */ + +#ifdef JOURNALD_NATIVE_COMPILE_DUMMY +#ifndef JOURNALD_NATIVE_JOURNALD_DUMMY_H +#define JOURNALD_NATIVE_JOURNALD_DUMMY_H + #include #ifndef LOG_EMERG @@ -41,6 +46,9 @@ struct jdn_dummy_iovec { size_t iov_len; /* Number of bytes to transfer */ }; -inline int sd_journal_print(int priority, const char *format, ...) { return 0; } -inline int sd_journal_sendv(const iovec_t *iov, int n) { return 0; } -inline int sd_journal_perror(const char *message) { return 0; } +int sd_journal_print(int priority, const char *format, ...); +int sd_journal_sendv(const iovec_t *iov, int n); +int sd_journal_perror(const char *message); + +#endif +#endif diff --git a/ext/journald_native/journald_native.c b/ext/journald_native/journald_native.c index ba657aa..56adefd 100644 --- a/ext/journald_native/journald_native.c +++ b/ext/journald_native/journald_native.c @@ -18,7 +18,7 @@ */ #include -#include "sd_journal.h" +#include "journald_native.h" void Init_journald_native(); diff --git a/ext/journald_native/sd_journal.h b/ext/journald_native/journald_native.h similarity index 91% rename from ext/journald_native/sd_journal.h rename to ext/journald_native/journald_native.h index d5a02f6..ec01d83 100644 --- a/ext/journald_native/sd_journal.h +++ b/ext/journald_native/journald_native.h @@ -17,10 +17,11 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -#include +#ifndef JOURNALD_NATIVE_JOURNALD_NATIVE_H -#ifndef JOURNALD_NATIVE_SD_JOURNAL_H - #define JOURNALD_NATIVE_SD_JOURNAL_H + #include + + #define JOURNALD_NATIVE_JOURNALD_NATIVE_H #ifdef __linux__ @@ -59,10 +60,11 @@ #else #define JOURNALD_NATIVE_SD_JOURNAL_DUMMY true + #define JOURNALD_NATIVE_COMPILE_DUMMY #warning Compiling dummy version of the gem for non-Linux OS - #include "sd_journal_dummy.h" + #include "journald_dummy.h" #endif