Export symbols when compiling windows DLL.
[deb_shairplay.git] / src / include / dnssd.h
index 32f3c9808ba6f848f22d984e0d07b3aa69c44b11..15576bb529ded7aa247cd71a8846a467990ed088 100644 (file)
@@ -1,5 +1,12 @@
 #ifndef DNSSD_H
 #define DNSSD_H
+
+#if defined(WIN32) && defined(DLL_EXPORT)
+# define DNSSD_API __declspec(dllexport)
+#else
+# define DNSSD_API
+#endif
+
 #ifdef __cplusplus
 extern "C" {
 #endif
@@ -11,15 +18,16 @@ extern "C" {
 #define DNSSD_ERROR_PROCNOTFOUND  4
 
 typedef struct dnssd_s dnssd_t;
-dnssd_t *dnssd_init(const char *hwaddr, int hwaddrlen, int *error);
 
-int dnssd_register_raop(dnssd_t *dnssd, const char *name, unsigned short port);
-int dnssd_register_airplay(dnssd_t *dnssd, const char *name, unsigned short port);
+DNSSD_API dnssd_t *dnssd_init(const char *hwaddr, int hwaddrlen, int *error);
+
+DNSSD_API int dnssd_register_raop(dnssd_t *dnssd, const char *name, unsigned short port);
+DNSSD_API int dnssd_register_airplay(dnssd_t *dnssd, const char *name, unsigned short port);
 
-void dnssd_unregister_raop(dnssd_t *dnssd);
-void dnssd_unregister_airplay(dnssd_t *dnssd);
+DNSSD_API void dnssd_unregister_raop(dnssd_t *dnssd);
+DNSSD_API void dnssd_unregister_airplay(dnssd_t *dnssd);
 
-void dnssd_destroy(dnssd_t *dnssd);
+DNSSD_API void dnssd_destroy(dnssd_t *dnssd);
 
 #ifdef __cplusplus
 }