xref: /vim-8.2.3635/src/GvimExt/Makefile (revision 577fadfc)
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
28*577fadfcSBram Moolenaar!   elseif ("$(PLATFORM)" == "arm64") || ("$(PLATFORM)" == "ARM64")
29*577fadfcSBram MoolenaarCPU = ARM64
304514d276SBram Moolenaar!   elseif ("$(PLATFORM)" != "x86") && ("$(PLATFORM)" != "X86")
314514d276SBram Moolenaar!    error *** ERROR Unknown target platform "$(PLATFORM)". Make aborted.
324514d276SBram Moolenaar!   endif
334514d276SBram Moolenaar!  endif
344514d276SBram Moolenaar! endif
354514d276SBram Moolenaar!else
364514d276SBram MoolenaarCPU = i386
374514d276SBram Moolenaar!endif
384514d276SBram Moolenaar
397331304fSBram Moolenaar!ifdef SDK_INCLUDE_DIR
407331304fSBram Moolenaar!include $(SDK_INCLUDE_DIR)\Win32.mak
41e16b00a1SBram Moolenaar!elseif "$(USE_WIN32MAK)"=="yes"
427331304fSBram Moolenaar!include <Win32.mak>
43e16b00a1SBram Moolenaar!else
44e16b00a1SBram Moolenaarcc = cl
45e16b00a1SBram Moolenaarlink = link
46e16b00a1SBram Moolenaarrc = rc
47e16b00a1SBram Moolenaarcflags = -nologo -c
48e16b00a1SBram Moolenaarlflags = -incremental:no -nologo
49e16b00a1SBram Moolenaarrcflags = /r
50e16b00a1SBram Moolenaarolelibsdll = ole32.lib uuid.lib oleaut32.lib user32.lib gdi32.lib advapi32.lib
517331304fSBram Moolenaar!endif
52f4b8e57fSBram Moolenaar
53d7383881SBram Moolenaar# include CPUARG
54d7383881SBram Moolenaarcflags = $(cflags) $(CPUARG)
55d7383881SBram Moolenaar
5673f4439cSBram MoolenaarSUBSYSTEM = console
5773f4439cSBram Moolenaar!if "$(SUBSYSTEM_VER)" != ""
5873f4439cSBram MoolenaarSUBSYSTEM = $(SUBSYSTEM),$(SUBSYSTEM_VER)
5973f4439cSBram Moolenaar!endif
6073f4439cSBram Moolenaar
61*577fadfcSBram Moolenaar!if "$(CPU)" == "ARM64"
62*577fadfcSBram MoolenaarOFFSET = 0x11C000000
63*577fadfcSBram Moolenaar!else
64*577fadfcSBram MoolenaarOFFSET = 0x1C000000
65*577fadfcSBram Moolenaar!endif
66*577fadfcSBram Moolenaar
67f4b8e57fSBram Moolenaarall: gvimext.dll
68f4b8e57fSBram Moolenaar
69f4b8e57fSBram Moolenaargvimext.dll:    gvimext.obj	\
70f4b8e57fSBram Moolenaar		gvimext.res
71*577fadfcSBram Moolenaar	$(link) $(lflags) -dll -def:gvimext.def -base:$(OFFSET) -out:$*.dll $** $(olelibsdll) shell32.lib comctl32.lib -subsystem:$(SUBSYSTEM)
723ed4447eSBram Moolenaar	if exist $*.dll.manifest mt -nologo -manifest $*.dll.manifest -outputresource:$*.dll;2
73f4b8e57fSBram Moolenaar
74f4b8e57fSBram Moolenaargvimext.obj: gvimext.h
75f4b8e57fSBram Moolenaar
76f4b8e57fSBram Moolenaar.cpp.obj:
770fde290eSBram Moolenaar	$(cc) $(cflags) -DFEAT_GETTEXT $(cvarsmt) $*.cpp
78f4b8e57fSBram Moolenaar
79f4b8e57fSBram Moolenaargvimext.res: gvimext.rc
80bc073092SBram Moolenaar	$(rc) /nologo $(rcflags) $(rcvars)  gvimext.rc
81f4b8e57fSBram Moolenaar
82f4b8e57fSBram Moolenaarclean:
83f4b8e57fSBram Moolenaar	- if exist gvimext.dll del gvimext.dll
84f4b8e57fSBram Moolenaar	- if exist gvimext.lib del gvimext.lib
85f4b8e57fSBram Moolenaar	- if exist gvimext.exp del gvimext.exp
86f4b8e57fSBram Moolenaar	- if exist gvimext.obj del gvimext.obj
87f4b8e57fSBram Moolenaar	- if exist gvimext.res del gvimext.res
883ed4447eSBram Moolenaar	- if exist gvimext.dll.manifest del gvimext.dll.manifest
89