123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178 |
- #############################################################################
- #
- # 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.
- #
- # Symantec C++ 6.x/7.x 32 bit version. Supports the DOSX
- # extender, FlashTek X32 and Phar Lap's TNT DOS Extender
- # and 32 bit Windows 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 SC_LIBBASE
- # We are compiling for a 32 bit envionment
- _32BIT_ := 1
- # Default commands for compiling, assembling linking and archiving
- CC := sc # C-compiler and flags
- CFLAGS := -Jm
- .IF $(USE_TASM32)
- AS := tasm32
- .ELIF $(USE_TASMX)
- AS := tasmx # Assembler and flags
- .ELSE
- AS := tasm # Assembler and flags
- .ENDIF
- .IF $(USE_WIN32)
- ASFLAGS := /t /mx /m /D__FLAT__ /iINCLUDE /i$(SCITECH)\INCLUDE
- .ELSE
- ASFLAGS := /t /mx /m /DES_NOT_DS /D__COMM__ /i$(SCITECH)\INCLUDE
- .ENDIF
- LD := sc # Loader and flags
- LD_FLAGS =
- RC := rcc # WIndows resource compiler
- RCFLAGS := -32 # Mark as Win32 compatible resources
- LIB := lib # Librarian
- LIBFLAGS := /N /B
- ILIB := implib # Import librarian
- ILIBFLAGS :=
- # Optionally turn on debugging information
- .IF $(DBG)
- CFLAGS += -g # Turn on debugging for C compiler (FlashView)
- .IF $(USE_TNT)
- LDFLAGS += -fullsym # Turn on debugging for TNT 386link linker
- .END
- .IF $(USE_X32) or $(USE_X32VM)
- LDFLAGS += -L/map # Turn on debugging for FlashView debugger
- .END
- .ELSE
- ASFLAGS += /q # Suppress object records not needed for linking
- .END
- # Optionally turn on optimisations
- .IF $(OPT)
- CFLAGS += -5 -o+all
- .ELIF $(OPT_SIZE)
- CFLAGS += -5 -o+space
- .END
- # Optionally turn on direct i387 FPU instructions
- .IF $(FPU)
- CFLAGS += -ff -DFPU387
- ASFLAGS += -DFPU387 -DFPU_REG_RTN
- .END
- # Optionally compile a beta release version of a product
- .IF $(BETA)
- CFLAGS += -DBETA
- ASFLAGS += -DBETA
- .END
- # User a larger stack if requested
- .IF $(STKSIZE)
- LDFLAGS += =$(STKSIZE)
- .ENDIF
- .IF $(USE_TNT) # Use Phar Lap's TNT DOS Extender
- CFLAGS += -mp
- DX_CFLAGS += -DTNT
- ASFLAGS += /D__FLAT__
- DX_ASFLAGS += -DTNT
- LD := 386link
- LDFLAGS += @sc32.dos -exe $@
- LIB_OS = DOS32
- .ELIF $(USE_X32VM) # Use FlashTek X-32VM DOS extender
- CFLAGS += -mx
- DX_CFLAGS += -DX32VM
- ASFLAGS += /D__X386__
- DX_ASFLAGS += -DX32VM
- LD := sc
- LDFLAGS += $(CFLAGS) x32v.lib
- LIB_OS = DOS32
- .ELIF $(USE_X32) # Use FlashTek X-32 DOS extender
- CFLAGS += -mx
- DX_CFLAGS += -DX32VM
- ASFLAGS += /D__X386__
- DX_ASFLAGS += -DX32VM
- LD := sc
- LDFLAGS += $(CFLAGS) x32.lib
- LIB_OS = DOS32
- .ELIF $(USE_WIN32) # Build 32 bit Windows NT app
- .IF $(BUILD_DLL)
- CFLAGS += -WD -mn
- ASFLAGS += -DBUILD_DLL
- .ELSE
- CFLAGS += -WA -mn
- .ENDIF
- DX_ASFLAGS += -D__WINDOWS32__
- LIB_OS = WIN32
- .ELSE # Use default Symantec DOSX extender
- USE_DOSX := 1
- USE_REALDOS := 1
- CFLAGS += -mx
- DX_CFLAGS += -DDOSX
- ASFLAGS += /D__X386__
- DX_ASFLAGS += -DDOSX
- LD := sc
- LDFLAGS += $(CFLAGS)
- LIB_OS = DOS32
- .END
- # Place to look for PMODE library files
- .IF $(USE_TNT)
- PMLIB := tnt\pm.lib
- .ELIF $(USE_X32)
- PMLIB := x32\pm.lib
- .ELSE
- PMLIB := dosx\pm.lib
- .END
- # 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)\$(SC_LIBBASE)
- LIB_DEST := $(LIB_BASE)
- # Define which file contains our rules
- RULES_MAK := sc32.mk
|