| To: vim_dev@googlegroups.com |
| Subject: Patch 7.4.496 |
| Fcc: outbox |
| From: Bram Moolenaar <Bram@moolenaar.net> |
| Mime-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| |
| Patch 7.4.496 |
| Problem: Many lines are both in Make_cyg.mak and Make_ming.mak |
| Solution: Move the common parts to one file. (Ken Takata) |
| Files: src/INSTALLpc.txt, src/Make_cyg.mak, src/Make_cyg_ming.mak, |
| src/Make_ming.mak, src/Make_mvc.mak, Filelist |
| |
| |
| |
| |
| |
| *** 228,238 **** |
| |
| http://www.mingw.org/ |
| |
| Once you have downloaded the compiler binaries, unpack them on your hard disk |
| somewhere, and put them on your PATH. If you are on Win95/98 you can edit |
| your AUTOEXEC.BAT file with a line like: |
| |
| ! set PATH=C:\GCC-2.95.2\BIN;%PATH% |
| |
| or on NT/2000/XP, go to the Control Panel, (Performance and Maintenance), |
| System, Advanced, and edit the environment from there. |
| --- 228,242 ---- |
| |
| http://www.mingw.org/ |
| |
| + or you can use 'MinGW-w64' compiler. |
| + |
| + http://mingw-w64.sourceforge.net/ |
| + |
| Once you have downloaded the compiler binaries, unpack them on your hard disk |
| somewhere, and put them on your PATH. If you are on Win95/98 you can edit |
| your AUTOEXEC.BAT file with a line like: |
| |
| ! set PATH=C:\MinGW\bin;%PATH% |
| |
| or on NT/2000/XP, go to the Control Panel, (Performance and Maintenance), |
| System, Advanced, and edit the environment from there. |
| |
| *** 240,249 **** |
| Test if gcc is on your path. From a CMD (or COMMAND on '95/98) window: |
| |
| C:\> gcc --version |
| ! 2.95.2 |
| |
| ! C:\> make --version |
| ! GNU Make version 3.77 (...etc...) |
| |
| Now you are ready to rock 'n' roll. Unpack the vim sources (look on |
| www.vim.org for exactly which version of the vim files you need). |
| --- 244,253 ---- |
| Test if gcc is on your path. From a CMD (or COMMAND on '95/98) window: |
| |
| C:\> gcc --version |
| ! gcc (GCC) 4.8.1 |
| |
| ! C:\> mingw32-make --version |
| ! GNU Make 3.82.90 (...etc...) |
| |
| Now you are ready to rock 'n' roll. Unpack the vim sources (look on |
| www.vim.org for exactly which version of the vim files you need). |
| |
| *** 255,261 **** |
| |
| and you type: |
| |
| ! make -f Make_ming.mak gvim.exe |
| |
| After churning for a while, you will end up with 'gvim.exe' in the 'vim\src' |
| directory. |
| --- 259,265 ---- |
| |
| and you type: |
| |
| ! mingw32-make -f Make_ming.mak gvim.exe |
| |
| After churning for a while, you will end up with 'gvim.exe' in the 'vim\src' |
| directory. |
| |
| *** 264,270 **** |
| way. If, for some reason, you want the console-mode-only version of vim (this |
| is NOT recommended on Win32, especially on '95/'98!!!), you can use: |
| |
| ! make -f Make_ming.mak GUI=no vim.exe |
| |
| If you are dismayed by how big the EXE is, I strongly recommend you get 'UPX' |
| (also free!) and compress the file (typical compression is 50%). UPX can be |
| --- 268,274 ---- |
| way. If, for some reason, you want the console-mode-only version of vim (this |
| is NOT recommended on Win32, especially on '95/'98!!!), you can use: |
| |
| ! mingw32-make -f Make_ming.mak GUI=no vim.exe |
| |
| If you are dismayed by how big the EXE is, I strongly recommend you get 'UPX' |
| (also free!) and compress the file (typical compression is 50%). UPX can be |
| |
| *** 291,298 **** |
| Use Make_cyg.mak with Cygwin's GCC. See |
| http://users.skynet.be/antoine.mechelynck/vim/compile.htm |
| |
| ! The Cygnus one many not fully work yet. |
| ! With Cygnus gcc you can use the Unix Makefile instead (you need to get the |
| Unix archive then). Then you get a Cygwin application (feels like Vim is |
| running on Unix), while with Make_cyg.mak you get a Windows application (like |
| with the other makefiles). |
| --- 295,301 ---- |
| Use Make_cyg.mak with Cygwin's GCC. See |
| http://users.skynet.be/antoine.mechelynck/vim/compile.htm |
| |
| ! With Cygnus gcc you should use the Unix Makefile instead (you need to get the |
| Unix archive then). Then you get a Cygwin application (feels like Vim is |
| running on Unix), while with Make_cyg.mak you get a Windows application (like |
| with the other makefiles). |
| |
| *** 316,324 **** |
| http://www.mingw.org/wiki/LinuxCrossMinGW |
| http://www.libsdl.org/extras/win32/cross/README.txt |
| 2) Get and unpack both the Unix sources and the extra archive |
| ! 3) in 'Make_ming.mak', set 'CROSS' to 'yes' instead of 'no'. |
| ! Make further changes to 'Make_ming.mak' as you wish. |
| ! If your cross-compiler prefix differs from the predefined value, |
| set 'CROSS_COMPILE' corresponding. |
| 4) make -f Make_ming.mak gvim.exe |
| |
| --- 319,327 ---- |
| http://www.mingw.org/wiki/LinuxCrossMinGW |
| http://www.libsdl.org/extras/win32/cross/README.txt |
| 2) Get and unpack both the Unix sources and the extra archive |
| ! 3) in 'Make_cyg_ming.mak', set 'CROSS' to 'yes' instead of 'no'. |
| ! Make further changes to 'Make_cyg_ming.mak' and 'Make_ming.mak' as you |
| ! wish. If your cross-compiler prefix differs from the predefined value, |
| set 'CROSS_COMPILE' corresponding. |
| 4) make -f Make_ming.mak gvim.exe |
| |
| |
| |
| |
| *** 1,754 **** |
| # |
| ! # Makefile for VIM on Win32, using Cygnus gcc |
| ! # Updated by Dan Sharp. |
| ! # Last Change: 2014 Aug 10 |
| # |
| # Also read INSTALLpc.txt! |
| # |
| # This compiles Vim as a Windows application. If you want Vim to run as a |
| # Cygwin application use the Makefile (just like on Unix). |
| # |
| ! # GUI no or yes: set to yes if you want the GUI version (yes) |
| ! # DIRECTX no or yes: set to yes if you want use DirectWrite (no) |
| ! # PERL define to path to Perl dir to get Perl support (not defined) |
| ! # PERL_VER define to version of Perl being used (56) |
| ! # DYNAMIC_PERL no or yes: set to yes to load the Perl DLL dynamically (yes) |
| ! # PYTHON define to path to Python dir to get PYTHON support (not defined) |
| ! # PYTHON_VER define to version of Python being used (22) |
| ! # DYNAMIC_PYTHON no or yes: use yes to load the Python DLL dynamically (yes) |
| ! # PYTHON3 define to path to Python3 dir to get PYTHON3 support (not defined) |
| ! # PYTHON3_VER define to version of Python3 being used (22) |
| ! # DYNAMIC_PYTHON3 no or yes: use yes to load the Python3 DLL dynamically (yes) |
| ! # TCL define to path to TCL dir to get TCL support (not defined) |
| ! # TCL_VER define to version of TCL being used (83) |
| ! # DYNAMIC_TCL no or yes: use yes to load the TCL DLL dynamically (yes) |
| ! # RUBY define to path to Ruby dir to get Ruby support (not defined) |
| ! # RUBY_VER define to version of Ruby being used (16) |
| ! # RUBY_VER_LONG same, but in format with dot. (1.6) |
| ! # You must set RUBY_VER_LONG when changing RUBY_VER. |
| ! # You must set RUBY_API_VER version to RUBY_VER_LONG. |
| ! # Don't set ruby API version to RUBY_VER like 191. |
| ! # DYNAMIC_RUBY no or yes: use yes to load the Ruby DLL dynamically (yes) |
| ! # MZSCHEME define to path to MzScheme dir to get MZSCHEME support (not defined) |
| ! # MZSCHEME_VER define to version of MzScheme being used (209_000) |
| ! # DYNAMIC_MZSCHEME no or yes: use yes to load the MzScheme DLLs dynamically (yes) |
| ! # MZSCHEME_DLLS path to MzScheme DLLs (libmzgc and libmzsch), for "static" build. |
| ! # MZSCHEME_USE_RACKET define to use "racket" instead of "mzsch". |
| ! # LUA define to path to Lua dir to get Lua support (not defined) |
| ! # LUA_VER define to version of Lua being used (51) |
| ! # DYNAMIC_LUA no or yes: use yes to load the Lua DLL dynamically (yes) |
| ! # GETTEXT no or yes: set to yes for dynamic gettext support (yes) |
| ! # ICONV no or yes: set to yes for dynamic iconv support (yes) |
| ! # MBYTE no or yes: set to yes to include multibyte support (yes) |
| ! # IME no or yes: set to yes to include IME support (yes) |
| ! # DYNAMIC_IME no or yes: set to yes to load imm32.dll dynamically (yes) |
| ! # OLE no or yes: set to yes to make OLE gvim (no) |
| ! # DEBUG no or yes: set to yes if you wish a DEBUGging build (no) |
| ! # CPUNR No longer supported, use ARCH. |
| ! # ARCH i386 through pentium4: select -march argument to compile with |
| ! # (i386) |
| ! # USEDLL no or yes: set to yes to use the Runtime library DLL (no) |
| ! # For USEDLL=yes the cygwin1.dll is required to run Vim. |
| ! # For "no" the mingw-gcc-g++ package or the mingw64-i686-gcc-g++ |
| ! # package is required to compile Vim. Or set CC to gcc-3 and add |
| ! # -L/lib/w32api to EXTRA_LIBS. |
| ! # POSTSCRIPT no or yes: set to yes for PostScript printing (no) |
| ! # FEATURES TINY, SMALL, NORMAL, BIG or HUGE (BIG) |
| ! # WINVER Lowest Win32 version to support. (0x0500) |
| ! # CSCOPE no or yes: to include cscope interface support (yes) |
| ! # OPTIMIZE SPACE, SPEED, or MAXSPEED: set optimization level (MAXSPEED) |
| ! # NETBEANS no or yes: to include netbeans interface support (yes when GUI |
| ! # is yes) |
| ! # NBDEBUG no or yes: to include netbeans interface debugging support (no) |
| ! # XPM define to path to XPM dir to get XPM image support (not defined) |
| ! #>>>>> choose options: |
| ! ifndef GUI |
| ! GUI=yes |
| ! endif |
| ! |
| ! ifndef FEATURES |
| ! FEATURES = BIG |
| ! endif |
| ! |
| ! ifndef GETTEXT |
| ! GETTEXT = yes |
| ! endif |
| ! |
| ! ifndef ICONV |
| ! ICONV = yes |
| ! endif |
| ! |
| ! ifndef MBYTE |
| ! MBYTE = yes |
| ! endif |
| ! |
| ! ifndef IME |
| ! IME = yes |
| ! endif |
| ! |
| ! ifndef ARCH |
| ! ARCH = i386 |
| ! endif |
| ! |
| ! ifndef DIRECTX |
| ! DIRECTX = no |
| ! endif |
| ! |
| ! ifndef WINVER |
| ! WINVER = 0x0500 |
| ! endif |
| ! |
| ! ifndef CSCOPE |
| ! CSCOPE = yes |
| ! endif |
| ! |
| ! ifndef NETBEANS |
| ! ifeq ($(GUI),yes) |
| ! NETBEANS = yes |
| ! endif |
| ! endif |
| ! |
| ! ifndef OPTIMIZE |
| ! OPTIMIZE = MAXSPEED |
| ! endif |
| ! |
| ! |
| ! # Link against the shared version of libstdc++ by default. Set |
| ! # STATIC_STDCPLUS to "yes" to link against static version instead. |
| ! ifndef STATIC_STDCPLUS |
| ! STATIC_STDCPLUS=no |
| ! endif |
| ! |
| ! ### See feature.h for a list of optionals. |
| ! ### Any other defines can be included here. |
| ! |
| ! DEFINES = -DWIN32 -DHAVE_PATHDEF -DFEAT_$(FEATURES) \ |
| ! -DWINVER=$(WINVER) -D_WIN32_WINNT=$(WINVER) |
| ! ifeq ($(ARCH),x86-64) |
| ! DEFINES+=-DMS_WIN64 |
| ! endif |
| ! INCLUDES = -march=$(ARCH) -Iproto |
| ! |
| ! #>>>>> name of the compiler and linker, name of lib directory |
| ! ifeq (yes, $(USEDLL)) |
| ! # CROSS_COMPILE is used for the gvimext DLL. |
| ! CROSS_COMPILE = i686-pc-mingw32- |
| ! CC = gcc |
| ! RC = windres |
| ! else |
| ! # i686-pc-mingw32-gcc, i686-w64-mingw32-gcc or gcc-3 can be used. |
| CROSS_COMPILE = i686-pc-mingw32- |
| ! CC = $(CROSS_COMPILE)gcc |
| ! RC = $(CROSS_COMPILE)windres |
| ! endif |
| ! |
| ! ############################## |
| ! # DYNAMIC_PERL=yes and no both work |
| ! ############################## |
| ! ifdef PERL |
| ! DEFINES += -DFEAT_PERL |
| ! INCLUDES += -I$(PERL)/lib/CORE |
| ! EXTRA_OBJS += $(OUTDIR)/if_perl.o |
| ! |
| ! ifndef DYNAMIC_PERL |
| ! DYNAMIC_PERL = yes |
| ! endif |
| ! |
| ! ifndef PERL_VER |
| ! PERL_VER = 56 |
| ! endif |
| ! |
| ! ifeq (yes, $(DYNAMIC_PERL)) |
| ! DEFINES += -DDYNAMIC_PERL -DDYNAMIC_PERL_DLL=\"perl$(PERL_VER).dll\" |
| ! else |
| ! EXTRA_LIBS += -L$(PERL)/lib/CORE -lperl$(PERL_VER) |
| ! endif |
| ! endif |
| ! |
| ! ############################## |
| ! # DYNAMIC_PYTHON=yes works. |
| ! # DYNAMIC_PYTHON=no does not (unresolved externals on link). |
| ! ############################## |
| ! ifdef PYTHON |
| ! DEFINES += -DFEAT_PYTHON |
| ! EXTRA_OBJS += $(OUTDIR)/if_python.o |
| ! |
| ! ifndef DYNAMIC_PYTHON |
| ! DYNAMIC_PYTHON = yes |
| ! endif |
| ! |
| ! ifndef PYTHON_VER |
| ! PYTHON_VER = 22 |
| ! endif |
| ! |
| ! ifeq (yes, $(DYNAMIC_PYTHON)) |
| ! DEFINES += -DDYNAMIC_PYTHON -DDYNAMIC_PYTHON_DLL=\"python$(PYTHON_VER).dll\" |
| ! else |
| ! EXTRA_LIBS += $(PYTHON)/libs/python$(PYTHON_VER).lib |
| ! endif |
| ! endif |
| ! |
| ! ############################## |
| ! # DYNAMIC_PYTHON3=yes works. |
| ! # DYNAMIC_PYTHON3=no does not (unresolved externals on link). |
| ! ############################## |
| ! ifdef PYTHON3 |
| ! DEFINES += -DFEAT_PYTHON3 |
| ! EXTRA_OBJS += $(OUTDIR)/if_python3.o |
| ! |
| ! ifndef DYNAMIC_PYTHON3 |
| ! DYNAMIC_PYTHON3 = yes |
| ! endif |
| ! |
| ! ifndef PYTHON3_VER |
| ! PYTHON3_VER = 31 |
| ! endif |
| ! |
| ! ifeq (yes, $(DYNAMIC_PYTHON3)) |
| ! DEFINES += -DDYNAMIC_PYTHON3 -DDYNAMIC_PYTHON3_DLL=\"python$(PYTHON3_VER).dll\" |
| ! else |
| ! EXTRA_LIBS += $(PYTHON3)/libs/python$(PYTHON3_VER).lib |
| ! endif |
| ! endif |
| ! |
| ! ############################## |
| ! # DYNAMIC_RUBY=yes works. |
| ! # DYNAMIC_RUBY=no does not (process exits). |
| ! ############################## |
| ! ifdef RUBY |
| ! |
| ! ifndef DYNAMIC_RUBY |
| ! DYNAMIC_RUBY=yes |
| ! endif |
| ! # Set default value |
| ! ifndef RUBY_VER |
| ! RUBY_VER = 16 |
| ! endif |
| ! ifndef RUBY_VER_LONG |
| ! RUBY_VER_LONG = 1.6 |
| ! endif |
| ! ifndef RUBY_API_VER |
| ! RUBY_API_VER = $(subst .,,$(RUBY_VER_LONG)) |
| ! endif |
| ! |
| ! ifndef RUBY_PLATFORM |
| ! ifeq ($(RUBY_VER), 16) |
| ! RUBY_PLATFORM = i586-mswin32 |
| ! else |
| ! ifneq ($(wildcard $(RUBY)/lib/ruby/$(RUBY_VER_LONG)/i386-mingw32),) |
| ! RUBY_PLATFORM = i386-mingw32 |
| ! else |
| ! ifneq ($(wildcard $(RUBY)/lib/ruby/$(RUBY_VER_LONG)/x64-mingw32),) |
| ! RUBY_PLATFORM = x64-mingw32 |
| ! else |
| ! RUBY_PLATFORM = i386-mswin32 |
| ! endif |
| ! endif |
| ! endif |
| ! endif |
| ! |
| ! ifndef RUBY_INSTALL_NAME |
| ! ifeq ($(RUBY_VER), 16) |
| ! RUBY_INSTALL_NAME = mswin32-ruby$(RUBY_API_VER) |
| ! else |
| ! ifeq ($(ARCH),x86-64) |
| ! RUBY_INSTALL_NAME = x64-msvcrt-ruby$(RUBY_API_VER) |
| ! else |
| ! RUBY_INSTALL_NAME = msvcrt-ruby$(RUBY_API_VER) |
| ! endif |
| ! endif |
| ! endif |
| ! |
| ! ifeq (19, $(word 1,$(sort 19 $(RUBY_VER)))) |
| ! RUBY_19_OR_LATER = 1 |
| ! endif |
| ! |
| ! DEFINES += -DFEAT_RUBY |
| ! ifneq ($(findstring w64-mingw32,$(CC)),) |
| ! # A workaround for mingw-w64 |
| ! DEFINES += -DHAVE_STRUCT_TIMESPEC -DHAVE_STRUCT_TIMEZONE |
| ! endif |
| ! INCLUDES += -I$(RUBY)/lib/ruby/$(RUBY_VER_LONG)/$(RUBY_PLATFORM) |
| ! ifdef RUBY_19_OR_LATER |
| ! INCLUDES += -I$(RUBY)/include/ruby-$(RUBY_VER_LONG) -I$(RUBY)/include/ruby-$(RUBY_VER_LONG)/$(RUBY_PLATFORM) |
| ! endif |
| ! EXTRA_OBJS += $(OUTDIR)/if_ruby.o |
| ! |
| ! ifeq (yes, $(DYNAMIC_RUBY)) |
| ! DEFINES += -DDYNAMIC_RUBY -DDYNAMIC_RUBY_DLL=\"$(RUBY_INSTALL_NAME).dll\" |
| ! DEFINES += -DDYNAMIC_RUBY_VER=$(RUBY_VER) |
| ! else |
| ! EXTRA_LIBS += $(RUBY)/lib/$(RUBY_INSTALL_NAME) |
| ! endif |
| ! endif |
| ! |
| ! ############################## |
| ! # DYNAMIC_MZSCHEME=yes works |
| ! # DYNAMIC_MZSCHEME=no works too |
| ! ############################## |
| ! ifdef MZSCHEME |
| ! DEFINES += -DFEAT_MZSCHEME |
| ! INCLUDES += -I$(MZSCHEME)/include |
| ! EXTRA_OBJS += $(OUTDIR)/if_mzsch.o |
| ! |
| ! ifndef DYNAMIC_MZSCHEME |
| ! DYNAMIC_MZSCHEME = yes |
| ! endif |
| ! |
| ! ifndef MZSCHEME_VER |
| ! MZSCHEME_VER = 209_000 |
| ! endif |
| ! |
| ! ifndef MZSCHEME_PRECISE_GC |
| ! MZSCHEME_PRECISE_GC=no |
| ! endif |
| ! |
| ! # for version 4.x we need to generate byte-code for Scheme base |
| ! ifndef MZSCHEME_GENERATE_BASE |
| ! MZSCHEME_GENERATE_BASE=no |
| ! endif |
| ! |
| ! ifndef MZSCHEME_USE_RACKET |
| ! MZSCHEME_MAIN_LIB=mzsch |
| ! else |
| ! MZSCHEME_MAIN_LIB=racket |
| ! endif |
| ! |
| ! ifeq (yes, $(DYNAMIC_MZSCHEME)) |
| ! DEFINES += -DDYNAMIC_MZSCHEME -DDYNAMIC_MZSCH_DLL=\"lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).dll\" -DDYNAMIC_MZGC_DLL=\"libmzgc$(MZSCHEME_VER).dll\" |
| ! else |
| ! ifndef MZSCHEME_DLLS |
| ! MZSCHEME_DLLS = $(MZSCHEME) |
| ! endif |
| ! ifeq (yes,$(MZSCHEME_PRECISE_GC)) |
| ! MZSCHEME_LIB=-l$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER) |
| ! else |
| ! MZSCHEME_LIB = -l$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER) -lmzgc$(MZSCHEME_VER) |
| ! endif |
| ! EXTRA_LIBS += -L$(MZSCHEME_DLLS) -L$(MZSCHEME_DLLS)/lib $(MZSCHEME_LIB) |
| ! endif |
| ! ifeq (yes,$(MZSCHEME_GENERATE_BASE)) |
| ! DEFINES += -DINCLUDE_MZSCHEME_BASE |
| ! MZ_EXTRA_DEP += mzscheme_base.c |
| ! endif |
| ! ifeq (yes,$(MZSCHEME_PRECISE_GC)) |
| ! DEFINES += -DMZ_PRECISE_GC |
| ! endif |
| ! endif |
| ! |
| ! ############################## |
| ! # DYNAMIC_TCL=yes and no both work. |
| ! ############################## |
| ! ifdef TCL |
| ! DEFINES += -DFEAT_TCL |
| ! INCLUDES += -I$(TCL)/include |
| ! EXTRA_OBJS += $(OUTDIR)/if_tcl.o |
| ! |
| ! ifndef DYNAMIC_TCL |
| ! DYNAMIC_TCL = yes |
| ! endif |
| ! |
| ! ifndef TCL_VER |
| ! TCL_VER = 83 |
| ! endif |
| ! |
| ! ifeq (yes, $(DYNAMIC_TCL)) |
| ! DEFINES += -DDYNAMIC_TCL -DDYNAMIC_TCL_DLL=\"tcl$(TCL_VER).dll\" |
| ! EXTRA_LIBS += $(TCL)/lib/tclstub$(TCL_VER).lib |
| ! else |
| ! EXTRA_LIBS += $(TCL)/lib/tcl$(TCL_VER).lib |
| ! endif |
| ! endif |
| ! |
| ! ############################## |
| ! # DYNAMIC_LUA=yes works. |
| ! # DYNAMIC_LUA=no does not (unresolved externals on link). |
| ! ############################## |
| ! ifdef LUA |
| ! DEFINES += -DFEAT_LUA |
| ! INCLUDES += -I$(LUA)/include |
| ! EXTRA_OBJS += $(OUTDIR)/if_lua.o |
| ! |
| ! ifndef DYNAMIC_LUA |
| ! DYNAMIC_LUA = yes |
| ! endif |
| ! |
| ! ifndef LUA_VER |
| ! LUA_VER = 51 |
| ! endif |
| ! |
| ! ifeq (yes, $(DYNAMIC_LUA)) |
| ! DEFINES += -DDYNAMIC_LUA -DDYNAMIC_LUA_DLL=\"lua$(LUA_VER).dll\" |
| ! else |
| ! EXTRA_LIBS += $(LUA)/lib/lua$(LUA_VER).lib |
| ! endif |
| ! endif |
| ! |
| ! ############################## |
| ! ifeq (yes, $(GETTEXT)) |
| ! DEFINES += -DDYNAMIC_GETTEXT |
| ! endif |
| ! |
| ! ############################## |
| ! ifeq (yes, $(ICONV)) |
| ! DEFINES += -DDYNAMIC_ICONV |
| ! endif |
| ! |
| ! ############################## |
| ! ifeq (yes, $(MBYTE)) |
| ! DEFINES += -DFEAT_MBYTE |
| ! endif |
| ! |
| ! ############################## |
| ! ifeq (yes, $(IME)) |
| ! DEFINES += -DFEAT_MBYTE_IME |
| ! |
| ! ifndef DYNAMIC_IME |
| ! DYNAMIC_IME = yes |
| ! endif |
| ! |
| ! ifeq (yes, $(DYNAMIC_IME)) |
| ! DEFINES += -DDYNAMIC_IME |
| ! else |
| ! EXTRA_LIBS += -limm32 |
| ! endif |
| ! endif |
| ! |
| ! ############################## |
| ! ifeq (yes, $(DEBUG)) |
| ! DEFINES += -DDEBUG |
| ! INCLUDES += -g -fstack-check |
| ! DEBUG_SUFFIX = d |
| ! else |
| ! |
| ! ifeq ($(OPTIMIZE), SIZE) |
| ! OPTFLAG = -Os |
| ! else |
| ! ifeq ($(OPTIMIZE), MAXSPEED) |
| ! OPTFLAG = -O3 -fomit-frame-pointer -freg-struct-return |
| ! else |
| ! OPTFLAG = -O2 |
| ! endif |
| ! endif |
| ! |
| ! # A bug in the GCC <= 3.2 optimizer can cause a crash. The |
| ! # following option removes the problem optimization. |
| ! OPTFLAG += -fno-strength-reduce |
| ! |
| ! INCLUDES += -s |
| ! |
| ! endif |
| ! |
| ! ############################## |
| ! # USEDLL=yes will build a Cygwin32 executable that relies on cygwin1.dll. |
| ! # USEDLL=no will build a Mingw32 executable with no extra dll dependencies. |
| ! ############################## |
| ! ifeq (yes, $(USEDLL)) |
| ! DEFINES += -D_MAX_PATH=256 -D__CYGWIN__ |
| ! endif |
| ! |
| ! ############################## |
| ! ifeq (yes, $(POSTSCRIPT)) |
| ! DEFINES += -DMSWINPS |
| ! endif |
| ! |
| ! ############################## |
| ! ifeq (yes, $(CSCOPE)) |
| ! DEFINES += -DFEAT_CSCOPE |
| ! EXTRA_OBJS += $(OUTDIR)/if_cscope.o |
| ! endif |
| ! |
| ! ############################## |
| ! ifeq ($(GUI),yes) |
| ! |
| ! ############################## |
| ! ifeq (yes, $(NETBEANS)) |
| ! # Only allow NETBEANS for a GUI build. |
| ! DEFINES += -DFEAT_NETBEANS_INTG |
| ! EXTRA_OBJS += $(OUTDIR)/netbeans.o |
| ! EXTRA_LIBS += -lwsock32 |
| ! |
| ! ifeq (yes, $(NBDEBUG)) |
| ! DEFINES += -DNBDEBUG |
| ! NBDEBUG_DEP = nbdebug.h nbdebug.c |
| ! endif |
| ! |
| ! endif |
| ! |
| ! ############################## |
| ! ifeq (yes, $(DIRECTX)) |
| ! # Only allow DIRECTX for a GUI build. |
| ! DEFINES += -DFEAT_DIRECTX -DDYNAMIC_DIRECTX |
| ! EXTRA_OBJS += $(OUTDIR)/gui_dwrite.o |
| ! EXTRA_LIBS += -ld2d1 -ldwrite |
| ! USE_STDCPLUS = yes |
| ! endif |
| ! |
| ! ############################## |
| ! ifndef XPM |
| ! ifeq ($(ARCH),i386) |
| ! XPM = xpm/x86 |
| ! endif |
| ! ifeq ($(ARCH),i486) |
| ! XPM = xpm/x86 |
| ! endif |
| ! ifeq ($(ARCH),i586) |
| ! XPM = xpm/x86 |
| ! endif |
| ! ifeq ($(ARCH),i686) |
| ! XPM = xpm/x86 |
| ! endif |
| ! ifeq ($(ARCH),x86-64) |
| ! XPM = xpm/x64 |
| ! endif |
| ! endif |
| ! ifdef XPM |
| ! ifneq ($(XPM),no) |
| ! # Only allow XPM for a GUI build. |
| ! DEFINES += -DFEAT_XPM_W32 |
| ! INCLUDES += -I$(XPM)/include -I$(XPM)/../include |
| ! EXTRA_OBJS += $(OUTDIR)/xpm_w32.o |
| ! EXTRA_LIBS += -L$(XPM)/lib -lXpm |
| ! endif |
| ! endif |
| ! |
| ! ############################## |
| ! EXE = gvim$(DEBUG_SUFFIX).exe |
| ! OUTDIR = gobj$(DEBUG_SUFFIX) |
| ! DEFINES += -DFEAT_GUI_W32 -DFEAT_CLIPBOARD |
| ! EXTRA_OBJS += $(OUTDIR)/gui.o $(OUTDIR)/gui_w32.o $(OUTDIR)/gui_beval.o $(OUTDIR)/os_w32exe.o |
| ! EXTRA_LIBS += -mwindows -lcomctl32 -lversion |
| ! else |
| ! EXE = vim$(DEBUG_SUFFIX).exe |
| ! OUTDIR = obj$(DEBUG_SUFFIX) |
| ! LIBS += -luser32 -lgdi32 -lcomdlg32 |
| ! endif |
| ! |
| ! ############################## |
| ! ifeq (yes, $(OLE)) |
| ! DEFINES += -DFEAT_OLE |
| ! EXTRA_OBJS += $(OUTDIR)/if_ole.o |
| ! EXTRA_LIBS += -loleaut32 |
| ! USE_STDCPLUS = yes |
| ! endif |
| ! |
| ! ############################## |
| ! ifneq (sh.exe, $(SHELL)) |
| ! DEL = rm |
| ! MKDIR = mkdir -p |
| ! DIRSLASH = / |
| ! else |
| ! DEL = del |
| ! MKDIR = mkdir |
| ! DIRSLASH = \\ |
| ! endif |
| ! |
| ! ############################## |
| ! ifeq (yes, $(USE_STDCPLUS)) |
| ! ifeq (yes, $(STATIC_STDCPLUS)) |
| ! EXTRA_LIBS += -Wl,-Bstatic -lstdc++ -Wl,-Bdynamic |
| ! else |
| ! EXTRA_LIBS += -lstdc++ |
| ! endif |
| ! endif |
| ! |
| ! #>>>>> end of choices |
| ! ########################################################################### |
| ! |
| ! INCL = vim.h globals.h option.h keymap.h macros.h ascii.h term.h os_win32.h \ |
| ! structs.h version.h |
| ! |
| ! CFLAGS = $(OPTFLAG) $(DEFINES) $(INCLUDES) |
| ! |
| ! RCFLAGS = -O coff $(DEFINES) |
| ! |
| ! OBJ = \ |
| ! $(OUTDIR)/blowfish.o \ |
| ! $(OUTDIR)/buffer.o \ |
| ! $(OUTDIR)/charset.o \ |
| ! $(OUTDIR)/crypt.o \ |
| ! $(OUTDIR)/crypt_zip.o \ |
| ! $(OUTDIR)/diff.o \ |
| ! $(OUTDIR)/digraph.o \ |
| ! $(OUTDIR)/edit.o \ |
| ! $(OUTDIR)/eval.o \ |
| ! $(OUTDIR)/ex_cmds.o \ |
| ! $(OUTDIR)/ex_cmds2.o \ |
| ! $(OUTDIR)/ex_docmd.o \ |
| ! $(OUTDIR)/ex_eval.o \ |
| ! $(OUTDIR)/ex_getln.o \ |
| ! $(OUTDIR)/fileio.o \ |
| ! $(OUTDIR)/fold.o \ |
| ! $(OUTDIR)/getchar.o \ |
| ! $(OUTDIR)/hardcopy.o \ |
| ! $(OUTDIR)/hashtab.o \ |
| ! $(OUTDIR)/main.o \ |
| ! $(OUTDIR)/mark.o \ |
| ! $(OUTDIR)/memfile.o \ |
| ! $(OUTDIR)/memline.o \ |
| ! $(OUTDIR)/menu.o \ |
| ! $(OUTDIR)/message.o \ |
| ! $(OUTDIR)/misc1.o \ |
| ! $(OUTDIR)/misc2.o \ |
| ! $(OUTDIR)/move.o \ |
| ! $(OUTDIR)/mbyte.o \ |
| ! $(OUTDIR)/normal.o \ |
| ! $(OUTDIR)/ops.o \ |
| ! $(OUTDIR)/option.o \ |
| ! $(OUTDIR)/os_win32.o \ |
| ! $(OUTDIR)/os_mswin.o \ |
| ! $(OUTDIR)/winclip.o \ |
| ! $(OUTDIR)/pathdef.o \ |
| ! $(OUTDIR)/popupmnu.o \ |
| ! $(OUTDIR)/quickfix.o \ |
| ! $(OUTDIR)/regexp.o \ |
| ! $(OUTDIR)/screen.o \ |
| ! $(OUTDIR)/search.o \ |
| ! $(OUTDIR)/sha256.o \ |
| ! $(OUTDIR)/spell.o \ |
| ! $(OUTDIR)/syntax.o \ |
| ! $(OUTDIR)/tag.o \ |
| ! $(OUTDIR)/term.o \ |
| ! $(OUTDIR)/ui.o \ |
| ! $(OUTDIR)/undo.o \ |
| ! $(OUTDIR)/version.o \ |
| ! $(OUTDIR)/vimrc.o \ |
| ! $(OUTDIR)/window.o \ |
| ! $(EXTRA_OBJS) |
| ! |
| ! all: $(EXE) xxd/xxd.exe vimrun.exe install.exe uninstal.exe GvimExt/gvimext.dll |
| ! |
| ! # According to the Cygwin doc 1.2 FAQ, kernel32 should not be specified for |
| ! # linking unless calling ld directly. |
| ! # See /usr/doc/cygwin-doc-1.2/html/faq_toc.html#TOC93 for more information. |
| ! $(EXE): $(OUTDIR) $(OBJ) |
| ! $(CC) $(CFLAGS) -o $(EXE) $(OBJ) $(LIBS) -luuid -lole32 $(EXTRA_LIBS) |
| ! |
| ! xxd/xxd.exe: xxd/xxd.c |
| ! $(MAKE) -C xxd -f Make_cyg.mak CC=$(CC) USEDLL=$(USEDLL) |
| ! |
| ! GvimExt/gvimext.dll: GvimExt/gvimext.cpp GvimExt/gvimext.rc GvimExt/gvimext.h |
| ! $(MAKE) -C GvimExt -f Make_cyg.mak CROSS_COMPILE=$(CROSS_COMPILE) |
| ! |
| ! vimrun.exe: vimrun.c |
| ! $(CC) $(CFLAGS) -o vimrun.exe vimrun.c $(LIBS) |
| ! |
| ! install.exe: dosinst.c |
| ! $(CC) $(CFLAGS) -o install.exe dosinst.c $(LIBS) -luuid -lole32 |
| ! |
| ! uninstal.exe: uninstal.c |
| ! $(CC) $(CFLAGS) -o uninstal.exe uninstal.c $(LIBS) |
| ! |
| ! $(OUTDIR): |
| ! $(MKDIR) $(OUTDIR) |
| ! |
| ! tags: |
| ! command /c ctags *.c $(INCL) |
| ! |
| ! clean: |
| ! -$(DEL) $(OUTDIR)$(DIRSLASH)*.o |
| ! -rmdir $(OUTDIR) |
| ! -$(DEL) $(EXE) vimrun.exe install.exe uninstal.exe |
| ! ifdef PERL |
| ! -$(DEL) if_perl.c |
| ! endif |
| ! ifdef MZSCHEME |
| ! -$(DEL) mzscheme_base.c |
| ! endif |
| ! -$(DEL) pathdef.c |
| ! $(MAKE) -C xxd -f Make_cyg.mak clean |
| ! $(MAKE) -C GvimExt -f Make_cyg.mak clean |
| ! |
| ! distclean: clean |
| ! -$(DEL) obj$(DIRSLASH)*.o |
| ! -rmdir obj |
| ! -$(DEL) gobj$(DIRSLASH)*.o |
| ! -rmdir gobj |
| ! -$(DEL) objd$(DIRSLASH)*.o |
| ! -rmdir objd |
| ! -$(DEL) gobjd$(DIRSLASH)*.o |
| ! -rmdir gobjd |
| ! -$(DEL) *.exe |
| ! |
| ! ########################################################################### |
| ! |
| ! $(OUTDIR)/%.o : %.c $(INCL) |
| ! $(CC) -c $(CFLAGS) $< -o $@ |
| ! |
| ! $(OUTDIR)/ex_docmd.o: ex_docmd.c $(INCL) ex_cmds.h |
| ! $(CC) -c $(CFLAGS) ex_docmd.c -o $(OUTDIR)/ex_docmd.o |
| ! |
| ! $(OUTDIR)/ex_eval.o: ex_eval.c $(INCL) ex_cmds.h |
| ! $(CC) -c $(CFLAGS) ex_eval.c -o $(OUTDIR)/ex_eval.o |
| ! |
| ! $(OUTDIR)/gui_w32.o: gui_w32.c gui_w48.c $(INCL) |
| ! $(CC) -c $(CFLAGS) gui_w32.c -o $(OUTDIR)/gui_w32.o |
| ! |
| ! $(OUTDIR)/gui_dwrite.o: gui_dwrite.cpp $(INCL) gui_dwrite.h |
| ! $(CC) -c $(CFLAGS) gui_dwrite.cpp -o $(OUTDIR)/gui_dwrite.o |
| ! |
| ! $(OUTDIR)/if_cscope.o: if_cscope.c $(INCL) if_cscope.h |
| ! $(CC) -c $(CFLAGS) if_cscope.c -o $(OUTDIR)/if_cscope.o |
| ! |
| ! $(OUTDIR)/if_ole.o: if_ole.cpp $(INCL) |
| ! $(CC) -c $(CFLAGS) if_ole.cpp -o $(OUTDIR)/if_ole.o |
| ! |
| ! $(OUTDIR)/if_python.o : if_python.c if_py_both.h $(INCL) |
| ! $(CC) -c $(CFLAGS) -I$(PYTHON)/include $< -o $@ |
| ! |
| ! $(OUTDIR)/if_python3.o : if_python3.c if_py_both.h $(INCL) |
| ! $(CC) -c $(CFLAGS) -I$(PYTHON3)/include $< -o $@ |
| ! |
| ! if_perl.c: if_perl.xs typemap |
| ! $(PERL)/bin/perl `cygpath -d $(PERL)/lib/ExtUtils/xsubpp` \ |
| ! -prototypes -typemap \ |
| ! `cygpath -d $(PERL)/lib/ExtUtils/typemap` if_perl.xs > $@ |
| ! |
| ! $(OUTDIR)/if_perl.o: if_perl.c $(INCL) |
| ! ifeq (yes, $(USEDLL)) |
| ! $(CC) -c $(CFLAGS) -I/usr/include/mingw -D__MINGW32__ if_perl.c -o $(OUTDIR)/if_perl.o |
| ! endif |
| ! |
| ! $(OUTDIR)/if_ruby.o: if_ruby.c $(INCL) |
| ! ifeq (16, $(RUBY_VER)) |
| ! $(CC) -c $(CFLAGS) -U_WIN32 if_ruby.c -o $(OUTDIR)/if_ruby.o |
| ! endif |
| ! |
| ! $(OUTDIR)/netbeans.o: netbeans.c $(INCL) $(NBDEBUG_DEP) |
| ! $(CC) -c $(CFLAGS) netbeans.c -o $(OUTDIR)/netbeans.o |
| ! |
| ! $(OUTDIR)/regexp.o: regexp.c regexp_nfa.c $(INCL) |
| ! $(CC) -c $(CFLAGS) regexp.c -o $(OUTDIR)/regexp.o |
| ! |
| ! $(OUTDIR)/if_mzsch.o: if_mzsch.c $(INCL) if_mzsch.h $(MZ_EXTRA_DEP) |
| ! $(CC) -c $(CFLAGS) if_mzsch.c -o $(OUTDIR)/if_mzsch.o |
| ! |
| ! $(OUTDIR)/vimrc.o: vim.rc version.h gui_w32_rc.h |
| ! $(RC) $(RCFLAGS) vim.rc -o $(OUTDIR)/vimrc.o |
| ! |
| ! mzscheme_base.c: |
| ! $(MZSCHEME)/mzc --c-mods mzscheme_base.c ++lib scheme/base |
| ! |
| ! pathdef.c: $(INCL) |
| ! ifneq (sh.exe, $(SHELL)) |
| ! @echo creating pathdef.c |
| ! @echo '/* pathdef.c */' > pathdef.c |
| ! @echo '#include "vim.h"' >> pathdef.c |
| ! @echo 'char_u *default_vim_dir = (char_u *)"$(VIMRCLOC)";' >> pathdef.c |
| ! @echo 'char_u *default_vimruntime_dir = (char_u *)"$(VIMRUNTIMEDIR)";' >> pathdef.c |
| ! @echo 'char_u *all_cflags = (char_u *)"$(CC) $(CFLAGS)";' >> pathdef.c |
| ! @echo 'char_u *all_lflags = (char_u *)"$(CC) -s -o $(EXE) $(LIBS) -luuid -lole32 $(EXTRA_LIBS)";' >> pathdef.c |
| ! @echo 'char_u *compiled_user = (char_u *)"$(USERNAME)";' >> pathdef.c |
| ! @echo 'char_u *compiled_sys = (char_u *)"$(USERDOMAIN)";' >> pathdef.c |
| ! else |
| ! @echo creating pathdef.c |
| ! @echo /* pathdef.c */ > pathdef.c |
| ! @echo #include "vim.h" >> pathdef.c |
| ! @echo char_u *default_vim_dir = (char_u *)"$(VIMRCLOC)"; >> pathdef.c |
| ! @echo char_u *default_vimruntime_dir = (char_u *)"$(VIMRUNTIMEDIR)"; >> pathdef.c |
| ! @echo char_u *all_cflags = (char_u *)"$(CC) $(CFLAGS)"; >> pathdef.c |
| ! @echo char_u *all_lflags = (char_u *)"$(CC) -s -o $(EXE) $(LIBS) -luuid -lole32 $(EXTRA_LIBS)"; >> pathdef.c |
| ! @echo char_u *compiled_user = (char_u *)"$(USERNAME)"; >> pathdef.c |
| ! @echo char_u *compiled_sys = (char_u *)"$(USERDOMAIN)"; >> pathdef.c |
| ! endif |
| |
| --- 1,52 ---- |
| # |
| ! # Makefile for VIM on Win32, using MinGW cross compiler on Cygwin |
| # |
| # Also read INSTALLpc.txt! |
| # |
| # This compiles Vim as a Windows application. If you want Vim to run as a |
| # Cygwin application use the Makefile (just like on Unix). |
| # |
| ! # The old Make_cyg.mak (maintained by Dan Sharp et al.) was merged into |
| ! # Make_cyg_ming.mak. Note: USEDLL option was removed. |
| ! # This file contains Cygwin specific settings. Common settings are contained |
| ! # in Make_cyg_ming.mak. |
| ! # |
| ! # Last updated by Ken Takata. |
| ! # Last Change: 2014 Oct 21 |
| ! |
| ! |
| ! # uncomment 'PERL' if you want a perl-enabled version |
| ! #PERL=/cygdrive/c/perl |
| ! |
| ! # uncomment 'LUA' if you want a Lua-enabled version |
| ! #LUA=/cygdrive/c/lua |
| ! |
| ! # uncomment 'MZSCHEME' if you want a MzScheme-enabled version |
| ! #MZSCHEME=/cygdrive/d/plt |
| ! |
| ! # uncomment 'PYTHON' if you want a python-enabled version |
| ! #PYTHON=/cygdrive/c/python20 |
| ! |
| ! # uncomment 'PYTHON3' if you want a python3-enabled version |
| ! #PYTHON3=/cygdrive/c/python31 |
| ! |
| ! # uncomment 'TCL' if you want a Tcl-enabled version |
| ! #TCL=/cygdrive/c/tcl |
| ! |
| ! # uncomment 'RUBY' if you want a Ruby-enabled version |
| ! #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++ |
| ! # 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 = x86_64-w64-mingw32- |
| ! |
| |
| + # Do not change this. |
| + UNDER_CYGWIN = yes |
| + include Make_cyg_ming.mak |
| |
| |
| |
| |
| --- 1,847 ---- |
| + # Makefile for VIM on Win32 (Cygwin and MinGW) |
| + # |
| + # This file contains common part for Cygwin and MinGW and it is included |
| + # from Make_cyg.mak and Make_ming.mak. |
| + # |
| + # Info at http://www.mingw.org |
| + # Alternative x86 and 64-builds: http://mingw-w64.sourceforge.net |
| + # Also requires GNU make, which you can download from the same sites. |
| + # Get missing libraries from http://gnuwin32.sf.net. |
| + # |
| + # Tested on Win32 NT 4 and Win95. |
| + # |
| + # To make everything, just 'make -f Make_ming.mak'. |
| + # To make just e.g. gvim.exe, 'make -f Make_ming.mak gvim.exe'. |
| + # After a run, you can 'make -f Make_ming.mak clean' to clean up. |
| + # |
| + # NOTE: Sometimes 'GNU Make' will stop after building vimrun.exe -- I think |
| + # it's just run out of memory or something. Run again, and it will continue |
| + # with 'xxd'. |
| + # |
| + # "make upx" makes *compressed* versions of the 32 bit GUI and console EXEs, |
| + # using the excellent UPX compressor: |
| + # http://upx.sourceforge.net/ |
| + # "make mpress" uses the MPRESS compressor for 32- and 64-bit EXEs: |
| + # http://www.matcode.com/mpress.htm |
| + # |
| + # Maintained by Ron Aaron <ronaharon@yahoo.com> et al. |
| + # Updated 2014 Oct 13. |
| + |
| + #>>>>> choose options: |
| + # set to yes for a debug build |
| + DEBUG=no |
| + # set to SIZE for size, SPEED for speed, MAXSPEED for maximum optimization |
| + OPTIMIZE=MAXSPEED |
| + # set to yes to make gvim, no for vim |
| + GUI=yes |
| + # set to yes if you want to use DirectWrite (DirectX) |
| + # MinGW-w64 is needed, and ARCH should be set to i686 or x86-64. |
| + DIRECTX=no |
| + # FEATURES=[TINY | SMALL | NORMAL | BIG | HUGE] |
| + # Set to TINY to make minimal version (few features). |
| + FEATURES=BIG |
| + # Set to one of i386, i486, i586, i686 as the minimum target processor. |
| + # For amd64/x64 architecture set ARCH=x86-64 . |
| + ARCH=i386 |
| + # Set to yes to cross-compile from unix; no=native Windows (and Cygwin). |
| + CROSS=no |
| + # Set to path to iconv.h and libiconv.a to enable using 'iconv.dll'. |
| + #ICONV="." |
| + ICONV=yes |
| + GETTEXT=yes |
| + # Set to yes to include multibyte support. |
| + MBYTE=yes |
| + # Set to yes to include IME support. |
| + IME=yes |
| + DYNAMIC_IME=yes |
| + # Set to yes to enable writing a postscript file with :hardcopy. |
| + POSTSCRIPT=no |
| + # Set to yes to enable OLE support. |
| + OLE=no |
| + # Set the default $(WINVER) to make it work with pre-Win2k. |
| + ifndef WINVER |
| + WINVER = 0x0500 |
| + endif |
| + # Set to yes to enable Cscope support. |
| + CSCOPE=yes |
| + # Set to yes to enable Netbeans support. |
| + NETBEANS=$(GUI) |
| + |
| + |
| + # Link against the shared version of libstdc++ by default. Set |
| + # STATIC_STDCPLUS to "yes" to link against static version instead. |
| + ifndef STATIC_STDCPLUS |
| + STATIC_STDCPLUS=no |
| + endif |
| + |
| + # If the user doesn't want gettext, undefine it. |
| + ifeq (no, $(GETTEXT)) |
| + GETTEXT= |
| + endif |
| + # Added by E.F. Amatria <eferna1@platea.ptic.mec.es> 2001 Feb 23 |
| + # Uncomment the first line and one of the following three if you want Native Language |
| + # Support. You'll need gnu_gettext.win32, a MINGW32 Windows PORT of gettext by |
| + # Franco Bez <franco.bez@gmx.de>. It may be found at |
| + # http://home.a-city.de/franco.bez/gettext/gettext_win32_en.html |
| + # Tested with mingw32 with GCC-2.95.2 on Win98 |
| + # Updated 2001 Jun 9 |
| + #GETTEXT=c:/gettext.win32.msvcrt |
| + #STATIC_GETTEXT=USE_STATIC_GETTEXT |
| + #DYNAMIC_GETTEXT=USE_GETTEXT_DLL |
| + #DYNAMIC_GETTEXT=USE_SAFE_GETTEXT_DLL |
| + SAFE_GETTEXT_DLL_OBJ = $(GETTEXT)/src/safe_gettext_dll/safe_gettext_dll.o |
| + # Alternatively, if you uncomment the two following lines, you get a "safe" version |
| + # without linking the safe_gettext_dll.o object file. |
| + #DYNAMIC_GETTEXT=DYNAMIC_GETTEXT |
| + #GETTEXT_DYNAMIC=gnu_gettext.dll |
| + INTLPATH=$(GETTEXT)/lib/mingw32 |
| + INTLLIB=gnu_gettext |
| + |
| + # If you are using gettext-0.10.35 from http://sourceforge.net/projects/gettext |
| + # or gettext-0.10.37 from http://sourceforge.net/projects/mingwrep/ |
| + # uncomment the following, but I can't build a static version with them, ?-(| |
| + #GETTEXT=c:/gettext-0.10.37-20010430 |
| + #STATIC_GETTEXT=USE_STATIC_GETTEXT |
| + #DYNAMIC_GETTEXT=DYNAMIC_GETTEXT |
| + #INTLPATH=$(GETTEXT)/lib |
| + #INTLLIB=intl |
| + |
| + # Perl interface: |
| + # PERL=[Path to Perl directory] (Set inside Make_cyg.mak or Make_ming.mak) |
| + # DYNAMIC_PERL=yes (to load the Perl DLL dynamically) |
| + # PERL_VER=[Perl version, eg 56, 58, 510] (default is 56) |
| + ifdef PERL |
| + ifndef PERL_VER |
| + PERL_VER=56 |
| + endif |
| + ifndef DYNAMIC_PERL |
| + DYNAMIC_PERL=yes |
| + endif |
| + # on Linux, for cross-compile, it's here: |
| + #PERLLIB=/home/ron/ActivePerl/lib |
| + # on NT, it's here: |
| + PERLEXE=$(PERL)/bin/perl |
| + PERLLIB=$(PERL)/lib |
| + PERLLIBS=$(PERLLIB)/Core |
| + ifeq ($(UNDER_CYGWIN),yes) |
| + PERLTYPEMAP:=$(shell cygpath -m $(PERLLIB)/ExtUtils/typemap) |
| + XSUBPPTRY:=$(shell cygpath -m $(PERLLIB)/ExtUtils/xsubpp) |
| + else |
| + PERLTYPEMAP=$(PERLLIB)/ExtUtils/typemap |
| + XSUBPPTRY=$(PERLLIB)/ExtUtils/xsubpp |
| + endif |
| + XSUBPP_EXISTS=$(shell $(PERLEXE) -e "print 1 unless -e '$(XSUBPPTRY)'") |
| + ifeq "$(XSUBPP_EXISTS)" "" |
| + XSUBPP=$(PERLEXE) "$(XSUBPPTRY)" |
| + else |
| + XSUBPP=xsubpp |
| + endif |
| + endif |
| + |
| + # Lua interface: |
| + # LUA=[Path to Lua directory] (Set inside Make_cyg.mak or Make_ming.mak) |
| + # DYNAMIC_LUA=yes (to load the Lua DLL dynamically) |
| + # LUA_VER=[Lua version, eg 51, 52] (default is 51) |
| + ifdef LUA |
| + ifndef DYNAMIC_LUA |
| + DYNAMIC_LUA=yes |
| + endif |
| + |
| + ifndef LUA_VER |
| + LUA_VER=51 |
| + endif |
| + |
| + ifeq (no,$(DYNAMIC_LUA)) |
| + LUA_LIB = -L$(LUA)/lib -llua |
| + endif |
| + |
| + endif |
| + |
| + # MzScheme interface: |
| + # MZSCHEME=[Path to MzScheme directory] (Set inside Make_cyg.mak or Make_ming.mak) |
| + # DYNAMIC_MZSCHEME=yes (to load the MzScheme DLL dynamically) |
| + # MZSCHEME_VER=[MzScheme version] (default is 205_000) |
| + # MZSCHEME_DEBUG=no |
| + ifdef MZSCHEME |
| + ifndef DYNAMIC_MZSCHEME |
| + DYNAMIC_MZSCHEME=yes |
| + endif |
| + |
| + ifndef MZSCHEME_VER |
| + MZSCHEME_VER=205_000 |
| + endif |
| + |
| + ifndef MZSCHEME_PRECISE_GC |
| + MZSCHEME_PRECISE_GC=no |
| + endif |
| + |
| + # for version 4.x we need to generate byte-code for Scheme base |
| + ifndef MZSCHEME_GENERATE_BASE |
| + MZSCHEME_GENERATE_BASE=no |
| + endif |
| + |
| + ifndef MZSCHEME_USE_RACKET |
| + MZSCHEME_MAIN_LIB=mzsch |
| + else |
| + MZSCHEME_MAIN_LIB=racket |
| + endif |
| + |
| + ifeq (no,$(DYNAMIC_MZSCHEME)) |
| + ifeq (yes,$(MZSCHEME_PRECISE_GC)) |
| + MZSCHEME_LIB=-l$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER) |
| + else |
| + MZSCHEME_LIB = -l$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER) -lmzgc$(MZSCHEME_VER) |
| + endif |
| + # the modern MinGW can dynamically link to dlls directly. |
| + # point MZSCHEME_DLLS to where you put libmzschXXXXXXX.dll and libgcXXXXXXX.dll |
| + ifndef MZSCHEME_DLLS |
| + MZSCHEME_DLLS=$(MZSCHEME) |
| + endif |
| + MZSCHEME_LIBDIR=-L$(MZSCHEME_DLLS) -L$(MZSCHEME_DLLS)\lib |
| + endif |
| + |
| + endif |
| + |
| + # Python interface: |
| + # PYTHON=[Path to Python directory] (Set inside Make_cyg.mak or Make_ming.mak) |
| + # DYNAMIC_PYTHON=yes (to load the Python DLL dynamically) |
| + # PYTHON_VER=[Python version, eg 22, 23, ..., 27] (default is 22) |
| + ifdef PYTHON |
| + ifndef DYNAMIC_PYTHON |
| + DYNAMIC_PYTHON=yes |
| + endif |
| + |
| + ifndef PYTHON_VER |
| + PYTHON_VER=22 |
| + endif |
| + |
| + ifeq (no,$(DYNAMIC_PYTHON)) |
| + PYTHONLIB=-L$(PYTHON)/libs -lpython$(PYTHON_VER) |
| + endif |
| + # my include files are in 'win32inc' on Linux, and 'include' in the standard |
| + # NT distro (ActiveState) |
| + ifeq ($(CROSS),no) |
| + PYTHONINC=-I $(PYTHON)/include |
| + else |
| + PYTHONINC=-I $(PYTHON)/win32inc |
| + endif |
| + endif |
| + |
| + # Python3 interface: |
| + # PYTHON3=[Path to Python3 directory] (Set inside Make_cyg.mak or Make_ming.mak) |
| + # DYNAMIC_PYTHON3=yes (to load the Python3 DLL dynamically) |
| + # PYTHON3_VER=[Python3 version, eg 31, 32] (default is 31) |
| + ifdef PYTHON3 |
| + ifndef DYNAMIC_PYTHON3 |
| + DYNAMIC_PYTHON3=yes |
| + endif |
| + |
| + ifndef PYTHON3_VER |
| + PYTHON3_VER=31 |
| + endif |
| + |
| + ifeq (no,$(DYNAMIC_PYTHON3)) |
| + PYTHON3LIB=-L$(PYTHON3)/libs -lPYTHON$(PYTHON3_VER) |
| + endif |
| + |
| + ifeq ($(CROSS),no) |
| + PYTHON3INC=-I $(PYTHON3)/include |
| + else |
| + PYTHON3INC=-I $(PYTHON3)/win32inc |
| + endif |
| + endif |
| + |
| + # TCL interface: |
| + # TCL=[Path to TCL directory] (Set inside Make_cyg.mak or Make_ming.mak) |
| + # DYNAMIC_TCL=yes (to load the TCL DLL dynamically) |
| + # TCL_VER=[TCL version, eg 83, 84] (default is 83) |
| + ifdef TCL |
| + ifndef DYNAMIC_TCL |
| + DYNAMIC_TCL=yes |
| + endif |
| + ifndef TCL_VER |
| + TCL_VER = 83 |
| + endif |
| + TCLINC += -I$(TCL)/include |
| + endif |
| + |
| + |
| + # Ruby interface: |
| + # RUBY=[Path to Ruby directory] (Set inside Make_cyg.mak or Make_ming.mak) |
| + # DYNAMIC_RUBY=yes (to load the Ruby DLL dynamically) |
| + # RUBY_VER=[Ruby version, eg 18, 19, 20] (default is 18) |
| + # RUBY_VER_LONG=[Ruby version, eg 1.8, 1.9.1, 2.0.0] (default is 1.8) |
| + # You must set RUBY_VER_LONG when changing RUBY_VER. |
| + # RUBY_API_VER is derived from RUBY_VER_LONG. |
| + # Note: If you use Ruby 1.9.3, set as follows: |
| + # RUBY_VER=19 |
| + # RUBY_VER_LONG=1.9.1 (not 1.9.3, because the API version is 1.9.1.) |
| + ifdef RUBY |
| + ifndef DYNAMIC_RUBY |
| + DYNAMIC_RUBY=yes |
| + endif |
| + # Set default value |
| + ifndef RUBY_VER |
| + RUBY_VER = 18 |
| + endif |
| + ifndef RUBY_VER_LONG |
| + RUBY_VER_LONG = 1.8 |
| + endif |
| + ifndef RUBY_API_VER |
| + RUBY_API_VER = $(subst .,,$(RUBY_VER_LONG)) |
| + endif |
| + |
| + ifndef RUBY_PLATFORM |
| + ifeq ($(RUBY_VER), 16) |
| + RUBY_PLATFORM = i586-mswin32 |
| + else |
| + ifneq ($(wildcard $(RUBY)/lib/ruby/$(RUBY_VER_LONG)/i386-mingw32),) |
| + RUBY_PLATFORM = i386-mingw32 |
| + else |
| + ifneq ($(wildcard $(RUBY)/lib/ruby/$(RUBY_VER_LONG)/x64-mingw32),) |
| + RUBY_PLATFORM = x64-mingw32 |
| + else |
| + RUBY_PLATFORM = i386-mswin32 |
| + endif |
| + endif |
| + endif |
| + endif |
| + |
| + ifndef RUBY_INSTALL_NAME |
| + ifeq ($(RUBY_VER), 16) |
| + RUBY_INSTALL_NAME = mswin32-ruby$(RUBY_API_VER) |
| + else |
| + ifeq ($(ARCH),x86-64) |
| + RUBY_INSTALL_NAME = x64-msvcrt-ruby$(RUBY_API_VER) |
| + else |
| + RUBY_INSTALL_NAME = msvcrt-ruby$(RUBY_API_VER) |
| + endif |
| + endif |
| + endif |
| + |
| + ifeq (19, $(word 1,$(sort 19 $(RUBY_VER)))) |
| + RUBY_19_OR_LATER = 1 |
| + endif |
| + |
| + RUBYINC = -I $(RUBY)/lib/ruby/$(RUBY_VER_LONG)/$(RUBY_PLATFORM) |
| + ifdef RUBY_19_OR_LATER |
| + RUBYINC += -I $(RUBY)/include/ruby-$(RUBY_VER_LONG) -I $(RUBY)/include/ruby-$(RUBY_VER_LONG)/$(RUBY_PLATFORM) |
| + endif |
| + ifeq (no, $(DYNAMIC_RUBY)) |
| + RUBYLIB = -L$(RUBY)/lib -l$(RUBY_INSTALL_NAME) |
| + endif |
| + |
| + endif # RUBY |
| + |
| + # See feature.h for a list of options. |
| + # Any other defines can be included here. |
| + DEF_GUI=-DFEAT_GUI_W32 -DFEAT_CLIPBOARD |
| + DEFINES=-DWIN32 -DWINVER=$(WINVER) -D_WIN32_WINNT=$(WINVER) \ |
| + -DHAVE_PATHDEF -DFEAT_$(FEATURES) |
| + ifeq ($(ARCH),x86-64) |
| + DEFINES+=-DMS_WIN64 |
| + endif |
| + ifeq ($(CROSS),yes) |
| + # cross-compiler prefix: |
| + ifndef CROSS_COMPILE |
| + CROSS_COMPILE = i586-pc-mingw32msvc- |
| + endif |
| + DEL = rm |
| + MKDIR = mkdir -p |
| + DIRSLASH = / |
| + else |
| + # normal (Windows) compilation: |
| + ifndef CROSS_COMPILE |
| + CROSS_COMPILE = |
| + endif |
| + ifneq (sh.exe, $(SHELL)) |
| + DEL = rm |
| + MKDIR = mkdir -p |
| + DIRSLASH = / |
| + else |
| + DEL = del |
| + MKDIR = mkdir |
| + DIRSLASH = \\ |
| + endif |
| + endif |
| + CC := $(CROSS_COMPILE)gcc |
| + CXX := $(CROSS_COMPILE)g++ |
| + WINDRES := $(CROSS_COMPILE)windres |
| + WINDRES_CC = $(CC) |
| + |
| + #>>>>> end of choices |
| + ########################################################################### |
| + |
| + CFLAGS = -Iproto $(DEFINES) -pipe -w -march=$(ARCH) -Wall |
| + WINDRES_FLAGS = --preprocessor="$(WINDRES_CC) -E -xc" -DRC_INVOKED |
| + EXTRA_LIBS = |
| + |
| + ifdef GETTEXT |
| + DEFINES += -DHAVE_GETTEXT -DHAVE_LOCALE_H |
| + GETTEXTINCLUDE = $(GETTEXT)/include |
| + GETTEXTLIB = $(INTLPATH) |
| + ifeq (yes, $(GETTEXT)) |
| + DEFINES += -DDYNAMIC_GETTEXT |
| + else |
| + ifdef DYNAMIC_GETTEXT |
| + DEFINES += -D$(DYNAMIC_GETTEXT) |
| + ifdef GETTEXT_DYNAMIC |
| + DEFINES += -DGETTEXT_DYNAMIC -DGETTEXT_DLL=\"$(GETTEXT_DYNAMIC)\" |
| + endif |
| + endif |
| + endif |
| + endif |
| + |
| + ifdef PERL |
| + CFLAGS += -I$(PERLLIBS) -DFEAT_PERL |
| + ifeq (yes, $(DYNAMIC_PERL)) |
| + CFLAGS += -DDYNAMIC_PERL -DDYNAMIC_PERL_DLL=\"perl$(PERL_VER).dll\" |
| + EXTRA_LIBS += -L$(PERLLIBS) -lperl$(PERL_VER) |
| + endif |
| + endif |
| + |
| + ifdef LUA |
| + CFLAGS += -I$(LUA)/include -I$(LUA) -DFEAT_LUA |
| + ifeq (yes, $(DYNAMIC_LUA)) |
| + CFLAGS += -DDYNAMIC_LUA -DDYNAMIC_LUA_DLL=\"lua$(LUA_VER).dll\" |
| + endif |
| + endif |
| + |
| + ifdef MZSCHEME |
| + CFLAGS += -I$(MZSCHEME)/include -DFEAT_MZSCHEME -DMZSCHEME_COLLECTS=\"$(MZSCHEME)/collects\" |
| + ifeq (yes, $(DYNAMIC_MZSCHEME)) |
| + CFLAGS += -DDYNAMIC_MZSCHEME -DDYNAMIC_MZSCH_DLL=\"lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).dll\" -DDYNAMIC_MZGC_DLL=\"libmzgc$(MZSCHEME_VER).dll\" |
| + endif |
| + ifeq (yes, "$(MZSCHEME_DEBUG)") |
| + CFLAGS += -DMZSCHEME_FORCE_GC |
| + endif |
| + endif |
| + |
| + ifdef RUBY |
| + CFLAGS += -DFEAT_RUBY $(RUBYINC) |
| + ifeq (yes, $(DYNAMIC_RUBY)) |
| + CFLAGS += -DDYNAMIC_RUBY -DDYNAMIC_RUBY_DLL=\"$(RUBY_INSTALL_NAME).dll\" |
| + CFLAGS += -DDYNAMIC_RUBY_VER=$(RUBY_VER) |
| + endif |
| + ifneq ($(findstring w64-mingw32,$(CC)),) |
| + # A workaround for MinGW-w64 |
| + CFLAGS += -DHAVE_STRUCT_TIMESPEC -DHAVE_STRUCT_TIMEZONE |
| + endif |
| + endif |
| + |
| + ifdef PYTHON |
| + CFLAGS += -DFEAT_PYTHON |
| + ifeq (yes, $(DYNAMIC_PYTHON)) |
| + CFLAGS += -DDYNAMIC_PYTHON |
| + endif |
| + endif |
| + |
| + ifdef PYTHON3 |
| + CFLAGS += -DFEAT_PYTHON3 |
| + ifeq (yes, $(DYNAMIC_PYTHON3)) |
| + CFLAGS += -DDYNAMIC_PYTHON3 |
| + endif |
| + endif |
| + |
| + ifdef TCL |
| + CFLAGS += -DFEAT_TCL $(TCLINC) |
| + ifeq (yes, $(DYNAMIC_TCL)) |
| + CFLAGS += -DDYNAMIC_TCL -DDYNAMIC_TCL_DLL=\"tcl$(TCL_VER).dll\" |
| + endif |
| + endif |
| + |
| + ifeq ($(POSTSCRIPT),yes) |
| + DEFINES += -DMSWINPS |
| + endif |
| + |
| + ifeq (yes, $(OLE)) |
| + DEFINES += -DFEAT_OLE |
| + endif |
| + |
| + ifeq ($(CSCOPE),yes) |
| + DEFINES += -DFEAT_CSCOPE |
| + endif |
| + |
| + ifeq ($(NETBEANS),yes) |
| + # Only allow NETBEANS for a GUI build. |
| + ifeq (yes, $(GUI)) |
| + DEFINES += -DFEAT_NETBEANS_INTG |
| + |
| + ifeq ($(NBDEBUG), yes) |
| + DEFINES += -DNBDEBUG |
| + NBDEBUG_INCL = nbdebug.h |
| + NBDEBUG_SRC = nbdebug.c |
| + endif |
| + endif |
| + endif |
| + |
| + # DirectWrite (DirectX) |
| + ifeq ($(DIRECTX),yes) |
| + # Only allow DirectWrite for a GUI build. |
| + ifeq (yes, $(GUI)) |
| + DEFINES += -DFEAT_DIRECTX -DDYNAMIC_DIRECTX |
| + endif |
| + endif |
| + |
| + # Only allow XPM for a GUI build. |
| + ifeq (yes, $(GUI)) |
| + |
| + ifndef XPM |
| + ifeq ($(ARCH),i386) |
| + XPM = xpm/x86 |
| + endif |
| + ifeq ($(ARCH),i486) |
| + XPM = xpm/x86 |
| + endif |
| + ifeq ($(ARCH),i586) |
| + XPM = xpm/x86 |
| + endif |
| + ifeq ($(ARCH),i686) |
| + XPM = xpm/x86 |
| + endif |
| + ifeq ($(ARCH),x86-64) |
| + XPM = xpm/x64 |
| + endif |
| + endif |
| + ifdef XPM |
| + ifneq ($(XPM),no) |
| + CFLAGS += -DFEAT_XPM_W32 -I $(XPM)/include -I $(XPM)/../include |
| + endif |
| + endif |
| + |
| + endif |
| + |
| + ifeq ($(DEBUG),yes) |
| + CFLAGS += -g -fstack-check |
| + DEBUG_SUFFIX=d |
| + else |
| + ifeq ($(OPTIMIZE), SIZE) |
| + CFLAGS += -Os |
| + else |
| + ifeq ($(OPTIMIZE), MAXSPEED) |
| + CFLAGS += -O3 |
| + CFLAGS += -fomit-frame-pointer -freg-struct-return |
| + else # SPEED |
| + CFLAGS += -O2 |
| + endif |
| + endif |
| + CFLAGS += -s |
| + endif |
| + |
| + LIB = -lkernel32 -luser32 -lgdi32 -ladvapi32 -lcomdlg32 -lcomctl32 -lversion |
| + GUIOBJ = $(OUTDIR)/gui.o $(OUTDIR)/gui_w32.o $(OUTDIR)/gui_beval.o $(OUTDIR)/os_w32exe.o |
| + OBJ = \ |
| + $(OUTDIR)/blowfish.o \ |
| + $(OUTDIR)/buffer.o \ |
| + $(OUTDIR)/charset.o \ |
| + $(OUTDIR)/crypt.o \ |
| + $(OUTDIR)/crypt_zip.o \ |
| + $(OUTDIR)/diff.o \ |
| + $(OUTDIR)/digraph.o \ |
| + $(OUTDIR)/edit.o \ |
| + $(OUTDIR)/eval.o \ |
| + $(OUTDIR)/ex_cmds.o \ |
| + $(OUTDIR)/ex_cmds2.o \ |
| + $(OUTDIR)/ex_docmd.o \ |
| + $(OUTDIR)/ex_eval.o \ |
| + $(OUTDIR)/ex_getln.o \ |
| + $(OUTDIR)/fileio.o \ |
| + $(OUTDIR)/fold.o \ |
| + $(OUTDIR)/getchar.o \ |
| + $(OUTDIR)/hardcopy.o \ |
| + $(OUTDIR)/hashtab.o \ |
| + $(OUTDIR)/main.o \ |
| + $(OUTDIR)/mark.o \ |
| + $(OUTDIR)/memfile.o \ |
| + $(OUTDIR)/memline.o \ |
| + $(OUTDIR)/menu.o \ |
| + $(OUTDIR)/message.o \ |
| + $(OUTDIR)/misc1.o \ |
| + $(OUTDIR)/misc2.o \ |
| + $(OUTDIR)/move.o \ |
| + $(OUTDIR)/mbyte.o \ |
| + $(OUTDIR)/normal.o \ |
| + $(OUTDIR)/ops.o \ |
| + $(OUTDIR)/option.o \ |
| + $(OUTDIR)/os_win32.o \ |
| + $(OUTDIR)/os_mswin.o \ |
| + $(OUTDIR)/winclip.o \ |
| + $(OUTDIR)/pathdef.o \ |
| + $(OUTDIR)/popupmnu.o \ |
| + $(OUTDIR)/quickfix.o \ |
| + $(OUTDIR)/regexp.o \ |
| + $(OUTDIR)/screen.o \ |
| + $(OUTDIR)/search.o \ |
| + $(OUTDIR)/sha256.o \ |
| + $(OUTDIR)/spell.o \ |
| + $(OUTDIR)/syntax.o \ |
| + $(OUTDIR)/tag.o \ |
| + $(OUTDIR)/term.o \ |
| + $(OUTDIR)/ui.o \ |
| + $(OUTDIR)/undo.o \ |
| + $(OUTDIR)/version.o \ |
| + $(OUTDIR)/vimrc.o \ |
| + $(OUTDIR)/window.o |
| + |
| + ifdef PERL |
| + OBJ += $(OUTDIR)/if_perl.o |
| + endif |
| + ifdef LUA |
| + OBJ += $(OUTDIR)/if_lua.o |
| + endif |
| + ifdef MZSCHEME |
| + OBJ += $(OUTDIR)/if_mzsch.o |
| + MZSCHEME_INCL = if_mzsch.h |
| + ifeq (yes,$(MZSCHEME_GENERATE_BASE)) |
| + CFLAGS += -DINCLUDE_MZSCHEME_BASE |
| + MZ_EXTRA_DEP += mzscheme_base.c |
| + endif |
| + ifeq (yes,$(MZSCHEME_PRECISE_GC)) |
| + CFLAGS += -DMZ_PRECISE_GC |
| + endif |
| + endif |
| + ifdef PYTHON |
| + OBJ += $(OUTDIR)/if_python.o |
| + endif |
| + ifdef PYTHON3 |
| + OBJ += $(OUTDIR)/if_python3.o |
| + endif |
| + ifdef RUBY |
| + OBJ += $(OUTDIR)/if_ruby.o |
| + endif |
| + ifdef TCL |
| + OBJ += $(OUTDIR)/if_tcl.o |
| + endif |
| + ifeq ($(CSCOPE),yes) |
| + OBJ += $(OUTDIR)/if_cscope.o |
| + endif |
| + ifeq ($(NETBEANS),yes) |
| + # Only allow NETBEANS for a GUI build. |
| + ifeq (yes, $(GUI)) |
| + OBJ += $(OUTDIR)/netbeans.o |
| + LIB += -lwsock32 |
| + endif |
| + endif |
| + ifeq ($(DIRECTX),yes) |
| + # Only allow DIRECTX for a GUI build. |
| + ifeq (yes, $(GUI)) |
| + OBJ += $(OUTDIR)/gui_dwrite.o |
| + LIB += -ld2d1 -ldwrite |
| + USE_STDCPLUS = yes |
| + endif |
| + endif |
| + ifneq ($(XPM),no) |
| + # Only allow XPM for a GUI build. |
| + ifeq (yes, $(GUI)) |
| + OBJ += $(OUTDIR)/xpm_w32.o |
| + # You'll need libXpm.a from http://gnuwin32.sf.net |
| + LIB += -L$(XPM)/lib -lXpm |
| + endif |
| + endif |
| + |
| + |
| + ifdef MZSCHEME |
| + MZSCHEME_SUFFIX = Z |
| + endif |
| + |
| + ifeq ($(GUI),yes) |
| + TARGET := gvim$(DEBUG_SUFFIX).exe |
| + DEFINES += $(DEF_GUI) |
| + OBJ += $(GUIOBJ) |
| + LFLAGS += -mwindows |
| + OUTDIR = gobj$(DEBUG_SUFFIX)$(MZSCHEME_SUFFIX)$(ARCH) |
| + else |
| + TARGET := vim$(DEBUG_SUFFIX).exe |
| + OUTDIR = obj$(DEBUG_SUFFIX)$(MZSCHEME_SUFFIX)$(ARCH) |
| + endif |
| + |
| + ifdef GETTEXT |
| + ifneq (yes, $(GETTEXT)) |
| + CFLAGS += -I$(GETTEXTINCLUDE) |
| + ifndef STATIC_GETTEXT |
| + LIB += -L$(GETTEXTLIB) -l$(INTLLIB) |
| + ifeq (USE_SAFE_GETTEXT_DLL, $(DYNAMIC_GETTEXT)) |
| + OBJ+=$(SAFE_GETTEXT_DLL_OBJ) |
| + endif |
| + else |
| + LIB += -L$(GETTEXTLIB) -lintl |
| + endif |
| + endif |
| + endif |
| + |
| + ifdef PERL |
| + ifeq (no, $(DYNAMIC_PERL)) |
| + LIB += -L$(PERLLIBS) -lperl$(PERL_VER) |
| + endif |
| + endif |
| + |
| + ifdef TCL |
| + LIB += -L$(TCL)/lib |
| + ifeq (yes, $(DYNAMIC_TCL)) |
| + LIB += -ltclstub$(TCL_VER) |
| + else |
| + LIB += -ltcl$(TCL_VER) |
| + endif |
| + endif |
| + |
| + ifeq (yes, $(OLE)) |
| + LIB += -loleaut32 |
| + OBJ += $(OUTDIR)/if_ole.o |
| + USE_STDCPLUS = yes |
| + endif |
| + |
| + ifeq (yes, $(MBYTE)) |
| + DEFINES += -DFEAT_MBYTE |
| + endif |
| + |
| + ifeq (yes, $(IME)) |
| + DEFINES += -DFEAT_MBYTE_IME |
| + ifeq (yes, $(DYNAMIC_IME)) |
| + DEFINES += -DDYNAMIC_IME |
| + else |
| + LIB += -limm32 |
| + endif |
| + endif |
| + |
| + ifdef ICONV |
| + ifneq (yes, $(ICONV)) |
| + LIB += -L$(ICONV) |
| + CFLAGS += -I$(ICONV) |
| + endif |
| + DEFINES+=-DDYNAMIC_ICONV |
| + endif |
| + |
| + ifeq (yes, $(USE_STDCPLUS)) |
| + ifeq (yes, $(STATIC_STDCPLUS)) |
| + LIB += -Wl,-Bstatic -lstdc++ -Wl,-Bdynamic |
| + else |
| + LIB += -lstdc++ |
| + endif |
| + endif |
| + |
| + all: $(TARGET) vimrun.exe xxd/xxd.exe install.exe uninstal.exe GvimExt/gvimext.dll |
| + |
| + vimrun.exe: vimrun.c |
| + $(CC) $(CFLAGS) -o vimrun.exe vimrun.c $(LIB) |
| + |
| + install.exe: dosinst.c |
| + $(CC) $(CFLAGS) -o install.exe dosinst.c $(LIB) -lole32 -luuid |
| + |
| + uninstal.exe: uninstal.c |
| + $(CC) $(CFLAGS) -o uninstal.exe uninstal.c $(LIB) |
| + |
| + $(TARGET): $(OUTDIR) $(OBJ) |
| + $(CC) $(CFLAGS) $(LFLAGS) -o $@ $(OBJ) $(LIB) -lole32 -luuid $(LUA_LIB) $(MZSCHEME_LIBDIR) $(MZSCHEME_LIB) $(PYTHONLIB) $(PYTHON3LIB) $(RUBYLIB) |
| + |
| + upx: exes |
| + upx gvim.exe |
| + upx vim.exe |
| + |
| + mpress: exes |
| + mpress gvim.exe |
| + mpress vim.exe |
| + |
| + xxd/xxd.exe: xxd/xxd.c |
| + $(MAKE) -C xxd -f Make_ming.mak CC='$(CC)' |
| + |
| + GvimExt/gvimext.dll: GvimExt/gvimext.cpp GvimExt/gvimext.rc GvimExt/gvimext.h |
| + $(MAKE) -C GvimExt -f Make_ming.mak CROSS=$(CROSS) CROSS_COMPILE=$(CROSS_COMPILE) CXX='$(CXX)' STATIC_STDCPLUS=$(STATIC_STDCPLUS) |
| + |
| + clean: |
| + -$(DEL) $(OUTDIR)$(DIRSLASH)*.o |
| + -$(DEL) $(OUTDIR)$(DIRSLASH)*.res |
| + -rmdir $(OUTDIR) |
| + -$(DEL) *.exe |
| + -$(DEL) pathdef.c |
| + ifdef PERL |
| + -$(DEL) if_perl.c |
| + endif |
| + ifdef MZSCHEME |
| + -$(DEL) mzscheme_base.c |
| + endif |
| + $(MAKE) -C GvimExt -f Make_ming.mak clean |
| + $(MAKE) -C xxd -f Make_ming.mak clean |
| + |
| + ########################################################################### |
| + INCL = vim.h feature.h os_win32.h os_dos.h ascii.h keymap.h term.h macros.h \ |
| + structs.h regexp.h option.h ex_cmds.h proto.h globals.h farsi.h \ |
| + gui.h |
| + |
| + $(OUTDIR)/if_python.o : if_python.c if_py_both.h $(INCL) |
| + $(CC) -c $(CFLAGS) $(PYTHONINC) -DDYNAMIC_PYTHON_DLL=\"python$(PYTHON_VER).dll\" $< -o $@ |
| + |
| + $(OUTDIR)/if_python3.o : if_python3.c if_py_both.h $(INCL) |
| + $(CC) -c $(CFLAGS) $(PYTHON3INC) -DDYNAMIC_PYTHON3_DLL=\"PYTHON$(PYTHON3_VER).dll\" $< -o $@ |
| + |
| + $(OUTDIR)/%.o : %.c $(INCL) |
| + $(CC) -c $(CFLAGS) $< -o $@ |
| + |
| + $(OUTDIR)/vimrc.o: vim.rc version.h gui_w32_rc.h |
| + $(WINDRES) $(WINDRES_FLAGS) $(DEFINES) \ |
| + --input-format=rc --output-format=coff -i vim.rc -o $@ |
| + |
| + $(OUTDIR): |
| + $(MKDIR) $(OUTDIR) |
| + |
| + $(OUTDIR)/ex_docmd.o: ex_docmd.c $(INCL) ex_cmds.h |
| + $(CC) -c $(CFLAGS) ex_docmd.c -o $(OUTDIR)/ex_docmd.o |
| + |
| + $(OUTDIR)/ex_eval.o: ex_eval.c $(INCL) ex_cmds.h |
| + $(CC) -c $(CFLAGS) ex_eval.c -o $(OUTDIR)/ex_eval.o |
| + |
| + $(OUTDIR)/gui_w32.o: gui_w32.c gui_w48.c $(INCL) |
| + $(CC) -c $(CFLAGS) gui_w32.c -o $(OUTDIR)/gui_w32.o |
| + |
| + $(OUTDIR)/gui_dwrite.o: gui_dwrite.cpp $(INCL) gui_dwrite.h |
| + $(CC) -c $(CFLAGS) gui_dwrite.cpp -o $(OUTDIR)/gui_dwrite.o |
| + |
| + $(OUTDIR)/if_cscope.o: if_cscope.c $(INCL) if_cscope.h |
| + $(CC) -c $(CFLAGS) if_cscope.c -o $(OUTDIR)/if_cscope.o |
| + |
| + # Remove -D__IID_DEFINED__ for newer versions of the w32api |
| + $(OUTDIR)/if_ole.o: if_ole.cpp $(INCL) |
| + $(CC) $(CFLAGS) -c -o $(OUTDIR)/if_ole.o if_ole.cpp |
| + |
| + $(OUTDIR)/if_ruby.o: if_ruby.c $(INCL) |
| + ifeq (16, $(RUBY)) |
| + $(CC) $(CFLAGS) -U_WIN32 -c -o $(OUTDIR)/if_ruby.o if_ruby.c |
| + endif |
| + |
| + if_perl.c: if_perl.xs typemap |
| + $(XSUBPP) -prototypes -typemap \ |
| + "$(PERLTYPEMAP)" if_perl.xs > $@ |
| + |
| + $(OUTDIR)/netbeans.o: netbeans.c $(INCL) $(NBDEBUG_INCL) $(NBDEBUG_SRC) |
| + $(CC) -c $(CFLAGS) netbeans.c -o $(OUTDIR)/netbeans.o |
| + |
| + $(OUTDIR)/regexp.o: regexp.c regexp_nfa.c $(INCL) |
| + $(CC) -c $(CFLAGS) regexp.c -o $(OUTDIR)/regexp.o |
| + |
| + $(OUTDIR)/if_mzsch.o: if_mzsch.c $(INCL) if_mzsch.h $(MZ_EXTRA_DEP) |
| + $(CC) -c $(CFLAGS) if_mzsch.c -o $(OUTDIR)/if_mzsch.o |
| + |
| + mzscheme_base.c: |
| + $(MZSCHEME)/mzc --c-mods mzscheme_base.c ++lib scheme/base |
| + |
| + pathdef.c: $(INCL) |
| + ifneq (sh.exe, $(SHELL)) |
| + @echo creating pathdef.c |
| + @echo '/* pathdef.c */' > pathdef.c |
| + @echo '#include "vim.h"' >> pathdef.c |
| + @echo 'char_u *default_vim_dir = (char_u *)"$(VIMRCLOC)";' >> pathdef.c |
| + @echo 'char_u *default_vimruntime_dir = (char_u *)"$(VIMRUNTIMEDIR)";' >> pathdef.c |
| + @echo 'char_u *all_cflags = (char_u *)"$(CC) $(CFLAGS)";' >> pathdef.c |
| + @echo 'char_u *all_lflags = (char_u *)"$(CC) $(CFLAGS) $(LFLAGS) -o $(TARGET) $(LIB) -lole32 -luuid $(LUA_LIB) $(MZSCHEME_LIBDIR) $(MZSCHEME_LIB) $(PYTHONLIB) $(PYTHON3LIB) $(RUBYLIB)";' >> pathdef.c |
| + @echo 'char_u *compiled_user = (char_u *)"$(USERNAME)";' >> pathdef.c |
| + @echo 'char_u *compiled_sys = (char_u *)"$(USERDOMAIN)";' >> pathdef.c |
| + else |
| + @echo creating pathdef.c |
| + @echo /* pathdef.c */ > pathdef.c |
| + @echo #include "vim.h" >> pathdef.c |
| + @echo char_u *default_vim_dir = (char_u *)"$(VIMRCLOC)"; >> pathdef.c |
| + @echo char_u *default_vimruntime_dir = (char_u *)"$(VIMRUNTIMEDIR)"; >> pathdef.c |
| + @echo char_u *all_cflags = (char_u *)"$(CC) $(CFLAGS)"; >> pathdef.c |
| + @echo char_u *all_lflags = (char_u *)"$(CC) $(CFLAGS) $(LFLAGS) -o $(TARGET) $(LIB) -lole32 -luuid $(LUA_LIB) $(MZSCHEME_LIBDIR) $(MZSCHEME_LIB) $(PYTHONLIB) $(PYTHON3LIB) $(RUBYLIB)"; >> pathdef.c |
| + @echo char_u *compiled_user = (char_u *)"$(USERNAME)"; >> pathdef.c |
| + @echo char_u *compiled_sys = (char_u *)"$(USERDOMAIN)"; >> pathdef.c |
| + endif |
| |
| |
| |
| *** 1,193 **** |
| - # Makefile for VIM on Win32 |
| # |
| ! # Info at http://www.mingw.org |
| ! # Alternative x86 and 64-builds: http://mingw-w64.sourceforge.net |
| ! # Also requires GNU make, which you can download from the same sites. |
| ! # Get missing libraries from http://gnuwin32.sf.net. |
| # |
| ! # Tested on Win32 NT 4 and Win95. |
| # |
| ! # To make everything, just 'make -f Make_ming.mak'. |
| ! # To make just e.g. gvim.exe, 'make -f Make_ming.mak gvim.exe'. |
| ! # After a run, you can 'make -f Make_ming.mak clean' to clean up. |
| # |
| ! # NOTE: Sometimes 'GNU Make' will stop after building vimrun.exe -- I think |
| ! # it's just run out of memory or something. Run again, and it will continue |
| ! # with 'xxd'. |
| ! # |
| ! # "make upx" makes *compressed* versions of the 32 bit GUI and console EXEs, |
| ! # using the excellent UPX compressor: |
| ! # http://upx.sourceforge.net/ |
| ! # "make mpress" uses the MPRESS compressor for 32- and 64-bit EXEs: |
| ! # http://www.matcode.com/mpress.htm |
| ! # |
| ! # Maintained by Ron Aaron <ronaharon@yahoo.com> et al. |
| ! # Updated 2014 Oct 13. |
| ! |
| ! #>>>>> choose options: |
| ! # set to yes for a debug build |
| ! DEBUG=no |
| ! # set to SIZE for size, SPEED for speed, MAXSPEED for maximum optimization |
| ! OPTIMIZE=MAXSPEED |
| ! # set to yes to make gvim, no for vim |
| ! GUI=yes |
| ! # set to yes if you want to use DirectWrite (DirectX) |
| ! DIRECTX=no |
| ! # FEATURES=[TINY | SMALL | NORMAL | BIG | HUGE] |
| ! # Set to TINY to make minimal version (few features). |
| ! FEATURES=BIG |
| ! # Set to one of i386, i486, i586, i686 as the minimum target processor. |
| ! # For amd64/x64 architecture set ARCH=x86-64 . |
| ! ARCH=i386 |
| ! # Set to yes to cross-compile from unix; no=native Windows. |
| ! CROSS=no |
| ! # Set to path to iconv.h and libiconv.a to enable using 'iconv.dll'. |
| ! #ICONV="." |
| ! ICONV=yes |
| ! GETTEXT=yes |
| ! # Set to yes to include multibyte support. |
| ! MBYTE=yes |
| ! # Set to yes to include IME support. |
| ! IME=yes |
| ! DYNAMIC_IME=yes |
| ! # Set to yes to enable writing a postscript file with :hardcopy. |
| ! POSTSCRIPT=no |
| ! # Set to yes to enable OLE support. |
| ! OLE=no |
| ! # Set the default $(WINVER) to make it work with pre-Win2k. |
| ! ifndef WINVER |
| ! WINVER = 0x0500 |
| ! endif |
| ! # Set to yes to enable Cscope support. |
| ! CSCOPE=yes |
| ! # Set to yes to enable Netbeans support. |
| ! NETBEANS=$(GUI) |
| ! |
| ! |
| ! # Link against the shared version of libstdc++ by default. Set |
| ! # STATIC_STDCPLUS to "yes" to link against static version instead. |
| ! ifndef STATIC_STDCPLUS |
| ! STATIC_STDCPLUS=no |
| ! endif |
| ! |
| ! # If the user doesn't want gettext, undefine it. |
| ! ifeq (no, $(GETTEXT)) |
| ! GETTEXT= |
| ! endif |
| ! # Added by E.F. Amatria <eferna1@platea.ptic.mec.es> 2001 Feb 23 |
| ! # Uncomment the first line and one of the following three if you want Native Language |
| ! # Support. You'll need gnu_gettext.win32, a MINGW32 Windows PORT of gettext by |
| ! # Franco Bez <franco.bez@gmx.de>. It may be found at |
| ! # http://home.a-city.de/franco.bez/gettext/gettext_win32_en.html |
| ! # Tested with mingw32 with GCC-2.95.2 on Win98 |
| ! # Updated 2001 Jun 9 |
| ! #GETTEXT=c:/gettext.win32.msvcrt |
| ! #STATIC_GETTEXT=USE_STATIC_GETTEXT |
| ! #DYNAMIC_GETTEXT=USE_GETTEXT_DLL |
| ! #DYNAMIC_GETTEXT=USE_SAFE_GETTEXT_DLL |
| ! SAFE_GETTEXT_DLL_OBJ = $(GETTEXT)/src/safe_gettext_dll/safe_gettext_dll.o |
| ! # Alternatively, if you uncomment the two following lines, you get a "safe" version |
| ! # without linking the safe_gettext_dll.o object file. |
| ! #DYNAMIC_GETTEXT=DYNAMIC_GETTEXT |
| ! #GETTEXT_DYNAMIC=gnu_gettext.dll |
| ! INTLPATH=$(GETTEXT)/lib/mingw32 |
| ! INTLLIB=gnu_gettext |
| |
| - # If you are using gettext-0.10.35 from http://sourceforge.net/projects/gettext |
| - # or gettext-0.10.37 from http://sourceforge.net/projects/mingwrep/ |
| - # uncomment the following, but I can't build a static version with them, ?-(| |
| - #GETTEXT=c:/gettext-0.10.37-20010430 |
| - #STATIC_GETTEXT=USE_STATIC_GETTEXT |
| - #DYNAMIC_GETTEXT=DYNAMIC_GETTEXT |
| - #INTLPATH=$(GETTEXT)/lib |
| - #INTLLIB=intl |
| |
| # uncomment 'PERL' if you want a perl-enabled version |
| ! #PERL=C:/perl |
| ! ifdef PERL |
| ! ifndef PERL_VER |
| ! PERL_VER=56 |
| ! endif |
| ! ifndef DYNAMIC_PERL |
| ! DYNAMIC_PERL=yes |
| ! endif |
| ! # on Linux, for cross-compile, it's here: |
| ! #PERLLIB=/home/ron/ActivePerl/lib |
| ! # on NT, it's here: |
| ! PERLLIB=$(PERL)/lib |
| ! PERLLIBS=$(PERLLIB)/Core |
| ! XSUBPPTRY=$(PERLLIB)/ExtUtils/xsubpp |
| ! XSUBPP_EXISTS=$(shell perl -e "print 1 unless -e '$(XSUBPPTRY)'") |
| ! ifeq "$(XSUBPP_EXISTS)" "" |
| ! XSUBPP=perl $(XSUBPPTRY) |
| ! else |
| ! XSUBPP=xsubpp |
| ! endif |
| ! endif |
| |
| # uncomment 'LUA' if you want a Lua-enabled version |
| ! #LUA=/usr/local |
| ! ifdef LUA |
| ! ifndef DYNAMIC_LUA |
| ! DYNAMIC_LUA=yes |
| ! endif |
| ! |
| ! ifndef LUA_VER |
| ! LUA_VER=51 |
| ! endif |
| ! |
| ! ifeq (no,$(DYNAMIC_LUA)) |
| ! LUA_LIB = -L$(LUA)/lib -llua |
| ! endif |
| ! |
| ! endif |
| |
| # uncomment 'MZSCHEME' if you want a MzScheme-enabled version |
| #MZSCHEME=d:/plt |
| - ifdef MZSCHEME |
| - ifndef DYNAMIC_MZSCHEME |
| - DYNAMIC_MZSCHEME=yes |
| - endif |
| - |
| - ifndef MZSCHEME_VER |
| - MZSCHEME_VER=205_000 |
| - endif |
| - |
| - ifndef MZSCHEME_PRECISE_GC |
| - MZSCHEME_PRECISE_GC=no |
| - endif |
| - |
| - # for version 4.x we need to generate byte-code for Scheme base |
| - ifndef MZSCHEME_GENERATE_BASE |
| - MZSCHEME_GENERATE_BASE=no |
| - endif |
| |
| ! ifndef MZSCHEME_USE_RACKET |
| ! MZSCHEME_MAIN_LIB=mzsch |
| ! else |
| ! MZSCHEME_MAIN_LIB=racket |
| ! endif |
| ! |
| ! ifeq (no,$(DYNAMIC_MZSCHEME)) |
| ! ifeq (yes,$(MZSCHEME_PRECISE_GC)) |
| ! MZSCHEME_LIB=-l$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER) |
| ! else |
| ! MZSCHEME_LIB = -l$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER) -lmzgc$(MZSCHEME_VER) |
| ! endif |
| ! # the modern MinGW can dynamically link to dlls directly. |
| ! # point MZSCHEME_DLLS to where you put libmzschXXXXXXX.dll and libgcXXXXXXX.dll |
| ! ifndef MZSCHEME_DLLS |
| ! MZSCHEME_DLLS=$(MZSCHEME) |
| ! endif |
| ! MZSCHEME_LIBDIR=-L$(MZSCHEME_DLLS) -L$(MZSCHEME_DLLS)\lib |
| ! endif |
| ! |
| ! endif |
| ! |
| ! # Python support -- works with the ActiveState python 2.0 release (and others |
| ! # too, probably) |
| ! # |
| ! # uncomment 'PYTHON' to make python-enabled version |
| # Put the path to the python distro here. If cross compiling from Linux, you |
| # will also need to convert the header files to unix instead of dos format: |
| # for fil in *.h ; do vim -e -c 'set ff=unix|w|q' $fil |
| --- 1,27 ---- |
| # |
| ! # Makefile for VIM on Win32, using MinGW |
| # |
| ! # Also read INSTALLpc.txt! |
| # |
| ! # The old Make_ming.mak (maintained by Ron Aaron et al.) was merged into |
| ! # Make_cyg_ming.mak. |
| ! # This file contains MinGW specific settings. Common settings are contained |
| ! # in Make_cyg_ming.mak. |
| # |
| ! # Last updated by Ken Takata. |
| ! # Last Change: 2014 Oct 21 |
| |
| |
| # uncomment 'PERL' if you want a perl-enabled version |
| ! #PERL=c:/perl |
| |
| # uncomment 'LUA' if you want a Lua-enabled version |
| ! #LUA=c:/lua |
| |
| # uncomment 'MZSCHEME' if you want a MzScheme-enabled version |
| #MZSCHEME=d:/plt |
| |
| ! # uncomment 'PYTHON' if you want a python-enabled version |
| # Put the path to the python distro here. If cross compiling from Linux, you |
| # will also need to convert the header files to unix instead of dos format: |
| # for fil in *.h ; do vim -e -c 'set ff=unix|w|q' $fil |
| |
| *** 200,830 **** |
| # on my NT box, it's here: |
| #PYTHON=c:/python20 |
| |
| ! ifdef PYTHON |
| ! ifndef DYNAMIC_PYTHON |
| ! DYNAMIC_PYTHON=yes |
| ! endif |
| ! |
| ! ifndef PYTHON_VER |
| ! PYTHON_VER=22 |
| ! endif |
| ! |
| ! ifeq (no,$(DYNAMIC_PYTHON)) |
| ! PYTHONLIB=-L$(PYTHON)/libs -lpython$(PYTHON_VER) |
| ! endif |
| ! # my include files are in 'win32inc' on Linux, and 'include' in the standard |
| ! # NT distro (ActiveState) |
| ! ifeq ($(CROSS),no) |
| ! PYTHONINC=-I $(PYTHON)/include |
| ! else |
| ! PYTHONINC=-I $(PYTHON)/win32inc |
| ! endif |
| ! endif |
| ! |
| ! #PYTHON3: See comment for Python 2 above |
| ! |
| ! ifdef PYTHON3 |
| ! ifndef DYNAMIC_PYTHON3 |
| ! DYNAMIC_PYTHON3=yes |
| ! endif |
| ! |
| ! ifndef PYTHON3_VER |
| ! PYTHON3_VER=31 |
| ! endif |
| ! |
| ! ifeq (no,$(DYNAMIC_PYTHON3)) |
| ! PYTHON3LIB=-L$(PYTHON3)/libs -lPYTHON$(PYTHON3_VER) |
| ! endif |
| ! |
| ! ifeq ($(CROSS),no) |
| ! PYTHON3INC=-I $(PYTHON3)/include |
| ! else |
| ! PYTHON3INC=-I $(PYTHON3)/win32inc |
| ! endif |
| ! endif |
| |
| ! # TCL interface: |
| ! # TCL=[Path to TCL directory] |
| ! # DYNAMIC_TCL=yes (to load the TCL DLL dynamically) |
| ! # TCL_VER=[TCL version, eg 83, 84] (default is 83) |
| #TCL=c:/tcl |
| - ifdef TCL |
| - ifndef DYNAMIC_TCL |
| - DYNAMIC_TCL=yes |
| - endif |
| - ifndef TCL_VER |
| - TCL_VER = 83 |
| - endif |
| - TCLINC += -I$(TCL)/include |
| - endif |
| |
| ! |
| ! # Ruby interface: |
| ! # RUBY=[Path to Ruby directory] |
| ! # DYNAMIC_RUBY=yes (to load the Ruby DLL dynamically) |
| ! # RUBY_VER=[Ruby version, eg 16, 17] (default is 16) |
| ! # RUBY_VER_LONG=[Ruby version, eg 1.6, 1.7] (default is 1.6) |
| ! # You must set RUBY_VER_LONG when changing RUBY_VER. |
| ! # You must set RUBY_API_VER version to RUBY_VER_LONG. |
| ! # Don't set ruby API version to RUBY_VER like 191. |
| #RUBY=c:/ruby |
| - ifdef RUBY |
| - ifndef DYNAMIC_RUBY |
| - DYNAMIC_RUBY=yes |
| - endif |
| - # Set default value |
| - ifndef RUBY_VER |
| - RUBY_VER = 16 |
| - endif |
| - ifndef RUBY_VER_LONG |
| - RUBY_VER_LONG = 1.6 |
| - endif |
| - ifndef RUBY_API_VER |
| - RUBY_API_VER = $(subst .,,$(RUBY_VER_LONG)) |
| - endif |
| - |
| - ifndef RUBY_PLATFORM |
| - ifeq ($(RUBY_VER), 16) |
| - RUBY_PLATFORM = i586-mswin32 |
| - else |
| - ifneq ($(wildcard $(RUBY)/lib/ruby/$(RUBY_VER_LONG)/i386-mingw32),) |
| - RUBY_PLATFORM = i386-mingw32 |
| - else |
| - ifneq ($(wildcard $(RUBY)/lib/ruby/$(RUBY_VER_LONG)/x64-mingw32),) |
| - RUBY_PLATFORM = x64-mingw32 |
| - else |
| - RUBY_PLATFORM = i386-mswin32 |
| - endif |
| - endif |
| - endif |
| - endif |
| - |
| - ifndef RUBY_INSTALL_NAME |
| - ifeq ($(RUBY_VER), 16) |
| - RUBY_INSTALL_NAME = mswin32-ruby$(RUBY_API_VER) |
| - else |
| - ifeq ($(ARCH),x86-64) |
| - RUBY_INSTALL_NAME = x64-msvcrt-ruby$(RUBY_API_VER) |
| - else |
| - RUBY_INSTALL_NAME = msvcrt-ruby$(RUBY_API_VER) |
| - endif |
| - endif |
| - endif |
| - |
| - ifeq (19, $(word 1,$(sort 19 $(RUBY_VER)))) |
| - RUBY_19_OR_LATER = 1 |
| - endif |
| - |
| - RUBYINC = -I $(RUBY)/lib/ruby/$(RUBY_VER_LONG)/$(RUBY_PLATFORM) |
| - ifdef RUBY_19_OR_LATER |
| - RUBYINC += -I $(RUBY)/include/ruby-$(RUBY_VER_LONG) -I $(RUBY)/include/ruby-$(RUBY_VER_LONG)/$(RUBY_PLATFORM) |
| - endif |
| - ifeq (no, $(DYNAMIC_RUBY)) |
| - RUBYLIB = -L$(RUBY)/lib -l$(RUBY_INSTALL_NAME) |
| - endif |
| - |
| - endif # RUBY |
| - |
| - # See feature.h for a list of options. |
| - # Any other defines can be included here. |
| - DEF_GUI=-DFEAT_GUI_W32 -DFEAT_CLIPBOARD |
| - DEFINES=-DWIN32 -DWINVER=$(WINVER) -D_WIN32_WINNT=$(WINVER) \ |
| - -DHAVE_PATHDEF -DFEAT_$(FEATURES) |
| - ifeq ($(ARCH),x86-64) |
| - DEFINES+=-DMS_WIN64 |
| - endif |
| - ifeq ($(CROSS),yes) |
| - # cross-compiler prefix: |
| - CROSS_COMPILE = i586-pc-mingw32msvc- |
| - DEL = rm |
| - MKDIR = mkdir -p |
| - DIRSLASH = / |
| - else |
| - # normal (Windows) compilation: |
| - CROSS_COMPILE = |
| - ifneq (sh.exe, $(SHELL)) |
| - DEL = rm |
| - MKDIR = mkdir -p |
| - DIRSLASH = / |
| - else |
| - DEL = del |
| - MKDIR = mkdir |
| - DIRSLASH = \\ |
| - endif |
| - endif |
| - CC := $(CROSS_COMPILE)gcc |
| - WINDRES := $(CROSS_COMPILE)windres |
| - WINDRES_CC = $(CC) |
| - |
| - #>>>>> end of choices |
| - ########################################################################### |
| - |
| - CFLAGS = -Iproto $(DEFINES) -pipe -w -march=$(ARCH) -Wall |
| - WINDRES_FLAGS = --preprocessor="$(WINDRES_CC) -E -xc" -DRC_INVOKED |
| - EXTRA_LIBS = |
| - |
| - ifdef GETTEXT |
| - DEFINES += -DHAVE_GETTEXT -DHAVE_LOCALE_H |
| - GETTEXTINCLUDE = $(GETTEXT)/include |
| - GETTEXTLIB = $(INTLPATH) |
| - ifeq (yes, $(GETTEXT)) |
| - DEFINES += -DDYNAMIC_GETTEXT |
| - else |
| - ifdef DYNAMIC_GETTEXT |
| - DEFINES += -D$(DYNAMIC_GETTEXT) |
| - ifdef GETTEXT_DYNAMIC |
| - DEFINES += -DGETTEXT_DYNAMIC -DGETTEXT_DLL=\"$(GETTEXT_DYNAMIC)\" |
| - endif |
| - endif |
| - endif |
| - endif |
| - |
| - ifdef PERL |
| - CFLAGS += -I$(PERLLIBS) -DFEAT_PERL |
| - ifeq (yes, $(DYNAMIC_PERL)) |
| - CFLAGS += -DDYNAMIC_PERL -DDYNAMIC_PERL_DLL=\"perl$(PERL_VER).dll\" |
| - EXTRA_LIBS += -L$(PERLLIBS) -lperl$(PERL_VER) |
| - endif |
| - endif |
| - |
| - ifdef LUA |
| - CFLAGS += -I$(LUA)/include -DFEAT_LUA |
| - ifeq (yes, $(DYNAMIC_LUA)) |
| - CFLAGS += -DDYNAMIC_LUA -DDYNAMIC_LUA_DLL=\"lua$(LUA_VER).dll\" |
| - endif |
| - endif |
| - |
| - ifdef MZSCHEME |
| - CFLAGS += -I$(MZSCHEME)/include -DFEAT_MZSCHEME -DMZSCHEME_COLLECTS=\"$(MZSCHEME)/collects\" |
| - ifeq (yes, $(DYNAMIC_MZSCHEME)) |
| - CFLAGS += -DDYNAMIC_MZSCHEME -DDYNAMIC_MZSCH_DLL=\"lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).dll\" -DDYNAMIC_MZGC_DLL=\"libmzgc$(MZSCHEME_VER).dll\" |
| - endif |
| - ifeq (yes, "$(MZSCHEME_DEBUG)") |
| - CFLAGS += -DMZSCHEME_FORCE_GC |
| - endif |
| - endif |
| - |
| - ifdef RUBY |
| - CFLAGS += -DFEAT_RUBY $(RUBYINC) |
| - ifeq (yes, $(DYNAMIC_RUBY)) |
| - CFLAGS += -DDYNAMIC_RUBY -DDYNAMIC_RUBY_DLL=\"$(RUBY_INSTALL_NAME).dll\" |
| - CFLAGS += -DDYNAMIC_RUBY_VER=$(RUBY_VER) |
| - endif |
| - endif |
| - |
| - ifdef PYTHON |
| - CFLAGS += -DFEAT_PYTHON |
| - ifeq (yes, $(DYNAMIC_PYTHON)) |
| - CFLAGS += -DDYNAMIC_PYTHON |
| - endif |
| - endif |
| - |
| - ifdef PYTHON3 |
| - CFLAGS += -DFEAT_PYTHON3 |
| - ifeq (yes, $(DYNAMIC_PYTHON3)) |
| - CFLAGS += -DDYNAMIC_PYTHON3 |
| - endif |
| - endif |
| - |
| - ifdef TCL |
| - CFLAGS += -DFEAT_TCL $(TCLINC) |
| - ifeq (yes, $(DYNAMIC_TCL)) |
| - CFLAGS += -DDYNAMIC_TCL -DDYNAMIC_TCL_DLL=\"tcl$(TCL_VER).dll\" |
| - endif |
| - endif |
| - |
| - ifeq ($(POSTSCRIPT),yes) |
| - DEFINES += -DMSWINPS |
| - endif |
| - |
| - ifeq (yes, $(OLE)) |
| - DEFINES += -DFEAT_OLE |
| - endif |
| - |
| - ifeq ($(CSCOPE),yes) |
| - DEFINES += -DFEAT_CSCOPE |
| - endif |
| - |
| - ifeq ($(NETBEANS),yes) |
| - # Only allow NETBEANS for a GUI build. |
| - ifeq (yes, $(GUI)) |
| - DEFINES += -DFEAT_NETBEANS_INTG |
| - |
| - ifeq ($(NBDEBUG), yes) |
| - DEFINES += -DNBDEBUG |
| - NBDEBUG_INCL = nbdebug.h |
| - NBDEBUG_SRC = nbdebug.c |
| - endif |
| - endif |
| - endif |
| - |
| - # DirectWrite (DirectX) |
| - ifeq ($(DIRECTX),yes) |
| - # Only allow DirectWrite for a GUI build. |
| - ifeq (yes, $(GUI)) |
| - DEFINES += -DFEAT_DIRECTX -DDYNAMIC_DIRECTX |
| - endif |
| - endif |
| - |
| - # Only allow XPM for a GUI build. |
| - ifeq (yes, $(GUI)) |
| - |
| - ifndef XPM |
| - ifeq ($(ARCH),i386) |
| - XPM = xpm/x86 |
| - endif |
| - ifeq ($(ARCH),i486) |
| - XPM = xpm/x86 |
| - endif |
| - ifeq ($(ARCH),i586) |
| - XPM = xpm/x86 |
| - endif |
| - ifeq ($(ARCH),i686) |
| - XPM = xpm/x86 |
| - endif |
| - ifeq ($(ARCH),x86-64) |
| - XPM = xpm/x64 |
| - endif |
| - endif |
| - ifdef XPM |
| - ifneq ($(XPM),no) |
| - CFLAGS += -DFEAT_XPM_W32 -I $(XPM)/include -I $(XPM)/../include |
| - endif |
| - endif |
| - |
| - endif |
| - |
| - ifeq ($(DEBUG),yes) |
| - CFLAGS += -g -fstack-check |
| - DEBUG_SUFFIX=d |
| - else |
| - ifeq ($(OPTIMIZE), SIZE) |
| - CFLAGS += -Os |
| - else |
| - ifeq ($(OPTIMIZE), MAXSPEED) |
| - CFLAGS += -O3 |
| - CFLAGS += -fomit-frame-pointer -freg-struct-return |
| - else # SPEED |
| - CFLAGS += -O2 |
| - endif |
| - endif |
| - CFLAGS += -s |
| - endif |
| - |
| - LIB = -lkernel32 -luser32 -lgdi32 -ladvapi32 -lcomdlg32 -lcomctl32 -lversion |
| - GUIOBJ = $(OUTDIR)/gui.o $(OUTDIR)/gui_w32.o $(OUTDIR)/gui_beval.o $(OUTDIR)/os_w32exe.o |
| - OBJ = \ |
| - $(OUTDIR)/blowfish.o \ |
| - $(OUTDIR)/buffer.o \ |
| - $(OUTDIR)/charset.o \ |
| - $(OUTDIR)/crypt.o \ |
| - $(OUTDIR)/crypt_zip.o \ |
| - $(OUTDIR)/diff.o \ |
| - $(OUTDIR)/digraph.o \ |
| - $(OUTDIR)/edit.o \ |
| - $(OUTDIR)/eval.o \ |
| - $(OUTDIR)/ex_cmds.o \ |
| - $(OUTDIR)/ex_cmds2.o \ |
| - $(OUTDIR)/ex_docmd.o \ |
| - $(OUTDIR)/ex_eval.o \ |
| - $(OUTDIR)/ex_getln.o \ |
| - $(OUTDIR)/fileio.o \ |
| - $(OUTDIR)/fold.o \ |
| - $(OUTDIR)/getchar.o \ |
| - $(OUTDIR)/hardcopy.o \ |
| - $(OUTDIR)/hashtab.o \ |
| - $(OUTDIR)/main.o \ |
| - $(OUTDIR)/mark.o \ |
| - $(OUTDIR)/memfile.o \ |
| - $(OUTDIR)/memline.o \ |
| - $(OUTDIR)/menu.o \ |
| - $(OUTDIR)/message.o \ |
| - $(OUTDIR)/misc1.o \ |
| - $(OUTDIR)/misc2.o \ |
| - $(OUTDIR)/move.o \ |
| - $(OUTDIR)/mbyte.o \ |
| - $(OUTDIR)/normal.o \ |
| - $(OUTDIR)/ops.o \ |
| - $(OUTDIR)/option.o \ |
| - $(OUTDIR)/os_win32.o \ |
| - $(OUTDIR)/os_mswin.o \ |
| - $(OUTDIR)/winclip.o \ |
| - $(OUTDIR)/pathdef.o \ |
| - $(OUTDIR)/popupmnu.o \ |
| - $(OUTDIR)/quickfix.o \ |
| - $(OUTDIR)/regexp.o \ |
| - $(OUTDIR)/screen.o \ |
| - $(OUTDIR)/search.o \ |
| - $(OUTDIR)/sha256.o \ |
| - $(OUTDIR)/spell.o \ |
| - $(OUTDIR)/syntax.o \ |
| - $(OUTDIR)/tag.o \ |
| - $(OUTDIR)/term.o \ |
| - $(OUTDIR)/ui.o \ |
| - $(OUTDIR)/undo.o \ |
| - $(OUTDIR)/version.o \ |
| - $(OUTDIR)/vimrc.o \ |
| - $(OUTDIR)/window.o |
| - |
| - ifdef PERL |
| - OBJ += $(OUTDIR)/if_perl.o |
| - endif |
| - ifdef LUA |
| - OBJ += $(OUTDIR)/if_lua.o |
| - endif |
| - ifdef MZSCHEME |
| - OBJ += $(OUTDIR)/if_mzsch.o |
| - MZSCHEME_INCL = if_mzsch.h |
| - ifeq (yes,$(MZSCHEME_GENERATE_BASE)) |
| - CFLAGS += -DINCLUDE_MZSCHEME_BASE |
| - MZ_EXTRA_DEP += mzscheme_base.c |
| - endif |
| - ifeq (yes,$(MZSCHEME_PRECISE_GC)) |
| - CFLAGS += -DMZ_PRECISE_GC |
| - endif |
| - endif |
| - ifdef PYTHON |
| - OBJ += $(OUTDIR)/if_python.o |
| - endif |
| - ifdef PYTHON3 |
| - OBJ += $(OUTDIR)/if_python3.o |
| - endif |
| - ifdef RUBY |
| - OBJ += $(OUTDIR)/if_ruby.o |
| - endif |
| - ifdef TCL |
| - OBJ += $(OUTDIR)/if_tcl.o |
| - endif |
| - ifeq ($(CSCOPE),yes) |
| - OBJ += $(OUTDIR)/if_cscope.o |
| - endif |
| - ifeq ($(NETBEANS),yes) |
| - # Only allow NETBEANS for a GUI build. |
| - ifeq (yes, $(GUI)) |
| - OBJ += $(OUTDIR)/netbeans.o |
| - LIB += -lwsock32 |
| - endif |
| - endif |
| - ifeq ($(DIRECTX),yes) |
| - # Only allow DIRECTX for a GUI build. |
| - ifeq (yes, $(GUI)) |
| - OBJ += $(OUTDIR)/gui_dwrite.o |
| - LIB += -ld2d1 -ldwrite |
| - USE_STDCPLUS = yes |
| - endif |
| - endif |
| - ifneq ($(XPM),no) |
| - # Only allow XPM for a GUI build. |
| - ifeq (yes, $(GUI)) |
| - OBJ += $(OUTDIR)/xpm_w32.o |
| - # You'll need libXpm.a from http://gnuwin32.sf.net |
| - LIB += -L$(XPM)/lib -lXpm |
| - endif |
| - endif |
| - |
| - |
| - ifdef MZSCHEME |
| - MZSCHEME_SUFFIX = Z |
| - endif |
| - |
| - ifeq ($(GUI),yes) |
| - TARGET := gvim$(DEBUG_SUFFIX).exe |
| - DEFINES += $(DEF_GUI) |
| - OBJ += $(GUIOBJ) |
| - LFLAGS += -mwindows |
| - OUTDIR = gobj$(DEBUG_SUFFIX)$(MZSCHEME_SUFFIX)$(ARCH) |
| - else |
| - TARGET := vim$(DEBUG_SUFFIX).exe |
| - OUTDIR = obj$(DEBUG_SUFFIX)$(MZSCHEME_SUFFIX)$(ARCH) |
| - endif |
| - |
| - ifdef GETTEXT |
| - ifneq (yes, $(GETTEXT)) |
| - CFLAGS += -I$(GETTEXTINCLUDE) |
| - ifndef STATIC_GETTEXT |
| - LIB += -L$(GETTEXTLIB) -l$(INTLLIB) |
| - ifeq (USE_SAFE_GETTEXT_DLL, $(DYNAMIC_GETTEXT)) |
| - OBJ+=$(SAFE_GETTEXT_DLL_OBJ) |
| - endif |
| - else |
| - LIB += -L$(GETTEXTLIB) -lintl |
| - endif |
| - endif |
| - endif |
| - |
| - ifdef PERL |
| - ifeq (no, $(DYNAMIC_PERL)) |
| - LIB += -L$(PERLLIBS) -lperl$(PERL_VER) |
| - endif |
| - endif |
| - |
| - ifdef TCL |
| - LIB += -L$(TCL)/lib |
| - ifeq (yes, $(DYNAMIC_TCL)) |
| - LIB += -ltclstub$(TCL_VER) |
| - else |
| - LIB += -ltcl$(TCL_VER) |
| - endif |
| - endif |
| - |
| - ifeq (yes, $(OLE)) |
| - LIB += -loleaut32 |
| - OBJ += $(OUTDIR)/if_ole.o |
| - USE_STDCPLUS = yes |
| - endif |
| - |
| - ifeq (yes, $(MBYTE)) |
| - DEFINES += -DFEAT_MBYTE |
| - endif |
| - |
| - ifeq (yes, $(IME)) |
| - DEFINES += -DFEAT_MBYTE_IME |
| - ifeq (yes, $(DYNAMIC_IME)) |
| - DEFINES += -DDYNAMIC_IME |
| - else |
| - LIB += -limm32 |
| - endif |
| - endif |
| - |
| - ifdef ICONV |
| - ifneq (yes, $(ICONV)) |
| - LIB += -L$(ICONV) |
| - CFLAGS += -I$(ICONV) |
| - endif |
| - DEFINES+=-DDYNAMIC_ICONV |
| - endif |
| - |
| - ifeq (yes, $(USE_STDCPLUS)) |
| - ifeq (yes, $(STATIC_STDCPLUS)) |
| - LIB += -Wl,-Bstatic -lstdc++ -Wl,-Bdynamic |
| - else |
| - LIB += -lstdc++ |
| - endif |
| - endif |
| - |
| - all: $(TARGET) vimrun.exe xxd/xxd.exe install.exe uninstal.exe GvimExt/gvimext.dll |
| - |
| - vimrun.exe: vimrun.c |
| - $(CC) $(CFLAGS) -o vimrun.exe vimrun.c $(LIB) |
| - |
| - install.exe: dosinst.c |
| - $(CC) $(CFLAGS) -o install.exe dosinst.c $(LIB) -lole32 -luuid |
| - |
| - uninstal.exe: uninstal.c |
| - $(CC) $(CFLAGS) -o uninstal.exe uninstal.c $(LIB) |
| - |
| - $(TARGET): $(OUTDIR) $(OBJ) |
| - $(CC) $(CFLAGS) $(LFLAGS) -o $@ $(OBJ) $(LIB) -lole32 -luuid $(LUA_LIB) $(MZSCHEME_LIBDIR) $(MZSCHEME_LIB) $(PYTHONLIB) $(PYTHON3LIB) $(RUBYLIB) |
| - |
| - upx: exes |
| - upx gvim.exe |
| - upx vim.exe |
| - |
| - mpress: exes |
| - mpress gvim.exe |
| - mpress vim.exe |
| - |
| - xxd/xxd.exe: xxd/xxd.c |
| - $(MAKE) -C xxd -f Make_ming.mak CC=$(CC) |
| - |
| - GvimExt/gvimext.dll: GvimExt/gvimext.cpp GvimExt/gvimext.rc GvimExt/gvimext.h |
| - $(MAKE) -C GvimExt -f Make_ming.mak CROSS=$(CROSS) CROSS_COMPILE=$(CROSS_COMPILE) |
| - |
| - clean: |
| - -$(DEL) $(OUTDIR)$(DIRSLASH)*.o |
| - -$(DEL) $(OUTDIR)$(DIRSLASH)*.res |
| - -rmdir $(OUTDIR) |
| - -$(DEL) *.exe |
| - -$(DEL) pathdef.c |
| - ifdef PERL |
| - -$(DEL) if_perl.c |
| - endif |
| - ifdef MZSCHEME |
| - -$(DEL) mzscheme_base.c |
| - endif |
| - $(MAKE) -C GvimExt -f Make_ming.mak clean |
| - $(MAKE) -C xxd -f Make_ming.mak clean |
| - |
| - ########################################################################### |
| - INCL = vim.h feature.h os_win32.h os_dos.h ascii.h keymap.h term.h macros.h \ |
| - structs.h regexp.h option.h ex_cmds.h proto.h globals.h farsi.h \ |
| - gui.h |
| - |
| - $(OUTDIR)/if_python.o : if_python.c if_py_both.h $(INCL) |
| - $(CC) -c $(CFLAGS) $(PYTHONINC) -DDYNAMIC_PYTHON_DLL=\"python$(PYTHON_VER).dll\" $< -o $@ |
| - |
| - $(OUTDIR)/if_python3.o : if_python3.c if_py_both.h $(INCL) |
| - $(CC) -c $(CFLAGS) $(PYTHON3INC) -DDYNAMIC_PYTHON3_DLL=\"PYTHON$(PYTHON3_VER).dll\" $< -o $@ |
| - |
| - $(OUTDIR)/%.o : %.c $(INCL) |
| - $(CC) -c $(CFLAGS) $< -o $@ |
| - |
| - $(OUTDIR)/vimrc.o: vim.rc version.h gui_w32_rc.h |
| - $(WINDRES) $(WINDRES_FLAGS) $(DEFINES) \ |
| - --input-format=rc --output-format=coff -i vim.rc -o $@ |
| - |
| - $(OUTDIR): |
| - $(MKDIR) $(OUTDIR) |
| - |
| - $(OUTDIR)/ex_docmd.o: ex_docmd.c $(INCL) ex_cmds.h |
| - $(CC) -c $(CFLAGS) ex_docmd.c -o $(OUTDIR)/ex_docmd.o |
| - |
| - $(OUTDIR)/ex_eval.o: ex_eval.c $(INCL) ex_cmds.h |
| - $(CC) -c $(CFLAGS) ex_eval.c -o $(OUTDIR)/ex_eval.o |
| - |
| - $(OUTDIR)/gui_w32.o: gui_w32.c gui_w48.c $(INCL) |
| - $(CC) -c $(CFLAGS) gui_w32.c -o $(OUTDIR)/gui_w32.o |
| - |
| - $(OUTDIR)/gui_dwrite.o: gui_dwrite.cpp $(INCL) gui_dwrite.h |
| - $(CC) -c $(CFLAGS) gui_dwrite.cpp -o $(OUTDIR)/gui_dwrite.o |
| - |
| - $(OUTDIR)/if_cscope.o: if_cscope.c $(INCL) if_cscope.h |
| - $(CC) -c $(CFLAGS) if_cscope.c -o $(OUTDIR)/if_cscope.o |
| - |
| - # Remove -D__IID_DEFINED__ for newer versions of the w32api |
| - $(OUTDIR)/if_ole.o: if_ole.cpp $(INCL) |
| - $(CC) $(CFLAGS) -c -o $(OUTDIR)/if_ole.o if_ole.cpp |
| - |
| - $(OUTDIR)/if_ruby.o: if_ruby.c $(INCL) |
| - ifeq (16, $(RUBY)) |
| - $(CC) $(CFLAGS) -U_WIN32 -c -o $(OUTDIR)/if_ruby.o if_ruby.c |
| - endif |
| - |
| - if_perl.c: if_perl.xs typemap |
| - $(XSUBPP) -prototypes -typemap \ |
| - $(PERLLIB)/ExtUtils/typemap if_perl.xs > $@ |
| - |
| - $(OUTDIR)/netbeans.o: netbeans.c $(INCL) $(NBDEBUG_INCL) $(NBDEBUG_SRC) |
| - $(CC) -c $(CFLAGS) netbeans.c -o $(OUTDIR)/netbeans.o |
| - |
| - $(OUTDIR)/regexp.o: regexp.c regexp_nfa.c $(INCL) |
| - $(CC) -c $(CFLAGS) regexp.c -o $(OUTDIR)/regexp.o |
| - |
| - $(OUTDIR)/if_mzsch.o: if_mzsch.c $(INCL) if_mzsch.h $(MZ_EXTRA_DEP) |
| - $(CC) -c $(CFLAGS) if_mzsch.c -o $(OUTDIR)/if_mzsch.o |
| |
| - mzscheme_base.c: |
| - $(MZSCHEME)/mzc --c-mods mzscheme_base.c ++lib scheme/base |
| |
| ! pathdef.c: $(INCL) |
| ! ifneq (sh.exe, $(SHELL)) |
| ! @echo creating pathdef.c |
| ! @echo '/* pathdef.c */' > pathdef.c |
| ! @echo '#include "vim.h"' >> pathdef.c |
| ! @echo 'char_u *default_vim_dir = (char_u *)"$(VIMRCLOC)";' >> pathdef.c |
| ! @echo 'char_u *default_vimruntime_dir = (char_u *)"$(VIMRUNTIMEDIR)";' >> pathdef.c |
| ! @echo 'char_u *all_cflags = (char_u *)"$(CC) $(CFLAGS)";' >> pathdef.c |
| ! @echo 'char_u *all_lflags = (char_u *)"$(CC) $(CFLAGS) $(LFLAGS) -o $(TARGET) $(LIB) -lole32 -luuid $(LUA_LIB) $(MZSCHEME_LIBDIR) $(MZSCHEME_LIB) $(PYTHONLIB) $(PYTHON3LIB) $(RUBYLIB)";' >> pathdef.c |
| ! @echo 'char_u *compiled_user = (char_u *)"$(USERNAME)";' >> pathdef.c |
| ! @echo 'char_u *compiled_sys = (char_u *)"$(USERDOMAIN)";' >> pathdef.c |
| ! else |
| ! @echo creating pathdef.c |
| ! @echo /* pathdef.c */ > pathdef.c |
| ! @echo #include "vim.h" >> pathdef.c |
| ! @echo char_u *default_vim_dir = (char_u *)"$(VIMRCLOC)"; >> pathdef.c |
| ! @echo char_u *default_vimruntime_dir = (char_u *)"$(VIMRUNTIMEDIR)"; >> pathdef.c |
| ! @echo char_u *all_cflags = (char_u *)"$(CC) $(CFLAGS)"; >> pathdef.c |
| ! @echo char_u *all_lflags = (char_u *)"$(CC) $(CFLAGS) $(LFLAGS) -o $(TARGET) $(LIB) -lole32 -luuid $(LUA_LIB) $(MZSCHEME_LIBDIR) $(MZSCHEME_LIB) $(PYTHONLIB) $(PYTHON3LIB) $(RUBYLIB)"; >> pathdef.c |
| ! @echo char_u *compiled_user = (char_u *)"$(USERNAME)"; >> pathdef.c |
| ! @echo char_u *compiled_sys = (char_u *)"$(USERDOMAIN)"; >> pathdef.c |
| ! endif |
| --- 34,49 ---- |
| # on my NT box, it's here: |
| #PYTHON=c:/python20 |
| |
| ! # uncomment 'PYTHON3' if you want a python3-enabled version |
| ! #PYTHON3=c:/python31 |
| |
| ! # uncomment 'TCL' if you want a Tcl-enabled version |
| #TCL=c:/tcl |
| |
| ! # uncomment 'RUBY' if you want a Ruby-enabled version |
| #RUBY=c:/ruby |
| |
| |
| ! # Do not change this. |
| ! UNDER_CYGWIN = no |
| ! include Make_cyg_ming.mak |
| |
| |
| |
| *** 50,62 **** |
| # Perl interface: |
| # PERL=[Path to Perl directory] |
| # DYNAMIC_PERL=yes (to load the Perl DLL dynamically) |
| ! # PERL_VER=[Perl version, in the form 55 (5.005), 56 (5.6.x), etc] |
| # (default is 56) |
| # |
| # Python interface: |
| # PYTHON=[Path to Python directory] |
| # DYNAMIC_PYTHON=yes (to load the Python DLL dynamically) |
| ! # PYTHON_VER=[Python version, eg 15, 20] (default is 22) |
| # |
| # Python3 interface: |
| # PYTHON3=[Path to Python3 directory] |
| --- 50,63 ---- |
| # Perl interface: |
| # PERL=[Path to Perl directory] |
| # DYNAMIC_PERL=yes (to load the Perl DLL dynamically) |
| ! # PERL_VER=[Perl version, in the form 55 (5.005), 56 (5.6.x), |
| ! # 510 (5.10.x), etc] |
| # (default is 56) |
| # |
| # Python interface: |
| # PYTHON=[Path to Python directory] |
| # DYNAMIC_PYTHON=yes (to load the Python DLL dynamically) |
| ! # PYTHON_VER=[Python version, eg 22, 23, ..., 27] (default is 22) |
| # |
| # Python3 interface: |
| # PYTHON3=[Path to Python3 directory] |
| |
| *** 66,76 **** |
| # Ruby interface: |
| # RUBY=[Path to Ruby directory] |
| # DYNAMIC_RUBY=yes (to load the Ruby DLL dynamically) |
| ! # RUBY_VER=[Ruby version, eg 16, 17] (default is 18) |
| ! # RUBY_VER_LONG=[Ruby version, eg 1.6, 1.7] (default is 1.8) |
| # You must set RUBY_VER_LONG when change RUBY_VER. |
| ! # You must set RUBY_API_VER to RUBY_VER_LONG. |
| ! # Don't set ruby API version to RUBY_VER like 191. |
| # |
| # Tcl interface: |
| # TCL=[Path to Tcl directory] |
| --- 67,79 ---- |
| # Ruby interface: |
| # RUBY=[Path to Ruby directory] |
| # DYNAMIC_RUBY=yes (to load the Ruby DLL dynamically) |
| ! # RUBY_VER=[Ruby version, eg 18, 19, 20] (default is 18) |
| ! # RUBY_VER_LONG=[Ruby version, eg 1.8, 1.9.1, 2.0.0] (default is 1.8) |
| # You must set RUBY_VER_LONG when change RUBY_VER. |
| ! # RUBY_API_VER is derived from RUBY_VER_LONG. |
| ! # Note: If you use Ruby 1.9.3, set as follows: |
| ! # RUBY_VER=19 |
| ! # RUBY_VER_LONG=1.9.1 (not 1.9.3, because the API version is 1.9.1.) |
| # |
| # Tcl interface: |
| # TCL=[Path to Tcl directory] |
| |
| |
| |
| *** 277,282 **** |
| --- 277,283 ---- |
| src/Make_bc3.mak \ |
| src/Make_bc5.mak \ |
| src/Make_cyg.mak \ |
| + src/Make_cyg_ming.mak \ |
| src/Make_djg.mak \ |
| src/Make_ivc.mak \ |
| src/Make_dvc.mak \ |
| |
| |
| |
| *** 743,744 **** |
| --- 743,746 ---- |
| { /* Add new patch number below this line */ |
| + /**/ |
| + 496, |
| /**/ |
| |
| -- |
| ARTHUR: What? |
| BLACK KNIGHT: None shall pass. |
| ARTHUR: I have no quarrel with you, good Sir knight, but I must cross |
| this bridge. |
| BLACK KNIGHT: Then you shall die. |
| The Quest for the Holy Grail (Monty Python) |
| |
| /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ |
| /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ |
| \\\ an exciting new programming language -- http://www.Zimbu.org /// |
| \\\ help me help AIDS victims -- http://ICCF-Holland.org /// |