Advertisement
Guest User

Untitled

a guest
Dec 2nd, 2014
200
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.19 KB | None | 0 0
  1.  
  2.  
  3. ed configure << EOF
  4. /_GLIB_EXTERN
  5. .s/default/hidden/
  6. .s/__declspec(dllexport) //
  7. %s/-DDLL_EXPORT//
  8. wq
  9. EOF
  10. ed gobject/gtype.c << EOF
  11. %s/G_DEFINE_CONSTRUCTOR(gobject_init_ctor)//
  12. 4324
  13. .s/static//
  14. wq
  15. EOF
  16. ed gobject/gtype.h << EOF
  17. /GLIB_AVAILABLE_IN_ALL
  18. i
  19. GLIB_AVAILABLE_IN_ALL void gobject_init_ctor (void);
  20. .
  21. wq
  22. EOF
  23. patch -p1 <<EOF
  24. --- a/glib/gwin32.h     2014-11-07 00:22:30.000000000 +0100
  25. +++ b/glib/gwin32.h     2014-11-07 00:22:47.000000000 +0100
  26. @@ -111,6 +111,13 @@
  27.  #define G_WIN32_IS_NT_BASED() TRUE
  28.  #define G_WIN32_HAVE_WIDECHAR_API() TRUE
  29.  
  30. +/* explicit static initialization */
  31. +GLIB_AVAILABLE_IN_ALL
  32. +void glib_init_static(void);
  33. +
  34. +GLIB_AVAILABLE_IN_ALL
  35. +void glib_cleanup_static(void);
  36. +
  37.  G_END_DECLS
  38.  
  39.  #endif  /* G_PLATFORM_WIN32 */
  40. --- a/glib/glib-init.c  2014-11-07 00:19:24.000000000 +0100
  41. +++ b/glib/glib-init.c  2014-11-07 00:23:20.000000000 +0100
  42. @@ -273,6 +273,16 @@
  43.    return TRUE;
  44.  }
  45.  
  46. +void
  47. +glib_init_static(void) {
  48. +       DllMain(NULL, DLL_PROCESS_ATTACH, 0);
  49. +}
  50. +
  51. +void
  52. +glib_cleanup_static(void) {
  53. +       DllMain(NULL, DLL_PROCESS_DETACH, 0);
  54. +}
  55. +
  56.  #elif defined (G_HAS_CONSTRUCTORS)
  57.  
  58.  #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA
  59. EOF
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement