Missing files
This commit is contained in:
parent
e489cc85d0
commit
6839af03c6
13 changed files with 5328 additions and 0 deletions
302
MAKEDEFS.BCC
Normal file
302
MAKEDEFS.BCC
Normal file
|
@ -0,0 +1,302 @@
|
|||
# Copyright (c) 1993 Argonaut Software Ltd. All rights reserved.
|
||||
#
|
||||
# $Id: makedefs.bcc 1.5 1995/06/30 16:09:20 sam Exp $
|
||||
# $Locker: $
|
||||
#
|
||||
# General defines, rules and macros for BRender
|
||||
#
|
||||
# Borland BC 4 (32 bit)
|
||||
#
|
||||
|
||||
# Pick up configuration from environment, if not defined, pick defaults
|
||||
#
|
||||
.IMPORT .IGNORE: LONG_ARGS
|
||||
|
||||
# Type of executable to produce - debug, profile, or release
|
||||
#
|
||||
.IF $(BUILD) ==
|
||||
.IMPORT .IGNORE: BUILD
|
||||
.END
|
||||
|
||||
BUILD*:=RELEASE
|
||||
|
||||
# Target type
|
||||
#
|
||||
.IF $(TARGET_TYPE) ==
|
||||
.IMPORT .IGNORE: TARGET_TYPE
|
||||
.END
|
||||
|
||||
TARGET_TYPE*:=LIB
|
||||
|
||||
# Extender
|
||||
#
|
||||
.IF $(EXTENDER) ==
|
||||
.IMPORT .IGNORE: EXTENDER
|
||||
.END
|
||||
|
||||
EXTENDER*:=PHARLAP
|
||||
|
||||
# Library base type
|
||||
#
|
||||
.IF $(BASE_TYPE) ==
|
||||
.IMPORT .IGNORE: BASE_TYPE
|
||||
.END
|
||||
|
||||
BASE_TYPE*:=FIXED
|
||||
|
||||
# Compiler part of library name - Borland C
|
||||
#
|
||||
LIB_SUFFIX_C=b
|
||||
|
||||
# Pick a library suffix based on library type
|
||||
#
|
||||
.IF $(BASE_TYPE) == FLOAT
|
||||
LIB_SUFFIX_T=f
|
||||
.ELIF $(BASE_TYPE) == FIXED
|
||||
LIB_SUFFIX_T=x
|
||||
.ELIF $(BASE_TYPE) == NONE
|
||||
LIB_SUFFIX_T=
|
||||
.ELSE
|
||||
Unknown_BASE_TYPE:
|
||||
.END
|
||||
|
||||
## Build flags
|
||||
##
|
||||
OBJ_EXT:=.obj
|
||||
LIB_EXT:=.lib
|
||||
AS:=ml
|
||||
CC:=bcc32
|
||||
H2I:=h2inc
|
||||
MKDEPFLAGS= -s -t -I$(BLD_DIR) $(INCLUDES)
|
||||
PERL=perl
|
||||
|
||||
# Flags for each process are constructed from
|
||||
# a common prt, a per build part, and a per app. part
|
||||
#
|
||||
ASFLAGS=$(BASE_ASFLAGS) $(BUILD_ASFLAGS) $(EXTRA_ASFLAGS)
|
||||
CFLAGS=$(BASE_CFLAGS) $(BUILD_CFLAGS) $(EXTRA_CFLAGS)
|
||||
H2IFLAGS=$(BASE_H2IFLAGS) $(BUILD_H2IFLAGS) $(EXTRA_H2IFLAGS)
|
||||
|
||||
# Base flags
|
||||
#
|
||||
BASE_CFLAGS=-c -a4 -w- -DBASED_$(BASE_TYPE)=1 $(INCLUDES)
|
||||
|
||||
BASE_ASFLAGS=-c -nologo -Cp -D__BORLANDC__=1 -DBASED_$(BASE_TYPE)=1 -I$(BLD_DIR) $(INCLUDES)
|
||||
|
||||
BASE_H2IFLAGS=/nologo /G3 /Zp4 /C /D__BORLANDC__ /D__H2INC__\
|
||||
/D_NO_PROTOTYPES -DBASED_$(BASE_TYPE)=1 $(INCLUDES)
|
||||
|
||||
.IF $(BUILD) == RELEASE
|
||||
# Release Flags
|
||||
#
|
||||
BUILD_CFLAGS =-5 -Ox -DDEBUG=0 -DPARANOID=0 -DSTATIC=static
|
||||
BUILD_LDFLAGS =$(RELEASE_LDFLAGS)
|
||||
BUILD_ASFLAGS =
|
||||
BUILD_H2IFLAGS=
|
||||
LIB_SUFFIX_B:=r
|
||||
|
||||
.ELIF $(BUILD) == TEST
|
||||
# Check Flags (Release library with validation checks for debugging user code)
|
||||
#
|
||||
BUILD_CFLAGS =-DDEBUG=0 -DPARANOID=1 -DSTATIC=static
|
||||
BUILD_LDFLAGS =$(TEST_LDFLAGS)
|
||||
BUILD_ASFLAGS =-DDEBUG=0 -DCHECK=1
|
||||
BUILD_H2IFLAGS=-DDEBUG=0 -DCHECK=1
|
||||
LIB_SUFFIX_B:=t
|
||||
|
||||
|
||||
.ELIF $(BUILD) == DEBUG
|
||||
# Debug Flags
|
||||
#
|
||||
BUILD_CFLAGS =-v -DDEBUG=1 -DPARANOID=1 -DSTATIC=
|
||||
BUILD_LDFLAGS =$(DEBUG_LDFLAGS)
|
||||
BUILD_ASFLAGS =-Zd
|
||||
BUILD_H2IFLAGS=
|
||||
LIB_SUFFIX_B:=d
|
||||
|
||||
.ELIF $(BUILD) == PROFILE
|
||||
# Profile Flags
|
||||
#
|
||||
BUILD_CFLAGS =-v -DDEBUG=0 -DPARANOID=0 -DSTATIC=
|
||||
BUILD_LDFLAGS =$(PROFILE_LDFLAGS)
|
||||
BUILD_ASFLAGS =-Zd
|
||||
BUILD_H2IFLAGS=
|
||||
LIB_SUFFIX_B:=p
|
||||
|
||||
.ELSE
|
||||
Error - Unknown build type
|
||||
.END
|
||||
|
||||
## The build directory
|
||||
##
|
||||
LIB_TYPE:=$(LIB_SUFFIX_C)$(LIB_SUFFIX_T)$(LIB_SUFFIX_B)$(LIB_SUFFIX)
|
||||
|
||||
BLD_BASE*:=bld
|
||||
|
||||
BLD_DIR:=$(BLD_BASE)_$(LIB_TYPE)
|
||||
|
||||
## The library name <part><compiler><type><build><optional>.lib
|
||||
##
|
||||
LIB_NAME:=$(BASE_DIR)/lib/$(LIB_PART)$(LIB_TYPE).lib
|
||||
|
||||
# Keep proper dependencies (per build type)
|
||||
#
|
||||
.KEEP_STATE:=$(BLD_DIR)/state.out
|
||||
|
||||
## Generic rule for building objects and ASM header files
|
||||
##
|
||||
.IF $(LONG_ARGS)X != X
|
||||
|
||||
# Use environment variables to cut down the cmmand line size
|
||||
#
|
||||
$(BLD_DIR)/%.obj : %.c
|
||||
$(CC) @$(mktmp,bcc32.rsp $(CFLAGS:s,\,\\,)) -o$(@:s,/,\,) $<
|
||||
|
||||
$(BLD_DIR)/%.obj : %.asm
|
||||
$(AS) @$(mktmp $(ASFLAGS:s,\,\\,)) -Fo$(@:s,/,\,) $<
|
||||
|
||||
%.obj : %.c
|
||||
$(CC) @$(mktmp,bcc32.rsp $(CFLAGS:s,\,\\,)) -o$(@:s,/,\,) $<
|
||||
|
||||
%.pp : %.c
|
||||
$(CC) @$(mktmp,bcc32.rsp $(CFLAGS:s,\,\\,)) -o$(@:s,/,\,) -pc $<
|
||||
|
||||
%.cod : %.c
|
||||
$(CC) @$(mktmp,bcc32.rsp $(CFLAGS:s,\,\\,)) -FAs -Fa$(@:s,/,\,) -$<
|
||||
|
||||
%.obj : %.asm
|
||||
$(AS) @$(mktmp $(ASFLAGS)) -Fo$(@:s,/,\,) $<
|
||||
|
||||
$(BLD_DIR)/%.inc : %.h
|
||||
@[
|
||||
set H2INC=$(H2IFLAGS) /Fa$@ $<
|
||||
$(H2I)
|
||||
]
|
||||
|
||||
$(BLD_DIR)\%.inc : %.h
|
||||
@[
|
||||
set H2INC=$(H2IFLAGS) /Fa$@ $<
|
||||
$(H2I)
|
||||
]
|
||||
.ELSE
|
||||
# Pass argumants normally
|
||||
#
|
||||
$(BLD_DIR)/%.obj : %.c
|
||||
$(CC) $(CFLAGS) -Fo$(@:s,/,\,) $<
|
||||
|
||||
$(BLD_DIR)/%.obj : %.asm
|
||||
$(AS) $(ASFLAGS) -c -Fo$(@:s,/,\,) $<
|
||||
|
||||
%.obj : %.c
|
||||
$(CC) $(CFLAGS) -Fo$(@:s,/,\,) $<
|
||||
|
||||
%.obj : %.asm
|
||||
$(AS) $(ASFLAGS) -c -Fo$(@:s,/,\,) $<
|
||||
|
||||
$(BLD_DIR)/%.inc : %.h
|
||||
$(H2I) $(H2IFLAGS) /Fa$@ $<
|
||||
|
||||
$(BLD_DIR)\%.inc : %.h
|
||||
$(H2I) $(H2IFLAGS) /Fa$@ $<
|
||||
|
||||
.END
|
||||
|
||||
## Build ASM function prototype files
|
||||
##
|
||||
%.h .NOSTATE: %.fns
|
||||
$(PERL) $(BASE_DIR)\bin\genasmpr.pl $< >$@
|
||||
|
||||
## The final target
|
||||
##
|
||||
OBJS:=$(OBJS_C) $(OBJS_ASM)
|
||||
LDLIBS=$(BASE_LDLIBS) $(EXTRA_LDLIBS)
|
||||
|
||||
.IF $(TARGET_TYPE) == LIB
|
||||
|
||||
# Library
|
||||
#
|
||||
"$(LIB_NAME)": $(OBJS)
|
||||
-rm -f $@
|
||||
# +tlib $(@:s,/,\,) @$(mktmp,tlib.rsp +$(&:t"+&\n":s,/,\\,))
|
||||
# 386lib $(@:s,/,\,) -twocase @$(mktmp,386lib.lbc -add $(&:t"\n-add ":s,/,\\,))
|
||||
t:\watcom10\binb\wlib -n -q $(@:s,/,\\) @$(mktmp,lib.rsp +$(<:t" +":s,\,\\,:s,/,\\)\n)
|
||||
|
||||
.ELSE
|
||||
|
||||
.IF $(EXTENDER) == PHARLAP
|
||||
|
||||
# Executable - Pharlap
|
||||
#
|
||||
BASE_LDFLAGS:=-stack 65536
|
||||
DEBUG_LDFLAGS:=
|
||||
PROFILE_LDFLAGS:=
|
||||
RELEASE_LDFLAGS:=
|
||||
TEST_LDFLAGS:=
|
||||
|
||||
BASE_LDLIBS:=
|
||||
|
||||
LIB_SUFFIX_EXTENDER:=pl
|
||||
|
||||
$(TARGET): $(EXTRA_LDLIBS)
|
||||
$(TARGET): $(OBJS)
|
||||
386link @bcc32.dos -exe $(@:s,/,\,) @$(mktmp,386link.rsp $(<:t"\n":s,\,\\,)\n\
|
||||
$(BASE_LDFLAGS)\n\
|
||||
$(BUILD_LDFLAGS)\n\
|
||||
$(EXTRA_LDFLAGS)\n\
|
||||
-lib $(LDLIBS:s,\,\\,:s,/,\\,)\n\
|
||||
)
|
||||
|
||||
.ELIF $(EXTENDER) == POWERPACK
|
||||
|
||||
|
||||
# Executable - Powerpack
|
||||
#
|
||||
BASE_LDFLAGS:=-Tpe -ax
|
||||
DEBUG_LDFLAGS:=-v
|
||||
PROFILE_LDFLAGS:=-v
|
||||
RELEASE_LDFLAGS:=
|
||||
TEST_LDFLAGS:=
|
||||
|
||||
BASE_LDLIBS:=dpmi32.lib cw32.lib
|
||||
|
||||
LIB_SUFFIX_EXTENDER:=pp
|
||||
|
||||
$(TARGET): $(EXTRA_LDLIBS)
|
||||
$(TARGET): $(OBJS)
|
||||
tlink32 $(BASE_LDFLAGS) $(BUILD_LDFLAGS) $(EXTRA_LDFLAGS) \
|
||||
@$(mktmp,tlink32.rsp \
|
||||
c0x32.obj+\n\
|
||||
$(<:t"+\n":s,\,\\,:s,/,\\,)\n\
|
||||
$(@:s,/,\,)\n\
|
||||
$(*:s,/,\,)\n\
|
||||
$(LDLIBS:t"+\n":s,\,\\,:s,/,\\,)\
|
||||
)
|
||||
.ELSE
|
||||
Unknown_EXTENDER:
|
||||
.END
|
||||
.END
|
||||
|
||||
## Object directory
|
||||
##
|
||||
$(BLD_DIR)/exists:
|
||||
-mkdir $(BLD_DIR)
|
||||
echo $(BLD_DIR) >$(BLD_DIR)\exists
|
||||
.IF $(LIB_INC)
|
||||
$(MAKE) $(MAKEFILE) $(BLD_DIR)/$(LIB_INC).inc
|
||||
.END
|
||||
|
||||
# Dependencies
|
||||
#
|
||||
SRCS:=$(OBJS_C:s/.obj/.c/) $(OBJS_ASM:s/.obj/.asm/)
|
||||
|
||||
depend: $(BLD_DIR)/exists
|
||||
sed "s/^$(BLD_DIR)\///" <$(mktmp,_mkdep.tmp $(SRCS:t"\n":s,\,/,)\n) >_mkdep.rsp
|
||||
$(MKDEP) $(MKDEPFLAGS) @_mkdep.rsp -o_depend.tmp
|
||||
sed "s/^/$(BLD_DIR)\//" <_depend.tmp >$(BLD_DIR)\\depend.out
|
||||
$(RM) _mkdep.rsp
|
||||
$(RM) _depend.tmp
|
||||
|
||||
|
||||
.INCLUDE .IGNORE: $(BLD_DIR)/depend.out
|
||||
|
||||
|
280
MAKEDEFS.DJG
Normal file
280
MAKEDEFS.DJG
Normal file
|
@ -0,0 +1,280 @@
|
|||
# Copyright (c) 1993 Argonaut Software Ltd. All rights reserved.
|
||||
#
|
||||
# $Id: makedefs.djg 1.6 1995/06/30 16:09:23 sam Exp $
|
||||
# $Locker: $
|
||||
#
|
||||
# General defines, rules and macros for BRender built with DJGPP GNU C
|
||||
#
|
||||
|
||||
# Pick up configuration from environment, if not defined, pick defaults
|
||||
#
|
||||
.IMPORT .IGNORE: LONG_ARGS
|
||||
|
||||
# Type of executable to produce - debug, profile, or release
|
||||
#
|
||||
.IF $(BUILD) ==
|
||||
.IMPORT .IGNORE: BUILD
|
||||
.ENDIF
|
||||
|
||||
BUILD*:=RELEASE
|
||||
|
||||
# Extender
|
||||
#
|
||||
.IF $(EXTENDER) ==
|
||||
.IMPORT .IGNORE: EXTENDER
|
||||
.END
|
||||
|
||||
EXTENDER*:=GO32
|
||||
|
||||
# Library base type
|
||||
#
|
||||
.IF $(BASE_TYPE) ==
|
||||
.IMPORT .IGNORE: BASE_TYPE
|
||||
.ENDIF
|
||||
|
||||
BASE_TYPE*:=FIXED
|
||||
|
||||
# Compiler part of library name - Watcom
|
||||
#
|
||||
LIB_SUFFIX_C=g
|
||||
|
||||
# Pick a library suffix based on library type
|
||||
#
|
||||
.IF $(BASE_TYPE) == FLOAT
|
||||
LIB_SUFFIX_T=f
|
||||
.ELIF $(BASE_TYPE) == FIXED
|
||||
LIB_SUFFIX_T=x
|
||||
.ELIF $(BASE_TYPE) == NONE
|
||||
LIB_SUFFIX_T=
|
||||
.ELSE
|
||||
Unknown_BASE_TYPE
|
||||
.ENDIF
|
||||
|
||||
## Build flags
|
||||
##
|
||||
OBJ_EXT:=.o
|
||||
LIB_EXT:=.a
|
||||
AS:=ml
|
||||
CC:=gccrm
|
||||
LD:=gcc
|
||||
H2I:=h2inc
|
||||
MKDEPFLAGS= -s -t -I$(BLD_DIR) $(INCLUDES)
|
||||
PERL=perl
|
||||
GNUAS=as
|
||||
WDISASM=wdisasm
|
||||
|
||||
# Flags for each process are constructed from
|
||||
# a common prt, a per build part, and a per app. part
|
||||
#
|
||||
ASFLAGS=$(BASE_ASFLAGS) $(BUILD_ASFLAGS) $(EXTRA_ASFLAGS)
|
||||
CFLAGS=$(BASE_CFLAGS) $(BUILD_CFLAGS) $(EXTRA_CFLAGS)
|
||||
H2IFLAGS=$(BASE_H2IFLAGS) $(BUILD_H2IFLAGS) $(EXTRA_H2IFLAGS)
|
||||
|
||||
# Base flags
|
||||
#
|
||||
BASE_CFLAGS =-c -m486 -DBASED_$(BASE_TYPE)=1 $(INCLUDES:s,\,/,)
|
||||
BASE_ASFLAGS =-nologo -Cp -D__GNUC__=1 -DBASED_$(BASE_TYPE)=1 -I$(BLD_DIR) $(INCLUDES)
|
||||
BASE_H2IFLAGS=/nologo /G3 /Zp4 /C /D__GNUC__ /D__H2INC__ /D_NO_PROTOTYPES -DBASED_$(BASE_TYPE)=1 $(INCLUDES)
|
||||
|
||||
.IF $(BUILD) == RELEASE
|
||||
# Release Flags
|
||||
#
|
||||
BUILD_CFLAGS =-O2 -DDEBUG=0 -DPARANOID=0 -DSTATIC=static
|
||||
BUILD_LDFLAGS =$(RELEASE_LDFLAGS)
|
||||
BUILD_ASFLAGS =
|
||||
BUILD_H2IFLAGS=
|
||||
LIB_SUFFIX_B:=r
|
||||
|
||||
.ELIF $(BUILD) == TEST
|
||||
# Test Flags
|
||||
#
|
||||
BUILD_CFLAGS =-g -DDEBUG=0 -DPARANOID=1 -DSTATIC=
|
||||
BUILD_LDFLAGS =$(TEST_LDFLAGS)
|
||||
BUILD_ASFLAGS =
|
||||
BUILD_H2IFLAGS=
|
||||
LIB_SUFFIX_B:=d
|
||||
|
||||
.ELIF $(BUILD) == DEBUG
|
||||
# Debug Flags
|
||||
#
|
||||
BUILD_CFLAGS =-g -DDEBUG=1 -DPARANOID=1 -DSTATIC=
|
||||
BUILD_LDFLAGS =$(DEBUG_LDFLAGS)
|
||||
BUILD_ASFLAGS =
|
||||
BUILD_H2IFLAGS=
|
||||
LIB_SUFFIX_B:=d
|
||||
|
||||
.ELIF $(BUILD) == PROFILE
|
||||
# Profile Flags
|
||||
#
|
||||
BUILD_CFLAGS =-O2 -pg -DDEBUG=0 -DPARANOID=0 -DSTATIC=
|
||||
BUILD_LDFLAGS =$(PROFILE_LDFLAGS)
|
||||
BUILD_ASFLAGS =
|
||||
BUILD_H2IFLAGS=
|
||||
LIB_SUFFIX_B:=p
|
||||
|
||||
.ELSE
|
||||
Error - Unknown build type
|
||||
.ENDIF
|
||||
|
||||
## The build directory
|
||||
##
|
||||
LIB_TYPE:=$(LIB_SUFFIX_C)$(LIB_SUFFIX_T)$(LIB_SUFFIX_B)$(LIB_SUFFIX)
|
||||
|
||||
BLD_BASE*:=bld
|
||||
|
||||
BLD_DIR:=$(BLD_BASE)_$(LIB_TYPE)
|
||||
|
||||
## The library name <part><compiler><type><build><optional>.a
|
||||
##
|
||||
LIB_NAME:=$(BASE_DIR)/lib/$(LIB_PART)$(LIB_TYPE).a
|
||||
|
||||
# Keep proper dependencies (per build type)
|
||||
#
|
||||
.KEEP_STATE:=$(BLD_DIR)/state.out
|
||||
|
||||
## Generic rule for building objects and ASM header files
|
||||
##
|
||||
.IF $(LONG_ARGS)X != X
|
||||
|
||||
# Use environment variables to cut down the cmmand line size
|
||||
#
|
||||
$(BLD_DIR)/%.o : %.c
|
||||
$(CC) @$(mktmp $(CFLAGS)) -o $(@:s,\,/,) $<
|
||||
|
||||
$(BLD_DIR)/%.o : %.asm
|
||||
@[
|
||||
set ML=$(ASFLAGS) -c -Fo$(TMP)tmp.obj $<
|
||||
$(AS)
|
||||
$(WDISASM) -au -l=tmp.lst $(TMP)tmp.obj
|
||||
$(PERL) $(BASE_DIR)/bin/wat2gas.pl $(TMP)tmp.lst >$(TMP)tmp.s
|
||||
$(GNUAS) $(TMP)tmp.s -o $(@:s,/,\,)
|
||||
$(RM) $(TMP)tmp.obj
|
||||
$(RM) $(TMP)tmp.lst
|
||||
$(RM) $(TMP)tmp.s
|
||||
]
|
||||
|
||||
%.o : %.c
|
||||
$(CC) @$(mktmp $(CFLAGS)) -o $(@:s,\,/,) $<
|
||||
|
||||
%.s : %.c
|
||||
$(CC) @$(mktmp $(CFLAGS)) -S -o $(@:s,\,/,) $<
|
||||
|
||||
%.o : %.asm
|
||||
@[
|
||||
set ML=$(ASFLAGS) -c -Fo$(TMP)tmp.obj $<
|
||||
$(AS)
|
||||
$(WDISASM) -au -l=tmp.lst $(TMP)tmp.obj
|
||||
$(PERL) $(BASE_DIR)/bin/wat2gas.pl $(TMP)tmp.lst >$(TMP)tmp.s
|
||||
$(GNUAS) $(TMP)tmp.s -o $(@:s,/,\,)
|
||||
$(RM) $(TMP)tmp.obj
|
||||
$(RM) $(TMP)tmp.lst
|
||||
$(RM) $(TMP)tmp.s
|
||||
]
|
||||
|
||||
$(BLD_DIR)/%.inc : %.h
|
||||
@[
|
||||
set H2INC=$(H2IFLAGS) /Fa$@ $<
|
||||
$(H2I)
|
||||
]
|
||||
|
||||
$(BLD_DIR)\%.inc : %.h
|
||||
@[
|
||||
set H2INC=$(H2IFLAGS) /Fa$@ $<
|
||||
$(H2I)
|
||||
]
|
||||
.ELSE
|
||||
# Pass argumants normally
|
||||
#
|
||||
$(BLD_DIR)/%.o : %.c
|
||||
$(CC) $(CFLAGS) -o$(@:s,\,/,) $<
|
||||
|
||||
$(BLD_DIR)/%.o : %.asm
|
||||
$(AS) $(ASFLAGS) -c -coff -Fo$@ $<
|
||||
|
||||
%.o : %.c
|
||||
$(CC) $(CFLAGS) -o$(@:s,\,/,) $<
|
||||
|
||||
%.o : %.asm
|
||||
$(AS) $(ASFLAGS) -c -Fo$(TMP)tmp.obj $<
|
||||
$(WDISASM) -au -l=tmp.lst $(TMP)tmp.obj
|
||||
$(PERL) $(BASE_DIR)/bin/wat2gas.pl $(TMP)tmp.lst >$(TMP)tmp.s
|
||||
$(GNUAS) $(TMP)tmp.s -o $(@:s,/,\,)
|
||||
$(RM) $(TMP)tmp.obj
|
||||
$(RM) $(TMP)tmp.lst
|
||||
$(RM) $(TMP)tmp.s
|
||||
|
||||
$(BLD_DIR)/%.inc : %.h
|
||||
$(H2I) $(H2IFLAGS) /Fa$@ $<
|
||||
|
||||
$(BLD_DIR)\%.inc : %.h
|
||||
$(H2I) $(H2IFLAGS) /Fa$@ $<
|
||||
|
||||
.ENDIF
|
||||
|
||||
## Build ASM function prototype files
|
||||
##
|
||||
%.h .NOSTATE: %.fns
|
||||
$(PERL) $(BASE_DIR)\bin\genasmpr.pl $< >$@
|
||||
|
||||
## The final target
|
||||
##
|
||||
OBJS := $(OBJS_C) $(OBJS_ASM)
|
||||
LDLIBS=$(BASE_LDLIBS) $(EXTRA_LDLIBS)
|
||||
|
||||
.IF $(TARGET_TYPE) == LIB
|
||||
|
||||
# Library
|
||||
#
|
||||
"$(LIB_NAME)": $(OBJS)
|
||||
-rm -f $@
|
||||
t:\djgpp112\bin\ar -rvs $(@:s,\,/,) @$(mktmp $(OBJS)\n)
|
||||
|
||||
.ELSE
|
||||
.IF $(EXTENDER) == GO32
|
||||
|
||||
# Executable - GO32 extender
|
||||
#
|
||||
BASE_LDFLAGS =
|
||||
DEBUG_LDFLAGS:=-g
|
||||
PROFILE_LDFLAGS:=-g
|
||||
RELEASE_LDFLAGS:=
|
||||
TEST_LDFLAGS:=
|
||||
|
||||
BASE_LDLIBS=-lpc -lm
|
||||
|
||||
LIB_SUFFIX_EXTENDER:=dj
|
||||
|
||||
$(TARGET): $(EXTRA_LDLIBS)
|
||||
$(TARGET): $(OBJS)
|
||||
$(LD) $(BASE_LDFLAGS) $(BUILD_LDFLAGS) \
|
||||
@$(mktmp $(OBJS:t"\n")\n$(LDLIBS:s,\,/,:t"\n")\n) $(EXTRA_LDFLAGS) -o $*
|
||||
coff2exe $*
|
||||
.ELSE
|
||||
Unknown_EXTENDER:
|
||||
.ENDIF
|
||||
.ENDIF
|
||||
|
||||
## Object directory
|
||||
##
|
||||
$(BLD_DIR)/exists:
|
||||
-mkdir $(BLD_DIR)
|
||||
echo $(BLD_DIR) >$(BLD_DIR)\exists
|
||||
.IF $(LIB_INC)
|
||||
%$(MAKE) $(MAKEFILE) $(BLD_DIR)/$(LIB_INC).inc
|
||||
.ENDIF
|
||||
|
||||
# Dependencies
|
||||
#
|
||||
SRCS:=$(OBJS_C:s/.o/.c/) $(OBJS_ASM:s/.o/.asm/)
|
||||
|
||||
depend: $(BLD_DIR)/exists
|
||||
|
||||
depend:
|
||||
sed "s/^$(BLD_DIR)\///" <$(mktmp,_mkdep.tmp $(SRCS:t"\n":s,\,/,)\n) >_mkdep.rsp
|
||||
$(MKDEP) $(MKDEPFLAGS) @_mkdep.rsp -o_depend.tmp
|
||||
sed "s/^/$(BLD_DIR)\//;s/\.obj/\.o/" <_depend.tmp >$(BLD_DIR)\\depend.out
|
||||
$(RM) _mkdep.rsp
|
||||
$(RM) _depend.tmp
|
||||
|
||||
.INCLUDE .IGNORE: $(BLD_DIR)/depend.out
|
||||
|
274
MAKEDEFS.HC1
Normal file
274
MAKEDEFS.HC1
Normal file
|
@ -0,0 +1,274 @@
|
|||
# Copyright (c) 1993 Argonaut Software Ltd. All rights reserved.
|
||||
#
|
||||
# $Id: makedefs.hc1 1.2 1995/02/03 19:58:36 sam Exp $
|
||||
# $Locker: $
|
||||
#
|
||||
# General defines, rules and macros for BRender
|
||||
#
|
||||
# Metaware High-C Version 1.7
|
||||
#
|
||||
|
||||
# Pick up configuration from environment, if not defined, pick defaults
|
||||
#
|
||||
.IMPORT .IGNORE: SERIAL LONG_ARGS
|
||||
|
||||
# Type of executable to produce - debug, profile, or release
|
||||
#
|
||||
.IF $(BUILD)X == X
|
||||
.IMPORT .IGNORE: BUILD
|
||||
.END
|
||||
|
||||
.IF $(BUILD)X == X
|
||||
BUILD=RELEASE
|
||||
.END
|
||||
|
||||
# Target type
|
||||
#
|
||||
.IF $(TARGET_TYPE)X == X
|
||||
.IMPORT .IGNORE: TARGET_TYPE
|
||||
.END
|
||||
|
||||
.IF $(TARGET_TYPE)X == X
|
||||
TARGET_TYPE=LIB
|
||||
.END
|
||||
|
||||
# Library base type
|
||||
#
|
||||
.IF $(BASE_TYPE)X == X
|
||||
.IMPORT .IGNORE: BASE_TYPE
|
||||
.END
|
||||
|
||||
.IF $(BASE_TYPE)X == X
|
||||
BASE_TYPE=FLOAT
|
||||
.END
|
||||
|
||||
# Compiler part of library name - High C Version 1
|
||||
#
|
||||
LIB_SUFFIX_C=1
|
||||
|
||||
# Pick a library suffix based on library type
|
||||
#
|
||||
.IF $(BASE_TYPE) == FLOAT
|
||||
LIB_SUFFIX_T=f
|
||||
.ELIF $(BASE_TYPE) == FIXED
|
||||
LIB_SUFFIX_T=x
|
||||
.ELIF $(BASE_TYPE) == NONE
|
||||
LIB_SUFFIX_T=
|
||||
.ELSE
|
||||
Error - Unknown base type
|
||||
.END
|
||||
|
||||
## Build flags
|
||||
##
|
||||
OBJ_EXT:=.obj
|
||||
LIB_EXT:=.lib
|
||||
AS:=ml
|
||||
CC:=hc386x
|
||||
H2I:=h2inc
|
||||
MKDEPFLAGS= -s -t -I$(BLD_DIR) $(INCLUDES)
|
||||
|
||||
BASE_CFLAGS =-Hon=Pointers_compatible -Hoff=Floating_point -c -D__HIGHC_V1__=1 -DBASED_$(BASE_TYPE)=1 $(INCLUDES)
|
||||
|
||||
BASE_ASFLAGS =-nologo -Cp -D__HIGHC_V1__=1 -D__HIGHC__=1 -DBASED_$(BASE_TYPE)=1 -I$(BLD_DIR) $(INCLUDES)
|
||||
|
||||
BASE_H2IFLAGS=/nologo /G3 /Zp4 /C /D__HIGHC_V1__ /D__HIGHC__ /D__H2INC__\
|
||||
/D_NO_PROTOTYPES -DBASED_$(BASE_TYPE)=1 $(INCLUDES)
|
||||
|
||||
.IF $(BUILD) == RELEASE
|
||||
# Release Flags
|
||||
#
|
||||
BUILD_CFLAGS =-O3 -Hpentium -DDEBUG=0 -DPARANOID=0 -DSTATIC=static
|
||||
BUILD_LDFLAGS =
|
||||
BUILD_ASFLAGS =
|
||||
BUILD_H2IFLAGS=
|
||||
LIB_SUFFIX_B:=r
|
||||
|
||||
.ELIF $(BUILD) == TEST
|
||||
# Check Flags (Release library with validation checks for debugging user code)
|
||||
#
|
||||
BUILD_CFLAGS =-DDEBUG=0 -DPARANOID=1 -DSTATIC=static
|
||||
BUILD_LDFLAGS =
|
||||
BUILD_ASFLAGS =-DDEBUG=0 -DCHECK=1
|
||||
BUILD_H2IFLAGS=-DDEBUG=0 -DCHECK=1
|
||||
LIB_SUFFIX_B:=t
|
||||
|
||||
|
||||
.ELIF $(BUILD) == DEBUG
|
||||
# Debug Flags
|
||||
#
|
||||
BUILD_CFLAGS =-g -DDEBUG=1 -DPARANOID=1 -DSTATIC=
|
||||
BUILD_LDFLAGS =
|
||||
BUILD_ASFLAGS =-Zd
|
||||
BUILD_H2IFLAGS=
|
||||
LIB_SUFFIX_B:=d
|
||||
|
||||
.ELIF $(BUILD) == PROFILE
|
||||
# Profile Flags
|
||||
#
|
||||
BUILD_CFLAGS =-g -DDEBUG=0 -DPARANOID=0 -DSTATIC=
|
||||
BUILD_LDFLAGS =
|
||||
BUILD_ASFLAGS =-Zd
|
||||
BUILD_H2IFLAGS=
|
||||
LIB_SUFFIX_B:=p
|
||||
|
||||
.ELSE
|
||||
Error - Unknown build type
|
||||
.END
|
||||
|
||||
## The build directory
|
||||
##
|
||||
LIB_TYPE:=$(LIB_SUFFIX_C)$(LIB_SUFFIX_T)$(LIB_SUFFIX_B)$(LIB_SUFFIX)
|
||||
|
||||
.IF $(BLD_BASE)X == X
|
||||
BLD_DIR:=bld_$(LIB_TYPE)
|
||||
.ELSE
|
||||
BLD_DIR:=$(BLD_BASE)_$(LIB_TYPE)
|
||||
.END
|
||||
|
||||
## The library name <part><compiler><type><build><optional>.lib
|
||||
##
|
||||
LIB_NAME:=$(BASE_DIR)/lib/$(LIB_PART)$(LIB_TYPE).lib
|
||||
|
||||
# Keep proper dependencies (per build type)
|
||||
#
|
||||
.KEEP_STATE:=$(BLD_DIR)/state.out
|
||||
|
||||
## Generic rule for building objects and ASM header files
|
||||
##
|
||||
.IF $(LONG_ARGS)X != X
|
||||
|
||||
# Use environment variables to cut down the cmmand line size
|
||||
#
|
||||
$(BLD_DIR)/%.obj : %.c
|
||||
$(CC) @$(mktmp,hc386.rsp $(BASE_CFLAGS:s,\,\\,) $(BUILD_CFLAGS:s,\,\\,) $(EXTRA_CFLAGS:s,\,\\,)) -o $(@:s,/,\,) $<
|
||||
|
||||
$(BLD_DIR)/%.obj : %.asm
|
||||
@[
|
||||
set ML=$(BASE_ASFLAGS) $(BUILD_ASFLAGS) $(EXTRA_ASFLAGS) -c -Fo$(@:s,/,\,) $<
|
||||
$(AS)
|
||||
]
|
||||
|
||||
%.obj : %.c
|
||||
@[
|
||||
$(CC) @$(mktmp,hc386.rsp $(BASE_CFLAGS:s,\,\\,) $(BUILD_CFLAGS:s,\,\\,) $(EXTRA_CFLAGS:s,\,\\,)) -o $(@:s,/,\,) $<
|
||||
]
|
||||
|
||||
%.pp : %.c
|
||||
@[
|
||||
set CL=$(BASE_CFLAGS) $(BUILD_CFLAGS) $(EXTRA_CFLAGS) -Fo$(@:s,/,\,) -pc $<
|
||||
$(CC)
|
||||
]
|
||||
|
||||
%.cod : %.c
|
||||
@[
|
||||
set CL=$(BASE_CFLAGS) $(BUILD_CFLAGS) $(EXTRA_CFLAGS) -FAs -Fa$(@:s,/,\,) $<
|
||||
$(CC)
|
||||
]
|
||||
|
||||
%.obj : %.asm
|
||||
@[
|
||||
set ML=$(BASE_ASFLAGS) $(BUILD_ASFLAGS) $(EXTRA_ASFLAGS) -Fo$(@:s,/,\,) $<
|
||||
$(AS)
|
||||
]
|
||||
|
||||
$(BLD_DIR)/%.inc : %.h
|
||||
@[
|
||||
set H2INC=$(BASE_H2IFLAGS) $(BUILD_H2IFLAGS) $(EXTRA_H2IFLAGS) /Fa$@ $<
|
||||
$(H2I)
|
||||
]
|
||||
|
||||
$(BLD_DIR)\%.inc : %.h
|
||||
@[
|
||||
set H2INC=$(BASE_H2IFLAGS) $(BUILD_H2IFLAGS) $(EXTRA_H2IFLAGS) /Fa$@ $<
|
||||
$(H2I)
|
||||
]
|
||||
.ELSE
|
||||
# Pass argumants normally
|
||||
#
|
||||
$(BLD_DIR)/%.obj : %.c
|
||||
$(CC) $(BASE_CFLAGS) $(BUILD_CFLAGS) $(EXTRA_CFLAGS) -Fo$(@:s,/,\,) $<
|
||||
|
||||
$(BLD_DIR)/%.obj : %.asm
|
||||
$(AS) $(BASE_ASFLAGS) $(BUILD_ASFLAGS) $(EXTRA_ASFLAGS) -c -Fo$(@:s,/,\,) $<
|
||||
|
||||
%.obj : %.c
|
||||
$(CC) $(BASE_CFLAGS) $(BUILD_CFLAGS) $(EXTRA_CFLAGS) -Fo$(@:s,/,\,) $<
|
||||
|
||||
%.obj : %.asm
|
||||
$(AS) $(BASE_ASFLAGS) $(BUILD_ASFLAGS) $(EXTRA_ASFLAGS) -c -Fo$(@:s,/,\,) $<
|
||||
|
||||
$(BLD_DIR)/%.inc : %.h
|
||||
$(H2I) $(BASE_H2IFLAGS) $(BUILD_H2IFLAGS) $(EXTRA_H2IFLAGS) /Fa$@ $<
|
||||
|
||||
$(BLD_DIR)\%.inc : %.h
|
||||
$(H2I) $(BASE_H2IFLAGS) $(BUILD_H2IFLAGS) $(EXTRA_H2IFLAGS) /Fa$@ $<
|
||||
|
||||
.END
|
||||
|
||||
## The final target
|
||||
##
|
||||
OBJS := $(OBJS_C) $(OBJS_ASM)
|
||||
LDLIBS=$(BASE_LDLIBS) $(EXTRA_LDLIBS)
|
||||
|
||||
.IF $(TARGET_TYPE) == LIB
|
||||
|
||||
# Library
|
||||
#
|
||||
"$(LIB_NAME)": $(OBJS)
|
||||
-rm -f $@
|
||||
386lib $(@:s,/,\,) -twocase @$(mktmp,386lib.lbc -add $(&:t"\n-add ":s,/,\\,))
|
||||
|
||||
.ELIF $(TARGET_TYPE) == EXE_PHARLAP
|
||||
|
||||
# Executable - Pharlap TNT
|
||||
#
|
||||
|
||||
BASE_LDFLAGS =-stack 65536
|
||||
DEBUG_LDFLAGS:=
|
||||
PROFILE_LDFLAGS:=
|
||||
RELEASE_LDFLAGS:=
|
||||
TEST_LDFLAGS:=
|
||||
|
||||
BASE_LDLIBS=
|
||||
|
||||
LIB_SUFFIX_EXTENDER:=pl
|
||||
|
||||
$(TARGET): $(EXTRA_LDLIBS)
|
||||
$(TARGET): $(OBJS)
|
||||
386link @$(BASE_DIR)\hc386.dos -exe $(@:s,/,\,) @$(mktmp,386link.rsp $(<:t"\n":s,\,\\,)\n\
|
||||
$(BASE_LDFLAGS)\n\
|
||||
$(BUILD_LDFLAGS)\n\
|
||||
$(EXTRA_LDFLAGS)\n\
|
||||
-lib $(LDLIBS:s,\,\\,:s,/,\\,)\n\
|
||||
)
|
||||
|
||||
.END
|
||||
|
||||
## Object directory
|
||||
##
|
||||
$(BLD_DIR)/exists:
|
||||
-mkdir $(BLD_DIR)
|
||||
echo $(BLD_DIR) >$(BLD_DIR)\exists
|
||||
.IF $(LIB_INC)X != X
|
||||
$(MAKE) $(MAKEFILE) $(BLD_DIR)/$(LIB_INC).inc
|
||||
.END
|
||||
|
||||
|
||||
|
||||
# Dependencies
|
||||
#
|
||||
SRCS:=$(OBJS_C:s/.obj/.c/) $(OBJS_ASM:s/.obj/.asm/)
|
||||
|
||||
|
||||
depend: $(BLD_DIR)/exists
|
||||
sed "s/^$(BLD_DIR)\///" <$(mktmp,_mkdep.tmp $(SRCS:t"\n":s,\,/,)\n) >_mkdep.rsp
|
||||
$(MKDEP) $(MKDEPFLAGS) @_mkdep.rsp -o_depend.tmp
|
||||
sed "s/^/$(BLD_DIR)\//" <_depend.tmp >$(BLD_DIR)\\depend.out
|
||||
$(RM) _mkdep.rsp
|
||||
$(RM) _depend.tmp
|
||||
|
||||
|
||||
.INCLUDE .IGNORE: $(BLD_DIR)/depend.out
|
||||
|
||||
|
||||
|
313
MAKEDEFS.HIC
Normal file
313
MAKEDEFS.HIC
Normal file
|
@ -0,0 +1,313 @@
|
|||
# Copyright (c) 1993 Argonaut Software Ltd. All rights reserved.
|
||||
#
|
||||
# $Id: makedefs.hic 1.5 1995/06/30 16:09:25 sam Exp $
|
||||
# $Locker: $
|
||||
#
|
||||
# General defines, rules and macros for BRender
|
||||
#
|
||||
# Metaware High-C
|
||||
#
|
||||
|
||||
# Pick up configuration from environment, if not defined, pick defaults
|
||||
#
|
||||
.IMPORT .IGNORE: LONG_ARGS
|
||||
|
||||
# Type of executable to produce - debug, profile, or release
|
||||
#
|
||||
.IF $(BUILD) ==
|
||||
.IMPORT .IGNORE: BUILD
|
||||
.END
|
||||
|
||||
BUILD*:=RELEASE
|
||||
|
||||
# Target type
|
||||
#
|
||||
.IF $(TARGET_TYPE)X == X
|
||||
.IMPORT .IGNORE: TARGET_TYPE
|
||||
.END
|
||||
|
||||
TARGET_TYPE*:=LIB
|
||||
|
||||
# Extender
|
||||
#
|
||||
.IF $(EXTENDER) ==
|
||||
.IMPORT .IGNORE: EXTENDER
|
||||
.END
|
||||
|
||||
EXTENDER*:=PHARLAP
|
||||
|
||||
# Library base type
|
||||
#
|
||||
.IF $(BASE_TYPE) ==
|
||||
.IMPORT .IGNORE: BASE_TYPE
|
||||
.ENDIF
|
||||
|
||||
BASE_TYPE*:=FIXED
|
||||
|
||||
# Compiler part of library name - High C
|
||||
#
|
||||
LIB_SUFFIX_C=h
|
||||
|
||||
# Pick a library suffix based on library type
|
||||
#
|
||||
.IF $(BASE_TYPE) == FLOAT
|
||||
LIB_SUFFIX_T=f
|
||||
.ELIF $(BASE_TYPE) == FIXED
|
||||
LIB_SUFFIX_T=x
|
||||
.ELIF $(BASE_TYPE) == NONE
|
||||
LIB_SUFFIX_T=
|
||||
.ELSE
|
||||
Unknown_BASE_TYPE:
|
||||
.END
|
||||
|
||||
## Build flags
|
||||
##
|
||||
OBJ_EXT:=.obj
|
||||
LIB_EXT:=.lib
|
||||
AS:=ml
|
||||
CC:=hc386
|
||||
H2I:=h2inc
|
||||
MKDEPFLAGS= -s -t -I$(BLD_DIR) $(INCLUDES)
|
||||
PERL=perl
|
||||
|
||||
# Flags for each process are constructed from
|
||||
# a common prt, a per build part, and a per app. part
|
||||
#
|
||||
ASFLAGS=$(BASE_ASFLAGS) $(BUILD_ASFLAGS) $(EXTRA_ASFLAGS)
|
||||
CFLAGS=$(BASE_CFLAGS) $(BUILD_CFLAGS) $(EXTRA_CFLAGS)
|
||||
H2IFLAGS=$(BASE_H2IFLAGS) $(BUILD_H2IFLAGS) $(EXTRA_H2IFLAGS)
|
||||
|
||||
# Base flags
|
||||
#
|
||||
BASE_CFLAGS = -Hloclib -Hnocopyr -Hmscerr -Hpragma=Align_members(4) -Hoff=Floating_point -c -DBASED_$(BASE_TYPE)=1 $(INCLUDES)
|
||||
|
||||
BASE_ASFLAGS =-nologo -Cp -D__HIGHC__=1 -DBASED_$(BASE_TYPE)=1 -I$(BLD_DIR) $(INCLUDES)
|
||||
|
||||
BASE_H2IFLAGS=/nologo /G3 /Zp4 /C /D__HIGHC__ /D__H2INC__\
|
||||
/D_NO_PROTOTYPES -DBASED_$(BASE_TYPE)=1 $(INCLUDES)
|
||||
|
||||
.IF $(BUILD) == RELEASE
|
||||
# Release Flags
|
||||
#
|
||||
BUILD_CFLAGS =-O7 -Hoff=behaved -DDEBUG=0 -DPARANOID=0 -DSTATIC=static
|
||||
BUILD_LDFLAGS =$(RELEASE_LDFLAGS)
|
||||
BUILD_ASFLAGS =
|
||||
BUILD_H2IFLAGS=
|
||||
LIB_SUFFIX_B:=r
|
||||
|
||||
.ELIF $(BUILD) == TEST
|
||||
# Check Flags (Release library with validation checks for debugging user code)
|
||||
#
|
||||
BUILD_CFLAGS =-O7 -Hoff=behaved -DDEBUG=0 -DPARANOID=1 -DSTATIC=static
|
||||
BUILD_LDFLAGS =$(TEST_LDFLAGS)
|
||||
BUILD_ASFLAGS =-DDEBUG=0 -DCHECK=1
|
||||
BUILD_H2IFLAGS=-DDEBUG=0 -DCHECK=1
|
||||
LIB_SUFFIX_B:=t
|
||||
|
||||
|
||||
.ELIF $(BUILD) == DEBUG
|
||||
# Debug Flags
|
||||
#
|
||||
BUILD_CFLAGS =-g -DDEBUG=1 -DPARANOID=1 -DSTATIC=
|
||||
BUILD_LDFLAGS =$(DEBUG_LDFLAGS)
|
||||
BUILD_ASFLAGS =-Zd
|
||||
BUILD_H2IFLAGS=
|
||||
LIB_SUFFIX_B:=d
|
||||
|
||||
.ELIF $(BUILD) == PROFILE
|
||||
# Profile Flags
|
||||
#
|
||||
BUILD_CFLAGS =-g -O7 -DDEBUG=0 -DPARANOID=0 -DSTATIC=
|
||||
BUILD_LDFLAGS =$(PROFILE_LDFLAGS)
|
||||
BUILD_ASFLAGS =-Zd
|
||||
BUILD_H2IFLAGS=
|
||||
LIB_SUFFIX_B:=p
|
||||
|
||||
.ELSE
|
||||
Error - Unknown build type
|
||||
.END
|
||||
|
||||
## The build directory
|
||||
##
|
||||
LIB_TYPE:=$(LIB_SUFFIX_C)$(LIB_SUFFIX_T)$(LIB_SUFFIX_B)$(LIB_SUFFIX)
|
||||
|
||||
BLD_BASE*:=bld
|
||||
|
||||
BLD_DIR:=$(BLD_BASE)_$(LIB_TYPE)
|
||||
|
||||
## The library name <part><compiler><type><build><optional>.lib
|
||||
##
|
||||
LIB_NAME:=$(BASE_DIR)/lib/$(LIB_PART)$(LIB_TYPE).lib
|
||||
|
||||
# Keep proper dependencies (per build type)
|
||||
#
|
||||
.KEEP_STATE:=$(BLD_DIR)/state.out
|
||||
|
||||
## Generic rule for building objects and ASM header files
|
||||
##
|
||||
.IF $(LONG_ARGS)X != X
|
||||
|
||||
# Use environment variables to cut down the cmmand line size
|
||||
#
|
||||
$(BLD_DIR)/%.obj : %.c
|
||||
$(CC) @$(mktmp,hc386.rsp $(CFLAGS:s,\,\\,)) -o $(@:s,/,\,) $<
|
||||
|
||||
$(BLD_DIR)/%.obj : %.asm
|
||||
@[
|
||||
set ML=$(ASFLAGS) -c -Fo$(@:s,/,\,) $<
|
||||
$(AS)
|
||||
]
|
||||
|
||||
%.obj : %.c
|
||||
@[
|
||||
$(CC) @$(mktmp,hc386.rsp $(CFLAGS:s,\,\\,)) -o $(@:s,/,\,) $<
|
||||
]
|
||||
|
||||
%.pp : %.c
|
||||
@[
|
||||
set CL=$(CFLAGS) -Fo$(@:s,/,\,) -pc $<
|
||||
$(CC)
|
||||
]
|
||||
|
||||
%.cod : %.c
|
||||
@[
|
||||
set CL=$(CFLAGS) -FAs -Fa$(@:s,/,\,) $<
|
||||
$(CC)
|
||||
]
|
||||
|
||||
%.obj : %.asm
|
||||
@[
|
||||
set ML=$(ASFLAGS) -Fo$(@:s,/,\,) $<
|
||||
$(AS)
|
||||
]
|
||||
|
||||
$(BLD_DIR)/%.inc : %.h
|
||||
@[
|
||||
set H2INC=$(H2IFLAGS) /Fa$@ $<
|
||||
$(H2I)
|
||||
]
|
||||
|
||||
$(BLD_DIR)\%.inc : %.h
|
||||
@[
|
||||
set H2INC=$(H2IFLAGS) /Fa$@ $<
|
||||
$(H2I)
|
||||
]
|
||||
.ELSE
|
||||
# Pass argumants normally
|
||||
#
|
||||
$(BLD_DIR)/%.obj : %.c
|
||||
$(CC) $(CFLAGS) -Fo$(@:s,/,\,) $<
|
||||
|
||||
$(BLD_DIR)/%.obj : %.asm
|
||||
$(AS) $(ASFLAGS) -c -Fo$(@:s,/,\,) $<
|
||||
|
||||
%.obj : %.c
|
||||
$(CC) $(CFLAGS) -Fo$(@:s,/,\,) $<
|
||||
|
||||
%.obj : %.asm
|
||||
$(AS) $(ASFLAGS) -c -Fo$(@:s,/,\,) $<
|
||||
|
||||
$(BLD_DIR)/%.inc : %.h
|
||||
$(H2I) $(H2IFLAGS) /Fa$@ $<
|
||||
|
||||
$(BLD_DIR)\%.inc : %.h
|
||||
$(H2I) $(H2IFLAGS) /Fa$@ $<
|
||||
|
||||
.END
|
||||
|
||||
## Build ASM function prototype files
|
||||
##
|
||||
%.h .NOSTATE: %.fns
|
||||
$(PERL) $(BASE_DIR)\bin\genasmpr.pl $< >$@
|
||||
|
||||
## The final target
|
||||
##
|
||||
OBJS := $(OBJS_C) $(OBJS_ASM)
|
||||
LDLIBS=$(BASE_LDLIBS) $(EXTRA_LDLIBS)
|
||||
|
||||
.IF $(TARGET_TYPE) == LIB
|
||||
|
||||
# Library
|
||||
#
|
||||
"$(LIB_NAME)": $(OBJS)
|
||||
-rm -f $@
|
||||
386lib $(@:s,/,\,) -twocase @$(mktmp,386lib.lbc -add $(&:t"\n-add ":s,/,\\,))
|
||||
|
||||
.ELSE
|
||||
.IF $(EXTENDER) == PHARLAP
|
||||
|
||||
# Executable - Pharlap TNT
|
||||
#
|
||||
|
||||
BASE_LDFLAGS =-stack 65536 -nobanner
|
||||
DEBUG_LDFLAGS:=-fullsym
|
||||
PROFILE_LDFLAGS:=-fullsym
|
||||
RELEASE_LDFLAGS:=
|
||||
TEST_LDFLAGS:=
|
||||
|
||||
BASE_LDLIBS=
|
||||
|
||||
LIB_SUFFIX_EXTENDER:=pl
|
||||
|
||||
$(TARGET): $(EXTRA_LDLIBS)
|
||||
$(TARGET): $(OBJS)
|
||||
386link @$(BASE_DIR)\hc386.dos -exe $(@:s,/,\,) @$(mktmp,386link.rsp $(<:t"\n":s,\,\\,)\n\
|
||||
$(BASE_LDFLAGS)\n\
|
||||
$(BUILD_LDFLAGS)\n\
|
||||
$(EXTRA_LDFLAGS)\n\
|
||||
-lib $(LDLIBS:s,\,\\,:s,/,\\,)\n\
|
||||
)
|
||||
.ELIF $(EXTENDER) == PHARLAP3
|
||||
|
||||
# Executable - Pharlap v3
|
||||
#
|
||||
BASE_LDFLAGS:=-stack 65536
|
||||
DEBUG_LDFLAGS:=-fullsym
|
||||
PROFILE_LDFLAGS:=-fullsym
|
||||
RELEASE_LDFLAGS:=
|
||||
TEST_LDFLAGS:=
|
||||
|
||||
BASE_LDLIBS=
|
||||
|
||||
LIB_SUFFIX_EXTENDER:=pl
|
||||
|
||||
$(TARGET): $(EXTRA_LDLIBS)
|
||||
$(TARGET): $(OBJS)
|
||||
386link -exe $*.exp @$(BASE_DIR)\hc386.pl3 @$(mktmp,386link.rsp $(<:t"\n":s,\,\\,)\n\
|
||||
$(BASE_LDFLAGS)\n\
|
||||
$(BUILD_LDFLAGS)\n\
|
||||
$(EXTRA_LDFLAGS)\n\
|
||||
-lib $(LDLIBS:s,\,\\,:s,/,\\,)\n\
|
||||
)
|
||||
.ELSE
|
||||
Unknown_EXTENDER:
|
||||
.ENDIF
|
||||
.ENDIF
|
||||
|
||||
## Object directory
|
||||
##
|
||||
$(BLD_DIR)/exists:
|
||||
-mkdir $(BLD_DIR)
|
||||
echo $(BLD_DIR) >$(BLD_DIR)\exists
|
||||
.IF $(LIB_INC)
|
||||
$(MAKE) $(MAKEFILE) $(BLD_DIR)/$(LIB_INC).inc
|
||||
.ENDIF
|
||||
|
||||
|
||||
|
||||
# Dependencies
|
||||
#
|
||||
SRCS:=$(OBJS_C:s/.obj/.c/) $(OBJS_ASM:s/.obj/.asm/)
|
||||
|
||||
|
||||
depend: $(BLD_DIR)/exists
|
||||
sed "s/^$(BLD_DIR)\///" <$(mktmp,_mkdep.tmp $(SRCS:t"\n":s,\,/,)\n) >_mkdep.rsp
|
||||
$(MKDEP) $(MKDEPFLAGS) @_mkdep.rsp -o_depend.tmp
|
||||
sed "s/^/$(BLD_DIR)\//" <_depend.tmp >$(BLD_DIR)\\depend.out
|
||||
$(RM) _mkdep.rsp
|
||||
$(RM) _depend.tmp
|
||||
|
||||
|
||||
.INCLUDE .IGNORE: $(BLD_DIR)/depend.out
|
||||
|
||||
|
310
MAKEDEFS.ICC
Normal file
310
MAKEDEFS.ICC
Normal file
|
@ -0,0 +1,310 @@
|
|||
# Copyright (c) 1993 Argonaut Software Ltd. All rights reserved.
|
||||
#
|
||||
# $Id: makedefs.icc 1.2 1995/06/30 16:09:26 sam Exp $
|
||||
# $Locker: $
|
||||
#
|
||||
# General defines, rules and macros for BRender built with IBM CSet++
|
||||
#
|
||||
|
||||
# Pick up configuration from environment, if not defined, pick defaults
|
||||
#
|
||||
.IMPORT .IGNORE: SERIAL LONG_ARGS
|
||||
|
||||
# Type of executable to produce - debug, profile, or release
|
||||
#
|
||||
.IF $(BUILD) ==
|
||||
.IMPORT .IGNORE: BUILD
|
||||
.ENDIF
|
||||
|
||||
BUILD*:=RELEASE
|
||||
|
||||
# Target type
|
||||
#
|
||||
.IF $(TARGET_TYPE) ==
|
||||
.IMPORT .IGNORE: TARGET_TYPE
|
||||
.END
|
||||
|
||||
TARGET_TYPE*:=LIB
|
||||
|
||||
# Environment
|
||||
#
|
||||
.IF $(EXVIRONMENT) ==
|
||||
.IMPORT .IGNORE: ENVIRONMENT
|
||||
.END
|
||||
|
||||
ENVIRONMENT*:=VIO
|
||||
|
||||
# Library base type
|
||||
#
|
||||
.IF $(BASE_TYPE) ==
|
||||
.IMPORT .IGNORE: BASE_TYPE
|
||||
.ENDIF
|
||||
|
||||
BASE_TYPE*:=FIXED
|
||||
|
||||
# Compiler part of library name - IBM CSet++
|
||||
#
|
||||
LIB_SUFFIX_C=i
|
||||
|
||||
# Pick a library suffix based on library type
|
||||
#
|
||||
.IF $(BASE_TYPE) == FLOAT
|
||||
LIB_SUFFIX_T=f
|
||||
.ELIF $(BASE_TYPE) == FIXED
|
||||
LIB_SUFFIX_T=x
|
||||
.ELIF $(BASE_TYPE) == NONE
|
||||
LIB_SUFFIX_T=
|
||||
.ELSE
|
||||
Unknown_BASE_TYPE:
|
||||
.ENDIF
|
||||
|
||||
## Build flags
|
||||
##
|
||||
OBJ_EXT:=.obj
|
||||
LIB_EXT:=.lib
|
||||
AS:=ml
|
||||
CC:=icc
|
||||
H2I:=h2inc
|
||||
MKDEPFLAGS= -s -t -I$(BLD_DIR) $(INCLUDES)
|
||||
4DOS=+c:\4dos\4dos.com /e:3048 /c
|
||||
|
||||
# Flags for each process are constructed from
|
||||
# a common part, a per build part, and a per app. part
|
||||
#
|
||||
ASFLAGS=$(BASE_ASFLAGS) $(BUILD_ASFLAGS) $(EXTRA_ASFLAGS)
|
||||
CFLAGS=$(BASE_CFLAGS) $(BUILD_CFLAGS) $(EXTRA_CFLAGS)
|
||||
H2IFLAGS=$(BASE_H2IFLAGS) $(BUILD_H2IFLAGS) $(EXTRA_H2IFLAGS)
|
||||
|
||||
# Base flags
|
||||
#
|
||||
BASE_CFLAGS =-c -Sp4 -G5 -Gm+ -DBASED_$(BASE_TYPE)=1 $(INCLUDES)
|
||||
|
||||
BASE_ASFLAGS =-nologo -Cp -D__IBMC__=1\
|
||||
-DBASED_$(BASE_TYPE)=1 -I$(BLD_DIR) $(INCLUDES)
|
||||
|
||||
BASE_H2IFLAGS=/nologo /G3 /Zp4 /C /D__IBMC__ /D__H2INC__\
|
||||
/D_NO_PROTOTYPES -DBASED_$(BASE_TYPE)=1 $(INCLUDES)
|
||||
|
||||
.IF $(BUILD) == RELEASE
|
||||
# Release Flags
|
||||
#
|
||||
BUILD_CFLAGS =-O+ -Gf+ -DDEBUG=0 -DPARANOID=0 -DSTATIC=static
|
||||
BUILD_LDFLAGS =$(RELEASE_LDFLAGS)
|
||||
BUILD_ASFLAGS =
|
||||
BUILD_H2IFLAGS=
|
||||
LIB_SUFFIX_B:=r
|
||||
|
||||
.ELIF $(BUILD) == TEST
|
||||
# Check Flags (Release library with validation checks for debugging user code)
|
||||
#
|
||||
BUILD_CFLAGS =-O+ -Gf+ -DDEBUG=0 -DPARANOID=1 -DSTATIC=static
|
||||
BUILD_LDFLAGS =$(TEST_LDFLAGS)
|
||||
BUILD_ASFLAGS =-DDEBUG=0 -DCHECK=1
|
||||
BUILD_H2IFLAGS=-DDEBUG=0 -DCHECK=1
|
||||
LIB_SUFFIX_B:=t
|
||||
|
||||
|
||||
.ELIF $(BUILD) == DEBUG
|
||||
# Debug Flags
|
||||
#
|
||||
BUILD_CFLAGS =-Ti -DDEBUG=1 -DPARANOID=1 -DSTATIC=
|
||||
BUILD_LDFLAGS =$(DEBUG_LDFLAGS)
|
||||
BUILD_ASFLAGS =-Zd
|
||||
BUILD_H2IFLAGS=
|
||||
LIB_SUFFIX_B:=d
|
||||
|
||||
.ELIF $(BUILD) == PROFILE
|
||||
# Profile Flags
|
||||
#
|
||||
BUILD_CFLAGS =-O+ -Ti -DDEBUG=0 -DPARANOID=0 -DSTATIC=
|
||||
BUILD_LDFLAGS =$(PROFILE_LDFLAGS)
|
||||
BUILD_ASFLAGS =-Zd
|
||||
BUILD_H2IFLAGS=
|
||||
LIB_SUFFIX_B:=p
|
||||
|
||||
.ELSE
|
||||
Unknown_BASE_TYPE:
|
||||
.ENDIF
|
||||
|
||||
## The build directory
|
||||
##
|
||||
LIB_TYPE:=$(LIB_SUFFIX_C)$(LIB_SUFFIX_T)$(LIB_SUFFIX_B)$(LIB_SUFFIX)
|
||||
|
||||
BLD_BASE*:=bld
|
||||
|
||||
BLD_DIR:=$(BLD_BASE)_$(LIB_TYPE)
|
||||
|
||||
## The library name <part><compiler><type><build><optional>.lib
|
||||
##
|
||||
LIB_NAME:=$(BASE_DIR)/lib/$(LIB_PART)$(LIB_TYPE).lib
|
||||
|
||||
# Keep proper dependencies (per build type)
|
||||
#
|
||||
.KEEP_STATE:=$(BLD_DIR)/state.out
|
||||
|
||||
## Generic rule for building objects and ASM header files
|
||||
##
|
||||
.IF $(LONG_ARGS)X != X
|
||||
|
||||
# Use environment variables to cut down the cmmand line size
|
||||
#
|
||||
$(BLD_DIR)/%.obj : %.c
|
||||
@[
|
||||
set _ARGS=$(CFLAGS) -fo$(@:s,/,\,) $<
|
||||
$(CC) @_ARGS
|
||||
]
|
||||
|
||||
$(BLD_DIR)/%.obj : %.asm
|
||||
@[
|
||||
set ML=$(ASFLAGS) -c -Fo$(@:s,/,\,) $<
|
||||
$(AS)
|
||||
]
|
||||
|
||||
%.obj : %.c
|
||||
@[
|
||||
set _ARGS=$(CFLAGS) -fo$(@:s,/,\,) $<
|
||||
|
||||
$(CC) @_ARGS
|
||||
]
|
||||
|
||||
%.pp : %.c
|
||||
@[
|
||||
set _ARGS=$(CFLAGS) -fo$(@:s,/,\,) -p $<
|
||||
$(CC) @_ARGS
|
||||
]
|
||||
|
||||
%.pp : %.h
|
||||
@[
|
||||
set _ARGS=$(CFLAGS) -D_NO_PROTOTYPES -fo$(@:s,/,\,) -p $<
|
||||
$(CC) @_ARGS
|
||||
]
|
||||
|
||||
%.obj : %.asm
|
||||
@[
|
||||
set ML=$(ASFLAGS) -c -Fo$(@:s,/,\,) $<
|
||||
$(AS)
|
||||
]
|
||||
|
||||
$(BLD_DIR)/%.inc : %.h
|
||||
@[
|
||||
set H2INC=$(H2IFLAGS) /Fa$@ $<
|
||||
$(H2I)
|
||||
]
|
||||
|
||||
$(BLD_DIR)\%.inc : %.h
|
||||
@[
|
||||
set H2INC=$(H2IFLAGS) /Fa$@ $<
|
||||
$(H2I)
|
||||
]
|
||||
.ELSE
|
||||
# Pass argumants normally
|
||||
#
|
||||
$(BLD_DIR)/%.obj : %.c
|
||||
$(CC) $(CFLAGS) -fo$(@:s,/,\,) $<
|
||||
|
||||
$(BLD_DIR)/%.obj : %.asm
|
||||
$(AS) $(ASFLAGS) -c -Fo$(@:s,/,\,) $<
|
||||
|
||||
%.obj : %.c
|
||||
$(CC) $(CFLAGS) -fo$(@:s,/,\,) $<
|
||||
|
||||
%.pp : %.c
|
||||
$(CC) $(CFLAGS) -fo$(@:s,/,\,) -p $<
|
||||
|
||||
%.pp : %.h
|
||||
$(CC) $(CFLAGS) -fo$(@:s,/,\,) -p $<
|
||||
|
||||
|
||||
%.obj : %.asm
|
||||
$(AS) $(ASFLAGS) -c -Fo$(@:s,/,\,) $<
|
||||
|
||||
$(BLD_DIR)/%.inc : %.h
|
||||
cp $(mktmp set H2INC=$(H2IFLAGS:s,\,\\,) /Fa$(@:s,\,\\,) $<\n\
|
||||
$(H2I)) _h2inc.bat
|
||||
$(4DOS) _h2inc.bat
|
||||
|
||||
$(BLD_DIR)\%.inc : %.h
|
||||
cp $(mktmp set H2INC=$(H2IFLAGS:s,\,\\,) /Fa$(@:s,\,\\,) $<\n\
|
||||
$(H2I)) _h2inc.bat
|
||||
$(4DOS) _h2inc.bat
|
||||
|
||||
.ENDIF
|
||||
|
||||
## Build ASM function prototype files
|
||||
##
|
||||
%.h .NOSTATE: %.fns
|
||||
$(PERL) $(BASE_DIR)\bin\genasmpr.pl $< >$@
|
||||
|
||||
## The final target
|
||||
##
|
||||
OBJS := $(OBJS_C) $(OBJS_ASM)
|
||||
LDLIBS=$(BASE_LDLIBS) $(EXTRA_LDLIBS)
|
||||
|
||||
.IF $(TARGET_TYPE) == LIB
|
||||
|
||||
# Library
|
||||
#
|
||||
"$(LIB_NAME)": $(OBJS) $(OBJS_EXTRA)
|
||||
-rm -f $@
|
||||
lib /nologo /noi $(@:s,/,\,) @$(mktmp +$(&:t"&\n+":s,\,\\,:s,/,\\,));
|
||||
|
||||
.ELSE
|
||||
|
||||
.IF $(ENVIRONMENT) == VIO
|
||||
|
||||
# Executable - VIO
|
||||
#
|
||||
BASE_LDFLAGS:=
|
||||
DEBUG_LDFLAGS:=
|
||||
PROFILE_LDFLAGS:=
|
||||
RELEASE_LDFLAGS:=
|
||||
TEST_LDFLAGS:=
|
||||
|
||||
BASE_LDLIBS=
|
||||
|
||||
LIB_SUFFIX_EXTENDER:=vi
|
||||
|
||||
$(TARGET): $(EXTRA_LDLIBS)
|
||||
$(TARGET): $(OBJS)
|
||||
wlink @$(mktmp,link.rsp name $@\n\
|
||||
system dos4g\n\
|
||||
$(BASE_LDFLAGS)\n\
|
||||
$(BUILD_LDFLAGS)\n\
|
||||
$(EXTRA_LDFLAGS)\n\
|
||||
file $(<:t"\nfile ":s,\,/,)\n\
|
||||
library $(LDLIBS:t"\nlibrary ":s,\,/,)\n\
|
||||
)
|
||||
|
||||
.ELSE
|
||||
Unknown_EXTENDER:
|
||||
.ENDIF
|
||||
|
||||
.ENDIF
|
||||
|
||||
|
||||
## Object directory
|
||||
##
|
||||
$(BLD_DIR)/exists:
|
||||
-mkdir $(BLD_DIR)
|
||||
echo $(BLD_DIR) >$(BLD_DIR)\exists
|
||||
.IF $(LIB_INC)
|
||||
%$(MAKE) $(MAKEFILE) $(BLD_DIR)/$(LIB_INC).inc
|
||||
.ENDIF
|
||||
|
||||
|
||||
|
||||
# Dependencies
|
||||
#
|
||||
SRCS:=$(OBJS_C:s/.obj/.c/) $(OBJS_ASM:s/.obj/.asm/)
|
||||
|
||||
depend: $(BLD_DIR)/exists
|
||||
|
||||
depend:
|
||||
sed "s/^$(BLD_DIR)\///" <$(mktmp,_mkdep.tmp $(SRCS:t"\n":s,\,/,)\n) >_mkdep.rsp
|
||||
$(MKDEP) $(MKDEPFLAGS) @_mkdep.rsp -o_depend.tmp
|
||||
sed "s/^/$(BLD_DIR)\//" <_depend.tmp >$(BLD_DIR)\\depend.out
|
||||
$(RM) _mkdep.rsp
|
||||
$(RM) _depend.tmp
|
||||
|
||||
.INCLUDE .IGNORE: $(BLD_DIR)/depend.out
|
||||
|
301
MAKEDEFS.MSC
Normal file
301
MAKEDEFS.MSC
Normal file
|
@ -0,0 +1,301 @@
|
|||
# Copyright (c) 1993 Argonaut Software Ltd. All rights reserved.
|
||||
#
|
||||
# $Id: makedefs.msc 1.8 1995/06/30 16:09:28 sam Exp $
|
||||
# $Locker: sam $
|
||||
#
|
||||
# General defines, rules and macros for BRender
|
||||
#
|
||||
# Microsoft Visual C++ 2.0
|
||||
#
|
||||
|
||||
# Pick up configuration from environment, if not defined, pick defaults
|
||||
#
|
||||
.IMPORT .IGNORE: LONG_ARGS
|
||||
|
||||
# Type of executable to produce - debug, profile, or release
|
||||
#
|
||||
.IF $(BUILD) ==
|
||||
.IMPORT .IGNORE: BUILD
|
||||
.END
|
||||
|
||||
BUILD*:=RELEASE
|
||||
|
||||
# Library base type
|
||||
#
|
||||
.IF $(BASE_TYPE) ==
|
||||
.IMPORT .IGNORE: BASE_TYPE
|
||||
.END
|
||||
|
||||
BASE_TYPE*:=FLOAT
|
||||
|
||||
# Compiler part of library name - Microsoft
|
||||
#
|
||||
LIB_SUFFIX_C=m
|
||||
|
||||
# Pick a library suffix based on library type
|
||||
#
|
||||
.IF $(BASE_TYPE) == FLOAT
|
||||
LIB_SUFFIX_T=f
|
||||
.ELIF $(BASE_TYPE) == FIXED
|
||||
LIB_SUFFIX_T=x
|
||||
.ELIF $(BASE_TYPE) == NONE
|
||||
LIB_SUFFIX_T=
|
||||
.ELSE
|
||||
Unknown_BASE_TYPE
|
||||
.END
|
||||
|
||||
## Build flags
|
||||
##
|
||||
OBJ_EXT:=.obj
|
||||
LIB_EXT:=.lib
|
||||
AS:=ml
|
||||
CC:=cl
|
||||
H2I:=h2inc
|
||||
MKDEPFLAGS= -s -t -I$(BLD_DIR) $(INCLUDES)
|
||||
PERL=perl
|
||||
|
||||
# Flags for each process are constructed from
|
||||
# a common prt, a per build part, and a per app. part
|
||||
#
|
||||
ASFLAGS=$(BASE_ASFLAGS) $(BUILD_ASFLAGS) $(EXTRA_ASFLAGS)
|
||||
CFLAGS=$(BASE_CFLAGS) $(BUILD_CFLAGS) $(EXTRA_CFLAGS)
|
||||
H2IFLAGS=$(BASE_H2IFLAGS) $(BUILD_H2IFLAGS) $(EXTRA_H2IFLAGS)
|
||||
|
||||
# Base flags
|
||||
#
|
||||
|
||||
BASE_CFLAGS = -c -W3 -nologo -Zp4 -Gz -DBASED_$(BASE_TYPE)=1 $(INCLUDES)
|
||||
|
||||
BASE_ASFLAGS =-nologo -DDOS386 -Cp -D__VISUALC__=1 -DBASED_$(BASE_TYPE)=1 -I$(BLD_DIR) $(INCLUDES)
|
||||
|
||||
BASE_H2IFLAGS=/nologo /G3 /Zp4 /C /D__H2INC__\
|
||||
/D_NO_PROTOTYPES -DBASED_$(BASE_TYPE)=1 $(INCLUDES)
|
||||
|
||||
LDLIBS=p:\tech\lib\margstdz.lib
|
||||
|
||||
.IF $(BUILD) == RELEASE
|
||||
# Release Flags
|
||||
#
|
||||
BUILD_CFLAGS =-Ox -Ob2 -G5 -DDEBUG=0 -DPARANOID=0 -DSTATIC=static
|
||||
BUILD_LDFLAGS =$(RELEASE_LDFLAGS)
|
||||
BUILD_ASFLAGS =
|
||||
BUILD_H2IFLAGS=
|
||||
LIB_SUFFIX_B:=r
|
||||
|
||||
.ELIF $(BUILD) == TEST
|
||||
# Check Flags (Release library with validation checks for debugging user code)
|
||||
#
|
||||
BUILD_CFLAGS =-DDEBUG=0 -DPARANOID=1 -DSTATIC=static
|
||||
BUILD_LDFLAGS =$(TEST_LDFLAGS)
|
||||
BUILD_ASFLAGS =-DDEBUG=0 -DCHECK=1
|
||||
BUILD_H2IFLAGS=-DDEBUG=0 -DCHECK=1
|
||||
LIB_SUFFIX_B:=t
|
||||
|
||||
|
||||
.ELIF $(BUILD) == DEBUG
|
||||
# Debug Flags
|
||||
#
|
||||
BUILD_CFLAGS =-Z7 -DDEBUG=1 -DPARANOID=1 -DSTATIC=
|
||||
BUILD_LDFLAGS =$(DEBUG_LDFLAGS)
|
||||
BUILD_ASFLAGS =-Zd
|
||||
BUILD_H2IFLAGS=
|
||||
LIB_SUFFIX_B:=d
|
||||
|
||||
.ELIF $(BUILD) == PROFILE
|
||||
# Profile Flags
|
||||
#
|
||||
BUILD_CFLAGS =-Z7 -O2 -Ob2 -DDEBUG=0 -DPARANOID=0 -DSTATIC=
|
||||
BUILD_LDFLAGS =$(PROFILE_LDFLAGS)
|
||||
BUILD_ASFLAGS =-Zd
|
||||
BUILD_H2IFLAGS=
|
||||
LIB_SUFFIX_B:=p
|
||||
|
||||
.ELSE
|
||||
Error - Unknown build type
|
||||
.END
|
||||
|
||||
## The build directory
|
||||
##
|
||||
LIB_TYPE:=$(LIB_SUFFIX_C)$(LIB_SUFFIX_T)$(LIB_SUFFIX_B)$(LIB_SUFFIX)
|
||||
|
||||
BLD_BASE*:=bld
|
||||
|
||||
BLD_DIR:=$(BLD_BASE)_$(LIB_TYPE)
|
||||
|
||||
## The library name <part><compiler><type><build><optional>.lib
|
||||
##
|
||||
LIB_NAME:=$(BASE_DIR)/lib/$(LIB_PART)$(LIB_TYPE).lib
|
||||
|
||||
# Keep proper dependencies (per build type)
|
||||
#
|
||||
.KEEP_STATE:=$(BLD_DIR)/state.out
|
||||
|
||||
## Generic rule for building objects and ASM header files
|
||||
##
|
||||
.IF $(LONG_ARGS)X != X
|
||||
|
||||
# Use environment variables to cut down the cmmand line size
|
||||
#
|
||||
$(BLD_DIR)/%.obj : %.c
|
||||
@[
|
||||
set CL=$(CFLAGS) -Fo$(@:s,/,\,) $<
|
||||
$(CC)
|
||||
]
|
||||
|
||||
$(BLD_DIR)/%.obj : %.asm
|
||||
@[
|
||||
set ML=$(ASFLAGS) -c -Fo$(@:s,/,\,) $<
|
||||
$(AS)
|
||||
]
|
||||
|
||||
%.obj : %.c
|
||||
@[
|
||||
set CL=$(CFLAGS) -Fo$(@:s,/,\,) $<
|
||||
$(CC)
|
||||
]
|
||||
|
||||
%.pp : %.c
|
||||
@[
|
||||
set CL=$(CFLAGS) -Fo$(@:s,/,\,) -pc $<
|
||||
$(CC)
|
||||
]
|
||||
|
||||
%.cod : %.c
|
||||
@[
|
||||
set CL=$(CFLAGS) -FAs -Fa$(@:s,/,\,) $<
|
||||
$(CC)
|
||||
]
|
||||
|
||||
%.obj : %.asm
|
||||
@[
|
||||
set ML=$(ASFLAGS) -Fo$(@:s,/,\,) $<
|
||||
$(AS)
|
||||
]
|
||||
|
||||
$(BLD_DIR)/%.inc : %.h
|
||||
@[
|
||||
set H2INC=$(H2IFLAGS) /Fa$@ $<
|
||||
$(H2I)
|
||||
]
|
||||
|
||||
$(BLD_DIR)\%.inc : %.h
|
||||
@[
|
||||
set H2INC=$(H2IFLAGS) /Fa$@ $<
|
||||
$(H2I)
|
||||
]
|
||||
.ELSE
|
||||
# Pass argumants normally
|
||||
#
|
||||
$(BLD_DIR)/%.obj : %.c
|
||||
$(CC) $(CFLAGS) -Fo$(@:s,/,\,) $<
|
||||
|
||||
$(BLD_DIR)/%.obj : %.asm
|
||||
$(AS) $(ASFLAGS) -c -Fo$(@:s,/,\,) $<
|
||||
|
||||
%.obj : %.c
|
||||
$(CC) $(CFLAGS) -Fo$(@:s,/,\,) $<
|
||||
|
||||
%.obj : %.asm
|
||||
$(AS) $(ASFLAGS) -c -Fo$(@:s,/,\,) $<
|
||||
|
||||
$(BLD_DIR)/%.inc : %.h
|
||||
$(H2I) $(H2IFLAGS) /Fa$@ $<
|
||||
|
||||
$(BLD_DIR)\%.inc : %.h
|
||||
$(H2I) $(H2IFLAGS) /Fa$@ $<
|
||||
|
||||
.END
|
||||
|
||||
## Build ASM function prototype files
|
||||
##
|
||||
%.h .NOSTATE: %.fns
|
||||
$(PERL) $(BASE_DIR)\bin\genasmpr.pl $< >$@
|
||||
|
||||
## The final target
|
||||
##
|
||||
OBJS := $(OBJS_C) $(OBJS_ASM)
|
||||
LDLIBS=$(BASE_LDLIBS) $(EXTRA_LDLIBS)
|
||||
|
||||
.IF $(TARGET_TYPE) == LIB
|
||||
|
||||
# Library
|
||||
#
|
||||
"$(LIB_NAME)": $(OBJS)
|
||||
-rm -f $@
|
||||
lib -out:$(@:s,/,\,) @<+$(&:t"\n":s,/,\\,) +>
|
||||
|
||||
.ELIF $(TARGET_TYPE) == DRIVER
|
||||
|
||||
# Driver
|
||||
#
|
||||
BASE_LDFLAGS =-dll
|
||||
DEBUG_LDFLAGS:=-debug
|
||||
PROFILE_LDFLAGS:=-debug
|
||||
RELEASE_LDFLAGS:=
|
||||
TEST_LDFLAGS:=
|
||||
|
||||
BASE_LDLIBS=
|
||||
|
||||
$(TARGET): $(EXTRA_LDLIBS)
|
||||
$(TARGET): $(OBJS)
|
||||
link -out:$(@:s,/,\,) @$(mktmp,link.rsp $(<:t"\n":s,\,\\,)\n\
|
||||
$(BASE_LDFLAGS)\n\
|
||||
$(BUILD_LDFLAGS)\n\
|
||||
$(EXTRA_LDFLAGS)\n\
|
||||
$(LDLIBS:s,\,\\,:s,/,\\,)\n\
|
||||
)
|
||||
.ELSE
|
||||
.IF $(EXTENDER) == PHARLAP
|
||||
|
||||
# Executable - Pharlap TNT
|
||||
#
|
||||
|
||||
BASE_LDFLAGS =-stack 65536
|
||||
DEBUG_LDFLAGS:=-cvsym
|
||||
PROFILE_LDFLAGS:=-cvsym
|
||||
RELEASE_LDFLAGS:=
|
||||
TEST_LDFLAGS:=
|
||||
|
||||
BASE_LDLIBS=
|
||||
|
||||
LIB_SUFFIX_EXTENDER:=pl
|
||||
|
||||
$(TARGET): $(EXTRA_LDLIBS)
|
||||
$(TARGET): $(OBJS)
|
||||
386link @msvc32.dos -exe $(@:s,/,\,) @$(mktmp,386link.rsp $(<:t"\n":s,\,\\,)\n\
|
||||
$(BASE_LDFLAGS)\n\
|
||||
$(BUILD_LDFLAGS)\n\
|
||||
$(EXTRA_LDFLAGS)\n\
|
||||
-lib $(LDLIBS:s,\,\\,:s,/,\\,)\n\
|
||||
)
|
||||
.ELSE
|
||||
Unknown_EXTENDER:
|
||||
.ENDIF
|
||||
.ENDIF
|
||||
|
||||
## Object directory
|
||||
##
|
||||
$(BLD_DIR)/exists:
|
||||
-mkdir $(BLD_DIR)
|
||||
echo $(BLD_DIR) >$(BLD_DIR)\exists
|
||||
.IF $(LIB_INC)
|
||||
$(MAKE) $(MAKEFILE) $(BLD_DIR)/$(LIB_INC).inc
|
||||
.END
|
||||
|
||||
|
||||
|
||||
# Dependencies
|
||||
#
|
||||
SRCS:=$(OBJS_C:s/.obj/.c/) $(OBJS_ASM:s/.obj/.asm/)
|
||||
|
||||
|
||||
depend: $(BLD_DIR)/exists
|
||||
sed "s/^$(BLD_DIR)\///" <$(mktmp,_mkdep.tmp $(SRCS:t"\n":s,\,/,)\n) >_mkdep.rsp
|
||||
$(MKDEP) $(MKDEPFLAGS) @_mkdep.rsp -o_depend.tmp
|
||||
sed "s/^/$(BLD_DIR)\//" <_depend.tmp >$(BLD_DIR)\\depend.out
|
||||
$(RM) _mkdep.rsp
|
||||
$(RM) _depend.tmp
|
||||
|
||||
|
||||
.INCLUDE .IGNORE: $(BLD_DIR)/depend.out
|
||||
|
356
MAKEDEFS.PRO
Normal file
356
MAKEDEFS.PRO
Normal file
|
@ -0,0 +1,356 @@
|
|||
# Copyright (c) 1993 Argonaut Software Ltd. All rights reserved.
|
||||
#
|
||||
# $Id: makedefs.pro 1.4 1995/03/16 12:06:25 sam Exp $
|
||||
# $Locker: sam $
|
||||
#
|
||||
# General defines, rules and macros for BRender built with Intel Proton
|
||||
#
|
||||
|
||||
# Pick up configuration from environment, if not defined, pick defaults
|
||||
#
|
||||
.IMPORT .IGNORE: LONG_ARGS
|
||||
|
||||
# Type of executable to produce - debug, profile, or release
|
||||
#
|
||||
.IF $(BUILD) ==
|
||||
.IMPORT .IGNORE: BUILD
|
||||
.ENDIF
|
||||
|
||||
BUILD*:=RELEASE
|
||||
|
||||
# Target type
|
||||
#
|
||||
.IF $(TARGET_TYPE) ==
|
||||
.IMPORT .IGNORE: TARGET_TYPE
|
||||
.END
|
||||
|
||||
TARGET_TYPE*:=LIB
|
||||
|
||||
# Extender
|
||||
#
|
||||
.IF $(EXTENDER) ==
|
||||
.IMPORT .IGNORE: EXTENDER
|
||||
.END
|
||||
|
||||
EXTENDER*:=DOS4GW
|
||||
|
||||
# Library base type
|
||||
#
|
||||
.IF $(BASE_TYPE) ==
|
||||
.IMPORT .IGNORE: BASE_TYPE
|
||||
.ENDIF
|
||||
|
||||
BASE_TYPE*:=FIXED
|
||||
|
||||
# Compiler part of library name - Proton
|
||||
#
|
||||
LIB_SUFFIX_C=p
|
||||
|
||||
# Pick a library suffix based on library type
|
||||
#
|
||||
.IF $(BASE_TYPE) == FLOAT
|
||||
LIB_SUFFIX_T=f
|
||||
.ELIF $(BASE_TYPE) == FIXED
|
||||
LIB_SUFFIX_T=x
|
||||
.ELIF $(BASE_TYPE) == NONE
|
||||
LIB_SUFFIX_T=
|
||||
.ELSE
|
||||
Unknown_BASE_TYPE:
|
||||
.ENDIF
|
||||
|
||||
## Build flags
|
||||
##
|
||||
OBJ_EXT:=.obj
|
||||
LIB_EXT:=.lib
|
||||
AS:=ml
|
||||
CC:=icc
|
||||
H2I:=h2inc
|
||||
MKDEPFLAGS= -s -t -I$(BLD_DIR) $(INCLUDES)
|
||||
|
||||
BASE_CFLAGS =-Wp,-_m -ip -mem -w -Zp4 -DBASED_$(BASE_TYPE)=1\
|
||||
$(INCLUDES) -D__PROTONC__
|
||||
|
||||
BASE_ASFLAGS =-nologo -Cp -D__PROTONC__=1 \
|
||||
-DBASED_$(BASE_TYPE)=1 -I$(BLD_DIR) $(INCLUDES)
|
||||
|
||||
BASE_H2IFLAGS=/nologo /G3 /Zp4 /C /D__PROTONC__ /D__H2INC__\
|
||||
/D_NO_PROTOTYPES -DBASED_$(BASE_TYPE)=1 $(INCLUDES)
|
||||
|
||||
.IF $(BUILD) == RELEASE
|
||||
# Release Flags
|
||||
#
|
||||
BUILD_CFLAGS =-DDEBUG=0 -DPARANOID=0 -DSTATIC=static
|
||||
BUILD_LDFLAGS =$(RELEASE_LDFLAGS)
|
||||
BUILD_ASFLAGS =
|
||||
BUILD_H2IFLAGS=
|
||||
LIB_SUFFIX_B:=r
|
||||
|
||||
.ELIF $(BUILD) == TEST
|
||||
# Check Flags (Release library with validation checks for debugging user code)
|
||||
#
|
||||
BUILD_CFLAGS =-DDEBUG=0 -DPARANOID=1 -DSTATIC=static
|
||||
BUILD_LDFLAGS =$(TEST_LDFLAGS)
|
||||
BUILD_ASFLAGS =-DDEBUG=0 -DCHECK=1
|
||||
BUILD_H2IFLAGS=-DDEBUG=0 -DCHECK=1
|
||||
LIB_SUFFIX_B:=t
|
||||
|
||||
|
||||
.ELIF $(BUILD) == DEBUG
|
||||
# Debug Flags
|
||||
#
|
||||
BUILD_CFLAGS =-DDEBUG=1 -DPARANOID=1 -DSTATIC=
|
||||
BUILD_LDFLAGS =$(DEBUG_LDFLAGS)
|
||||
BUILD_ASFLAGS =-Zd
|
||||
BUILD_H2IFLAGS=
|
||||
LIB_SUFFIX_B:=d
|
||||
|
||||
.ELIF $(BUILD) == PROFILE
|
||||
# Profile Flags
|
||||
#
|
||||
BUILD_CFLAGS =-DDEBUG=0 -DPARANOID=0 -DSTATIC=
|
||||
BUILD_LDFLAGS =$(PROFILE_LDFLAGS)
|
||||
BUILD_ASFLAGS =-Zd
|
||||
BUILD_H2IFLAGS=
|
||||
LIB_SUFFIX_B:=p
|
||||
|
||||
.ELSE
|
||||
Error - Unknown build type
|
||||
.ENDIF
|
||||
|
||||
## The build directory
|
||||
##
|
||||
LIB_TYPE:=$(LIB_SUFFIX_C)$(LIB_SUFFIX_T)$(LIB_SUFFIX_B)$(LIB_SUFFIX)
|
||||
|
||||
BLD_BASE*:=bld
|
||||
|
||||
BLD_DIR:=$(BLD_BASE)_$(LIB_TYPE)
|
||||
|
||||
## The library name <part><compiler><type><build><optional>.lib
|
||||
##
|
||||
LIB_NAME:=$(BASE_DIR)/lib/$(LIB_PART)$(LIB_TYPE).lib
|
||||
|
||||
# Keep proper dependencies (per build type)
|
||||
#
|
||||
.KEEP_STATE:=$(BLD_DIR)/state.out
|
||||
|
||||
## Generic rule for building objects and ASM header files
|
||||
##
|
||||
.IF $(LONG_ARGS)X != X
|
||||
|
||||
# Use environment variables to cut down the cmmand line size
|
||||
#
|
||||
$(BLD_DIR)/%.obj : %.c
|
||||
@echo Compiling $<
|
||||
$(CC) @$(mktmp,icc.rsp $< -c $(BASE_CFLAGS:s,\,\\,) $(BUILD_CFLAGS) $(EXTRA_CFLAGS) -o $@\n)
|
||||
|
||||
$(BLD_DIR)/%.obj : %.asm
|
||||
@[
|
||||
set ML=$(BASE_ASFLAGS) $(BUILD_ASFLAGS) $(EXTRA_ASFLAGS) -c -Fo$(@:s,/,\,) $<
|
||||
$(AS)
|
||||
]
|
||||
|
||||
%.obj : %.c
|
||||
$(CC) @$(mktmp,icc.rsp $< -c -o $@ $(BASE_CFLAGS:s,\,\\,) $(BUILD_CFLAGS) $(EXTRA_CFLAGS)\n)
|
||||
|
||||
%.pp : %.c
|
||||
$(CC) @$(mktmp,icc.rsp -E $< $(BASE_CFLAGS:s,\,\\,) $(BUILD_CFLAGS) $(EXTRA_CFLAGS)\n) >$@
|
||||
|
||||
%.cod : %.c
|
||||
$(CC) @$(mktmp,icc.rsp $< -o $@ -S $(BASE_CFLAGS:s,\,\\,) $(BUILD_CFLAGS) $(EXTRA_CFLAGS)\n)
|
||||
|
||||
%.obj : %.asm
|
||||
@[
|
||||
set ML=$(BASE_ASFLAGS) $(BUILD_ASFLAGS) $(EXTRA_ASFLAGS) -Fo$(@:s,/,\,) $<
|
||||
$(AS)
|
||||
]
|
||||
|
||||
$(BLD_DIR)/%.inc : %.h
|
||||
@[
|
||||
set H2INC=$(BASE_H2IFLAGS) $(BUILD_H2IFLAGS) $(EXTRA_H2IFLAGS) /Fa$@ $<
|
||||
$(H2I)
|
||||
]
|
||||
|
||||
$(BLD_DIR)\%.inc : %.h
|
||||
@[
|
||||
set H2INC=$(BASE_H2IFLAGS) $(BUILD_H2IFLAGS) $(EXTRA_H2IFLAGS) /Fa$@ $<
|
||||
$(H2I)
|
||||
]
|
||||
.ELSE
|
||||
# Pass argumants normally
|
||||
#
|
||||
$(BLD_DIR)/%.obj : %.c
|
||||
$(CC) $(BASE_CFLAGS) $(BUILD_CFLAGS) $(EXTRA_CFLAGS) -fo$(@:s,/,\,) $<
|
||||
|
||||
$(BLD_DIR)/%.obj : %.asm
|
||||
$(AS) $(BASE_ASFLAGS) $(BUILD_ASFLAGS) $(EXTRA_ASFLAGS) -c -Fo$(@:s,/,\,) $<
|
||||
|
||||
%.obj : %.c
|
||||
$(CC) $(BASE_CFLAGS) $(BUILD_CFLAGS) $(EXTRA_CFLAGS) -fo$(@:s,/,\,) $<
|
||||
|
||||
%.obj : %.asm
|
||||
$(AS) $(BASE_ASFLAGS) $(BUILD_ASFLAGS) $(EXTRA_ASFLAGS) -c -Fo$(@:s,/,\,) $<
|
||||
|
||||
$(BLD_DIR)/%.inc : %.h
|
||||
$(H2I) $(BASE_H2IFLAGS) $(BUILD_H2IFLAGS) $(EXTRA_H2IFLAGS) /Fa$@ $<
|
||||
|
||||
$(BLD_DIR)\%.inc : %.h
|
||||
$(H2I) $(BASE_H2IFLAGS) $(BUILD_H2IFLAGS) $(EXTRA_H2IFLAGS) /Fa$@ $<
|
||||
|
||||
.ENDIF
|
||||
|
||||
## The final target
|
||||
##
|
||||
OBJS := $(OBJS_C) $(OBJS_ASM)
|
||||
LDLIBS=$(BASE_LDLIBS) $(EXTRA_LDLIBS)
|
||||
|
||||
.IF $(TARGET_TYPE) == LIB
|
||||
|
||||
# Library
|
||||
#
|
||||
"$(LIB_NAME)": $(OBJS)
|
||||
-rm -f $@
|
||||
wlib -n -q $(@:s,/,\\) @$(mktmp,lib.rsp +$(<:t" +":s,\,\\,:s,/,\\)\n)
|
||||
|
||||
.ELIF $(TARGET_TYPE) == EXE_DOS4GW
|
||||
|
||||
.ELSE
|
||||
|
||||
.IF $(EXTENDER) == DOS4GW
|
||||
|
||||
# Executable - DOS4GW
|
||||
#
|
||||
BASE_LDFLAGS:=option dosseg,caseexact,quiet,stack=128k
|
||||
DEBUG_LDFLAGS:=debug all
|
||||
PROFILE_LDFLAGS:=debug all
|
||||
RELEASE_LDFLAGS:=
|
||||
TEST_LDFLAGS:=
|
||||
|
||||
BASE_LDLIBS=math387s.lib emu387.lib clib3s.lib
|
||||
|
||||
LIB_SUFFIX_EXTENDER:=4g
|
||||
|
||||
$(TARGET): $(EXTRA_LDLIBS)
|
||||
$(TARGET): $(OBJS)
|
||||
wlink @$(mktmp,link.rsp name $@\n\
|
||||
system dos4g\n\
|
||||
$(BASE_LDFLAGS)\n\
|
||||
$(BUILD_LDFLAGS)\n\
|
||||
$(EXTRA_LDFLAGS)\n\
|
||||
file wcrt0.obj\n\
|
||||
file $(<:t"\nfile ":s,\,/,)\n\
|
||||
library $(LDLIBS:t"\nlibrary ":s,\,/,)\n\
|
||||
)
|
||||
|
||||
.ELIF $(EXTENDER) == DOS4GWPRO
|
||||
|
||||
# Executable - DOS4GW Professional
|
||||
#
|
||||
BASE_LDFLAGS:=option dosseg,caseexact,quiet,stack=128k
|
||||
DEBUG_LDFLAGS:=debug all
|
||||
PROFILE_LDFLAGS:=debug all
|
||||
RELEASE_LDFLAGS:=
|
||||
TEST_LDFLAGS:=
|
||||
|
||||
BASE_LDLIBS=
|
||||
|
||||
LIB_SUFFIX_EXTENDER:=4g
|
||||
|
||||
$(TARGET): $(EXTRA_LDLIBS)
|
||||
$(TARGET): $(OBJS)
|
||||
wlink @$(mktmp,link.rsp name _tmp.exe\n\
|
||||
system dos4g\n\
|
||||
$(BASE_LDFLAGS)\n\
|
||||
$(BUILD_LDFLAGS)\n\
|
||||
$(EXTRA_LDFLAGS)\n\
|
||||
file wcrt0.obj\n\
|
||||
file $(<:t"\nfile ":s,\,/,)\n\
|
||||
library $(LDLIBS:t"\nlibrary ":s,\,/,)\n\
|
||||
)
|
||||
4gwbind 4gwpro.exe _tmp.exe $(TARGET) -Q
|
||||
rm _tmp.exe
|
||||
|
||||
.ELIF $(EXTENDER) == X32
|
||||
|
||||
# Executable - Flashtek X-32
|
||||
#
|
||||
BASE_LDFLAGS:=option dosseg,caseexact,quiet
|
||||
DEBUG_LDFLAGS:=debug all
|
||||
PROFILE_LDFLAGS:=debug all
|
||||
RELEASE_LDFLAGS:=
|
||||
TEST_LDFLAGS:=
|
||||
|
||||
BASE_LDLIBS=
|
||||
|
||||
LIB_SUFFIX_EXTENDER:=x3
|
||||
|
||||
$(TARGET): $(EXTRA_LDLIBS)
|
||||
$(TARGET): $(OBJS)
|
||||
wlink @$(mktmp,link.rsp name $@\n\
|
||||
$(BASE_LDFLAGS)\n\
|
||||
$(BUILD_LDFLAGS)\n\
|
||||
$(EXTRA_LDFLAGS)\n\
|
||||
system x32$(LIB_SUFFIX)\n\
|
||||
file wcrt0.obj\n\
|
||||
file $(<:t"\nfile ":s,\,/,)\n\
|
||||
library $(LDLIBS:t"\nlibrary ":s,\,/,)\n\
|
||||
)
|
||||
x32fix $(TARGET)
|
||||
|
||||
.ELIF $(EXTENDER) == PHARLAP
|
||||
|
||||
# Executable - Pharlap TNT
|
||||
#
|
||||
BASE_LDFLAGS:=option dosseg,caseexact,quiet
|
||||
DEBUG_LDFLAGS:=debug all
|
||||
PROFILE_LDFLAGS:=debug all
|
||||
RELEASE_LDFLAGS:=
|
||||
TEST_LDFLAGS:=
|
||||
|
||||
BASE_LDLIBS=
|
||||
|
||||
LIB_SUFFIX_EXTENDER:=pl
|
||||
|
||||
$(TARGET): $(EXTRA_LDLIBS)
|
||||
$(TARGET): $(OBJS)
|
||||
wlink @$(mktmp,link.rsp name $@\n\
|
||||
$(BASE_LDFLAGS)\n\
|
||||
$(BUILD_LDFLAGS)\n\
|
||||
$(EXTRA_LDFLAGS)\n\
|
||||
system tnt\n\
|
||||
file wcrt0.obj\n\
|
||||
file $(<:t"\nfile ":s,\,/,)\n\
|
||||
library $(LDLIBS:t"\nlibrary ":s,\,/,)\n\
|
||||
)
|
||||
rebind $(TARGET)
|
||||
|
||||
.ELSE
|
||||
Unknown_EXTENDER:
|
||||
.ENDIF
|
||||
.ENDIF
|
||||
|
||||
## Object directory
|
||||
##
|
||||
$(BLD_DIR)/exists:
|
||||
-mkdir $(BLD_DIR)
|
||||
echo $(BLD_DIR) >$(BLD_DIR)\exists
|
||||
.IF $(LIB_INC)
|
||||
%$(MAKE) $(MAKEFILE) $(BLD_DIR)/$(LIB_INC).inc
|
||||
.ENDIF
|
||||
|
||||
|
||||
|
||||
# Dependencies
|
||||
#
|
||||
SRCS:=$(OBJS_C:s/.obj/.c/) $(OBJS_ASM:s/.obj/.asm/)
|
||||
|
||||
depend: $(BLD_DIR)/exists
|
||||
|
||||
depend:
|
||||
sed "s/^$(BLD_DIR)\///" <$(mktmp,_mkdep.tmp $(SRCS:t"\n":s,\,/,)\n) >_mkdep.rsp
|
||||
$(MKDEP) $(MKDEPFLAGS) @_mkdep.rsp -o_depend.tmp
|
||||
sed "s/^/$(BLD_DIR)\//" <_depend.tmp >$(BLD_DIR)\\depend.out
|
||||
$(RM) _mkdep.rsp
|
||||
$(RM) _depend.tmp
|
||||
|
||||
.INCLUDE .IGNORE: $(BLD_DIR)/depend.out
|
||||
|
302
MAKEDEFS.VTC
Normal file
302
MAKEDEFS.VTC
Normal file
|
@ -0,0 +1,302 @@
|
|||
# Copyright (c) 1993 Argonaut Software Ltd. All rights reserved.
|
||||
#
|
||||
# $Id: makedefs.vtc 1.2 1995/06/30 16:09:30 sam Exp $
|
||||
# $Locker: sam $
|
||||
#
|
||||
# General defines, rules and macros for BRender built with watcom C32 10.0
|
||||
# targeted at VC2.0
|
||||
#
|
||||
|
||||
# Pick up configuration from environment, if not defined, pick defaults
|
||||
#
|
||||
#
|
||||
.IMPORT .IGNORE: SERIAL LONG_ARGS
|
||||
|
||||
# Type of executable to produce - debug, profile, or release
|
||||
#
|
||||
.IF $(BUILD) ==
|
||||
.IMPORT .IGNORE: BUILD
|
||||
.ENDIF
|
||||
|
||||
BUILD*:=RELEASE
|
||||
|
||||
# Target type
|
||||
#
|
||||
.IF $(TARGET_TYPE) ==
|
||||
.IMPORT .IGNORE: TARGET_TYPE
|
||||
.END
|
||||
|
||||
TARGET_TYPE*:=LIB
|
||||
|
||||
# Extender
|
||||
#
|
||||
.IF $(EXTENDER) ==
|
||||
.IMPORT .IGNORE: EXTENDER
|
||||
.END
|
||||
|
||||
EXTENDER*:=PHARLAP
|
||||
|
||||
# Library base type
|
||||
#
|
||||
.IF $(BASE_TYPE) ==
|
||||
.IMPORT .IGNORE: BASE_TYPE
|
||||
.ENDIF
|
||||
|
||||
BASE_TYPE*:=FIXED
|
||||
|
||||
# Compiler part of library name - Watcom
|
||||
#
|
||||
LIB_SUFFIX_C=v
|
||||
|
||||
# Pick a library suffix based on library type
|
||||
#
|
||||
.IF $(BASE_TYPE) == FLOAT
|
||||
LIB_SUFFIX_T=f
|
||||
.ELIF $(BASE_TYPE) == FIXED
|
||||
LIB_SUFFIX_T=x
|
||||
.ELIF $(BASE_TYPE) == NONE
|
||||
LIB_SUFFIX_T=
|
||||
.ELSE
|
||||
Unknown_BASE_TYPE:
|
||||
.ENDIF
|
||||
|
||||
## Build flags
|
||||
##
|
||||
OBJ_EXT:=.obj
|
||||
LIB_EXT:=.lib
|
||||
AS:=ml
|
||||
CC:=wcc386
|
||||
H2I:=h2inc
|
||||
MKDEPFLAGS= -s -t -I$(BLD_DIR) $(INCLUDES)
|
||||
PERL=perl
|
||||
GNUAS=as
|
||||
WDISASM=wdisasm
|
||||
MSVC=t:\msvc21
|
||||
|
||||
# Flags for each process are constructed from
|
||||
# a common prt, a per build part, and a per app. part
|
||||
#
|
||||
ASFLAGS=$(BASE_ASFLAGS) $(BUILD_ASFLAGS) $(EXTRA_ASFLAGS)
|
||||
CFLAGS=$(BASE_CFLAGS) $(BUILD_CFLAGS) $(EXTRA_CFLAGS)
|
||||
H2IFLAGS=$(BASE_H2IFLAGS) $(BUILD_H2IFLAGS) $(EXTRA_H2IFLAGS)
|
||||
|
||||
# Base flags
|
||||
#
|
||||
# -d1+ -hc
|
||||
BASE_CFLAGS =-wx -zp4 -5r -DBASED_$(BASE_TYPE)=1 -D__TARGET_MSC__=1 -I$(MSVC)\include -D__cdecl=__cdecl -D_M_IX86=400 $(INCLUDES)
|
||||
|
||||
BASE_ASFLAGS =-nologo -Cp -D__WATCOMC__=1 -D__TARGET_MSC__=1\
|
||||
-DBASED_$(BASE_TYPE)=1 -I$(BLD_DIR) $(INCLUDES)
|
||||
|
||||
BASE_H2IFLAGS=/nologo /G3 /Zp4 /C /D__WATCOMC__ /D__H2INC__ -D__TARGET_MSC__=1\
|
||||
/D_NO_PROTOTYPES -DBASED_$(BASE_TYPE)=1 $(INCLUDES)
|
||||
|
||||
.IF $(BUILD) == RELEASE
|
||||
# Release Flags
|
||||
#
|
||||
BUILD_CFLAGS =-omaxnet -fp3 -DDEBUG=0 -DPARANOID=0 -DSTATIC=static
|
||||
BUILD_LDFLAGS =$(RELEASE_LDFLAGS)
|
||||
BUILD_ASFLAGS =
|
||||
BUILD_H2IFLAGS=
|
||||
LIB_SUFFIX_B:=r
|
||||
|
||||
.ELIF $(BUILD) == TEST
|
||||
# Check Flags (Release library with validation checks for debugging user code)
|
||||
#
|
||||
BUILD_CFLAGS =-omaxnet -fp3 -DDEBUG=0 -DPARANOID=1 -DSTATIC=static
|
||||
BUILD_LDFLAGS =$(TEST_LDFLAGS)
|
||||
BUILD_ASFLAGS =-DDEBUG=0 -DCHECK=1
|
||||
BUILD_H2IFLAGS=-DDEBUG=0 -DCHECK=1
|
||||
LIB_SUFFIX_B:=t
|
||||
|
||||
.ELIF $(BUILD) == DEBUG
|
||||
# Debug Flags
|
||||
#
|
||||
BUILD_CFLAGS =-s -DDEBUG=1 -DPARANOID=1 -DSTATIC=static
|
||||
BUILD_LDFLAGS =$(DEBUG_LDFLAGS)
|
||||
BUILD_ASFLAGS =-Zd
|
||||
BUILD_H2IFLAGS=
|
||||
LIB_SUFFIX_B:=d
|
||||
|
||||
.ELIF $(BUILD) == PROFILE
|
||||
# Profile Flags
|
||||
#
|
||||
BUILD_CFLAGS =-omaxnet -fp3 -d1 -DDEBUG=0 -DPARANOID=0 -DSTATIC=static
|
||||
BUILD_LDFLAGS =$(PROFILE_LDFLAGS)
|
||||
BUILD_ASFLAGS =-Zd
|
||||
BUILD_H2IFLAGS=
|
||||
LIB_SUFFIX_B:=p
|
||||
|
||||
.ELSE
|
||||
Unknown_BASE_TYPE:
|
||||
.ENDIF
|
||||
|
||||
## The build directory
|
||||
##
|
||||
LIB_TYPE:=$(LIB_SUFFIX_C)$(LIB_SUFFIX_T)$(LIB_SUFFIX_B)$(LIB_SUFFIX)
|
||||
|
||||
BLD_BASE*:=bld
|
||||
|
||||
BLD_DIR:=$(BLD_BASE)_$(LIB_TYPE)
|
||||
|
||||
## The library name <part><compiler><type><build><optional>.lib
|
||||
##
|
||||
LIB_NAME:=$(BASE_DIR)/lib/$(LIB_PART)$(LIB_TYPE).lib
|
||||
|
||||
# Keep proper dependencies (per build type)
|
||||
#
|
||||
.KEEP_STATE:=$(BLD_DIR)/state.out
|
||||
|
||||
## Generic rule for building objects and ASM header files
|
||||
##
|
||||
.IF $(LONG_ARGS)X != X
|
||||
|
||||
# Use environment variables to cut down the cmmand line size
|
||||
#
|
||||
$(BLD_DIR)/%.obj : %.c
|
||||
@[
|
||||
set _ARGS=$(CFLAGS) -fotmp.obj $<
|
||||
$(CC) @_ARGS
|
||||
$(WDISASM) -a -l tmp.obj
|
||||
sed -f $(BASE_DIR)/bin/wat2masm.sed < tmp.lst > tmp.asm
|
||||
$(AS) -nologo -Fo$(@:s,/,\,) -c tmp.asm
|
||||
]
|
||||
|
||||
$(BLD_DIR)/%.obj : %.asm
|
||||
@[
|
||||
set ML=$(ASFLAGS) -c -Fo$(@:s,/,\,) $<
|
||||
$(AS)
|
||||
]
|
||||
|
||||
%.obj : %.c
|
||||
@[
|
||||
set _ARGS=$(CFLAGS) -fo$(@:s,/,\,) $<
|
||||
|
||||
$(CC) @_ARGS
|
||||
]
|
||||
|
||||
%.pp : %.c
|
||||
@[
|
||||
set _ARGS=$(CFLAGS) -fo$(@:s,/,\,) -p $<
|
||||
|
||||
$(CC) @_ARGS
|
||||
]
|
||||
|
||||
%.obj : %.asm
|
||||
@[
|
||||
set ML=$(ASFLAGS) -c -Fo$(@:s,/,\,) $<
|
||||
$(AS)
|
||||
]
|
||||
|
||||
$(BLD_DIR)/%.inc : %.h
|
||||
@[
|
||||
set H2INC=$(H2IFLAGS) /Fa$@ $<
|
||||
$(H2I)
|
||||
]
|
||||
|
||||
$(BLD_DIR)\%.inc : %.h
|
||||
@[
|
||||
set H2INC=$(H2IFLAGS) /Fa$@ $<
|
||||
$(H2I)
|
||||
]
|
||||
.ELSE
|
||||
# Pass argumants normally
|
||||
#
|
||||
$(BLD_DIR)/%.obj : %.c
|
||||
$(CC) $(CFLAGS) -fo$(@:s,/,\,) $<
|
||||
|
||||
$(BLD_DIR)/%.obj : %.asm
|
||||
$(AS) $(ASFLAGS) -c -Fo$(@:s,/,\,) $<
|
||||
|
||||
%.obj : %.c
|
||||
$(CC) $(CFLAGS) -fo$(@:s,/,\,) $<
|
||||
|
||||
%.obj : %.asm
|
||||
$(AS) $(ASFLAGS) -c -Fo$(@:s,/,\,) $<
|
||||
|
||||
$(BLD_DIR)/%.inc : %.h
|
||||
$(H2I) $(H2IFLAGS) /Fa$@ $<
|
||||
|
||||
$(BLD_DIR)\%.inc : %.h
|
||||
$(H2I) $(H2IFLAGS) /Fa$@ $<
|
||||
|
||||
.ENDIF
|
||||
|
||||
## Build ASM function prototype files
|
||||
##
|
||||
%.h .NOSTATE: %.fns
|
||||
$(PERL) $(BASE_DIR)\bin\genasmpr.pl $< >$@
|
||||
|
||||
## The final target
|
||||
##
|
||||
OBJS := $(OBJS_C) $(OBJS_ASM)
|
||||
LDLIBS=$(BASE_LDLIBS) $(EXTRA_LDLIBS)
|
||||
|
||||
.IF $(TARGET_TYPE) == LIB
|
||||
|
||||
# Library
|
||||
#
|
||||
"$(LIB_NAME)": $(OBJS)
|
||||
-rm -f $@
|
||||
$(MSVC)\bin\lib -out:$(@:s,/,\,) @<+$(&:t"\n":s,/,\\,) +>
|
||||
.ELSE
|
||||
|
||||
.IF $(EXTENDER) == PHARLAP
|
||||
|
||||
# Executable - Pharlap TNT
|
||||
#
|
||||
BASE_LDFLAGS:=option dosseg,caseexact,quiet
|
||||
DEBUG_LDFLAGS:=debug all
|
||||
PROFILE_LDFLAGS:=debug all
|
||||
RELEASE_LDFLAGS:=
|
||||
TEST_LDFLAGS:=
|
||||
|
||||
BASE_LDLIBS=
|
||||
|
||||
LIB_SUFFIX_EXTENDER:=pl
|
||||
|
||||
$(TARGET): $(EXTRA_LDLIBS)
|
||||
$(TARGET): $(OBJS)
|
||||
wlink @$(mktmp,link.rsp name $@\n\
|
||||
$(BASE_LDFLAGS)\n\
|
||||
$(BUILD_LDFLAGS)\n\
|
||||
$(EXTRA_LDFLAGS)\n\
|
||||
system tnt\n\
|
||||
file $(<:t"\nfile ":s,\,/,)\n\
|
||||
library $(LDLIBS:t"\nlibrary ":s,\,/,)\n\
|
||||
)
|
||||
rebind $(TARGET)
|
||||
|
||||
.ELSE
|
||||
Unknown_EXTENDER:
|
||||
.ENDIF
|
||||
|
||||
.ENDIF
|
||||
|
||||
|
||||
## Object directory
|
||||
##
|
||||
$(BLD_DIR)/exists:
|
||||
-mkdir $(BLD_DIR)
|
||||
echo $(BLD_DIR) >$(BLD_DIR)\exists
|
||||
.IF $(LIB_INC)
|
||||
%$(MAKE) $(MAKEFILE) $(BLD_DIR)/$(LIB_INC).inc
|
||||
.ENDIF
|
||||
|
||||
|
||||
|
||||
# Dependencies
|
||||
#
|
||||
SRCS:=$(OBJS_C:s/.obj/.c/) $(OBJS_ASM:s/.obj/.asm/)
|
||||
|
||||
depend: $(BLD_DIR)/exists
|
||||
|
||||
depend:
|
||||
sed "s/^$(BLD_DIR)\///" <$(mktmp,_mkdep.tmp $(SRCS:t"\n":s,\,/,)\n) >_mkdep.rsp
|
||||
$(MKDEP) $(MKDEPFLAGS) @_mkdep.rsp -o_depend.tmp
|
||||
sed "s/^/$(BLD_DIR)\//" <_depend.tmp >$(BLD_DIR)\\depend.out
|
||||
$(RM) _mkdep.rsp
|
||||
$(RM) _depend.tmp
|
||||
|
||||
.INCLUDE .IGNORE: $(BLD_DIR)/depend.out
|
||||
|
543
MAKEDEFS.WTC
Normal file
543
MAKEDEFS.WTC
Normal file
|
@ -0,0 +1,543 @@
|
|||
# Copyright (c) 1993 Argonaut Software Ltd. All rights reserved.
|
||||
#
|
||||
# $Id: makedefs.wtc 1.9 1995/06/30 16:09:34 sam Exp $
|
||||
# $Locker: sam $
|
||||
#
|
||||
# General defines, rules and macros for BRender built with watcom C32 9.5
|
||||
#
|
||||
|
||||
# Pick up configuration from environment, if not defined, pick defaults
|
||||
#
|
||||
# Watcom build uses LIB_SUFFIX as the compiler model, R or S
|
||||
#
|
||||
.IMPORT .IGNORE: SERIAL LONG_ARGS LIB_SUFFIX
|
||||
|
||||
# Type of executable to produce - debug, profile, or release
|
||||
#
|
||||
.IF $(BUILD) ==
|
||||
.IMPORT .IGNORE: BUILD
|
||||
.ENDIF
|
||||
|
||||
BUILD*:=RELEASE
|
||||
|
||||
# Target type
|
||||
#
|
||||
.IF $(TARGET_TYPE) ==
|
||||
.IMPORT .IGNORE: TARGET_TYPE
|
||||
.END
|
||||
|
||||
TARGET_TYPE*:=LIB
|
||||
|
||||
# Extender
|
||||
#
|
||||
.IF $(EXTENDER) ==
|
||||
.IMPORT .IGNORE: EXTENDER
|
||||
.END
|
||||
|
||||
EXTENDER*:=DOS4GW
|
||||
|
||||
# Library base type
|
||||
#
|
||||
.IF $(BASE_TYPE) ==
|
||||
.IMPORT .IGNORE: BASE_TYPE
|
||||
.ENDIF
|
||||
|
||||
BASE_TYPE*:=FIXED
|
||||
|
||||
# Compiler part of library name - Watcom
|
||||
#
|
||||
LIB_SUFFIX_C=w
|
||||
|
||||
# Pick a library suffix based on library type
|
||||
#
|
||||
.IF $(BASE_TYPE) == FLOAT
|
||||
LIB_SUFFIX_T=f
|
||||
.ELIF $(BASE_TYPE) == FIXED
|
||||
LIB_SUFFIX_T=x
|
||||
.ELIF $(BASE_TYPE) == NONE
|
||||
LIB_SUFFIX_T=
|
||||
.ELSE
|
||||
Unknown_BASE_TYPE:
|
||||
.ENDIF
|
||||
|
||||
# Default to register calling
|
||||
#
|
||||
LIB_SUFFIX*:=r
|
||||
|
||||
## Build flags
|
||||
##
|
||||
OBJ_EXT:=.obj
|
||||
LIB_EXT:=.lib
|
||||
AS:=ml
|
||||
CC:=wcc386
|
||||
H2I:=h2inc
|
||||
MKDEPFLAGS= -s -t -I$(BLD_DIR) $(INCLUDES)
|
||||
4DOS=+c:\4dos\4dos.com /e:3048 /c
|
||||
PERL=perl
|
||||
|
||||
# Flags for each process are constructed from
|
||||
# a common prt, a per build part, and a per app. part
|
||||
#
|
||||
ASFLAGS=$(BASE_ASFLAGS) $(BUILD_ASFLAGS) $(EXTRA_ASFLAGS)
|
||||
CFLAGS=$(BASE_CFLAGS) $(BUILD_CFLAGS) $(EXTRA_CFLAGS)
|
||||
H2IFLAGS=$(BASE_H2IFLAGS) $(BUILD_H2IFLAGS) $(EXTRA_H2IFLAGS)
|
||||
|
||||
# Base flags
|
||||
#
|
||||
BASE_CFLAGS =-wx -we -zp4 -5$(LIB_SUFFIX) -DBASED_$(BASE_TYPE)=1 $(INCLUDES)
|
||||
|
||||
BASE_ASFLAGS =-nologo -Cp -D__WATCOMC__=1\
|
||||
-DBASED_$(BASE_TYPE)=1 -I$(BLD_DIR) $(INCLUDES)
|
||||
|
||||
BASE_H2IFLAGS=/nologo /G3 /Zp4 /C /D__WATCOMC__ /D__H2INC__\
|
||||
/D_NO_PROTOTYPES -DBASED_$(BASE_TYPE)=1 $(INCLUDES)
|
||||
|
||||
.IF $(BUILD) == RELEASE
|
||||
# Release Flags
|
||||
#
|
||||
BUILD_CFLAGS =-omaxnet -fp3 -DDEBUG=0 -DPARANOID=0 -DSTATIC=static
|
||||
BUILD_LDFLAGS =$(RELEASE_LDFLAGS)
|
||||
BUILD_ASFLAGS =
|
||||
BUILD_H2IFLAGS=
|
||||
LIB_SUFFIX_B:=r
|
||||
|
||||
.ELIF $(BUILD) == TEST
|
||||
# Check Flags (Release library with validation checks for debugging user code)
|
||||
#
|
||||
BUILD_CFLAGS =-omaxnet -fp3 -DDEBUG=0 -DPARANOID=1 -DSTATIC=static
|
||||
BUILD_LDFLAGS =$(TEST_LDFLAGS)
|
||||
BUILD_ASFLAGS =-DDEBUG=0 -DCHECK=1
|
||||
BUILD_H2IFLAGS=-DDEBUG=0 -DCHECK=1
|
||||
LIB_SUFFIX_B:=t
|
||||
|
||||
|
||||
.ELIF $(BUILD) == DEBUG
|
||||
# Debug Flags
|
||||
#
|
||||
# -en -ep -ee
|
||||
#
|
||||
BUILD_CFLAGS =-s -d2 -DDEBUG=1 -DPARANOID=1 -DSTATIC=
|
||||
BUILD_LDFLAGS =$(DEBUG_LDFLAGS)
|
||||
BUILD_ASFLAGS =-Zd
|
||||
BUILD_H2IFLAGS=
|
||||
LIB_SUFFIX_B:=d
|
||||
|
||||
.ELIF $(BUILD) == PROFILE
|
||||
# Profile Flags
|
||||
#
|
||||
BUILD_CFLAGS =-omaxnet -fp3 -d1 -DDEBUG=0 -DPARANOID=0 -DSTATIC=
|
||||
BUILD_LDFLAGS =$(PROFILE_LDFLAGS)
|
||||
BUILD_ASFLAGS =-Zd
|
||||
BUILD_H2IFLAGS=
|
||||
LIB_SUFFIX_B:=p
|
||||
|
||||
.ELSE
|
||||
Unknown_BASE_TYPE:
|
||||
.ENDIF
|
||||
|
||||
## The build directory
|
||||
##
|
||||
LIB_TYPE:=$(LIB_SUFFIX_C)$(LIB_SUFFIX_T)$(LIB_SUFFIX_B)$(LIB_SUFFIX)
|
||||
|
||||
BLD_BASE*:=bld
|
||||
|
||||
BLD_DIR:=$(BLD_BASE)_$(LIB_TYPE)
|
||||
|
||||
## The library name <part><compiler><type><build><optional>.lib
|
||||
##
|
||||
LIB_NAME:=$(BASE_DIR)/lib/$(LIB_PART)$(LIB_TYPE).lib
|
||||
|
||||
# Keep proper dependencies (per build type)
|
||||
#
|
||||
.KEEP_STATE:=$(BLD_DIR)/state.out
|
||||
|
||||
## Generic rule for building objects and ASM header files
|
||||
##
|
||||
.IF $(LONG_ARGS)X != X
|
||||
|
||||
# Use environment variables to cut down the cmmand line size
|
||||
#
|
||||
$(BLD_DIR)/%.obj : %.c
|
||||
@[
|
||||
set _ARGS=$(CFLAGS) -fo$(@:s,/,\,) $<
|
||||
$(CC) @_ARGS
|
||||
]
|
||||
|
||||
# $(CC) @$(mktmp,wcl386.rsp $(CFLAGS:s,\,\\,)) -c -fo$(@:s,/,\,) $<
|
||||
|
||||
$(BLD_DIR)/%.obj : %.asm
|
||||
$(AS) @$(mktmp,wcl386.rsp $(ASFLAGS:s,\,\\,) -c -Fo$(@:s,\,\\,:s,/,\\,)) $<
|
||||
|
||||
%.obj : %.c
|
||||
@[
|
||||
set _ARGS=$(CFLAGS) -fo$(@:s,/,\,) $<
|
||||
$(CC) @_ARGS
|
||||
]
|
||||
|
||||
%.pp : %.c
|
||||
@[
|
||||
set _ARGS=$(CFLAGS) -fo$(@:s,/,\,) -p $<
|
||||
$(CC) @_ARGS
|
||||
]
|
||||
|
||||
%.pp : %.h
|
||||
@[
|
||||
set _ARGS=$(CFLAGS) -fo$(@:s,/,\,) -p -D_NO_PROTOTYPES $<
|
||||
$(CC) @_ARGS
|
||||
]
|
||||
|
||||
%.obj : %.asm
|
||||
$(AS) @$(mktmp $(ASFLAGS) -c -Fo$(@:s,/,\,) $<
|
||||
|
||||
$(BLD_DIR)/%.inc : %.h
|
||||
@[
|
||||
set H2INC=$(H2IFLAGS) /Fa$@ $<
|
||||
$(H2I)
|
||||
]
|
||||
|
||||
$(BLD_DIR)\%.inc : %.h
|
||||
@[
|
||||
set H2INC=$(H2IFLAGS) /Fa$@ $<
|
||||
$(H2I)
|
||||
]
|
||||
|
||||
.ELSE
|
||||
# Pass argumants normally
|
||||
#
|
||||
$(BLD_DIR)/%.obj : %.c
|
||||
$(CC) $(CFLAGS) -fo$(@:s,/,\,) $<
|
||||
|
||||
$(BLD_DIR)/%.obj : %.asm
|
||||
$(AS) $(ASFLAGS) -c -Fo$(@:s,/,\,) $<
|
||||
|
||||
%.obj : %.c
|
||||
$(CC) $(CFLAGS) -fo$(@:s,/,\,) $<
|
||||
|
||||
%.pp : %.c
|
||||
$(CC) $(CFLAGS) -fo$(@:s,/,\,) -p $<
|
||||
|
||||
%.pp : %.h
|
||||
$(CC) $(CFLAGS) -fo$(@:s,/,\,) -p $<
|
||||
|
||||
|
||||
%.obj : %.asm
|
||||
$(AS) $(ASFLAGS) -c -Fo$(@:s,/,\,) $<
|
||||
|
||||
$(BLD_DIR)/%.inc : %.h
|
||||
cp $(mktmp set H2INC=$(H2IFLAGS:s,\,\\,) /Fa$(@:s,\,\\,) $<\n\
|
||||
$(H2I)) _h2inc.bat
|
||||
$(4DOS) _h2inc.bat
|
||||
|
||||
$(BLD_DIR)\%.inc : %.h
|
||||
cp $(mktmp set H2INC=$(H2IFLAGS:s,\,\\,) /Fa$(@:s,\,\\,) $<\n\
|
||||
$(H2I)) _h2inc.bat
|
||||
$(4DOS) _h2inc.bat
|
||||
|
||||
.ENDIF
|
||||
|
||||
## Build ASM function prototype files
|
||||
##
|
||||
%.h .NOSTATE: %.fns
|
||||
$(PERL) $(BASE_DIR)\bin\genasmpr.pl $< >$@
|
||||
|
||||
## The final target
|
||||
##
|
||||
OBJS := $(OBJS_C) $(OBJS_ASM) $(OBJS_EXTRA)
|
||||
LDLIBS=$(BASE_LDLIBS) $(EXTRA_LDLIBS)
|
||||
|
||||
.IF $(TARGET_TYPE) == LIB
|
||||
|
||||
# Library
|
||||
#
|
||||
"$(LIB_NAME)": $(OBJS)
|
||||
-rm -f $@
|
||||
wlib -n -q $(@:s,/,\\) @$(mktmp,lib.rsp +$(<:t" +":s,\,\\,:s,/,\\)\n)
|
||||
|
||||
.ELIF $(TARGET_TYPE) == DRIVER
|
||||
|
||||
# Driver - Build a Win32 DLL
|
||||
#
|
||||
BASE_LDFLAGS:=option quiet,objalign=4k,stub=brdstub.exe
|
||||
DEBUG_LDFLAGS:=debug all
|
||||
PROFILE_LDFLAGS:=debug all
|
||||
RELEASE_LDFLAGS:=
|
||||
TEST_LDFLAGS:=
|
||||
|
||||
BASE_LDLIBS=clib3$(LIB_SUFFIX)
|
||||
|
||||
$(TARGET): $(EXTRA_LDLIBS)
|
||||
$(TARGET): $(OBJS)
|
||||
wlink @$(mktmp,link.rsp name $@\n\
|
||||
system nt_dll\n\
|
||||
$(BASE_LDFLAGS)\n\
|
||||
$(BUILD_LDFLAGS)\n\
|
||||
$(EXTRA_LDFLAGS)\n\
|
||||
file $(<:t"\nfile ":s,\,/,)\n\
|
||||
library $(LDLIBS:t"\nlibrary ":s,\,/,)\n\
|
||||
)
|
||||
|
||||
.ELSE
|
||||
|
||||
.IF $(EXTENDER) == DOS4GW
|
||||
|
||||
# Executable - DOS4GW
|
||||
#
|
||||
BASE_LDFLAGS:=option dosseg,caseexact,quiet,stack=128k
|
||||
DEBUG_LDFLAGS:=debug all
|
||||
PROFILE_LDFLAGS:=debug all
|
||||
RELEASE_LDFLAGS:=
|
||||
TEST_LDFLAGS:=
|
||||
|
||||
BASE_LDLIBS=
|
||||
|
||||
LIB_SUFFIX_EXTENDER:=4g
|
||||
|
||||
$(TARGET): $(EXTRA_LDLIBS)
|
||||
$(TARGET): $(OBJS)
|
||||
wlink @$(mktmp,link.rsp name $@\n\
|
||||
system dos4g\n\
|
||||
$(BASE_LDFLAGS)\n\
|
||||
$(BUILD_LDFLAGS)\n\
|
||||
$(EXTRA_LDFLAGS)\n\
|
||||
file $(<:t"\nfile ":s,\,/,)\n\
|
||||
library $(LDLIBS:t"\nlibrary ":s,\,/,)\n\
|
||||
)
|
||||
|
||||
.ELIF $(EXTENDER) == DOS4GWPRO
|
||||
|
||||
# Executable - DOS4GW Professional
|
||||
#
|
||||
BASE_LDFLAGS:=option dosseg,caseexact,quiet,stack=128k
|
||||
DEBUG_LDFLAGS:=debug all
|
||||
PROFILE_LDFLAGS:=debug all
|
||||
RELEASE_LDFLAGS:=
|
||||
TEST_LDFLAGS:=
|
||||
|
||||
BASE_LDLIBS=
|
||||
|
||||
LIB_SUFFIX_EXTENDER:=4g
|
||||
|
||||
$(TARGET): $(EXTRA_LDLIBS)
|
||||
$(TARGET): $(OBJS)
|
||||
wlink @$(mktmp,link.rsp name _tmp.exe\n\
|
||||
system dos4g\n\
|
||||
$(BASE_LDFLAGS)\n\
|
||||
$(BUILD_LDFLAGS)\n\
|
||||
$(EXTRA_LDFLAGS)\n\
|
||||
file $(<:t"\nfile ":s,\,/,)\n\
|
||||
library $(LDLIBS:t"\nlibrary ":s,\,/,)\n\
|
||||
)
|
||||
4gwbind 4gwpro.exe _tmp.exe $(TARGET) -Q
|
||||
rm _tmp.exe
|
||||
|
||||
.ELIF $(EXTENDER) == X32
|
||||
|
||||
# Executable - Flashtek X-32
|
||||
#
|
||||
BASE_LDFLAGS:=option dosseg,caseexact,quiet
|
||||
DEBUG_LDFLAGS:=debug all
|
||||
PROFILE_LDFLAGS:=debug all
|
||||
RELEASE_LDFLAGS:=
|
||||
TEST_LDFLAGS:=
|
||||
|
||||
BASE_LDLIBS=
|
||||
|
||||
LIB_SUFFIX_EXTENDER:=x3
|
||||
|
||||
$(TARGET): $(EXTRA_LDLIBS)
|
||||
$(TARGET): $(OBJS)
|
||||
wlink @$(mktmp,link.rsp name $@\n\
|
||||
$(BASE_LDFLAGS)\n\
|
||||
$(BUILD_LDFLAGS)\n\
|
||||
$(EXTRA_LDFLAGS)\n\
|
||||
system x32$(LIB_SUFFIX)\n\
|
||||
file $(<:t"\nfile ":s,\,/,)\n\
|
||||
library $(LDLIBS:t"\nlibrary ":s,\,/,)\n\
|
||||
)
|
||||
x32fix $(TARGET)
|
||||
|
||||
.ELIF $(EXTENDER) == X32VM
|
||||
|
||||
# Executable - Flashtek X-32 with virtual memory
|
||||
#
|
||||
BASE_LDFLAGS:=option dosseg,caseexact,quiet
|
||||
DEBUG_LDFLAGS:=debug all
|
||||
PROFILE_LDFLAGS:=debug all
|
||||
RELEASE_LDFLAGS:=
|
||||
TEST_LDFLAGS:=
|
||||
|
||||
BASE_LDLIBS=
|
||||
|
||||
LIB_SUFFIX_EXTENDER:=x3
|
||||
|
||||
$(TARGET): $(EXTRA_LDLIBS)
|
||||
$(TARGET): $(OBJS)
|
||||
wlink @$(mktmp,link.rsp name $@\n\
|
||||
$(BASE_LDFLAGS)\n\
|
||||
$(BUILD_LDFLAGS)\n\
|
||||
$(EXTRA_LDFLAGS)\n\
|
||||
system x32$(LIB_SUFFIX)v\n\
|
||||
file $(<:t"\nfile ":s,\,/,)\n\
|
||||
library $(LDLIBS:t"\nlibrary ":s,\,/,)\n\
|
||||
)
|
||||
x32fix $(TARGET)
|
||||
|
||||
.ELIF $(EXTENDER) == PHARLAPz
|
||||
|
||||
# Executable - Pharlap TNT using 386link
|
||||
#
|
||||
|
||||
BASE_LDFLAGS =-stack 65536 -offset 16384 -libpath t:\watcom10\lib386,t:\watcom10\lib386\dos
|
||||
DEBUG_LDFLAGS:=-fullsym
|
||||
PROFILE_LDFLAGS:=-fullsym
|
||||
|
||||
RELEASE_LDFLAGS:=
|
||||
TEST_LDFLAGS:=
|
||||
|
||||
BASE_LDLIBS=
|
||||
|
||||
LIB_SUFFIX_EXTENDER:=pl
|
||||
|
||||
$(TARGET): $(EXTRA_LDLIBS)
|
||||
$(TARGET): $(OBJS)
|
||||
386link @wc386.dos -exe $(@:s,/,\,) @$(mktmp,386link.rsp $(<:t"\n":s,\,\\,)\n\
|
||||
$(BASE_LDFLAGS)\n\
|
||||
$(BUILD_LDFLAGS)\n\
|
||||
$(EXTRA_LDFLAGS)\n\
|
||||
-lib $(LDLIBS:s,\,\\,:s,/,\\,)\n\
|
||||
)
|
||||
# rebind $(TARGET)
|
||||
|
||||
.ELIF $(EXTENDER) == PHARLAP
|
||||
|
||||
# Executable - Pharlap TNT using wlink
|
||||
#
|
||||
|
||||
BASE_LDFLAGS:=option dosseg,caseexact,quiet
|
||||
DEBUG_LDFLAGS:=debug all
|
||||
PROFILE_LDFLAGS:=debug all
|
||||
|
||||
RELEASE_LDFLAGS:=
|
||||
TEST_LDFLAGS:=
|
||||
|
||||
BASE_LDLIBS=
|
||||
|
||||
LIB_SUFFIX_EXTENDER:=pl
|
||||
|
||||
$(TARGET): $(EXTRA_LDLIBS)
|
||||
$(TARGET): $(OBJS)
|
||||
wlink @$(mktmp,link.rsp name $@\n\
|
||||
$(BASE_LDFLAGS)\n\
|
||||
$(BUILD_LDFLAGS)\n\
|
||||
$(EXTRA_LDFLAGS)\n\
|
||||
system tnt\n\
|
||||
file $(<:t"\nfile ":s,\,/,)\n\
|
||||
library $(LDLIBS:t"\nlibrary ":s,\,/,)\n\
|
||||
)
|
||||
rebind $(TARGET)
|
||||
|
||||
.ELIF $(EXTENDER) == PHARLAP3
|
||||
|
||||
# Executable - Pharlap v3
|
||||
#
|
||||
BASE_LDFLAGS:=-stack 65536 -nobanner -twocase -pack -callbufs 16 -nomap \
|
||||
-backcompat -libpath t:\watcom10\lib386,t:\watcom10\lib386\dos -lib clib3s,math387s,emu387
|
||||
DEBUG_LDFLAGS:=-fullsym
|
||||
PROFILE_LDFLAGS:=-fullsym
|
||||
RELEASE_LDFLAGS:=
|
||||
TEST_LDFLAGS:=
|
||||
|
||||
BASE_LDLIBS=
|
||||
|
||||
LIB_SUFFIX_EXTENDER:=p3
|
||||
|
||||
$(TARGET): $(EXTRA_LDLIBS)
|
||||
$(TARGET): $(OBJS)
|
||||
386link -exe $*.exp @$(mktmp,386link.rsp $(<:t"\n":s,\,\\,)\n\
|
||||
$(BASE_LDFLAGS)\n\
|
||||
$(BUILD_LDFLAGS)\n\
|
||||
$(EXTRA_LDFLAGS)\n\
|
||||
-lib $(LDLIBS:s,\,\\,:s,/,\\,)\n\
|
||||
)
|
||||
|
||||
.ELIF $(EXTENDER) == OS2
|
||||
|
||||
# Executable - OS/2 VIO
|
||||
#
|
||||
BASE_LDFLAGS:=option dosseg,caseexact,quiet,stack=128k
|
||||
DEBUG_LDFLAGS:=debug all
|
||||
PROFILE_LDFLAGS:=debug all
|
||||
RELEASE_LDFLAGS:=
|
||||
TEST_LDFLAGS:=
|
||||
|
||||
BASE_LDLIBS=
|
||||
|
||||
#LIB_SUFFIX_EXTENDER:=4g
|
||||
|
||||
$(TARGET): $(EXTRA_LDLIBS)
|
||||
$(TARGET): $(OBJS)
|
||||
wlink @$(mktmp,link.rsp name $@\n\
|
||||
system os2v2\n\
|
||||
$(BASE_LDFLAGS)\n\
|
||||
$(BUILD_LDFLAGS)\n\
|
||||
$(EXTRA_LDFLAGS)\n\
|
||||
file $(<:t"\nfile ":s,\,/,)\n\
|
||||
library $(LDLIBS:t"\nlibrary ":s,\,/,)\n\
|
||||
)
|
||||
|
||||
.ELIF $(EXTENDER) == NT
|
||||
|
||||
# Executable - NT Console App.
|
||||
#
|
||||
BASE_LDFLAGS:=option dosseg,caseexact,quiet,stack=128k
|
||||
DEBUG_LDFLAGS:=debug all
|
||||
PROFILE_LDFLAGS:=debug all
|
||||
RELEASE_LDFLAGS:=
|
||||
TEST_LDFLAGS:=
|
||||
|
||||
BASE_LDLIBS=
|
||||
|
||||
#LIB_SUFFIX_EXTENDER:=4g
|
||||
|
||||
$(TARGET): $(EXTRA_LDLIBS)
|
||||
$(TARGET): $(OBJS)
|
||||
wlink @$(mktmp,link.rsp name $@\n\
|
||||
system nt\n\
|
||||
$(BASE_LDFLAGS)\n\
|
||||
$(BUILD_LDFLAGS)\n\
|
||||
$(EXTRA_LDFLAGS)\n\
|
||||
file $(<:t"\nfile ":s,\,/,)\n\
|
||||
library $(LDLIBS:t"\nlibrary ":s,\,/,)\n\
|
||||
)
|
||||
.ELSE
|
||||
Unknown_EXTENDER:
|
||||
.ENDIF
|
||||
|
||||
.ENDIF
|
||||
|
||||
## Object directory
|
||||
##
|
||||
$(BLD_DIR)/exists:
|
||||
-mkdir $(BLD_DIR)
|
||||
echo $(BLD_DIR) >$(BLD_DIR)\exists
|
||||
.IF $(LIB_INC)
|
||||
%$(MAKE) $(MAKEFILE) $(BLD_DIR)/$(LIB_INC).inc
|
||||
.ENDIF
|
||||
|
||||
|
||||
|
||||
# Dependencies
|
||||
#
|
||||
SRCS:=$(OBJS_C:s/.obj/.c/) $(OBJS_ASM:s/.obj/.asm/)
|
||||
|
||||
depend: $(BLD_DIR)/exists
|
||||
|
||||
depend:
|
||||
sed "s/^$(BLD_DIR)\///" <$(mktmp,_mkdep.tmp $(SRCS:t"\n":s,\,/,)\n) >_mkdep.rsp
|
||||
$(MKDEP) $(MKDEPFLAGS) @_mkdep.rsp -o_depend.tmp
|
||||
sed "s/^/$(BLD_DIR)\//" <_depend.tmp >$(BLD_DIR)\\depend.out
|
||||
$(RM) _mkdep.rsp
|
||||
$(RM) _depend.tmp
|
||||
|
||||
.INCLUDE .IGNORE: $(BLD_DIR)/depend.out
|
||||
|
1167
MAKEFILE.BAK
Normal file
1167
MAKEFILE.BAK
Normal file
File diff suppressed because it is too large
Load diff
4
SETENV.BAT
Normal file
4
SETENV.BAT
Normal file
|
@ -0,0 +1,4 @@
|
|||
set BASED_FLOAT=1
|
||||
set DEBUG=0
|
||||
set EXTENEDER=DOS4GW
|
||||
set STATIC=static
|
1
ZB/ZIP.BAT
Normal file
1
ZB/ZIP.BAT
Normal file
|
@ -0,0 +1 @@
|
|||
pkzip -u zb.zip *.c *.asm *.h *.inc
|
Loading…
Reference in a new issue