diff options
Diffstat (limited to 'board/MAI/bios_emulator/scitech/makedefs/wc32.mk')
-rwxr-xr-x | board/MAI/bios_emulator/scitech/makedefs/wc32.mk | 353 |
1 files changed, 353 insertions, 0 deletions
diff --git a/board/MAI/bios_emulator/scitech/makedefs/wc32.mk b/board/MAI/bios_emulator/scitech/makedefs/wc32.mk new file mode 100755 index 0000000..e5175ca --- /dev/null +++ b/board/MAI/bios_emulator/scitech/makedefs/wc32.mk @@ -0,0 +1,353 @@ +############################################################################# +# +# 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 nodefaultlibs +DEFLIBS := +.ELSE + +# Place to look for PM library files + +.IF $(USE_SNAP) # Build 32 bit Snap app or dll +PMLIB := +.ELIF $(USE_WIN32) +.IF $(STKCALL) +PMLIB := spm.lib, +.ELSE +PMLIB := pm.lib, +.ENDIF +.ELIF $(USE_OS232) +.IF $(STKCALL) +.IF $(USE_OS2GUI) +PMLIB := spm_pm.lib, +.ELSE +PMLIB := spm.lib, +.ENDIF +.ELSE +.IF $(USE_OS2GUI) +PMLIB := pm_pm.lib, +.ELSE +PMLIB := pm.lib, +.ENDIF +.ENDIF +.ELIF $(USE_QNX4) +.IF $(STKCALL) +PMLIB := libspm.a, +.ELSE +PMLIB := libpm.a, +.ENDIF +.ELIF $(USE_TNT) +.IF $(STKCALL) +PMLIB := tnt\spm.lib, +.ELSE +PMLIB := tnt\pm.lib, +.ENDIF +.ELIF $(USE_X32) +.IF $(STKCALL) +PMLIB := x32\spm.lib, +.ELSE +PMLIB := x32\pm.lib, +.ENDIF +.ELSE +.IF $(STKCALL) +PMLIB := dos4gw\spm.lib, +.ELSE +PMLIB := dos4gw\pm.lib, +.ENDIF +.ENDIF +.ENDIF + +# Define the base directory for library files + +.IF $(CHECKED) +LIB_BASE_DIR := $(SCITECH_LIB)\lib\debug +CFLAGS += -DCHECKED=1 +.ELSE +LIB_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 |