* COPYING
+ Added Creative Commons Attribution-ShareAlike 3.0 Unported (CC-by-sa)
license section. To be used for misc text, documentation and typically
everything which isn't source/program code. Currently these files
(in part or whole) are covered by this license:
INSTALL
ChangeLog
doc/whatsnew.txt
; TODO: If this works out well, IMO we should apply this license to
all non-code parts of our repository. /doc, /man sections
and some files in the root specifically. We can also cover
the homepage content with this license.
* INSTALL
+ Added CC-by-sa license.
* doc/whatsnew.txt
* ChangeLog
+ Added CC-by-sa license. I've covered all my past entries with
this license, besides these, only the new entries will fall
under the license.
* contrib/hbblat/blatwrp.c
! Fixed extern declaration to work in C++ mode.
* source/lang/msgtrwin.c
* source/lang/msgtr857.c
! Typos in comments.
* source/vm/set.c
+ Added copyright for few functions (hb_osEncode()/hb_osDecode()).
* utils/hbmk2/hbmk2.prg
! Fixed RTE in Harbour-only (-gh) mode.
* doc/Makefile
! Removed license.txt.
* INSTALL
+ Added Windows/Windows CE build examples.
Cleaned mingw64 and mingwce cross-builds.
* mpkg_win.bat
* Using make_gnu.sh instead of make_gnu_xmingwce.sh
for mingwce target for uniformity.
* utils/hbmk2/hbmk2.prg
! Fixed silly typo causing RTE if compiler autodetection
fails to detect any tier-one compilers (or none).
+ Added automatic postfixing external Harbour executable
name if hbmk2 executable name is also prefixed. Currently
-x64 and -ia64 are recognized. Useful to call harbour-x64.exe
/ harbour-ia64.exe when hbmk2-x64.exe / hbmk2-ia64.exe is used.
* make_gnu_xmingwce.sh
* config/rules.cf
* config/win/mingwce.cf
* config/win/poccce.cf
* config/win/msvcce.cf
* config/wce/global.cf
* Moved -D__PLATFORM__WINCE to .cf files. This also fixes
missing __PLATFORM__WINCE for poccce and msvcce targets.
* config/dos/owatcom.cf
* config/win/owatcom.cf
* config/linux/owatcom.cf
* config/os2/owatcom.cf
% Tweaked optimization options. This will result in slower
build process, but more optimal runtime performance and
executable sizes. One option is now turned on which can
cause bad code with OW 1.1, so make sure you use latest
Open Watcom version, after all the upgrade is free.
It'd be great if owatcom users could make speedtst runs
with this revision and older ones to see the difference,
maybe now owatcom won't perform so poorly as before.
+ Added link to C compiler option docs.
! Fixed to convert slashes in HB_USER_CFLAGS.
% Enabled -5r for DOS and OS/2.
* contrib/hbct/disk.c
! Disabled some volume/disk related code for WinCE.
* contrib/xhb/hbserv.c
! Disabled for poccce.
* contrib/hbnf/getenvrn.c
! Disabled FT_GETE() for poccce.
! Fixed FT_GETE() to return zero/empty string on platforms not
supported (like also OS/2).
* doc/en-EN/Makefile
- doc/en-EN/error.txt
+ doc/en-EN/errsys.txt
* source/rtl/Makefile
- source/rtl/fserror.c
- source/rtl/errorapi.c
- source/rtl/errorapu.c
- source/rtl/errorint.c
- source/rtl/errorsys.prg
+ source/rtl/fserr.c
+ source/rtl/errapi.c
+ source/rtl/errint.c
+ source/rtl/errapiu.c
+ source/rtl/errsys.prg
* contrib/examples/hbdoc/examples/core_es/Makefile
- contrib/examples/hbdoc/examples/core_es/error.txt
+ contrib/examples/hbdoc/examples/core_es/errsys.txt
* Most filenames containing 'error' renamed to make
it easier to search for errors in build logs.
; Three headers remain.
* doc/en/Makefile
* doc/Makefile
- doc/en
+ doc/en-EN
* Renamed.
+ man
+ man/nfdoc
+ man/manpages
+ Added new dir for Harbour manuals.
; TODO: Move files here from /doc.
* contrib/hbtpathy/tests/testtp.prg
* Applied update/fix by Barry Jackson.
* utils/hbmk2/hbmk2.prg
+ Added autodetection of MinGW compiler if installed in the
Harbour directory tree in the mingw dir.
This way it's possible to create a fully setup-free
install kit, which is able to produce Harbour executables
right after unzip by simply issuing command: hbmk2 hello.prg
* include/hbdefs.h
+ Enabled new Harbour types. Still incomplete, and relying
on old unsafe types in places.
* contrib/gtwvg/gtwvg.c
! Warning.
* contrib/gtwvg/wvgcuig.c
! Cast errors.
* config/win/msvc.cf
+ Enabled C++ mode. This should result in stricter compiler
warnings/errors, and also enables to use standard init
method (non-C++ method is broken when using LTCG
and potentially in other scenarios like IA64). Note, this
doesn't mean we'd allow non-ANSI C usage inside Harbour,
so no C++ features are allowd. This won't cause any
drawbacks for the user AFAIK, if you know otherwise, pls
speak up. [Notice that we're using C++ mode for owatcom
on all platforms.]
* doc/whatsnew.txt
+ Documented win/owatcom and OpenSSL incompatibility.
(maybe it can be resolved, I didn't spend time on it)
* INSTALL
* C compiler -> ANSI C compiler.
* make_gnu_xmingwce.sh
- Disabled modifying PATH when host OS is Windows.
; NOTE: Hack.
* include/hbtrace.h
+ Added HB_EXPORT.
* doc/whatsnew.txt
* contrib/hbfimage/fi_winfu.c
* contrib/hbfimage/fi_wrp.c
* contrib/hbfimage/Makefile
- Restored previous state, because latest changed addressing
Linux build failure were causing problems for the Windows
platform.
; TOFIX: We must clean our types, to avoid these problems
and all bad hacks to work it around.
* mpkg_win.bat
* mpkg_win.nsi
+ Added files ChangeLog, TODO, ERRATA, INSTALL to root dir.
* Some changed to batch targeting robustness for situations
which cannot normally happen in normal cases, but it's
useful for debugging.
* source/rtl/achoice.prg
! Fixed to always dehilight active item on exit.
(probably could be done more efficiently, feel free to
optimize it.)
Please test.
; TOFIX: ? gttrm on Darwin changes console color from my
default green, to Harbour default gray on exit.
* doc/whatsnew.txt
* Minor.
* doc/whatsnew.txt
+ Added new entries since last update. Please review, etc...
; TODO: There is still 500K worth of ChangeLog to process
for the timeframe 200808/09-20081219.
Someone pls help.
* doc/man/hbmk.1
* CC* envvar name change.
* harbour/source/compiler/hbusage.c
! fixed the /u+ description - it does not work like #include.
Only preprocessor command are significant in files included
by -u<file> and -u+<file>
* harbour/doc/man/harbour.1
+ add -u+<file> description
* harbour/source/pp/ppcore.c
! fixed typo in error message table (missing ',')
* harbour/source/compiler/cmdcheck.c
* generate error when -u+ is used without <file>
* harbour/source/compiler/hbmain.c
* do not display usage screen if other errors were generated before
* include/hbextern.ch
+ Added HB_SETENV()
* utils/hbmk2/hbmk2.prg
* Minor cleanups.
* contrib/examples/uhttpd/uhttpd.hbm
- Removed -n. It's now automatic.
; TODO: Remove the rest.
* INSTALL
* doc/man/hbmk.1
+ config/win/icc.cf
* utils/hbmk2/hbmk2.prg
+ Added Intel(R) C++ compiler support for Windows.
+ Added initial support also in hbmk2.
; This compile is actively developed and its famous of
generating the fastest running code of all C compilers.
It also outputs an extremely detailed warning list.
And the best thing: It compiled Harbour without a single
hitch. hbtest is also running fine. hbmk2 is able to
create executables.
* doc/man/hbmk.1
* INSTALL
* utils/hbmk2/hbmk2.prg
- config/win/dmc.cf
- config/os2/icc.cf
- Removed win/dmc (Digital Marc C) C compiler from supported
compiler list. The compiler was added last year, but
it turned out to be too buggy for any kind of production
work, and the compiler's development seem to have been
stalled year ago.
This is part of the pruning effort to leave here what's
really needed and beneficiary for users. This will
reduce the test matrix and give way to more important
things.
- Removed os2/icc. IBM Visual Age isn't available for OS/2
since very long, and no one seems to use this compiler
on this platform. Harbour support also wasn't tested
since long.
* doc/man/hbmk.1
* INSTALL
* utils/hbmk2/hbmk2.prg
- config/win/icc.cf
- Deleted win/icc from supported compiler list. This was
never working and the compiler isn't available anymore
for Windows. For AIX we could support it though.
* INSTALL
* Minor typos.
* mpkg_win.bat
+ Added zip link. Made NSIS link more direct.
* doc/man/hbmk.1
* INSTALL
* utils/hbmk2/hbmk2.prg
* config/dos/global.cf
- config/dos/rsx32.cf
- config/win/rsxnt.cf
- Pruned rsx32 and rsxnt compiler support. Both are dead
product since long years. Their successor is MinGW on win,
and DJGPP on dos.
; NOTE: More candidates for such pruning are:
- dmc (buggy and compiler not updated)
- xcc (based on very old version of pocc)
Any opinions?
* config/dos/global.cf
- Cleaned emx, watcom, rsx, bcc16 related branches.
* mpkg_win.bat
* mpkg_win.nsi
! Exclusion of junk files is now done in batch, so
the .zip is now also free from them.
* doc/man/hbmk.1
* Updates. Work in progress.
* utils/hbmk2/hbmk2.prg
+ Added man page, troff/groff links.
! Reversed the logic shared lib paths were included by.
* Changed the meaning -hbcc again. Now it will switch hbmk2
to a mode where it accept -c option. If -c is sensed, it
will stop after calling the C compiler.
! gtwxc removed from default GT list for *nix systems.
It should be added there by hbmk.cfg.
* doc/man/hbmk.1
* Updated. Blindly.
Do someone know a tool which can render man pages and show
it without having to install this file first?
* utils/hbmk2/hbmk2.prg
! Fixed to not create .c stub if only C compilation is requested.
In this case it won't do any entry function detection either.
! Attempt to fix core GT dependencies not automatically linked
with gcc/*nix for gtsln/gtcrs/gtxwc (in static mode).
% Not adding some (now unnecessary) system libraries when in
shared mode for gcc family compilers on all platforms.
See: 2009-03-04 12:56 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
; Please test above changes.
* INSTALL
* make_gnu.bat
- 'msvc' is no longer the default choice for win.
HB_COMPILER must always be specified.
* mpkg_win.bat
+ Removes tmp install dir before creating the build.
+ Added support for MinGW.
+ Added creation of .zip packages. (Info-ZIP zip.exe
is required).
* make_gnu.sh
* INSTALL
+ on win/dos/os2 systems it will create HB_*_INSTALL dirs
automatically (sync with make_gnu.bat).
+ on dos/os2 it will also automatically set HB_DOC_INSTALL.
+ on win/dos/os2 it will automatically convert
HB_INSTALL_PREFIX and HB_*_INSTALL to use forward slashes.
* utils/hbmk2/hbmk2.prg
+ Added gtnul to standard list of GTs.
Attempt to solve the problem reported by Barry Jackson.
Please test if this solves anything.
* doc/Makefile
! Deleted files removed.
* INSTALL
* make_b32.bat
* doc/gmake.txt
* bin/postinst.bat
* bin/hb-mkdyn.bat
* make_gnu.bat
* contrib/hbfimage/readme.txt
* contrib/examples/uhttpd/modules/bldhrb.bat
* source/vm/Makefile
* source/rtl/console.c
* source/compiler/gencobj.c
* utils/hbmk2/hbmk2.prg
* utils/hbmk2/examples/winapi.hbp
- config/win/bcc32.cf
+ config/win/bcc.cf
* Long time TODO done: Renamed bcc32 compiler name to bcc.
bcc32 is still accepted by make_gnu.bat, but will be
removed in the future, so it's recommended to update
your local settings to use:
set HB_COMPILER=bcc
- config/dos/bcc16.cf
- Deleted bcc16 compiler support. I didn't work since ages,
and Harbour doesn't support 16-bit compilers anyway.
+ mpkg_win.nsi
+ Added NSIS Windows installer script.
Needs to be inserted into build creation process,
which is completely missing yet from SVN. Anyhow
it's tested and working well. At this moment it should
be run from a freshly created dir created with
'make_gnu.bat install'.
You can find the result here:
http://www.syenar.hu/harbour/harbour-1.1.0dev-win32-msvc.exe
* utils/hbrun/hbrun.prg
+ Added -v option which simply runs '? hb_version()' after
startup.
* make_gnu.bat
+ Added init of HB_DOC_INSTALL.
* doc/license.txt
- Removed SVN header to be in full sync with /COPYING.
* INSTALL
* Minor cleanups.
* include/hbdefs.h
+ Added similar to HB_DONT_DEFINE_BOOL hack: HB_DONT_DEFINE_LONG.
(needed until we clear up our types.)
* contrib/hbfimage/fi_winfu.c
* contrib/hbfimage/fi_wrp.c
* contrib/hbfimage/Makefile
* doc/whatsnew.txt
% Deleted #includes/macro checks not necessary.
! Disabled body of fi_winfu.c when not compiled under
Windows. This fixes one Linux compilation error.
% Replaced HB_OS_WIN_USED with HB_DONT_DEFINE_BOOL and
HB_DONT_DEFINE_LONG, moved foreign headers before
Harbour headers, added non-Harbour Windows detection
in fi_wrp.c (I'm not sure that is necessary), so that
it now compiles on both Windows and non-Windows (Linux
tested) systems.
+ Renabled on Linux in Makefile.
; Please review/test these changes.
* doc/dirstruc.txt
* Updated to reflect current state.
* source/compiler/hbusage.c
* source/lang/msghe862.c
* source/lang/msghewin.c
* source/rtl/tone.c
* source/rtl/gtos2/gtos2.c
* Update my email on source files
(didn't bother to change those under doc).
* COPYING
* doc/license.txt
* source/rtl/binnum.c
* Added rewritten versions of these functions, now with
a proper license: BIN2W(), BIN2I(), BIN2L(), I2BIN(), L2BIN()
; Thanks to Przemek.
* source/rtl/gtwvt/gtwvt.c
* BYTE -> CHAR (Windows) - UNDONE.
* include/hbdefs.h
+ Added (commented) new types. Work in progress, incomplete.
* contrib/hbssl/ssl.c
- Temporary disabled SSL_GET_READ_AHEAD() as a workaround for
BCC linking problem with SSL_get_read_ahead() OpenSSL
library function (symbol is unresolved due to missing
leading underscore in implib generated ssleay32.lib file).
* source/vm/set.c
% hb_fsFile() -> hb_fsFileExists()
* source/rtl/hbffind.c
* HB_WIN_32_MATCH -> HB_WIN_MATCH
* doc/whatsnew.txt
* include/hbsetup.h
* source/vm/fm.c
* #define HB_FM_WIN32_ALLOC renamed to HB_FM_WIN_ALLOC.
; INCOMPATIBLE: For those who are using this switch, please
update your make files.
* source/rtl/tpopup.prg
! Fixed to draw separator lines with BOX GT attributes,
so that they appear properly.
* doc/whatsnew.txt
* include/hbextern.ch
* source/vm/runner.c
* source/rdd/dbcmd.c
* __HRB*() functions marked as HB_LEGACY_LEVEL2 compatibility,
please update your code to use HB_HRB*().
* __RDDGETTEMPALIAS() marked as HB_LEGACY_LEVEL2 compatibility,
please update your code to use HB_RDDGETTEMPALIAS().
; I've permanently remove these symbols from hbextern.ch, so
regardless of the legacy setting, hbrun won't have them
anymore. This is merely technical, as it would need some
hacks in the make system to push through HB_LEGACY_OFF
to pptable.c generation. If someone wants to deal with
this, even better.
* include/hbstdgen.ch
* Added #undef __FILE__.
* include/hbsetup.ch
* Minor.
* doc/whatsnew.txt
* include/clipdefs.h
* include/filesys.api
* include/gt.api
* include/hbapi.h
* include/hbapierr.h
* include/hbapifs.h
* include/hbapigt.h
* include/hbapiitm.h
* include/hbapirdd.h
* include/hbdefs.h
* include/hbgfxdef.ch
* include/hbgtinfo.ch
* include/hbsetup.ch
* include/hbsetup.h
* include/item.api
* include/rdd.api
* source/rtl/errorapi.c
* source/rtl/filesys.c
* source/vm/cmdarg.c
* common.mak
- source/vm/debugold.c
* source/vm/Makefile
* source/vm/vmmt/Makefile
- Permanently disabled HB_LEGACY_LEVEL support.
+ Added HB_LEGACY_LEVEL2 support to protect some
recently made incompatible changes. Old methods
are supported until Harbour 1.2. Please update
your code until then. To test your code for
compatibility with recent changes, you can turn
off legacy support manually by #defining HB_LEGACY_OFF.
(HB_USER_CFLAGS=-DHB_LEGACY_OFF)
This is recommended on local systems for all
Harbour developers.
* include/hbapifs.h
* source/rtl/spfiles.c
+ Added hb_spFileExists(). Same as hb_spFile(), but uses
the more efficient (especially on networks) hb_fsFileExists()
call to check for file exitance.
[ not very elegant solution, as I've just copied the
whole function, and changed the file existance call, maybe
a worker function + passing the check function pointer
could help, but the hb_fsFile() and hb_fsFileExists() workings
differ slightly. ]
* source/rdd/dbfntx/dbfntx1.c
* source/rdd/dbfnsx/dbfnsx1.c
* source/rdd/dbfcdx/dbfcdx1.c
* source/rdd/dbf1.c
% Using hb_spFileExists() instead of hb_spFile().
This API also works for dirs where use doesn't have file listing
rights, which may create a slight incompatibility by finding
files which weren't found by former method (and by Clipper).
C:\WINDOWS\TEMP\*.* were such when logged in as non-admin user,
but this dir is only used as a default TEMP dir for DOS programs.
Please speak up if you find this issue (or something else) to
be problem.
* source/rtl/file.c
* File naming standardized.
* doc/whatsnew.txt
* Minor updates.
* harbour/source/common/expropt1.c
* harbour/source/common/expropt2.c
! fixed wrongly modified expression during optimization for
( <numConst> / 0.0 )
* cleaned bDec/bWidth updating in compile time optimizations
* harbour/tests/speedtst.prg
! fixed possible race condition in initialization
+ added set workarea private for xHarbour builds - thanks to Phil
* harbour/doc/cmpopt.txt
* small cleanup
* harbour/include/hbvmpub.h
* harbour/source/vm/hvm.c
% some optimizations mostly for MT mode or compilers which do
not support function autoinline optimization
* doc/gmake.txt
* doc/gtapi.txt
* doc/hbmake.txt
* doc/windll.txt
* Useless changes.
* make_vc.mak
* Some untested MT support for MSVC.
* include/hbdefs.h
! Removed mistakenly committed experiment to pull in
MT related libs. This caused the strange build problem due
to empty lib name passed to #pragma. This could work
in case someone wanted to deal with it in the future.