Hi!
Here update for make files:
- ALLCFLAGS and NASMFLAGS placed after all options (this allows to redefine
some options in config.bat); for watcom.mak this also adds space after
ALLCFLAGS (which is required, if ALLCFLAGS ends by option like -I).
- NASMFLAGS now includes -f and -D$(COMPILER) options.
- tc2.mak, tc3.mak, turbocpp.mak, bc5.mak: -zC option moved from ALLCFLAGS
into CFLAGS (this eliminates option duplication in INITCFLAGS and reduces
command line length). ALLCFLAGS now includes -I..\hdr;$(INCLUDEPATH)
option (this allows to reuse compiler headers (for example, limits.h),
but own time.h anyway "overloads" compiler's header).
All this tested under: command.com and NDOS; Turbo C 2.0, BC 3.1 and OW.
PS: Batch files itself was not changed after my last report for them, so, t
reduce diff size, below present diff (with latest CVS snapshot) only for
make files.
--- Begin Message ---
diff -ruNp 0old/kernel/kernel.cfg 0new/kernel/kernel.cfg
--- 0old/kernel/kernel.cfg 2001-07-09 15:19:02.000000000 +0000
+++ 0new/kernel/kernel.cfg 1970-01-01 00:00:00.000000000 +0000
@@ -1,14 +0,0 @@
--1-
--f-
--ff-
--O
--Z
--d
--k-
--vi-
--w
--wpro
--weas
--wpre
--I..\hdr
--v -X- -I. -D__STDC__=0 -DTSC -DDEBUG -DKERNEL -DI86 -DPROTO -DSHWR -DASMSUPT
diff -ruNp 0old/kernel/makefile 0new/kernel/makefile
--- 0old/kernel/makefile 2004-04-12 02:36:14.000000000 +0000
+++ 0new/kernel/makefile 2004-05-11 02:30:20.000000000 +0000
@@ -29,7 +29,7 @@ OBJS=$(OBJS1) $(OBJS2) $(OBJS3) $(OBJS4)
# *Explicit Rules*
-production: ..\bin\$(TARGET).sys
+production: ..\bin\$(TARGET).sys
..\bin\$(TARGET).sys: kernel.sys
copy kernel.sys ..\bin
@@ -43,7 +43,7 @@ kernel.sys: kernel.exe ..\utils\exeflat.
kernel.exe: $(TARGET).lnk $(OBJS) $(LIBS)
$(LINK) @$(TARGET).lnk;
-clobber: clean
+clobber: clean
-$(RM) kernel.exe kernel.sys status.me
clean:
@@ -54,8 +54,8 @@ clean:
ECHOTO=..\utils\echoto
-$(TARGET).lnk: turboc.cfg makefile ..\mkfiles\generic.mak ..\mkfiles\$(COMPILER).mak
- -$(RM) *.lnk
+$(TARGET).lnk: turboc.cfg makefile ..\mkfiles\generic.mak ..\mkfiles\$(COMPILER).mak
+ -$(RM) *.lnk *.obj
$(ECHOTO) $(TARGET).lnk $(OBJS1)+
$(ECHOTO) $(TARGET).lnk $(OBJS2)+
$(ECHOTO) $(TARGET).lnk $(OBJS3)+
@@ -68,57 +68,58 @@ $(TARGET).lnk: turboc.cfg makefile ..\mk
$(ECHOTO) $(TARGET).lnk $(LIBS)
# *Individual File Dependencies*
-apisupt.obj: apisupt.asm segs.inc $(TARGET).lnk
-asmsupt.obj: asmsupt.asm segs.inc $(TARGET).lnk
-console.obj: console.asm io.inc $(TARGET).lnk
-dosidle.obj: dosidle.asm segs.inc $(TARGET).lnk
-entry.obj: entry.asm segs.inc $(HDR)stacks.inc $(TARGET).lnk
-execrh.obj: execrh.asm segs.inc $(TARGET).lnk
-int2f.obj: int2f.asm segs.inc $(HDR)stacks.inc $(TARGET).lnk
-intr.obj: intr.asm segs.inc $(TARGET).lnk
-io.obj: io.asm segs.inc $(TARGET).lnk
-irqstack.obj: irqstack.asm segs.inc $(TARGET).lnk
-kernel.obj: kernel.asm segs.inc ludivmul.inc $(TARGET).lnk
-nls_hc.obj: nls_hc.asm segs.inc $(TARGET).lnk
-nlssupt.obj: nlssupt.asm segs.inc $(TARGET).lnk
-printer.obj: printer.asm io.inc $(TARGET).lnk
-procsupt.obj: procsupt.asm segs.inc $(HDR)stacks.inc $(TARGET).lnk
-serial.obj: serial.asm io.inc $(TARGET).lnk
+
+apisupt.obj: apisupt.asm segs.inc
+asmsupt.obj: asmsupt.asm segs.inc
+console.obj: console.asm io.inc
+dosidle.obj: dosidle.asm segs.inc
+entry.obj: entry.asm segs.inc $(HDR)stacks.inc
+execrh.obj: execrh.asm segs.inc
+int2f.obj: int2f.asm segs.inc $(HDR)stacks.inc
+intr.obj: intr.asm segs.inc
+io.obj: io.asm segs.inc
+irqstack.obj: irqstack.asm segs.inc
+kernel.obj: kernel.asm segs.inc ludivmul.inc
+nls_hc.obj: nls_hc.asm segs.inc
+nlssupt.obj: nlssupt.asm segs.inc
+printer.obj: printer.asm io.inc
+procsupt.obj: procsupt.asm segs.inc $(HDR)stacks.inc
+serial.obj: serial.asm io.inc
HDRS=\
$(HDR)portab.h $(HDR)device.h $(HDR)mcb.h $(HDR)pcb.h \
$(HDR)fat.h $(HDR)fcb.h $(HDR)tail.h $(HDR)time.h $(HDR)process.h \
- $(HDR)dcb.h $(HDR)sft.h $(HDR)cds.h $(HDR)exe.h $(HDR)fnode.h \
- $(HDR)dirmatch.h $(HDR)file.h $(HDR)clock.h $(HDR)kbd.h $(HDR)error.h \
+ $(HDR)dcb.h $(HDR)sft.h $(HDR)cds.h $(HDR)exe.h $(HDR)fnode.h \
+ $(HDR)dirmatch.h $(HDR)file.h $(HDR)clock.h $(HDR)kbd.h $(HDR)error.h \
$(HDR)version.h dyndata.h
HEADERS=$(HDRS) globals.h proto.h
INITHEADERS=$(HDRS) init-mod.h init-dat.h
-blockio.obj: blockio.c $(HEADERS) $(TARGET).lnk
-break.obj: break.c $(HEADERS) $(TARGET).lnk
-chario.obj: chario.c $(HEADERS) $(TARGET).lnk
-dosfns.obj: dosfns.c $(HEADERS) $(TARGET).lnk
-dosnames.obj: dosnames.c $(HEADERS) $(TARGET).lnk
-dsk.obj: dsk.c $(HEADERS) $(TARGET).lnk
-error.obj: error.c $(HEADERS) $(TARGET).lnk
-fatdir.obj: fatdir.c $(HEADERS) $(TARGET).lnk
-fatfs.obj: fatfs.c $(HEADERS) $(TARGET).lnk
-fattab.obj: fattab.c $(HEADERS) $(TARGET).lnk
-fcbfns.obj: fcbfns.c $(HEADERS) $(TARGET).lnk
-inthndlr.obj: inthndlr.c $(HEADERS) $(TARGET).lnk
-ioctl.obj: ioctl.c $(HEADERS) $(TARGET).lnk
-memmgr.obj: memmgr.c $(HEADERS) $(TARGET).lnk
-misc.obj: misc.c $(HEADERS) $(TARGET).lnk
-lfnapi.obj: lfnapi.c $(HEADERS) $(TARGET).lnk
-newstuff.obj: newstuff.c $(HEADERS) $(TARGET).lnk
-network.obj: network.c $(HEADERS) $(TARGET).lnk
-nls.obj: nls.c $(HEADERS) $(TARGET).lnk
-prf.obj: prf.c $(HDR)portab.h $(TARGET).lnk
-strings.obj: strings.c $(TARGET).lnk
-sysclk.obj: sysclk.c $(HEADERS) $(TARGET).lnk
-syspack.obj: syspack.c $(HEADERS) $(TARGET).lnk
-systime.obj: systime.c $(HEADERS) $(TARGET).lnk
-task.obj: task.c $(HEADERS) $(TARGET).lnk
+blockio.obj: blockio.c $(HEADERS)
+break.obj: break.c $(HEADERS)
+chario.obj: chario.c $(HEADERS)
+dosfns.obj: dosfns.c $(HEADERS)
+dosnames.obj: dosnames.c $(HEADERS)
+dsk.obj: dsk.c $(HEADERS)
+error.obj: error.c $(HEADERS)
+fatdir.obj: fatdir.c $(HEADERS)
+fatfs.obj: fatfs.c $(HEADERS)
+fattab.obj: fattab.c $(HEADERS)
+fcbfns.obj: fcbfns.c $(HEADERS)
+inthndlr.obj: inthndlr.c $(HEADERS)
+ioctl.obj: ioctl.c $(HEADERS)
+lfnapi.obj: lfnapi.c $(HEADERS)
+memmgr.obj: memmgr.c $(HEADERS)
+misc.obj: misc.c $(HEADERS)
+network.obj: network.c $(HEADERS)
+newstuff.obj: newstuff.c $(HEADERS)
+nls.obj: nls.c $(HEADERS)
+prf.obj: prf.c $(HDR)portab.h
+strings.obj: strings.c
+sysclk.obj: sysclk.c $(HEADERS)
+syspack.obj: syspack.c $(HEADERS)
+systime.obj: systime.c $(HEADERS)
+task.obj: task.c $(HEADERS)
# now the funny stuff :-)
# Files in the INIT segment
@@ -126,39 +127,41 @@ task.obj: task.c $(HEADERS) $(TAR
# XXX: Special handling for initialization modules -- this is required because
# TC 2.01 cannot handle `#pragma option' like TC 3 can. -- ror4
-config.obj: config.c $(INITHEADERS) $(TARGET).lnk
- $(CC) $(INITCFLAGS) $*.c
- $(INITPATCH) $*.obj
-
-initoem.obj: initoem.c $(INITHEADERS) $(TARGET).lnk
- $(CC) $(INITCFLAGS) $*.c
- $(INITPATCH) $*.obj
-
-main.obj: main.c $(INITHEADERS) $(TARGET).lnk
- $(CC) $(INITCFLAGS) $*.c
- $(INITPATCH) $*.obj
-
-inithma.obj: inithma.c $(INITHEADERS) $(TARGET).lnk
- $(CC) $(INITCFLAGS) $*.c
- $(INITPATCH) $*.obj
-
-dyninit.obj: dyninit.c $(INITHEADERS) $(TARGET).lnk
- $(CC) $(INITCFLAGS) $*.c
- $(INITPATCH) $*.obj
-
-initdisk.obj: initdisk.c $(INITHEADERS) $(TARGET).lnk
- $(CC) $(INITCFLAGS) $*.c
- $(INITPATCH) $*.obj
-
-initclk.obj: initclk.c $(INITHEADERS) $(TARGET).lnk
- $(CC) $(INITCFLAGS) $*.c
- $(INITPATCH) $*.obj
+config.obj: config.c $(INITHEADERS)
+ $(CC) $(INITCFLAGS) $*.c
+ $(INITPATCH) $*.obj
+
+dyninit.obj: dyninit.c $(INITHEADERS)
+ $(CC) $(INITCFLAGS) $*.c
+ $(INITPATCH) $*.obj
+
+initclk.obj: initclk.c $(INITHEADERS)
+ $(CC) $(INITCFLAGS) $*.c
+ $(INITPATCH) $*.obj
+
+initdisk.obj: initdisk.c $(INITHEADERS)
+ $(CC) $(INITCFLAGS) $*.c
+ $(INITPATCH) $*.obj
+
+inithma.obj: inithma.c $(INITHEADERS)
+ $(CC) $(INITCFLAGS) $*.c
+ $(INITPATCH) $*.obj
+
+initoem.obj: initoem.c $(INITHEADERS)
+ $(CC) $(INITCFLAGS) $*.c
+ $(INITPATCH) $*.obj
+
+main.obj: main.c $(INITHEADERS)
+ $(CC) $(INITCFLAGS) $*.c
+ $(INITPATCH) $*.obj
#the string functions for INIT_TEXT
-iasmsupt.obj: asmsupt.asm $(TARGET).lnk
- $(NASM) -D$(COMPILER) -D_INIT $(NASMFLAGS) -f obj -o iasmsupt.obj asmsupt.asm
+
+iasmsupt.obj: asmsupt.asm
+ $(NASM) $(NASMFLAGS) -D_INIT -o iasmsupt.obj asmsupt.asm
#the printf for INIT_TEXT - yet another special case, this file includes prf.c
-iprf.obj: iprf.c prf.c $(HDR)portab.h $(TARGET).lnk
- $(CC) $(INITCFLAGS) $*.c
- $(INITPATCH) $*.obj
+
+iprf.obj: iprf.c prf.c $(HDR)portab.h
+ $(CC) $(INITCFLAGS) $*.c
+ $(INITPATCH) $*.obj
diff -ruNp 0old/kernel/turboc.cfg 0new/kernel/turboc.cfg
--- 0old/kernel/turboc.cfg 2003-06-30 11:37:00.000000000 +0000
+++ 0new/kernel/turboc.cfg 2004-03-09 23:54:30.000000000 +0000
@@ -1,15 +1,10 @@
--f-
--ff-
--O
--Z
-d
+-f-
-k-
+-O -Z
+-p
+-v-
-vi-
--wpro
--weas
--wpre
--w
--g1
+-w -g1
-I..\hdr
--p
--v- -I. -D__STDC__=0 -DKERNEL -DI86 -DPROTO -DASMSUPT
+-DKERNEL;I86;PROTO;ASMSUPT
diff -ruNp 0old/mkfiles/bc5.mak 0new/mkfiles/bc5.mak
--- 0old/mkfiles/bc5.mak 2003-06-15 05:56:46.000000000 +0000
+++ 0new/mkfiles/bc5.mak 2004-05-11 02:41:40.000000000 +0000
@@ -2,33 +2,23 @@
# BC5.MAK - kernel copiler options for Borland C++
#
-# Use these for Borland C++
+TARGET=KBC
-COMPILERPATH=$(BC5_BASE)
-COMPILERBIN=$(COMPILERPATH)\bin
-CC=$(COMPILERBIN)\bcc -c
-CL=$(COMPILERBIN)\bcc
-INCLUDEPATH=$(COMPILERPATH)\include
-LIBUTIL=$(COMPILERBIN)\tlib
-LIBPATH=$(COMPILERPATH)\lib
-LIBTERM=
-LIBPLUS=+
+CC=$(BINPATH)\bcc -c
+CL=$(BINPATH)\bcc
TINY=-lt
CFLAGST=-L$(LIBPATH) -mt -a- -k- -f- -ff- -O -Z -d
CFLAGSC=-L$(LIBPATH) -a- -mc
-TARGET=KBC
-
# used for building the library
-CLIB=$(COMPILERPATH)\lib\cs.lib
+CLIB=$(LIBPATH)\cs.lib
MATH_EXTRACT=*H_LDIV *H_LLSH *H_LURSH *F_LXMUL
-MATH_INSERT=+H_LDIV +H_LLSH +H_LURSH +F_LXMUL
+MATH_INSERT =+H_LDIV +H_LLSH +H_LURSH +F_LXMUL
#
-# heavy stuff - building the kernel
-# Compiler and Options for Borland C++
+# Compiler options for Turbo/Borland C
# ------------------------------------
#
# -zAname ж ж Code class
@@ -46,8 +36,9 @@ MATH_INSERT=+H_LDIV +H_LLSH +H_LURSH +F_
# -zX жлж Use default name for "X"
#
-# ALLCFLAGS specified by turbo.cfg and config.mak
+# Common options specified in turboc.cfg instead ALLCFLAGS
#
-ALLCFLAGS=$(TARGETOPT) -zCHMA_TEXT $(ALLCFLAGS)
-INITCFLAGS=$(ALLCFLAGS) -zCINIT_TEXT -zDIB -zRID -zTID -zBIB -zGI_GROUP -zSI_GROUP
-CFLAGS=$(ALLCFLAGS)
+
+ALLCFLAGS=-I..\hdr;$(INCLUDEPATH) $(CPUOPT) $(ALLCFLAGS)
+INITCFLAGS=-zCINIT_TEXT -zRID -zTID -zSI_GROUP -zDIB -zBIB -zGI_GROUP
+CFLAGS =-zCHMA_TEXT
diff -ruNp 0old/mkfiles/generic.mak 0new/mkfiles/generic.mak
--- 0old/mkfiles/generic.mak 2004-04-13 13:41:28.000000000 +0000
+++ 0new/mkfiles/generic.mak 2004-05-11 01:55:00.000000000 +0000
@@ -1,43 +1,61 @@
# These are generic definitions
-#**********************************************************************
-#* TARGET : we create a %TARGET%.sys file
-#* TARGETOPT : options, handled down to the compiler
-#**********************************************************************
-
-TARGETOPT=-1-
+# TARGET : we create a $(TARGET).sys file
+CPUOPT=-1-
+!if $(XCPU)+0 == 0
+XCPU=86
+!endif
!if $(XCPU) == 186
-TARGETOPT=-1
+CPUOPT=-1
!endif
!if $(XCPU) == 386
-TARGETOPT=-3
+CPUOPT=-3
!endif
+!if $(XFAT)+0 == 0
+XFAT=32
+!endif
!if $(XFAT) == 32
-ALLCFLAGS=$(ALLCFLAGS) -DWITHFAT32
-NASMFLAGS=$(NASMFLAGS) -DWITHFAT32
+ALLCFLAGS=-DWITHFAT32 $(ALLCFLAGS)
+NASMFLAGS=-DWITHFAT32 $(NASMFLAGS)
!endif
-NASM=$(XNASM)
-NASMFLAGS = $(NASMFLAGS) -i../hdr/ -DXCPU=$(XCPU)
+NASMFLAGS=-fobj -i../hdr -D$(COMPILER) -DXCPU=$(XCPU) $(NASMFLAGS)
-LINK=$(XLINK)
+UPXOPT=-U
+!if $(__VERSION__) # WMAKE?
+!if "$(XUPX)" == ""
[EMAIL PROTECTED]
+UPXOPT=
+!endif
+!else # TC/BC MAKE
+!if !$d(XUPX)
[EMAIL PROTECTED]
+UPXOPT=
+!endif
+!endif
[EMAIL PROTECTED]
+BINPATH=$(BASE)\bin
+INCLUDEPATH=$(BASE)\include
+LIBPATH=$(BASE)\lib
+
!include "..\mkfiles\$(COMPILER).mak"
TARGET=$(TARGET)$(XCPU)$(XFAT)
+INITCFLAGS=$(INITCFLAGS) $(ALLCFLAGS)
+CFLAGS=$(CFLAGS) $(ALLCFLAGS)
RM=..\utils\rmfiles
-.asm.obj :
- $(NASM) -D$(COMPILER) $(NASMFLAGS) -f obj $*.asm
-
# *Implicit Rules*
-.c.obj :
- $(CC) $(CFLAGS) $*.c
-.cpp.obj :
- $(CC) $(CFLAGS) $*.cpp
+.asm.obj:
+ $(NASM) $(NASMFLAGS) $<
+
+.c.obj:
+ $(CC) $(CFLAGS) $<
+.cpp.obj:
+ $(CC) $(CFLAGS) $<
diff -ruNp 0old/mkfiles/mscl8.mak 0new/mkfiles/mscl8.mak
--- 0old/mkfiles/mscl8.mak 2004-04-11 10:22:36.000000000 +0000
+++ 0new/mkfiles/mscl8.mak 2004-05-11 00:55:04.000000000 +0000
@@ -1,47 +1,36 @@
#
-# MSCL8.MAK - kernel copiler options for MS CL8 = MSVC1.52
+# MSCL8.MAK - kernel copiler options for MS CL8 = MS VC 1.52
#
-# Use these for MSCV 1.52
-COMPILERPATH=$(MS_BASE)
-COMPILERBIN=$(COMPILERPATH)\bin
-INCLUDEPATH=$(COMPILERPATH)\include
-CC=$(COMPILERBIN)\cl -c
-CL=$(COMPILERBIN)\cl
+TARGET=KMS
+
+CC=$(BINPATH)\cl -c
+CL=$(BINPATH)\cl
+
+INCLUDE=$(BASE)\include
+LIB=$(BASE)\lib
+
TINY=
CFLAGST=/Fm /AT /Os /Zp1
CFLAGSC=/Fm /AL /Os /Zp1
-LIBPATH=$(COMPILERPATH)\lib
-LIB=$(COMPILERPATH)\lib
-INCLUDE=$(COMPILERPATH)\include
-LIBUTIL=$(COMPILERBIN)\lib /nologo
-LIBPLUS=+
-LIBTERM=;
-INCLUDE=$(COMPILERPATH)\include
-LIB=$(COMPILERPATH)\lib
-
-# used for building the library
-
-CLIB=$(COMPILERPATH)\lib\slibce.lib
-MATH_EXTRACT=*aflmul *aFlshl *aFNauldi *aFulrem *aFulshr *aFuldiv *aFlrem *aFldiv
-MATH_INSERT= +aflmul +aFlshl +aFNauldi +aFulrem +aFulshr +aFuldiv +aFlrem +aFldiv
-TARGETOPT=
-!if $(XCPU) == 186
-TARGETOPT=-G1
+CPUOPT=
+!if $(XCPU) == 186
+CPUOPT=-G1
!endif
!if $(XCPU) == 386
-TARGETOPT=-G3
+CPUOPT=-G3
!endif
-TARGET=KMS
-
-#
-# heavy stuff - building
+# used for building the library
+CLIB=$(LIBPATH)\slibce.lib
+MATH_EXTRACT=*aflmul *aFlshl *aFNauldi *aFulrem *aFulshr *aFuldiv *aFlrem *aFldiv
+MATH_INSERT =+aflmul +aFlshl +aFNauldi +aFulrem +aFulshr +aFuldiv +aFlrem +aFldiv
-ALLCFLAGS=-I..\hdr $(TARGETOPT) $(ALLCFLAGS) -nologo -Zl -Fc -WX -Gr -f- -Os -Gs -Ob1
-OV4 -Gy -Oe -Zp1
+#
-INITCFLAGS=$(ALLCFLAGS) -NTINIT_TEXT
-CFLAGS=$(ALLCFLAGS) -NTHMA_TEXT
-INITPATCH = ..\utils\patchobj _DATA=IDATA DATA=ID BSS=ID DGROUP=I_GROUP CONST=IC
+ALLCFLAGS=-I..\hdr -nologo -Zl -Fc -WX -Gr -f- -Os -Gs -Ob1 -OV4 -Gy -Oe -Zp1
$(CPUOPT) $(ALLCFLAGS)
+INITCFLAGS=-NTINIT_TEXT
+CFLAGS =-NTHMA_TEXT
+INITPATCH=..\utils\patchobj _DATA=IDATA DATA=ID BSS=ID DGROUP=I_GROUP CONST=IC
diff -ruNp 0old/mkfiles/tc2.mak 0new/mkfiles/tc2.mak
--- 0old/mkfiles/tc2.mak 2003-06-15 05:56:46.000000000 +0000
+++ 0new/mkfiles/tc2.mak 2004-05-11 02:01:34.000000000 +0000
@@ -1,34 +1,25 @@
#
-# TURBOC.MAK - kernel copiler options for TURBOC
+# TC2.MAK - kernel copiler options for Turbo C 2.01
#
-# Use these for Turbo C 2.01
+TARGET=KTC
-COMPILERPATH=$(TC2_BASE)
-COMPILERBIN=$(COMPILERPATH)
-CC=$(COMPILERBIN)\tcc -c
-CL=$(COMPILERBIN)\tcc
-INCLUDEPATH=$(COMPILERPATH)\include
-LIBUTIL=$(COMPILERBIN)\tlib
-LIBPATH=$(COMPILERPATH)\lib
-LIBTERM=
-LIBPLUS=+
+BINPATH=$(BASE)
+CC=$(BINPATH)\tcc -c
+CL=$(BINPATH)\tcc
TINY=-lt
CFLAGST=-L$(LIBPATH) -mt -a- -k- -f- -ff- -O -Z -d
CFLAGSC=-L$(LIBPATH) -a- -mc
-TARGET=KTC
-
# used for building the library
-CLIB=$(COMPILERPATH)\lib\cs.lib
+CLIB=$(LIBPATH)\cs.lib
MATH_EXTRACT=*LDIV *LXMUL *LURSH *LLSH *LRSH
-MATH_INSERT=+LDIV +LXMUL +LURSH +LLSH +LRSH
+MATH_INSERT =+LDIV +LXMUL +LURSH +LLSH +LRSH
#
-# heavy stuff - building the kernel
-# Compiler and Options for Borland C++
+# Compiler options for Turbo/Borland C
# ------------------------------------
#
# -zAname ж ж Code class
@@ -46,8 +37,9 @@ MATH_INSERT=+LDIV +LXMUL +LURSH +LLSH +
# -zX жлж Use default name for "X"
#
-# ALLCFLAGS specified by turbo.cfg and config.mak
+# Common options specified in turboc.cfg instead ALLCFLAGS
#
-ALLCFLAGS=$(TARGETOPT) -zCHMA_TEXT $(ALLCFLAGS)
-INITCFLAGS=$(ALLCFLAGS) -zCINIT_TEXT -zDIB -zRID -zTID -zBIB -zGI_GROUP -zSI_GROUP
-CFLAGS=$(ALLCFLAGS)
+
+ALLCFLAGS=-I..\hdr;$(INCLUDEPATH) $(CPUOPT) $(ALLCFLAGS)
+INITCFLAGS=-zCINIT_TEXT -zRID -zTID -zSI_GROUP -zDIB -zBIB -zGI_GROUP
+CFLAGS =-zCHMA_TEXT
diff -ruNp 0old/mkfiles/tc3.mak 0new/mkfiles/tc3.mak
--- 0old/mkfiles/tc3.mak 2003-06-15 05:56:46.000000000 +0000
+++ 0new/mkfiles/tc3.mak 2004-05-11 02:41:40.000000000 +0000
@@ -1,34 +1,24 @@
#
-# TC3.MAK - kernel copiler options for Turbo C 3.0
+# TC3.MAK - kernel copiler options for Turbo C++ 3.0
#
-# Use these for Turbo C 3.0
+TARGET=KT3
-COMPILERPATH=$(TC3_BASE)
-COMPILERBIN=$(COMPILERPATH)\bin
-CC=$(COMPILERBIN)\tcc -c
-CL=$(COMPILERBIN)\tcc
-INCLUDEPATH=$(COMPILERPATH)\include
-LIBUTIL=$(COMPILERBIN)\tlib
-LIBPATH=$(COMPILERPATH)\lib
-LIBTERM=
-LIBPLUS=+
+CC=$(BINPATH)\tcc -c
+CL=$(BINPATH)\tcc
TINY=-lt
CFLAGST=-L$(LIBPATH) -mt -a- -k- -f- -ff- -O -Z -d
CFLAGSC=-L$(LIBPATH) -a- -mc
-TARGET=KT3
-
# used for building the library
-CLIB=$(COMPILERPATH)\lib\cs.lib
+CLIB=$(LIBPATH)\cs.lib
MATH_EXTRACT=*H_LDIV *H_LLSH *H_LURSH *F_LXMUL
-MATH_INSERT=+H_LDIV +H_LLSH +H_LURSH +F_LXMUL
+MATH_INSERT =+H_LDIV +H_LLSH +H_LURSH +F_LXMUL
#
-# heavy stuff - building the kernel
-# Compiler and Options for Borland C++
+# Compiler options for Turbo/Borland C
# ------------------------------------
#
# -zAname ж ж Code class
@@ -46,8 +36,9 @@ MATH_INSERT=+H_LDIV +H_LLSH +H_LURSH +F_
# -zX жлж Use default name for "X"
#
-# ALLCFLAGS specified by turbo.cfg and config.mak
+# Common options specified in turboc.cfg instead ALLCFLAGS
#
-ALLCFLAGS=$(TARGETOPT) -zCHMA_TEXT $(ALLCFLAGS)
-INITCFLAGS=$(ALLCFLAGS) -zCINIT_TEXT -zDIB -zRID -zTID -zBIB -zGI_GROUP -zSI_GROUP
-CFLAGS=$(ALLCFLAGS)
+
+ALLCFLAGS=-I..\hdr;$(INCLUDEPATH) $(CPUOPT) $(ALLCFLAGS)
+INITCFLAGS=-zCINIT_TEXT -zRID -zTID -zSI_GROUP -zDIB -zBIB -zGI_GROUP
+CFLAGS =-zCHMA_TEXT
diff -ruNp 0old/mkfiles/turbocpp.mak 0new/mkfiles/turbocpp.mak
--- 0old/mkfiles/turbocpp.mak 2003-06-15 05:56:46.000000000 +0000
+++ 0new/mkfiles/turbocpp.mak 2004-05-11 02:41:26.000000000 +0000
@@ -1,34 +1,24 @@
#
-# TURBOCPP.MAK - kernel copiler options for TCPP 1.01
+# TURBOCPP.MAK - kernel copiler options for Turbo C++ 1.01
#
-# Use these for Turbo CPP 1.01
+TARGET=KTP
-COMPILERPATH=$(TP1_BASE)
-COMPILERBIN=$(COMPILERPATH)\bin
-CC=$(COMPILERBIN)\tcc -c
-CL=$(COMPILERBIN)\tcc
-INCLUDEPATH=$(COMPILERPATH)\include
-LIBUTIL=$(COMPILERBIN)\tlib
-LIBPATH=$(COMPILERPATH)\lib
-LIBTERM=
-LIBPLUS=+
+CC=$(BINPATH)\tcc -c
+CL=$(BINPATH)\tcc
TINY=-lt
CFLAGST=-L$(LIBPATH) -mt -a- -k- -f- -ff- -O -Z -d
CFLAGSC=-L$(LIBPATH) -a- -mc
-TARGET=KTP
-
# used for building the library
-CLIB=$(COMPILERPATH)\lib\cs.lib
+CLIB=$(LIBPATH)\cs.lib
MATH_EXTRACT=*H_LDIV *H_LLSH *H_LURSH *F_LXMUL
-MATH_INSERT=+H_LDIV +H_LLSH +H_LURSH +F_LXMUL
+MATH_INSERT =+H_LDIV +H_LLSH +H_LURSH +F_LXMUL
#
-# heavy stuff - building the kernel
-# Compiler and Options for Borland C++
+# Compiler options for Turbo/Borland C
# ------------------------------------
#
# -zAname ж ж Code class
@@ -46,8 +36,9 @@ MATH_INSERT=+H_LDIV +H_LLSH +H_LURSH +F_
# -zX жлж Use default name for "X"
#
-# ALLCFLAGS specified by turbo.cfg and config.mak
+# Common options specified in turboc.cfg instead ALLCFLAGS
#
-ALLCFLAGS=$(TARGETOPT) -zCHMA_TEXT $(ALLCFLAGS)
-INITCFLAGS=$(ALLCFLAGS) -zCINIT_TEXT -zDIB -zRID -zTID -zBIB -zGI_GROUP -zSI_GROUP
-CFLAGS=$(ALLCFLAGS)
+
+ALLCFLAGS=-I..\hdr;$(INCLUDEPATH) $(CPUOPT) $(ALLCFLAGS)
+INITCFLAGS=-zCINIT_TEXT -zRID -zTID -zSI_GROUP -zDIB -zBIB -zGI_GROUP
+CFLAGS =-zCHMA_TEXT
diff -ruNp 0old/mkfiles/watcom.mak 0new/mkfiles/watcom.mak
--- 0old/mkfiles/watcom.mak 2004-04-10 08:11:32.000000000 +0000
+++ 0new/mkfiles/watcom.mak 2004-05-11 00:55:04.000000000 +0000
@@ -1,67 +1,52 @@
#
-# WATCOM.MAK - kernel copiler options for WATCOM C 11.0c
+# WATCOM.MAK - kernel copiler options for WATCOM C/OpenWatcom
#
-# Use these for WATCOM 11.0c
-COMPILERPATH=$(WATCOM)
+TARGET=KWC
+
CC=*wcc
CL=wcl
-INCLUDEPATH=$(COMPILERPATH)\H
-INCLUDE=$(COMPILERPATH)\h
-EDPATH=$(COMPILERPATH)\EDDAT
-
-!if $(XCPU) != 186
-!if $(XCPU) != 386
-TARGETOPT=-0
-!endif
-!endif
+INCLUDEPATH=$(BASE)\H
+LIBPATH=$(BASE)\lib286
-LIBPATH=$(COMPILERPATH)\lib286
-LIBUTIL=wlib -q
-LIBPLUS=
-LIBTERM=
+!if $(XCPU) < 186
+CPUOPT=-0
+!endif
TINY=-mt
CFLAGST=-zq-zp1-os-s-we-e3-wx
-CFLAGSC=-mc-zq-zp1-os-s-we-e3-wx
-
-TARGET=KWC
+CFLAGSC=-zq-zp1-os-s-we-e3-wx-mc
# used for building the library
-CLIB=$(COMPILERPATH)\lib286\dos\clibm.lib
-
-# we use our own ones, which override these ones when linking.
-#
-
+CLIB=$(LIBPATH)\dos\clibm.lib
MATH_EXTRACT=*i4m
-MATH_INSERT=+i4m
-
+MATH_INSERT =+i4m
#
-# heavy stuff - building
+# Compiler options for Watcom
+# ---------------------------
#
# -e=<num> set limit on number of error messages
# -ms small memory model (small code/small data)
-# -j change char default from unsigned to signed
-#-nc=<id> set code class name
-#-nd=<id> set data segment name
-#-nm=<file> set module name
-#-nt=<id> set name of text segment
+# -j change char default from unsigned to signed
+# -nc=<id> set code class name
+# -nd=<id> set data segment name
+# -nm=<file> set module name
+# -nt=<id> set name of text segment
# -g=<id> set code group name
# -os -> favor code size over execution time in optimizations
-# -s remove stack overflow checks
-# -w=<num> set warning level number
-# -we treat all warnings as errors
+# -s remove stack overflow checks
+# -w=<num> set warning level number
+# -we treat all warnings as errors
# -ze enable extensions (i.e., near, far, export, etc.)
# -zl remove default library information
# -zp=<num> pack structure members with alignment {1,2,4,8,16}
# -zq operate quietly
#
-# -3 optimization for 386 - given in CONFIG.MAK, not here
+# -3 optimization for 386 - given in $(CPUOPT)
#
-ALLCFLAGS=-I..\hdr $(TARGETOPT) $(ALLCFLAGS)-zq-os-s-e5-j-zl-zp1-wx-we-zgf-zff-r
-INITCFLAGS=$(ALLCFLAGS)-ntINIT_TEXT-gTGROUP-ndI
-CFLAGS=$(ALLCFLAGS)-ntHMA_TEXT
-
+ALLCFLAGS=-I..\hdr -zq-os-s-e5-j-zl-zp1-wx-we-zgf-zff-r-d1$(CPUOPT)$(ALLCFLAGS)
+INITCFLAGS=-ntINIT_TEXT-gTGROUP-ndI
+CFLAGS =-ntHMA_TEXT
diff -ruNp 0old/utils/indent.ini 0new/utils/indent.ini
--- 0old/utils/indent.ini 2001-11-18 10:18:26.000000000 +0000
+++ 0new/utils/indent.ini 1970-01-01 00:00:00.000000000 +0000
@@ -1,18 +0,0 @@
--kr
--di2
--nbc
--nfca
--bl
--bli0
--ss
--npcs
--ncs
--nbs
--i2
--ci4
--nce
--sob
--nut
--nbad
--cli2
--hnl
diff -ruNp 0old/utils/makefile 0new/utils/makefile
--- 0old/utils/makefile 2003-09-14 18:28:28.000000000 +0000
+++ 0new/utils/makefile 2004-04-03 10:23:32.000000000 +0000
@@ -1,6 +1,6 @@
!include "../mkfiles/generic.mak"
-CFLAGS = -I$(INCLUDEPATH) -I..\hdr
+CFLAGS=-I$(INCLUDEPATH) -I..\hdr
production: patchobj.com exeflat.exe
@@ -14,6 +14,5 @@ exeflat.exe: exeflat.c ../hdr/exe.h
clobber: clean
clean:
- $(RM) *.obj *.bak *.crf *.xrf *.map *.lst *.las *.cod *.err status.me
- $(RM) exeflat.exe patchobj.com
-
+ $(RM) *.obj *.bak *.crf *.xrf *.map *.lst *.las *.cod *.err \
+ status.me exeflat.exe patchobj.com
diff -ruNp 0old/utils/proto.bat 0new/utils/proto.bat
--- 0old/utils/proto.bat 2001-11-17 15:26:26.000000000 +0000
+++ 0new/utils/proto.bat 1970-01-01 00:00:00.000000000 +0000
@@ -1,2 +0,0 @@
-for %%f in ( %1 %2 %3 %4 %5 %6 %7 %8 %9 ) do mkptypes %%f >>proto.h
-
diff -ruNp 0old/utils/rmfiles.bat 0new/utils/rmfiles.bat
--- 0old/utils/rmfiles.bat 2004-04-11 05:21:50.000000000 +0000
+++ 0new/utils/rmfiles.bat 2004-03-27 06:10:04.000000000 +0000
@@ -7,4 +7,3 @@ shift
goto loop_commandline
:done_with_commandline
-
diff -ruNp 0old/utils/wlinker.bat 0new/utils/wlinker.bat
--- 0old/utils/wlinker.bat 2004-04-11 05:21:50.000000000 +0000
+++ 0new/utils/wlinker.bat 2004-04-03 11:38:24.000000000 +0000
@@ -1,4 +1,4 @@
@echo off
-ms2wlink %1 %2 %3 %4 %5 %6 %7 %8 %9 ,,,, > kernel.lnk
-echo op map,statics,verbose >> kernel.lnk
+ms2wlink %1 %2 %3 %4 %5 %6 %7 %8 %9 ,,,,>kernel.lnk
+echo op map,statics,verbose>>kernel.lnk
call wlink @kernel.lnk
--- End Message ---