]> granicus.if.org Git - vim/commitdiff
patch 8.1.1104: MS-Windows: not all environment variables can be used v8.1.1104
authorBram Moolenaar <Bram@vim.org>
Wed, 3 Apr 2019 18:31:00 +0000 (20:31 +0200)
committerBram Moolenaar <Bram@vim.org>
Wed, 3 Apr 2019 18:31:00 +0000 (20:31 +0200)
Problem:    MS-Windows: not all environment variables can be used.
Solution:   Use the wide version of WinMain() and main(). (Ken Takata,
            closes #4206)

src/Make_cyg.mak
src/Make_cyg_ming.mak
src/Make_mvc.mak
src/main.c
src/os_w32exe.c
src/version.c

index 8c1b60e278f30d2ed4b134ab1fdad6463bb57bbd..8bb2b721bfd44b61b8ff275f990b6be0b1085e50 100644 (file)
 #RUBY=/cygdribe/c/ruby
 
 
-# Use MinGW(-w64) cross compiler.
-# There are three MinGW packages in Cygwin:
-#   32-bit: mingw-gcc-g++ and mingw64-i686-gcc-g++
+# Use MinGW-w64 cross compiler.
+# There are two MinGW-w64 packages in Cygwin:
+#   32-bit: mingw64-i686-gcc-g++
 #   64-bit: mingw64-x86_64-gcc-g++
 # You may also need to set 'ARCH' in Make_cyg_ming.mak.
-CROSS_COMPILE = i686-pc-mingw32-
-#CROSS_COMPILE = i686-w64-mingw32-
+CROSS_COMPILE = i686-w64-mingw32-
 #CROSS_COMPILE = x86_64-w64-mingw32-
 
 
index e439de351702d63edd326f17013c9f74c307ac0b..bfc55455368bdb2286b109a5595e39f5e6505cd7 100644 (file)
@@ -691,7 +691,7 @@ CFLAGS += -s
 endif
 
 LIB = -lkernel32 -luser32 -lgdi32 -ladvapi32 -lcomdlg32 -lcomctl32 -lnetapi32 -lversion
-GUIOBJ =  $(OUTDIR)/gui.o $(OUTDIR)/gui_w32.o $(OUTDIR)/gui_beval.o $(OUTDIR)/os_w32exe.o
+GUIOBJ =  $(OUTDIR)/gui.o $(OUTDIR)/gui_w32.o $(OUTDIR)/gui_beval.o
 CUIOBJ = $(OUTDIR)/iscygpty.o
 OBJ = \
        $(OUTDIR)/arabic.o \
@@ -737,9 +737,9 @@ OBJ = \
        $(OUTDIR)/normal.o \
        $(OUTDIR)/ops.o \
        $(OUTDIR)/option.o \
-       $(OUTDIR)/os_win32.o \
        $(OUTDIR)/os_mswin.o \
-       $(OUTDIR)/winclip.o \
+       $(OUTDIR)/os_w32exe.o \
+       $(OUTDIR)/os_win32.o \
        $(OUTDIR)/pathdef.o \
        $(OUTDIR)/popupmnu.o \
        $(OUTDIR)/quickfix.o \
@@ -759,6 +759,7 @@ OBJ = \
        $(OUTDIR)/userfunc.o \
        $(OUTDIR)/version.o \
        $(OUTDIR)/vimrc.o \
+       $(OUTDIR)/winclip.o \
        $(OUTDIR)/window.o
 
 ifdef PERL
@@ -865,6 +866,8 @@ ifdef MZSCHEME
 MZSCHEME_SUFFIX = Z
 endif
 
+LFLAGS += -municode
+
 ifeq ($(GUI),yes)
 TARGET := gvim$(DEBUG_SUFFIX).exe
 DEFINES += $(DEF_GUI)
index d71a3d3827806485ce0e4b26261b31258ca06c6b..c502dec8bfecd6308994cc4c9def3af239499301 100644 (file)
@@ -742,7 +742,7 @@ OBJ = \
        $(OUTDIR)\ops.obj \
        $(OUTDIR)\option.obj \
        $(OUTDIR)\os_mswin.obj \
-       $(OUTDIR)\winclip.obj \
+       $(OUTDIR)\os_w32exe.obj \
        $(OUTDIR)\os_win32.obj \
        $(OUTDIR)\pathdef.obj \
        $(OUTDIR)\popupmnu.obj \
@@ -761,6 +761,7 @@ OBJ = \
        $(OUTDIR)\ui.obj \
        $(OUTDIR)\undo.obj \
        $(OUTDIR)\userfunc.obj \
+       $(OUTDIR)\winclip.obj \
        $(OUTDIR)\window.obj \
        $(OUTDIR)\vim.res
 
@@ -799,8 +800,7 @@ GUI_INCL = \
 GUI_OBJ = \
        $(OUTDIR)\gui.obj \
        $(OUTDIR)\gui_beval.obj \
-       $(OUTDIR)\gui_w32.obj \
-       $(OUTDIR)\os_w32exe.obj
+       $(OUTDIR)\gui_w32.obj
 GUI_LIB = \
        gdi32.lib version.lib $(IME_LIB) \
        winspool.lib comctl32.lib advapi32.lib shell32.lib netapi32.lib \
index 3041df9c2c31172abb39a03fc0fe881e909189b4..a07ce1b830159ee09e25144c7f6a791757090aa6 100644 (file)
@@ -96,7 +96,7 @@ static char_u *start_dir = NULL;      /* current working dir on startup */
 static int has_dash_c_arg = FALSE;
 
     int
-# ifdef FEAT_GUI_MSWIN
+# ifdef MSWIN
 #  ifdef __BORLANDC__
 _cdecl
 #  endif
index 6c45ec2ea4894b4a6bc11da85a29e181d17f2d99..769a85191ca2e93c7ee2187df677571d24100fd3 100644 (file)
@@ -28,20 +28,22 @@ void _cdecl SaveInst(HINSTANCE hInst);
 #endif
 
 #ifndef PROTO
+# ifdef FEAT_GUI
     int WINAPI
-WinMain(
+wWinMain(
     HINSTANCE  hInstance,
     HINSTANCE  hPrevInst UNUSED,
-    LPSTR      lpszCmdLine UNUSED,
+    LPWSTR     lpszCmdLine UNUSED,
     int                nCmdShow UNUSED)
+# else
+    int
+wmain(int argc UNUSED, wchar_t **argv UNUSED)
+# endif
 {
-    int                argc = 0;
-    char       **argv = NULL;
-
 # ifdef FEAT_GUI
     SaveInst(hInstance);
 # endif
-    VimMain(argc, argv);
+    VimMain(0, NULL);
 
     return 0;
 }
index 7228d13e397d4c9204cb0b0eff56961571b66702..3f8d347b4916ff0cac8ed45870bc810c8643effe 100644 (file)
@@ -771,6 +771,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    1104,
 /**/
     1103,
 /**/