contrib/pax_storage/src/api/python3/paxpy_comm.h (37 lines of code) (raw):

#pragma once #include "paxpy_config_d.h" #define FORMAT_CODE_PY_SSIZE_T "%" PY_FORMAT_SIZE_T "d" /* GCC 4.0 and later have support for specifying symbol visibility */ #if __GNUC__ >= 4 #define HIDDEN __attribute__((visibility("hidden"))) #else #define HIDDEN #endif /* debug printf-like function */ #ifdef PAXPY_DEBUG extern HIDDEN int paxpy_debug_enabled; #endif #if defined(__GNUC__) && !defined(__APPLE__) #ifdef PAXPY_DEBUG #define PAXPY_PRINT(fmt, args...) \ if (!paxpy_debug_enabled) \ ; \ else \ fprintf(stderr, "[%d] " fmt "\n", (int)getpid(), ##args) #else #define PAXPY_PRINT(fmt, args...) #endif #else /* !__GNUC__ or __APPLE__ */ #ifdef PAXPY_DEBUG #include <stdarg.h> static void PAXPY_PRINT(const char *fmt, ...) { va_list ap; if (!paxpy_debug_enabled) return; printf("[%d] ", (int)getpid()); va_start(ap, fmt); vprintf(fmt, ap); va_end(ap); printf("\n"); } #else static void PAXPY_PRINT(const char *fmt, ...) {} #endif #endif