audk/BaseTools/Source/C/VfrCompile/Pccts/NOTES.bcc

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

185 lines
5.3 KiB
Plaintext
Raw Normal View History

March 95
Version 1.32 of pccts
At the moment this file is available via anonymous FTP at
Node: marvin.ecn.purdue.edu
File: pub/pccts/1.32/NOTES.BCC
Mail corrections or additions to David Seidel <71333.1575@compuserve.com>
===============================================================================
Notes on Building PCCTS 1.32 with Borland C++
David Seidel, Innovative Data Concepts Incorporated
CompuServe: 71333,1575
Internet: 71333.1575@compuserve.com
dseidel@delphi.com
I have gotten ANTLR and DLG to succesfully build with BCC 4.0, but have found
from experience that ANTLR, in particular, is likely to run out of memory
with grammars over a certain size, or with larger values for the -k and -ck
options. Now that BCC 4.02 and the new Borland Power Pack for DOS is now
available, I feel that there is no excuse not to build these tools as
32-bit executables, as they ought to be.
For people without the Power Pack, the makefiles below should be fairly easily
modified to build 16-bit real-mode executables, but I don't really recommend
it. As an alternative, you might consider the highly regarded DJGPP compiler
(a DOS port of the Gnu GCC compiler, with a DOS extender included). Hopefully
some other PCCTS who has DJGPP can provode whatever advice is necessary. The
Watcom compiler is also an excellent possibility (albeit a commercial one),
and I hope to make available Watcom makefiles in the near future.
Here are the makefiles I am using. Both makefiles use a compiler configuration
file that contains compiler switches such as optimization settings. I call
this file bor32.cfg and keep a copy in both the ANTLR and DLG subdirectories.
==== File: bor32.cfg (cut here) ===============================================
-w-
-RT-
-x-
-N-
-k-
-d
-O2-e-l
-Z
-D__STDC__=1
==== End of file bor32.cfg (cut here) =========================================
==== File: antlr\bor32.mak (cut here) =========================================
#
# ANTLR 1.32 Makefile for Borland C++ 4.02 with DPMI 32-bit DOS extender by
# David Seidel
# Innovative Data Concepts Incorporated
# 71333.1575@compuserve.com (or) dseidel@delphi.com
#
# Notes: 1. Compiler switches (optimization etc.) are contained in the
# file bor32.cfg.
# 2. This makefile requires Borland C++ 4.02 or greater with
# the DOS Power Pack add-on package.
# 3. Change the BCCDIR macro below to the topmost directory in
# which BCC is installed on your system.
#
BCCDIR = d:\bc4
CC = bcc32
SET = ..\support\set
PCCTS_H = ..\h
ANTLR = ..\bin\antlr
DLG = ..\bin\dlg
CFLAGS = -I$(BCCDIR)\include -I. -I$(SET) -I$(PCCTS_H) -DUSER_ZZSYN \
+bor32.cfg
LIBS = dpmi32 cw32
OBJ_EXT = obj
OBJS = antlr.obj scan.obj err.obj bits.obj build.obj fset2.obj fset.obj \
gen.obj globals.obj hash.obj lex.obj main.obj misc.obj pred.obj dialog.obj \
set.obj
.c.obj:
$(CC) -c $(CFLAGS) {$&.c }
antlr.exe: $(OBJS)
tlink32 @&&|
-Tpe -ax -c -s -L$(BCCDIR)\lib +
$(BCCDIR)\lib\c0x32 $**
$@
$(LIBS)
;
|
copy *.exe ..\bin
# *********** Target list of PC machines ***********
#
# Don't worry about the ambiguity messages coming from antlr
# for making antlr.c etc... [should be 10 of them, I think]
#
# leave this commented out for initial build!
#antlr.c stdpccts.h parser.dlg tokens.h err.c : antlr.g
# $(ANTLR) antlr.g
antlr.$(OBJ_EXT): antlr.c mode.h tokens.h
scan.$(OBJ_EXT): scan.c mode.h tokens.h
# leave this commented out for initial build!
#scan.c mode.h: parser.dlg
# $(DLG) -C2 parser.dlg scan.c
set.$(OBJ_EXT): $(SET)\set.c
$(CC) -c $(CFLAGS) $(SET)\set.c
==== End of file antlr\bor32.mak (cut here) ===================================
==== File: dlg\bor32.mak (cut here) ===========================================
#
# DLG 1.32 Makefile for Borland C++ 4.02 with DPMI 32-bit DOS extender by
# David Seidel
# Innovative Data Concepts Incorporated
# 71333.1575@compuserve.com (or) dseidel@delphi.com
#
# Notes: 1. Compiler switches (optimization etc.) are contained in the
# file bor32.cfg.
# 2. This makefile requires Borland C++ 4.02 or greater with
# the DOS Power Pack add-on package.
# 3. Change the BCCDIR macro below to the topmost directory in
# which BCC is installed on your system.
#
BCCDIR = d:\bc4
CC = bcc32
SET = ..\support\set
PCCTS_H = ..\h
ANTLR = ..\bin\antlr
DLG = ..\bin\dlg
CFLAGS = -I$(BCCDIR)\include -I. -I$(SET) -I$(PCCTS_H) -DUSER_ZZSYN \
+bor32.cfg
LIBS = dpmi32 cw32
OBJ_EXT = obj
OBJS = dlg_p.obj dlg_a.obj main.obj err.obj support.obj \
output.obj relabel.obj automata.obj set.obj
.c.obj:
$(CC) -c $(CFLAGS) {$&.c }
dlg.exe : $(OBJS)
tlink32 @&&|
-Tpe -ax -c -s -L$(BCCDIR)\lib +
c0x32 $**
$@
$(LIBS)
;
|
copy *.exe ..\bin
dlg_p.obj: dlg_p.c
dlg_a.obj: dlg_a.c
main.obj: main.c
err.obj: err.c
support.obj: support.c
output.obj: output.c
relabel.obj: relabel.c
automata.obj: automata.c
set.$(OBJ_EXT): $(SET)\set.c
$(CC) -c $(CFLAGS) $(SET)\set.c
==== End of file dlg\bor32.mak (cut here) =====================================