+/////////////////////////////////////////////////////////////////////////////
+// Name: wx/link.h
+// Purpose: macros to force linking modules which might otherwise be
+// discarded by the linker
+// Author: Vaclav Slavik
+// RCS-ID: $Id$
+// Copyright: (c) Vaclav Slavik
+// Licence: wxWindows licence
+/////////////////////////////////////////////////////////////////////////////
+
+#ifndef _WX_LINK_H_
+#define _WX_LINK_H_
+
+// This must be part of the module you want to force:
+#define wxFORCE_LINK_THIS_MODULE(module_name) \
+ extern void _wx_link_dummy_func_##module_name (); \
+ void _wx_link_dummy_func_##module_name () { }
+
+
+// And this must be somewhere where it certainly will be linked:
+#define wxFORCE_LINK_MODULE(module_name) \
+ extern int _wx_link_dummy_func_##module_name (); \
+ static struct wxForceLink##module_name \
+ { \
+ wxForceLink##module_name() \
+ { \
+ _wx_link_dummy_func_##module_name (); \
+ } \
+ } _wx_link_dummy_var_##module_name;
+
+
+#endif // _WX_LINK_H_