* make_b32.mak
* make_vc.mak
* common.mak
+ bin/hbmk.bat
* utils/hbmk/Makefile
- utils/hbmk/hbmk.prg
+ utils/hbmk/hbmk2.prg
+ Renamed hbmk to hbmk2 to avoid collision with hbmk script,
and to allow parallel testing.
+ Readded hbmk.bat to redirect to hbmk2.exe.
This will be removed in the future. Win9x/OS/2 isn't
supported with this batch file.
- bin/hbmk.bat
- bin/hbmk_gcc.bat
- bin/hbmk_os2.cmd
- bin/hbmk_ow.bat
- bin/hbmk_b32.bat
- bin/hbmk_vc.bat
- Removed make files obsoleted by new hbmk tool.
Old calling convention, features, switches, envvars
continue to work.
WARNING: If you've called hbmk as hbmk.bat,
you'll need to change that to simply hbmk.
* contrib/hbodbc/odbc.c
* Minor formatting.
* utils/hbmk/hbmk.prg
! Fixed owatcom link commands. (it was also wrong
in hbmk.bat)
+ Added -debug support for owatcom. (untested)
+ Added rsxnt/rsx32 support in an unobtrusive way.
* bin/hbmk.bat
+ Added automatic architecture detection on Windows NT and above.
+ Added automatic compiler detection on Windows NT and above.
(mingw, msvc, bcc32 and owatcom are detected - in that order)
The given compiler should be properly setup, with compiler
executable in PATH or current dir.
; NOTE: This makes it possible to get rid of all hbmk_b32.bat and
hbmk_vc.bat files and at the same time automatically
add support for OpenWatcom and MinGW for all our tests,
examples, etc. I'll replace all special hbmk_b32.bat
and hbmk_vc.bat files with generic local hbmk.bat files,
which can be used with any supported compilers.
* bin/hbmk.bat
+ Added support for pure .c projects. (like pp)
* contrib/examples/pp/hbmk_b32.bat
* contrib/examples/pp/hbmk_vc.bat
* contrib/examples/guestbk/hbmk_b32.bat
* contrib/examples/guestbk/hbmk_vc.bat
* contrib/examples/pe/hbmk_b32.bat
* contrib/examples/pe/hbmk_vc.bat
* contrib/examples/hbsqlit2/tests/hbmk_b32.bat
* contrib/examples/hbsqlit2/tests/hbmk_vc.bat
* contrib/examples/uhttpd/hbmk_b32.bat
* contrib/examples/uhttpd/hbmk_vc.bat
* contrib/examples/dbu/hbmk_b32.bat
* contrib/examples/dbu/hbmk_vc.bat
* contrib/examples/terminal/hbmk_b32.bat
* contrib/examples/terminal/hbmk_b32_trm_appn.bat
* contrib/examples/terminal/hbmk_vc.bat
* contrib/examples/terminal/hbmk_vc_trm_appn.bat
* contrib/examples/hscript/hbmk_b32.bat
* contrib/examples/hscript/hbmk_vc.bat
* contrib/examples/rl/hbmk_b32.bat
* contrib/examples/rl/hbmk_vc.bat
* utils/hbdoc/hbmk_b32.bat
* utils/hbdoc/hbmk_vc.bat
* utils/hbmake/hbmk_b32.bat
* utils/hbmake/hbmk_vc.bat
% Much simplified batch files. Actually the content of vc
and b32 are fully identical, so you can easily create new
flavours for GCC and OpenWatcom by simply making a copy by
the name hbmk_gcc.bat or hbmk_ow.bat. Et voila.
; NOTE: As indicated, these won't work with Win9x anymore.
* contrib/examples/pp/hbppcore.c
+ Added <ctype.h> to make it compile with recent Harbour.
* bin/hbmk.bat
+ Added detection for .PRG written in uppercase.
(needed for DBU original sources.)
! Fixed to set 'echo off'
* contrib/examples/guestbk/hbmk_b32.bat
* contrib/examples/guestbk/hbmk_vc.bat
* contrib/examples/dbu/hbmk_b32.bat
* contrib/examples/dbu/hbmk_vc.bat
* utils/hbdoc/hbmk_b32.bat
* utils/hbdoc/hbmk_vc.bat
* utils/hbmake/hbmk_b32.bat
* utils/hbmake/hbmk_vc.bat
% Switched to use hbmk instead of using local logic.
* ChangeLog
+ Added one item to previous entry.
* bin/hbmk.bat
+ Added autodetection of Harbour dirs. So this batch will
now work when called from any directories, and even if
'/bin' dir is added to the PATH. IOW, it's not anymore
necessary to supply these envvars in normal cases:
HB_INSTALL_PREFIX, HB_BIN_INSTALL, HB_LIB_INSTALL,
HB_INC_INSTALL. If someone moves this batch file away
from its original place, these envvars can still be used
to point to the Harbour tree, but support for this may
be removed in the future to keep things simple.
+ Added support for multiple .prg files on the command line.
The first will be the main program.
+ Added support to supply .c files on the command line.
[these features need Windows NT or upper]
; TODO: Test OpenWatcom. I had to remove -fo and FILE
directives from script, if this was required we
need to find a solution to support multiple
input files.
* bin/hbmk_b32.bat
* bin/hbmk_vc.bat
+ Now these files can be called from any directories and even
when '/bin' dir is added to the PATH.
+ Added support for unlimited number of command line parameters.
[these features need Windows NT or upper]
* Changed to not interfere with 'echo off' setting of the
caller.
; NOTE: After this change it's possible to get rid of all
non-customized version of hbmk_b32.bat/hbmk_vc.bat
files in the source tree. I plan to remove these in
the near future. The rest can be simplified in most
places. This will only cause some inconvenience
for developers still using Win95/98/ME.
+ bin/hbmk_gcc.bat
+ bin/hbmk_ow.bat
+ Added make batch files to MingW/GCC and OpenWatcom.
* contrib/hbwin/win_tprn.prg
! Fixed recent typo.
* include/hbstdgen.ch
- Removed #undef __FILE__. I understand this isn't needed anymore.
* harbour/bin/postinst.sh
! added missing export in envvar setting.
* harbour/config/linux/install.cf
* added error message when install directory is not set.
* harbour/config/lib.cf
* harbour/config/bin.cf
* harbour/config/dir.cf
+ added explicit support for make recursive calls.
Question: why we use $(MK) instead of $(MAKE) so it necessary
to mark recursive make calls manually?
* harbour/config/dir.cf
* rewritten DIR_RUL to use only GNU make commands instead of
OS scripts. Now config/<arch>/dir.cf files are not longer used.
Please make build tests on different platforms. If all will
be correct then we remove these files.
* harbour/source/common/Makefile
* harbour/source/vm/Makefile
* harbour/source/vm/vmmt/Makefile
* moved biggest files to begin of file list for better parallel
compilation utilization.
* harbour/source/rdd/dbfcdx/dbfcdx1.c
* accept invalid string key expression if codeblock key expression
is given.
* harbour/config/darwin/gcc.cf
! changed CCACHE to HB_CCACHE
* harbour/include/hbatomic.h
! removed unnecessary volatile casting in Darwin atomic function
parameters
* harbour/source/compiler/harbour.y
! cleaned one untyped expression assign
(by Phil Krylov borrowed from xHarbour)
* harbour/bin/hb-func.sh
* updated contrib library last
* bin/hb-func.sh
* fix darwin detection
* make_gnu.sh
* fix darwin detection
* added ncurses detection logic like slang one
* contrib/hbtip/ftpcln.prg
* fixed wrong changes from nil to .f.
* someone in the past has done a mass change of the return values
* without checking the results
* harbour/bin/hb-func.sh
+ added support for rddsql and sdd* libraries in hb* scripts
* harbour/harbour-win-spec
* harbour/harbour-wce-spec
! added rddnsx library
* harbour/mpkg_rpm.sh
* harbour/harbour.spec
+ added harbour-fbird RPM and support for sqlrdd and sdd* libraries
* harbour/contrib/rddsql/sddpg/Makefile
+ added other paths checking for postgresql header files
* harbour/contrib/rddsql/sddfb/Makefile
! fixed file name
* harbour/contrib/rddsql/sddpg/pgsqldd.c
* harbour/contrib/rddsql/sddfb/fbirddd.c
* cleanup init symbol declaration
! casting for C++ compilation
* added missing const in some char * declarations
* harbour/contrib/rddsql/sddfb/fbirddd.c
* changed some parameters passed to firebird functions.
Mindaugas please verify me because these modifications changes
the code behavior. I do not know FireBird API and I modified it to
only pass C++ compilation checking error messages. At least these
lines should be checked: 233, 236, 244, 245, 260, 261, 440, 445
If possible please also check casting I added in in other lines
because it may hide some mistakes.
* harbour/bin/hb-mkslib.sh
! added support for absolute paths in passed object or static library
list
* harbour/config/bsd/gcc.cf
! added missing HB_CCACHE in gcc calls
* bin/hb-func.sh
* mpkg_tgz.sh
! Fixed OSX/Darwin builds:
- to not require harbour.dylib for binary tools supplied
in .tgz package. This way, hbrun/hbmake/hbdoc/hbtest
will work out of the box without the need for any
special installation or extra manual procedure, or
any change whatsoever in the user/system environment.
The change also doesn't prevent user installing Harbour
to system dirs and/or to utilize harbour.dylib in every way.
- so that hbmk script creates '-static' executables by default.
This will make all programs created by hbmk to work out of the
box without any special trick described above, or explicit
need to use '-static' switch.
You can override this with '-shared' switch.
; [ The price to pay is slightly larger binary package
and executable sizes. ]
* make_gnu.sh
* Minor sync in help text with recent change.
* common.mak
! Old typo.
* harbour/bin/hb-func.sh
* updated OS release version checking for new OpenSuse distros
* removed r from uname parameters used in get_hbplatform() function
+ added support for HB_MK_STATIC=yes|no envvar which allows to control
default -static/-shared hbmk switch. It should be set before hb*
scripts are created
* harbour/harbour.spec
* updated OS release version checking for new OpenSuse distros
* harbour/mpkg_tgz.sh
* changed installer envelope code to not use 'sed' and reenabled it
in default builds. Now it should work with different *nixes.
Please test.
* make_b32.mak
* make_vc.mak
* make_gcc.mak
* common.mak
+ Added generation of hbmainstd and hbmainwin libs.
* bin/hbmk.bat
+ Changed to use above libs. This also means that '-shared'
can now be used in Harbour binary distributions, too.
* bin/hbmk.bat
+ Added '-shared' support for MSVC.
! Fixed to cleanup mainstd.obj and mainwin.obj.
* ChangeLog
* Some TODO/TOFIX marked as [DONE]. One [DONE] marked
as [DONE - REOPENED].
* bin/hbmk.bat
+ Added C_USR support for OpenWatcom.
- Removed debug switches from OpenWatcom C compiler cmdline.
* bin/hbmk_os2.cmd
+ Added OpenWatcom support. Pls update it, f.e. I don't know
what is the name of the compiler executable.
! Fixed HB_COMPILER branching. Looks like nobody uses this
file if this problem didn't show up so far, so I'd like to
propose again to remove this file completely, as there is
not much point spending time on maintaining stuff which
nobody uses or needs, is there?
* bin/hbmk.bat
- config/dos/watcom.cf
- config/w32/watcom.cf
- Removed rather obsolete Watcom support. Pls use OpenWatcom.
Update you envvar HB_COMPILER from 'watcom' to 'owatcom'.
* bin/hbmk.bat
+ Added support for 'owatcom' as HB_COMPILER.
; NOTE: If there are no objections I'll remove Harbour
support for 'watcom' HB_COMPILER, which was
used for old non-opensource version of this
compiler, but I guess it doesn't make too much
sense having them anymore.
* source/common/hbverdsp.c
* Minor change in /build output.
* include/hbver.ch
* source/rtl/version.c
* Changed ordering of parameter constants to make more sense.
* bin/hbmk.bat
* config/w32/owatcom.cf
* Removed 'debug all' linker option to make executable sizes
significantly smaller by default. If you need debug info,
use 'L_USR=debug all'.
; NOTE: I'd suggest doing the same for other platform supported
by owatcom. If there are no objections I can do this.
* source/rtl/gtwvt/gtwvt.c
* Typo, minor formatting.
* bin/hbmk.bat
! Fix to previous change. (MT and GUI status was reset in the loop).
* bin/hbmk.bat
* bin/hbmk_os2.cmd
! Help message corrections.
* bin/hbmk.bat
* make_vc.mak
* config/w32/msvc.cf
* config/w32/msvcce.cf
* Using lowercase linker options for MSVC. Just for consistency.
* Using '/' as a switch char for MSVC linker. This works fo all
old version.
* contrib/mtpl_vc.mak
* Minor formatting.
* harbour/bin/hbmk.bat
* simple modification to make beginning hbmk parameters (-mt and -gui)
position independent though they still have to be used before Harbour/
C compiler switches and filenames
* harbour/source/common/hbdate.c
* harbour/source/compiler/cmdcheck.c
* harbour/source/rtl/filesys.c
* harbour/source/rtl/hbffind.c
! use MT safe localtime_r() function if it's available instead of
localtime()
TODO: clean the usage of this function and gmttime[_r]() probably
by adding our own wrappers.
* harbour/source/rtl/hbffind.c
! disabled calls to tzset() - this function should be executed
automatically by CRTL only if it's necessary. It's also not MT
safe and can cause MT applications crash.
* bin/hbmk.bat
+ Added support for 'set HB_GUI=yes'
Currently implemented for BCC32 and MSVC.
+ Added support for 'set HB_MT=yes' (instead of 'MT')
for consistency. MT seems to be an xhb heritage and
it may be removed in the future.
+ Added support for optional -mt switch as an equivalent
to 'set HB_MT=yes'
+ Added support for optional -gui switch as an equivalent
to 'set HB_GUI=yes'
; NOTE: Ordering (first -mt, then -gui) and casing (everything
is lowercase) of the above options are significant.
* bin/hbmk.bat
* bin/hbmk_os2.cmd
* Help screen cleanup.
* contrib/gtwvg/tests/bld_vc.bat
* contrib/gtwvg/tests/bld_b32.bat
* Changed to use HB_GUI=yes instead of C_USR/L_USR.
* tests/rto_get.prg
+ Added tests for assigments as function calls (o:col( 10 )
and some for assigments as _function calls (o:_col( 10 )).
* bin/hbmk.bat
* make_vc.mak
- Removed /subsystem:console from LDFLAGS. This seems to
be the default so it's not necessary.
* bin/hbmk.bat
+ Added L_USR support for MSVC. Now it's possible to
build GUI (and GTWVT) programs using
'set L_USR=/subsystem:WINDOWS' switch.
* contrib/gtwvg/tests/bld_vc.bat
! Using above method to make it work with MSVC.
* bin/bld.bat
* bin/bld_os2.cmd
+ Enabled cleanup of .c/object/.tds files after build.
+ Under Windows NT OSes, it's now possible to pass full .prg
name with extension.
! Few minor fixes.
* Formatting, cleanup and help update.
; Please test.
! harbour/bin/bld.bat
+ Added _C_MT=-tWM if HB_MT==MT
BCC32 includes cw32mt.lib if -tWM is present as a switch.
Now setting HB_MT=MT will allow to compile and link a prg in MT mode.
- bin/hb_flst.tmp
* bin/pack_src.sh
- removed the temporary file list from SVN.
* Added code to retrieve the source file list when SVN info is not available