#===========================================================================; # # MAKEFILE.ZYZ -- Common Makefile for Win 16 and Win 32 Environments # ############################################################################# # # THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY # KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE # IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR # PURPOSE. # # Copyright (c) 1993-1995 Microsoft Corporation. All Rights Reserved. # ############################################################################# # #---------------------------------------------------------------------------; # # CPU Support: # i386 - Intel 80386, i486, P5 # MIPS - MIPS R4000 # #===========================================================================; !if ("$(WIN16)" == "YES") || ("$(OS)" != "Windows_NT") #===========================================================================; # # Common Makefile for Win 16 Environment # # #===========================================================================; !if ("$(TARGETMODEL)" != "SMALL") && ("$(TARGETMODEL)" != "MEDIUM") !error Invalid TARGETMODEL environment variable: specify SMALL or MEDIUM! !endif #- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -; # # Default executable and flag declarations # # #- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -; CVARS = -DWIN16 -DSTRICT $(TARGETAPI) CC = cl CFLAGS = -c -Zp $(TARGETOPTZ) RC = rc RFLAGS = LN = link LFLAGS = /NOPACKC/NOD/NOE/MAP/AL:16 LB = lib LBFLAGS = CVTRES = rem !!! CVTRES is for Win 32 only !!! CRFLAGS = !if "$(DEBUG)" != "NO" CVARS = $(CVARS) -DDEBUG CFLAGS = $(CFLAGS) -Zid LFLAGS = $(LFLAGS) /CO/LI !endif #- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -; # # Standard library stuff # # CONLFLAGS and WINLFLAGS: # # #- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -; CONLFLAGS = CONLIBSBASE = CONLIBSST = CONLIBSMT = CONLIBSDLL = WINLIBSBASE = libw commdlg shell mmsystem !if "$(TARGETMODEL)" == "SMALL" WINLIBSST = slibcew.lib $(WINLIBSBASE) WINLIBSMT = WINLIBSDLL = sdllcew.lib $(WINLIBSBASE) !endif !if "$(TARGETMODEL)" == "MEDIUM" WINLIBSST = mlibcew.lib $(WINLIBSBASE) WINLIBSMT = WINLIBSDLL = mdllcew.lib $(WINLIBSBASE) !endif # # # # !if ("$(TARGETTYPE)" == "CONAPPST") || ("$(TARGETTYPE)" == "CONAPP") !error TARGETTYPE: CONAPP[ST] is not supported in Win 16! !endif !if "$(TARGETTYPE)" == "CONAPPMT" !error TARGETTYPE: CONAPPMT is not supported in Win 16! !endif !if "$(TARGETTYPE)" == "CONDLL" !error TARGETTYPE: CONDLL is not supported in Win 16! !endif !if ("$(TARGETTYPE)" == "WINAPPST") || ("$(TARGETTYPE)" == "WINAPP") !if "$(TARGETMODEL)" == "SMALL" CFLAGS = $(CFLAGS) -AS !endif !if "$(TARGETMODEL)" == "MEDIUM" CFLAGS = $(CFLAGS) -AM !endif CVARS = $(CVARS) WINLIBS = $(WINLIBSST) !endif !if "$(TARGETTYPE)" == "WINAPPMT" !error TARGETTYPE: WINAPPMT is not supported in Win 16! !endif !if "$(TARGETTYPE)" == "WINDLL" !if "$(TARGETMODEL)" == "SMALL" CFLAGS = $(CFLAGS) -Asnw !endif !if "$(TARGETMODEL)" == "MEDIUM" CFLAGS = $(CFLAGS) -Alnw !endif CVARS = $(CVARS) -D_DLL -D_WINDLL WINLIBS = $(WINLIBSDLL) !endif !else #===========================================================================; # # Common Makefile for Win 32 Environment # # #===========================================================================; !if ("$(CPU)" != "i386") && ("$(CPU)" != "MIPS") !error Invalid CPU environment variable: CPU=i386 or MIPS !endif #- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -; # # Default executable and flag declarations # # #- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -; CVARS = -DWIN32 -DSTRICT $(TARGETAPI) CC = cc CFLAGS = -c -Zp4 $(TARGETOPTZ) RC = rc RFLAGS = LN = link32 LFLAGS = -undecorate LB = lib32 LBFLAGS = CVTRES = cvtres CRFLAGS = -$(CPU) !if "$(DEBUG)" != "NO" CVARS = $(CVARS) -DDEBUG CFLAGS = $(CFLAGS) -Zi LFLAGS = $(LFLAGS) -debug:full -debugtype:cv !endif !if "$(UNICODE)" == "YES" CVARS = $(CVARS) -DUNICODE !endif #- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -; # # Standard library stuff # # CONLFLAGS and WINLFLAGS: # # NOTE! Any executable which accesses a DLL linked with CRTDLL.LIB must # also link with CRTDLL.LIB instead of LIBC.LIB or LIBCMT.LIB. # #- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -; CONLFLAGS = -subsystem:console -entry:mainCRTStartup CONLIBSBASE = ntdll.lib kernel32.lib CONLIBSST = libc.lib $(CONLIBSBASE) CONLIBSMT = libcmt.lib $(CONLIBSBASE) CONLIBSDLL = crtdll.lib $(CONLIBSBASE) WINLFLAGS = -subsystem:windows -entry:WinMainCRTStartup WINLIBSBASE = ntdll.lib kernel32.lib user32.lib gdi32.lib winspool.lib \ comdlg32.lib shell32.lib winmm.lib WINLIBSST = libc.lib $(WINLIBSBASE) WINLIBSMT = libcmt.lib $(WINLIBSBASE) WINLIBSDLL = crtdll.lib $(WINLIBSBASE) # # # # !if ("$(TARGETTYPE)" == "CONAPPST") || ("$(TARGETTYPE)" == "CONAPP") CVARS = $(CVARS) CONLIBS = $(CONLIBSST) !endif !if "$(TARGETTYPE)" == "CONAPPMT" CVARS = $(CVARS) -D_MT CONLIBS = $(CONLIBSMT) !endif !if "$(TARGETTYPE)" == "CONDLL" CVARS = $(CVARS) -D_DLL CONLIBS = $(CONLIBSDLL) !endif !if ("$(TARGETTYPE)" == "WINAPPST") || ("$(TARGETTYPE)" == "WINAPP") CVARS = $(CVARS) WINLIBS = $(WINLIBSST) !endif !if "$(TARGETTYPE)" == "WINAPPMT" CVARS = $(CVARS) -D_MT WINLIBS = $(WINLIBSMT) !endif !if "$(TARGETTYPE)" == "WINDLL" CVARS = $(CVARS) -D_DLL -D_WINDLL WINLIBS = $(WINLIBSDLL) !endif #- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -; # # PLATFORM DEPENDENT DECLARATIONS # # # NOTE! $(DLLENTRY) should be appended to each -entry: flag on the # link line. # #- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -; !if "$(CPU)" == "i386" CC = cl386 CVARS = $(CVARS) -D_X86_ DLLENTRY= @12 LFLAGS = -align:0x1000 -ignore:505 !if "$(DEBUG)" != "NO" CFLAGS = $(CFLAGS) -Z7 !endif !endif !if "$(CPU)" == "MIPS" CC = mcl CVARS = $(CVARS) -D_MIPS_ LFLAGS = -align:0x1000 -ignore:505 DLLENTRY= !endif !endif