Mercurial > mxe-octave
view src/build-msvctools/libgfortran-dllinit.c @ 3061:f8299bb6c872
Initial support for native MSVC compilation.
* add MSVC support files: compiler wrappers and support libraries
* adapt libiconv to work with MSVC
* adapt gettext to work with MSVC
author | Michael Goffioul <michael.goffioul@gmail.com> |
---|---|
date | Mon, 17 Jun 2013 22:43:11 -0400 |
parents | |
children |
line wrap: on
line source
#include <stdlib.h> #include <stdio.h> #define WIN32_LEAN_AND_MEAN #include <windows.h> extern void _gfortrani_init_variables (void); extern void _gfortrani_init_units (void); extern void _gfortrani_close_units (void); extern void _gfortrani_set_fpu (void); extern void _gfortrani_init_compile_options (void); extern void _gfortran_random_seed_i4 (void *a, void *b, void *c); extern int _gfortrani_big_endian; extern void __msvc_free_exe_path (void); static void __cdecl __msvc_init (void) { _gfortrani_big_endian = 0; _gfortrani_init_variables (); _gfortrani_init_units (); _gfortrani_set_fpu (); _gfortrani_init_compile_options (); _gfortran_random_seed_i4 (NULL, NULL, NULL); } static void __cdecl __msvc_cleanup (void) { _gfortrani_close_units (); __msvc_free_exe_path (); } BOOL WINAPI DllMain (HINSTANCE hinstDLL, DWORD fdwreason, LPVOID lpvReserved) { switch (fdwreason) { case DLL_PROCESS_ATTACH: __msvc_init (); break; case DLL_PROCESS_DETACH: __msvc_cleanup (); break; default: break; } return TRUE; }