?? wc32.mk
字號:
############################################################################### SciTech Multi-platform Graphics Library## ========================================================================## The contents of this file are subject to the SciTech MGL Public# License Version 1.0 (the "License"); you may not use this file# except in compliance with the License. You may obtain a copy of# the License at http://www.scitechsoft.com/mgl-license.txt## Software distributed under the License is distributed on an# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or# implied. See the License for the specific language governing# rights and limitations under the License.## The Original Code is Copyright (C) 1991-1998 SciTech Software, Inc.## The Initial Developer of the Original Code is SciTech Software, Inc.# All Rights Reserved.## ========================================================================## Descripton: Generic DMAKE startup makefile definitions file. Assumes# that the SCITECH environment variable has been set to point# to where all our stuff is installed. You should not need# to change anything in this file.## Watcom C++ 10.x 32 bit version. Supports Rational's DOS4GW# DOS Extender, PMODE/W, Causeway, FlashTek's X32-VM,# Phar Lap's TNT DOS Extender, 32-bit Windows development and# 32-bit OS/2 development.############################################################################### Include standard startup script definitions.IMPORT: SCITECH.INCLUDE: "$(SCITECH)\makedefs\startup.mk"# Import enivornment variables that we use.IMPORT .IGNORE : USE_TNT USE_X32 USE_X32VM USE_PMODEW STKCALL USE_CAUSEWAY.IMPORT .IGNORE : USE_WIN386 USE_OS232 USE_OS2GUI WC_LIBBASE NOOPT DOSSTYLE.IMPORT .IGNORE : OS2_SHELL USE_CODEVIEW USE_DOS32A USE_QNX4 LEAVE_LINKFILE# We are compiling for a 32 bit envionment _32BIT_ := 1# Setup special environment for QNX 4 (Unix'ish).IF $(USE_QNX4) USE_QNX := 1 L := .a # Libraries LP := lib # LP - Library file prefix (name of file on disk) LL := lib # Library link prefix (name of library on link command line) LE := .a # Library link suffix (extension of library on link command line).ENDIF# Default commands for compiling, assembling linking and archiving CC := wcc386 CPP := wpp386 CFLAGS := -zq-j-s-fpi87.IF $(USE_NASM) AS := nasm ASFLAGS := -t -f obj -d__FLAT__ -dSTDCALL_MANGLE -iINCLUDE -i$(SCITECH)\INCLUDE.ELSE.IF $(USE_TASM32) AS := tasm32 DLL_TASM := tasm32.ELIF $(USE_TASMX) AS := tasmx DLL_TASM := tasmx.ELSE AS := tasm DLL_TASM := tasm.ENDIF ASFLAGS := /t /mx /m /w-res /w-mcp /D__FLAT__ /DSTDCALL_MANGLE /iINCLUDE /i$(SCITECH)\INCLUDE GAS := gcc GAS_FLAGS := -D__WATCOMC__ -D__SW_3S -D__SW_S -U__GNUC__ -UDJGPP -U__unix__ -Wall -I. -I$(SCITECH)\include -x assembler-with-cpp.ENDIF LD := wlink LDFLAGS =.IF $(USE_OS232) RC := rc.ELSE RC := wrc.ENDIF.IF $(USE_WIN32) RCFLAGS := -q /bt=nt.ELIF $(USE_OS232).IF $(USE_OS2GUI) CFLAGS += -D__OS2_PM__.ENDIF.ELSE RCFLAGS := -q.ENDIF LIB := wlib LIBFLAGS := -q ILIB := wlib ILIBFLAGS := -c INTEL_X86 := 1# Set the compiler warning level.IF $(MAX_WARN) CFLAGS += -w4.ELSE CFLAGS += -w1.ENDIF# Optionally turn on debugging information (Codeview format).IF $(DBG).IF $(USE_WIN32).IF $(USE_CODEVIEW) CFLAGS += -d2 -hc LDFLAGS += D CODEVIEW OPT CVPACK.ELSE CFLAGS += -d2 LDFLAGS += D A.ENDIF.ELSE CFLAGS += -d2 LDFLAGS += D A.ENDIF LIBFLAGS += -p=768.IF $(USE_NASM) ASFLAGS += -F borland -g.ELSE.IF $(USE_TASM32) ASFLAGS += /q # TASM32 fucks up Watcom C++ debug info.ELIF $(OS2_SHELL) ASFLAGS += /q # TASM for OS/2 fucks up Watcom C++ debug info.ELSE ASFLAGS += /zi.ENDIF.ENDIF.ELSE.IF $(USE_NASM) ASFLAGS += -F null.ELSE ASFLAGS += /q.ENDIF.END# Optionally turn on optimisations (with or without stack conventions).IF $(STKCALL).IF $(OPT) CFLAGS += -onatx-5s-fp5.ELIF $(OPT_SIZE) CFLAGS += -onaslmr-5s-fp5.ELIF $(NOOPT) CFLAGS += -od-5s.ELSE CFLAGS += -3s.END.ELSE.IF $(OPT) CFLAGS += -onatx-5r-fp5.ELIF $(OPT_SIZE) CFLAGS += -onaslmr-5r-fp5.ELIF $(NOOPT) CFLAGS += -od-5r.END.END# Optionally turn on direct i387 FPU instructions optimised for Pentium.IF $(FPU) CFLAGS += -DFPU387 ASFLAGS += -dFPU387.END# Optionally compile a beta release version of a product.IF $(BETA) CFLAGS += -DBETA ASFLAGS += -dBETA.END.IF $(USE_TNT) # Use Phar Lap's TNT DOS Extender CFLAGS += -bt=nt -DTNT ASFLAGS += -dTNT LDFLAGS += SYS NT OP STUB=GOTNT.EXE LIB_OS = DOS32.ELIF $(USE_X32VM) # Use FlashTek X-32VM DOS extender CFLAGS += -bt=dos LDFLAGS += SYS X32RV DX_CFLAGS += -DX32VM DX_ASFLAGS += -dX32VM LIB_OS = DOS32.ELIF $(USE_X32) # Use FlashTek X-32 DOS extender CFLAGS += -bt=dos LDFLAGS += SYS X32R DX_CFLAGS += -DX32VM DX_ASFLAGS += -dX32VM LIB_OS = DOS32.ELIF $(USE_QNX4) # Build QNX 4 app CFLAGS += -bt=qnx386 LDFLAGS += SYS QNX386FLAT OP CASEEXACT OP OFFSET=40k OP STACK=32k CFLAGS += -D__QNX__ -D__UNIX__ ASFLAGS += -d__QNX__ -d__UNIX__ LIB_OS = QNX4.ELIF $(USE_OS232).IF $(BUILD_DLL) CFLAGS += -bm-bd-bt=os2-sg-DBUILD_DLL ASFLAGS += -dBUILD_DLL.ELSE CFLAGS += -bm-bt=os2-sg.ENDIF DX_ASFLAGS += -d__OS2__ LIB_OS = os232.ELIF $(USE_SNAP) # Build 32 bit Snap app.IF $(BUILD_DLL) CFLAGS += -bm-bd-bt=nt-DBUILD_DLL ASFLAGS += -dBUILD_DLL.ELSE CFLAGS += -bm-bt=nt-D_WIN32.ENDIF LDFLAGS += OP nodefaultlibs.IF $(STKCALL) DEFLIBS := clib3s.lib,math3s.lib,noemu387.lib,.ELSE DEFLIBS := clib3r.lib,math3r.lib,noemu387.lib,.ENDIF LIB_OS = SNAP.ELIF $(USE_WIN32) # Build 32 bit Windows NT app.IF $(WIN32_GUI).ELSE CFLAGS += -D__CONSOLE__.ENDIF.IF $(BUILD_DLL) CFLAGS += -bm-bd-bt=nt-sg-DBUILD_DLL -D_WIN32 ASFLAGS += -dBUILD_DLL.ELSE CFLAGS += -bm-bt=nt-sg-D_WIN32.ENDIF DX_ASFLAGS += -d__WINDOWS32__ LIB_OS = WIN32 DEFLIBS := kernel32.lib,user32.lib,gdi32.lib,advapi32.lib,shell32.lib,winmm.lib,comdlg32.lib,comctl32.lib,ole32.lib,oleaut32.lib,version.lib,winspool.lib,uuid.lib,wsock32.lib,rpcrt4.lib,.ELIF $(USE_WIN386) # Build 32 bit Win386 extended app.IF $(BUILD_DLL) CFLAGS += -bd-bt=windows-DBUILD_DLL ASFLAGS += -dBUILD_DLL.ELSE CFLAGS += -bt=windows.ENDIF DX_ASFLAGS += -d__WIN386__ LIB_OS = WIN386.ELIF $(USE_PMODEW) # PMODE/W CFLAGS += -bt=dos USE_DOS4GW := 1 USE_REALDOS := 1 LDFLAGS += SYS PMODEW DX_CFLAGS += -DDOS4GW DX_ASFLAGS += -dDOS4GW LIB_OS = DOS32.ELIF $(USE_CAUSEWAY) # Causeway CFLAGS += -bt=dos USE_DOS4GW := 1 USE_REALDOS := 1 LDFLAGS += SYS CAUSEWAY DX_CFLAGS += -DDOS4GW DX_ASFLAGS += -dDOS4GW LIB_OS = DOS32.ELIF $(USE_DOS32A) # DOS32/A CFLAGS += -bt=dos USE_DOS4GW := 1 USE_REALDOS := 1 LDFLAGS += SYS DOS32A DX_CFLAGS += -DDOS4GW DX_ASFLAGS += -dDOS4GW LIB_OS = DOS32.ELSE # Use DOS4GW CFLAGS += -bt=dos USE_DOS4GW := 1 USE_REALDOS := 1 LDFLAGS += SYS DOS4G DX_CFLAGS += -DDOS4GW DX_ASFLAGS += -dDOS4GW LIB_OS = DOS32.END# Disable linking to default C runtime library and PM library.IF $(NO_RUNTIME)LDFLAGS += OP nodefaultlibsDEFLIBS :=.ELSE# Place to look for PM library files.IF $(USE_SNAP) # Build 32 bit Snap app or dllPMLIB :=.ELIF $(USE_WIN32).IF $(STKCALL)PMLIB := spm.lib,.ELSEPMLIB := pm.lib,.ENDIF.ELIF $(USE_OS232).IF $(STKCALL).IF $(USE_OS2GUI)PMLIB := spm_pm.lib,.ELSEPMLIB := spm.lib,.ENDIF.ELSE.IF $(USE_OS2GUI)PMLIB := pm_pm.lib,.ELSEPMLIB := pm.lib,.ENDIF.ENDIF.ELIF $(USE_QNX4).IF $(STKCALL)PMLIB := libspm.a,.ELSEPMLIB := libpm.a,.ENDIF.ELIF $(USE_TNT).IF $(STKCALL)PMLIB := tnt\spm.lib,.ELSEPMLIB := tnt\pm.lib,.ENDIF.ELIF $(USE_X32).IF $(STKCALL)PMLIB := x32\spm.lib,.ELSEPMLIB := x32\pm.lib,.ENDIF.ELSE.IF $(STKCALL)PMLIB := dos4gw\spm.lib,.ELSEPMLIB := dos4gw\pm.lib,.ENDIF.ENDIF.ENDIF# Define the base directory for library files.IF $(CHECKED)LIB_BASE_DIR := $(SCITECH_LIB)\lib\debugCFLAGS += -DCHECKED=1.ELSELIB_BASE_DIR := $(SCITECH_LIB)\lib\release.ENDIF# Define where to install library files LIB_BASE := $(LIB_BASE_DIR)\$(LIB_OS)\$(WC_LIBBASE) LIB_DEST := $(LIB_BASE) LDFLAGS += op map# Define which file contains our rules RULES_MAK := wc32.mk
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -