]> granicus.if.org Git - libevent/commitdiff
cmake: Export missing symbols for win32
authorAzat Khuzhin <a3at.mail@gmail.com>
Mon, 13 Mar 2017 21:46:47 +0000 (00:46 +0300)
committerAzat Khuzhin <a3at.mail@gmail.com>
Tue, 14 Mar 2017 05:47:18 +0000 (08:47 +0300)
evthread-internal.h
iocp-internal.h
util-internal.h

index bd5732966cd557e9f9a4d46876fe63f615eaa864..5fdf31619cc8e56dc725d047ccfceb26df4d5ddf 100644 (file)
@@ -185,14 +185,23 @@ EVLOCK_TRY_LOCK_(void *lock)
 #elif ! defined(EVENT__DISABLE_THREAD_SUPPORT)
 
 unsigned long evthreadimpl_get_id_(void);
+EVENT2_EXPORT_SYMBOL
 int evthreadimpl_is_lock_debugging_enabled_(void);
+EVENT2_EXPORT_SYMBOL
 void *evthreadimpl_lock_alloc_(unsigned locktype);
+EVENT2_EXPORT_SYMBOL
 void evthreadimpl_lock_free_(void *lock, unsigned locktype);
+EVENT2_EXPORT_SYMBOL
 int evthreadimpl_lock_lock_(unsigned mode, void *lock);
+EVENT2_EXPORT_SYMBOL
 int evthreadimpl_lock_unlock_(unsigned mode, void *lock);
+EVENT2_EXPORT_SYMBOL
 void *evthreadimpl_cond_alloc_(unsigned condtype);
+EVENT2_EXPORT_SYMBOL
 void evthreadimpl_cond_free_(void *cond);
+EVENT2_EXPORT_SYMBOL
 int evthreadimpl_cond_signal_(void *cond, int broadcast);
+EVENT2_EXPORT_SYMBOL
 int evthreadimpl_cond_wait_(void *cond, void *lock, const struct timeval *tv);
 int evthreadimpl_locking_enabled_(void);
 
index 089754d6bbffe4e3323a92a62408c1e80d153823..21e0e0af68070daf13c9d089b2bec754cd3a8c3e 100644 (file)
@@ -92,6 +92,7 @@ struct event_iocp_port {
        HANDLE *shutdownSemaphore;
 };
 
+EVENT2_EXPORT_SYMBOL
 const struct win32_extension_fns *event_get_win32_extension_fns_(void);
 #else
 /* Dummy definition so we can test-compile more things on unix. */
@@ -106,12 +107,14 @@ struct event_overlapped {
     @param cb The callback that should be invoked once the IO operation has
        finished.
  */
+EVENT2_EXPORT_SYMBOL
 void event_overlapped_init_(struct event_overlapped *, iocp_callback cb);
 
 /** Allocate and return a new evbuffer that supports overlapped IO on a given
     socket.  The socket must be associated with an IO completion port using
     event_iocp_port_associate_.
 */
+EVENT2_EXPORT_SYMBOL
 struct evbuffer *evbuffer_overlapped_new_(evutil_socket_t fd);
 
 /** XXXX Document (nickm) */
@@ -131,6 +134,7 @@ void evbuffer_overlapped_set_fd_(struct evbuffer *buf, evutil_socket_t fd);
     @param ol Overlapped object with associated completion callback.
     @return 0 on success, -1 on error.
  */
+EVENT2_EXPORT_SYMBOL
 int evbuffer_launch_read_(struct evbuffer *buf, size_t n, struct event_overlapped *ol);
 
 /** Start writing data from the start of an evbuffer.
@@ -145,21 +149,26 @@ int evbuffer_launch_read_(struct evbuffer *buf, size_t n, struct event_overlappe
     @param ol Overlapped object with associated completion callback.
     @return 0 on success, -1 on error.
  */
+EVENT2_EXPORT_SYMBOL
 int evbuffer_launch_write_(struct evbuffer *buf, ev_ssize_t n, struct event_overlapped *ol);
 
 /** XXX document */
+EVENT2_EXPORT_SYMBOL
 void evbuffer_commit_read_(struct evbuffer *, ev_ssize_t);
+EVENT2_EXPORT_SYMBOL
 void evbuffer_commit_write_(struct evbuffer *, ev_ssize_t);
 
 /** Create an IOCP, and launch its worker threads.  Internal use only.
 
     This interface is unstable, and will change.
  */
+EVENT2_EXPORT_SYMBOL
 struct event_iocp_port *event_iocp_port_launch_(int n_cpus);
 
 /** Associate a file descriptor with an iocp, such that overlapped IO on the
     fd will happen on one of the iocp's worker threads.
 */
+EVENT2_EXPORT_SYMBOL
 int event_iocp_port_associate_(struct event_iocp_port *port, evutil_socket_t fd,
     ev_uintptr_t key);
 
@@ -169,15 +178,18 @@ int event_iocp_port_associate_(struct event_iocp_port *port, evutil_socket_t fd,
     0. Otherwise, return -1.  If you get a -1 return value, it is safe to call
     this function again.
 */
+EVENT2_EXPORT_SYMBOL
 int event_iocp_shutdown_(struct event_iocp_port *port, long waitMsec);
 
 /* FIXME document. */
+EVENT2_EXPORT_SYMBOL
 int event_iocp_activate_overlapped_(struct event_iocp_port *port,
     struct event_overlapped *o,
     ev_uintptr_t key, ev_uint32_t n_bytes);
 
 struct event_base;
 /* FIXME document. */
+EVENT2_EXPORT_SYMBOL
 struct event_iocp_port *event_base_get_iocp_(struct event_base *base);
 
 /* FIXME document. */
@@ -186,6 +198,7 @@ int event_base_start_iocp_(struct event_base *base, int n_cpus);
 void event_base_stop_iocp_(struct event_base *base);
 
 /* FIXME document. */
+EVENT2_EXPORT_SYMBOL
 struct bufferevent *bufferevent_async_new_(struct event_base *base,
     evutil_socket_t fd, int options);
 
index 7ae42fa0f3e741cdc05627f4746ac3f1045b243a..507dceb7427780a3e6fbbf233aacd97fc1a570f2 100644 (file)
@@ -437,6 +437,7 @@ void evutil_free_secure_rng_globals_(void);
 void evutil_free_globals_(void);
 
 #ifdef _WIN32
+EVENT2_EXPORT_SYMBOL
 HMODULE evutil_load_windows_system_library_(const TCHAR *library_name);
 #endif