HAMMER Utilities: Sync with 60F
[dragonfly.git] / contrib / ncurses-5.4 / include / ncurses_dll.h
blobde46c60508e61ed68f72b7cb0e1122bfa0d36141
1 /* $Id: ncurses_dll.h,v 1.4 2003/07/19 18:44:32 Charles.Wilson Exp $ */
3 #ifndef NCURSES_DLL_H_incl
4 #define NCURSES_DLL_H_incl 1
6 /* no longer needed on cygwin or mingw, thanks to auto-import */
7 /* but this structure may be useful at some point for an MSVC build */
8 /* so, for now unconditionally define the important flags */
9 /* "the right way" for proper static and dll+auto-import behavior */
10 #undef NCURSES_DLL
11 #define NCURSES_STATIC
13 #if defined(__CYGWIN__)
14 # if defined(NCURSES_DLL)
15 # if defined(NCURSES_STATIC)
16 # undef NCURSES_STATIC
17 # endif
18 # endif
19 # undef NCURSES_IMPEXP
20 # undef NCURSES_API
21 # undef NCURSES_EXPORT
22 # undef NCURSES_EXPORT_VAR
23 # if defined(NCURSES_DLL)
24 /* building a DLL */
25 # define NCURSES_IMPEXP __declspec(dllexport)
26 # elif defined(NCURSES_STATIC)
27 /* building or linking to a static library */
28 # define NCURSES_IMPEXP /* nothing */
29 # else
30 /* linking to the DLL */
31 # define NCURSES_IMPEXP __declspec(dllimport)
32 # endif
33 # define NCURSES_API __cdecl
34 # define NCURSES_EXPORT(type) NCURSES_IMPEXP type NCURSES_API
35 # define NCURSES_EXPORT_VAR(type) NCURSES_IMPEXP type
36 #endif
38 /* Take care of non-cygwin platforms */
39 #if !defined(NCURSES_IMPEXP)
40 # define NCURSES_IMPEXP /* nothing */
41 #endif
42 #if !defined(NCURSES_API)
43 # define NCURSES_API /* nothing */
44 #endif
45 #if !defined(NCURSES_EXPORT)
46 # define NCURSES_EXPORT(type) NCURSES_IMPEXP type NCURSES_API
47 #endif
48 #if !defined(NCURSES_EXPORT_VAR)
49 # define NCURSES_EXPORT_VAR(type) NCURSES_IMPEXP type
50 #endif
52 #endif /* NCURSES_DLL_H_incl */