fix for use-mingw32 fix
[k8jam.git] / defaults / Jambase.windoze
blobda67b685a70bff9b70ff6d710a40eae41a6670b8
2 # windoze setup
5 rule WindozeResourceCompiler {
6   Depends $(<) : $(>) ;
7   Clean clean : $(<) ;
10 actions WindozeResourceCompiler {
11   "$(WINE)" $(MGPATH)windres.exe -i $(>) -o $(<)
15 rule setup-windoze {
16   if ! $(WINDOZE) { WINDOZE = 1 ; }
17   PICFLAGS = ;
18   SUFLIBSHR = .dll ;
19   #WINDOZE_THREADS = -mthreads ;
20   #WINDOZE_THREADS = ;
21   WINE ?= "wine" ;
22   MGPATH ?= "c:\\\\mingw\\\\bin\\\\" ;
23   MGCC ?= "mingw32-gcc.exe -static-libgcc" ;
24   MG++ ?= "mingw32-g++.exe -static-libgcc -static-libstdc++" ;
25   CC = "$(WINE)" $(MGPATH)$(MGCC) ;
26   LINK = "$(WINE)" $(MGPATH)$(MGCC) -Wl,--enable-auto-import ;
27   AR = "$(WINE)" $(MGPATH)ar.exe -ru ;
28   RANLIB = "$(WINE)" $(MGPATH)ranlib.exe ;
29   C++ = "$(WINE)" $(MGPATH)$(MG++) ;
30   C++LINK = "$(WINE)" $(MGPATH)$(MG++) -Wl,--enable-auto-import ;
31   #LINKLIBS += -lkernel32 ;
32   #LINKLIBS += -luser32 ;
33   #LINKLIBS += -ladvapi32 ;
34   #LINKLIBS += -lws2_32 ;
35   #WINSUBSYS = "windows" ;
36   #WINSUBSYS = "console" ;
37   SUFEXE = .exe ;
38   #LINKFLAGS += "-Wl,-subsystem,$(WINSUBSYS)" ;
42 rule use-mingw32 {
43   if ([ sys-has-command i686-pc-mingw32-gcc ]) {
44     if ! $(MINGW32-CC) { MINGW32-CC = i686-pc-mingw32-gcc ; }
45     if ! $(MINGW32-C++) { MINGW32-C++ = i686-pc-mingw32-g++ ; }
46     CC = $(MINGW32-CC) -pipe -static-libgcc ;
47     C++ = $(MINGW32-C++) -pipe -static-libgcc -static-libstdc++ ;
48     LINK = $(MINGW32-CC) -pipe -static-libgcc -Wl,--enable-auto-import ;
49     C++LINK = $(MINGW32-C++) -pipe -static-libgcc -static-libstdc++ -Wl,--enable-auto-import ;
50     AR = i686-pc-mingw32-ar -ru ;
51     RANLIB = i686-pc-mingw32-ranlib ;
53     actions WindozeResourceCompiler {
54       i686-pc-mingw32-windres -i $(>) -o $(<)
55     }
56   }
60 rule check-setup-windoze {
61   if ! $(NT) && $(WINDOZE) {
62     setup-windoze ;
63     use-mingw32 ;
64   }
68 rule windoze-fix {
69   if $(WINDOZE) {
70     if $(WINDOZE_THREADS) {
71       CC += -mthreads ;
72       CC++ += -mthreads ;
73     }
74     local ss = $(WINSUBSYS) ;
75     if ! $(ss) { ss = "console" ; }
76     LINK += "-Wl,-subsystem,$(ss)" ;
77     C++LINK += "-Wl,-subsystem,$(ss)" ;
78     if $(WINLIBS) { LINKLIBS += $(WINLIBS) ; } else { LINKLIBS += -lkernel32 ; }
79   }