Files
harbour-core/harbour/utils/hbmk2/hbmk2.1
Viktor Szakats e4b80e1e05 2012-04-04 20:01 UTC+0200 Viktor Szakats (harbour syenar.net)
* include/hb_io.h
  * src/main/harbour.1
  * src/rtl/gtdos/gtdos.c
  * src/rtl/gtos2/gtos2.c
  * src/rtl/gtpca/gtpca.c
  * utils/hbmk2/hbmk2.1
  * utils/hbtest/hbtest.1
  * contrib/hbqt/hbmk2_qt.hbs
  * contrib/hbide/idemisc.prg
  * contrib/hbide/idesaveload.prg
  * contrib/hbide/ideprojmanager.prg
  * tests/sbartest.prg
  * tests/videotst.prg
  * tests/testhtml.prg
  * tests/vidtest.prg
  * tests/setkeys.prg
  * tests/mousetst.prg
  * TODO
  * NEWS
  * examples/guestbk/cgi.ch
  * examples/hscript/cgi.ch
    * "harbour project" name usage cleanup (except in license texts)
    * minor cleanups (f.e. updated project description and mailing list name in hbide)
2012-04-04 18:03:58 +00:00

159 lines
4.0 KiB
Groff

.TH HBMK2 1
.SH NAME
hbmk2 \- Harbour Make
.SH SYNOPSIS
\fBhbmk2\fP \fB[options] [<script[s]>] <src[s][.prg|.c|.obj|.o|.rc|.res]>\fP
.SH DESCRIPTION
\fBhbmk2\fP is the Harbour make utility.
It's a wrapper to the Harbour compiler, a C compiler and linker.
.SH OPTIONS
.IP "\fB-help\fP" 10
Display full help
.IP "\fB-o<outname>\fP" 10
output file name
.IP "\fB-l<libname>\fP" 10
link with <libname> library
.IP "\fB-L<libpath>\fP" 10
additional path to search for libraries
.IP "\fB-static|-shared\fP" 10
link with static/shared libs
.IP "\fB-mt|-st\fP" 10
link with multi-thread/single-thread VM
.IP "\fB-gt<name>\fP" 10
link with GT<name> GT driver, can be repeated to link
with more GTs. First one will be the default at runtime
.IP "\fB-gui|-std\fP" 10
create GUI/console executable
.IP "\fB-main=<mainfunc>\fP" 10
override the name of starting function/procedure.
.IP "\fB-fullstatic\fP" 10
link with all static libs
.IP "\fB-nulrdd[-]\fP" 10
link with nulrdd
.IP "\fB-bldf[-]\fP" 10
inherit all/no (default) flags from Harbour build
.IP "\fB-bldf=[p][c][l]\fP" 10
inherit .prg/.c/linker flags (or none) from Harbour build
.IP "\fB-[no]debug\fP" 10
add/exclude debug info
.IP "\fB-[no]map\fP" 10
create (or not) a map file
.IP "\fB-[no]strip\fP" 10
strip (no strip) binaries
.IP "\fB-[no]fmstat\fP" 10
enable/disable runtime memory statistics (gcc builds only)
.IP "\fB-[no]trace\fP" 10
show commands executed
.IP "\fB-[no]run\fP" 10
run/don't run the created executable
.IP "\fB-nohbc\fP" 10
do not process .hbc files in current directory
.IP "\fB-hbcc, -hbcmp\fP" 10
stop after creating the object files
create link/copy hbmk2 to hbcc/hbcmp for the same effect
.IP "\fB-hblnk\fP" 10
act as linker. Currently this is the same as -q
.IP "\fB-plat=<plat>\fP" 10
assume specific platform. Same as HB_PLATFORM envvar
.IP "\fB-comp=<comp>\fP" 10
use specific compiler. Same as HB_COMPILER envvar
Special value:
- bld: use original build settings (default on *nix)
.IP "\fB-info\fP" 10
turn on informational messages
.IP "\fB-quiet\fP" 10
suppress all screen messages
<script> can be <@script> (.hbm file), <script.hbm> or <script.hbc>.
Regular Harbour compiler options are also accepted.
Multiple -l, -L and <script> parameters are accepted.
hbmk.cfg option file in hbmk2 directory is always processed if it exists.
On *nix platforms ~/.harbour, /etc/harbour, <base>/etc/harbour,
<base>/etc are checked (in that order) before the hbmk2 directory.
The file format is the same as .hbc.
.hbc option files in current dir are automatically processed.
.hbc options (they should come in separate lines):
libs=[<libname[s]>], gt=[gtname], prgflags=[Harbour flags]
cflags=[C compiler flags], ldflags=[Linker flags], libpaths=[lib paths]
gui|mt|shared|nulrdd|debug|map|strip|run=[yes|no]
Lines starting with '#' char are ignored
Platform filters are accepted in each .hbc line and with -l options.
Filter format: {[!][<plat|comp>]}. Filters can be combined
using '&', '|' operators and grouped by parantheses.
Ex.: {win}, {gcc}, {linux|darwin}, {win&!pocc}, {(win|linux)&!watcom}
Defaults and feature support vary by platform/compiler.
Supported <comp> values for each supported <plat> value:
linux: gcc, gpp, watcom, icc
darwin: gcc
win: mingw, msvc, bcc, watcom, icc, pocc, cygwin, msvc64, msvcia64, pocc64
wce: mingwarm, msvcarm, poccarm
os2: gcc, watcom
dos: djgpp, watcom
bsd, hpux, sunos: gcc
.SH FILES
.SH ENVIRONMENT
.IP "\fBHB_CCPATH\fP" 10
.IP "\fBHB_CCPREFIX\fP" 10
.IP "\fBHB_PLATFORM\fP" 10
.IP "\fBHB_COMPILER\fP" 10
.IP "\fBHB_INSTALL_PREFIX\fP" 10
.IP "\fBHB_INSTALL_BIN\fP" 10
.IP "\fBHB_INSTALL_INC\fP" 10
.IP "\fBHB_INSTALL_LIB\fP" 10
.IP "\fBHB_MT\fP" 10
.IP "\fBHB_GUI\fP" 10
.IP "\fBHB_SHARED\fP" 10
.IP "\fBHB_DEBUG\fP" 10
.IP "\fBHB_NULRDD\fP" 10
.IP "\fBHB_GT\fP" 10
.IP "\fBHB_USER_PRGFLAGS\fP" 10
.IP "\fBHB_USER_LIBS\fP" 10
.IP "\fBHB_USER_RESFLAGS\fP" 10
.IP "\fBHB_USER_CFLAGS\fP" 10
.IP "\fBHB_USER_LDFLAGS\fP" 10
.SH AUTHOR
Viktor Szakats, The Harbour Project (http://harbour-project.org)