xref: /netbsd/external/bsd/pcc/dist/pcc/os/win32/ccconfig.h (revision 6935091c)
1 /*	Id: ccconfig.h,v 1.19 2014/12/24 12:35:38 plunky Exp 	*/
2 /*	$NetBSD: ccconfig.h,v 1.1.1.6 2016/02/09 20:29:21 plunky Exp $	*/
3 
4 /*
5  * Currently only supports console applications.
6  */
7 
8 #if defined(MSLINKER)
9 /* requires microsoft toolkit headers and linker, and pcc-libs */
10 #define CPPADD		{ "-DWIN32", "-D_WIN32", NULL }
11 #define DEFLIBS		{ "/subsystem:console", "msvcrt.lib", "libpcc.a", NULL }
12 #else
13 /* common cpp predefines */
14 #define CPPADD		{ "-DWIN32", "-D_WIN32", "-D__MSVCRT__", "-D__MINGW32__", NULL }
15 
16 /* host-dependent */
17 /* requires w32api-3.2.tar.gz and mingw-runtime-3.14.tar.gz */
18 #define CRT0		"crt2.o"
19 #define STARTLABEL	"_mainCRTStartup"
20 #define CRT0_S		"dllcrt2.o"
21 #define STARTLABEL_S	"_DllMainCRTStartup@12"
22 #define GCRT0		"gcrt2.o"	/* in _addition_ to either crt2.o or dllcrt2.o */
23 
24 #define CRTBEGIN	0	/* No constructor/destructor support for now */
25 #define CRTEND		0
26 #define CRTBEGIN_S	0
27 #define CRTEND_S	0
28 #define CRTBEGIN_T	0	/* Note: MingW cannot do -static linking */
29 #define CRTEND_T	0
30 #define CRTI		0
31 #define CRTN		0
32 
33 #define WIN32_LIBC	"-lmsvcrt"
34 #define MINGW_RTLIBS	"-lmoldname", "-lmingwex", "-lmingw32"
35 #define MINGW_SYSLIBS	"-luser32", "-lkernel32" /* ,"-ladvapi32", "-lshell32" */
36 #define DEFLIBS		{ MINGW_RTLIBS, "-lpcc", WIN32_LIBC, MINGW_SYSLIBS, MINGW_RTLIBS, WIN32_LIBC, 0 }
37 #define DEFPROFLIBS	{ MINGW_RTLIBS, "-lpcc", WIN32_LIBC, "-lgmon", MINGW_SYSLIBS, MINGW_RTLIBS, WIN32_LIBC, 0 }
38 #define DEFCXXLIBS	{ "-lp++", MINGW_RTLIBS, "-lpcc", WIN32_LIBC, MINGW_SYSLIBS, MINGW_RTLIBS, WIN32_LIBC, 0 }
39 
40 #endif
41 
42 #define CPPMDADD { "-D__i386__", NULL }
43