The first section, [PBINIT], tells PBInit about your editor. When
PBMake encounters an error in your code, it will automatically load
the error list and the code in question into your editor. This
sections tells PBMake what compiler you are using, so the error can be
correctly parsed. It also tells PBMake what editor and the command to
jump to a line number. This information is used in the automatic
creation of .MAK files.
[PBINIT]
COMPILER=CLIPPER
EDITOR=Q
LINEFLAG=-N
After the first section, there are 5 sections which are used to create
link scripts (.LNK). They are [CLIPPER], [C], [TASM], [MASM] and [XPP].
Each of these sections are divided into two parts, signified by the
{PRE} and {POST} position locators.
When building a linker script, there is generally some linker commands
that you need to put ahead of the object references, and in general,
your library references go after your object reference. These two
sections can be defaulted here and every time you build a link script,
the {PRE} and {POST} sections will be included automatically as your
default link script. If you need PBInit to always overlay your source
code, include the {OVERLAY} command.
Here is an example with the CLIPPER section filled in. Please note the
extra library calls that are commented out. You can uncomment them or
delete them, based on each link script's needs. This makes it easy for
you to create a 'standard' link script here in the .INI file and use
it as the basis for all your future link scripts without a bunch of
copying and editing.
[CLIPPER]
{OVERLAY}
{PRE}
NOBELL
BLINKER MESSAGE WINK
BLINKER INCREMENTAL OFF
BLINKER EXECUTABLE CLIPPER //F:99 //E:0
BLINKER EXECUTABLE EXTENDED 1500
# BLINKER EXECUTABLE COMPRESS 1
BLINKER HOST MESSAGE ON
STACK 7168
SEARCH BLXRATEX,BLXCLP52
{POST}
#BEGIN
# file cmxdbt52.obj
# file cmx52.obj
# lib cm52
# lib cmx52
#END
# lib nanfor
# Search mrwindow
# @mrdmax
# fi mrdump.lib
#@CL520MIN
@CL520MID
#@CL520MAX
# MODULE EXITSTATE,GETAPPLYKE,_EXITSTATE,GETACTIVE,READVAR
#fi cld
#@cm
#@cmx
#begin
# lib TPOVL52
#end
#search TPBLX52
#@TPBLX.lnk
#BEGIN
# lib FLEX52
#END
#BEGIN
# lib FUNCK
#END
#lib LLIBCA
#lib CTp
#FI CTUSp
[C]
{PRE}
{POST}
[TASM]
{PRE}
{POST}
[MASM]
{PRE}
{POST}
[XPP]
{PRE}
{POST}