-void *xrealloc_f (void *o, size_t size, char *file, int line);
-void *xmalloc_f (size_t size, char *file, int line);
-void *xcalloc_f (size_t nmemb, size_t size, char *file, int line);
-char *xstrdup_f (const char *, char *file, int line);
-void xfree_f (void *p, char *file, int line);
+#include <yconfig.h>
+
+#define TRACE_XMALLOC 0
+
+#ifndef TRACE_XMALLOC
+#define TRACE_XMALLOC 0
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+YAZ_EXPORT void *xrealloc_f (void *o, size_t size, char *file, int line);
+YAZ_EXPORT void *xmalloc_f (size_t size, char *file, int line);
+YAZ_EXPORT void *xcalloc_f (size_t nmemb, size_t size, char *file, int line);
+YAZ_EXPORT char *xstrdup_f (const char *, char *file, int line);
+YAZ_EXPORT void xfree_f (void *p, char *file, int line);