blob: d7ca2102c957a1de88855c6bbc0b506460f5b09b [file] [log] [blame]
Alexandre Julliard0628c7e2005-08-29 14:16:27 +00001/*
2 * crt0 library private definitions
3 *
4 * Copyright 2005 Alexandre Julliard
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
10 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
15 *
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19 */
20
21#ifndef __WINE_CRT0_PRIVATE_H__
22#define __WINE_CRT0_PRIVATE_H__
23
24#ifdef __APPLE__
25static inline void _init(int argc, char **argv, char **envp ) { /* nothing */ }
26static inline void _fini(void) { /* nothing */ }
27#else
Alexandre Julliard220f2ce2005-10-30 19:10:35 +000028extern void _init(int argc, char **argv, char **envp ) DECLSPEC_HIDDEN;
29extern void _fini(void) DECLSPEC_HIDDEN;
Alexandre Julliard0628c7e2005-08-29 14:16:27 +000030#endif
31
Alexandre Julliardce207222005-09-02 14:43:03 +000032enum init_state
33{
34 NO_INIT_DONE, /* no initialization done yet */
35 DLL_REGISTERED, /* the dll has been registered */
36 CONSTRUCTORS_DONE /* the constructors have been run (implies dll registered too) */
37};
38
Alexandre Julliard220f2ce2005-10-30 19:10:35 +000039extern enum init_state __wine_spec_init_state DECLSPEC_HIDDEN;
Alexandre Julliard68f17732005-08-29 21:49:57 +000040
Alexandre Julliard0628c7e2005-08-29 14:16:27 +000041#endif /* __WINE_CRT0_PRIVATE_H__ */