1f4b8e57fSBram Moolenaar# Makefile for GvimExt, using MSVC 2f4b8e57fSBram Moolenaar# Options: 3f4b8e57fSBram Moolenaar# DEBUG=yes Build debug version (for VC7 and maybe later) 4d7383881SBram Moolenaar# CPUARG= /arch:IA32/AVX/etc, call from main makefile to set 5d7383881SBram Moolenaar# automatically from CPUNR 6f4b8e57fSBram Moolenaar# 7f4b8e57fSBram Moolenaar 8cea912afSBram MoolenaarTARGETOS = WINNT 9d7383881SBram Moolenaar 101fd3e30cSBram Moolenaar!ifndef APPVER 11d7383881SBram MoolenaarAPPVER = 5.01 121fd3e30cSBram Moolenaar!endif 13f4b8e57fSBram Moolenaar 14f4b8e57fSBram Moolenaar!if "$(DEBUG)" != "yes" 15f4b8e57fSBram MoolenaarNODEBUG = 1 16f4b8e57fSBram Moolenaar!endif 17f4b8e57fSBram Moolenaar 184514d276SBram Moolenaar!ifdef PROCESSOR_ARCHITECTURE 194514d276SBram Moolenaar# On Windows NT 204514d276SBram Moolenaar! ifndef CPU 214514d276SBram MoolenaarCPU = i386 223d6d5cc3SBram Moolenaar! if !defined(PLATFORM) && defined(TARGET_CPU) 233d6d5cc3SBram MoolenaarPLATFORM = $(TARGET_CPU) 243d6d5cc3SBram Moolenaar! endif 254514d276SBram Moolenaar! ifdef PLATFORM 264514d276SBram Moolenaar! if ("$(PLATFORM)" == "x64") || ("$(PLATFORM)" == "X64") 274514d276SBram MoolenaarCPU = AMD64 284514d276SBram Moolenaar! elseif ("$(PLATFORM)" != "x86") && ("$(PLATFORM)" != "X86") 294514d276SBram Moolenaar! error *** ERROR Unknown target platform "$(PLATFORM)". Make aborted. 304514d276SBram Moolenaar! endif 314514d276SBram Moolenaar! endif 324514d276SBram Moolenaar! endif 334514d276SBram Moolenaar!else 344514d276SBram MoolenaarCPU = i386 354514d276SBram Moolenaar!endif 364514d276SBram Moolenaar 377331304fSBram Moolenaar!ifdef SDK_INCLUDE_DIR 387331304fSBram Moolenaar!include $(SDK_INCLUDE_DIR)\Win32.mak 39*e16b00a1SBram Moolenaar!elseif "$(USE_WIN32MAK)"=="yes" 407331304fSBram Moolenaar!include <Win32.mak> 41*e16b00a1SBram Moolenaar!else 42*e16b00a1SBram Moolenaarcc = cl 43*e16b00a1SBram Moolenaarlink = link 44*e16b00a1SBram Moolenaarrc = rc 45*e16b00a1SBram Moolenaarcflags = -nologo -c 46*e16b00a1SBram Moolenaarlflags = -incremental:no -nologo 47*e16b00a1SBram Moolenaarrcflags = /r 48*e16b00a1SBram Moolenaarolelibsdll = ole32.lib uuid.lib oleaut32.lib user32.lib gdi32.lib advapi32.lib 497331304fSBram Moolenaar!endif 50f4b8e57fSBram Moolenaar 51d7383881SBram Moolenaar# include CPUARG 52d7383881SBram Moolenaarcflags = $(cflags) $(CPUARG) 53d7383881SBram Moolenaar 54f4b8e57fSBram Moolenaarall: gvimext.dll 55f4b8e57fSBram Moolenaar 56f4b8e57fSBram Moolenaargvimext.dll: gvimext.obj \ 57f4b8e57fSBram Moolenaar gvimext.res 58362e1a30SBram Moolenaar# $(implib) /NOLOGO -machine:$(CPU) -def:gvimext.def $** -out:gvimext.lib 59362e1a30SBram Moolenaar# $(link) $(dlllflags) -base:0x1C000000 -out:$*.dll $** $(olelibsdll) shell32.lib gvimext.lib comctl32.lib gvimext.exp 60362e1a30SBram Moolenaar $(link) $(lflags) -dll -def:gvimext.def -base:0x1C000000 -out:$*.dll $** $(olelibsdll) shell32.lib comctl32.lib 613ed4447eSBram Moolenaar if exist $*.dll.manifest mt -nologo -manifest $*.dll.manifest -outputresource:$*.dll;2 62f4b8e57fSBram Moolenaar 63f4b8e57fSBram Moolenaargvimext.obj: gvimext.h 64f4b8e57fSBram Moolenaar 65f4b8e57fSBram Moolenaar.cpp.obj: 660fde290eSBram Moolenaar $(cc) $(cflags) -DFEAT_GETTEXT $(cvarsmt) $*.cpp 67f4b8e57fSBram Moolenaar 68f4b8e57fSBram Moolenaargvimext.res: gvimext.rc 69bc073092SBram Moolenaar $(rc) /nologo $(rcflags) $(rcvars) gvimext.rc 70f4b8e57fSBram Moolenaar 71f4b8e57fSBram Moolenaarclean: 72f4b8e57fSBram Moolenaar - if exist gvimext.dll del gvimext.dll 73f4b8e57fSBram Moolenaar - if exist gvimext.lib del gvimext.lib 74f4b8e57fSBram Moolenaar - if exist gvimext.exp del gvimext.exp 75f4b8e57fSBram Moolenaar - if exist gvimext.obj del gvimext.obj 76f4b8e57fSBram Moolenaar - if exist gvimext.res del gvimext.res 773ed4447eSBram Moolenaar - if exist gvimext.dll.manifest del gvimext.dll.manifest 78