292 lines
6.4 KiB
Plaintext
292 lines
6.4 KiB
Plaintext
|
#===========================================================================;
|
||
|
#
|
||
|
# 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
|