Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ed configure << EOF
- /_GLIB_EXTERN
- .s/default/hidden/
- .s/__declspec(dllexport) //
- %s/-DDLL_EXPORT//
- wq
- EOF
- ed gobject/gtype.c << EOF
- %s/G_DEFINE_CONSTRUCTOR(gobject_init_ctor)//
- 4324
- .s/static//
- wq
- EOF
- ed gobject/gtype.h << EOF
- /GLIB_AVAILABLE_IN_ALL
- i
- GLIB_AVAILABLE_IN_ALL void gobject_init_ctor (void);
- .
- wq
- EOF
- patch -p1 <<EOF
- --- a/glib/gwin32.h 2014-11-07 00:22:30.000000000 +0100
- +++ b/glib/gwin32.h 2014-11-07 00:22:47.000000000 +0100
- @@ -111,6 +111,13 @@
- #define G_WIN32_IS_NT_BASED() TRUE
- #define G_WIN32_HAVE_WIDECHAR_API() TRUE
- +/* explicit static initialization */
- +GLIB_AVAILABLE_IN_ALL
- +void glib_init_static(void);
- +
- +GLIB_AVAILABLE_IN_ALL
- +void glib_cleanup_static(void);
- +
- G_END_DECLS
- #endif /* G_PLATFORM_WIN32 */
- --- a/glib/glib-init.c 2014-11-07 00:19:24.000000000 +0100
- +++ b/glib/glib-init.c 2014-11-07 00:23:20.000000000 +0100
- @@ -273,6 +273,16 @@
- return TRUE;
- }
- +void
- +glib_init_static(void) {
- + DllMain(NULL, DLL_PROCESS_ATTACH, 0);
- +}
- +
- +void
- +glib_cleanup_static(void) {
- + DllMain(NULL, DLL_PROCESS_DETACH, 0);
- +}
- +
- #elif defined (G_HAS_CONSTRUCTORS)
- #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA
- EOF
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement