* INSTALL
* Clarification to HB_BUILD_IMPLIB usage.
; NOTE: By now it's very easy to create implibs outside
the central make process:
'hbmk2 @contrib/<lib>/<lib>.hbi'
where <lib> is the name of the contrib. Moving
the resuling import library file(s) to our lib
dir has to be done manually in this case.
* INSTALL
* Two minor cleanups
* config/postinst.prg
+ Will now honor HB_CONTRIBLIBS and HB_CONTRIB_ADDONS
when creating import libraries. IOW it will only create
implibs to the contribs actually built.
* utils/hbmk2/hbmk2.prg
+ Added trick when using real xhb toolchain to detect
-tW C flag and in this case automatically select the ST
C RTL library. (Notice that -tW will only be detected
when passed normally via cmdline or script, and not
when using legacy HB_BUILD_CFLAGS envvar or inherited
compiler flags).
* INSTALL
+ Added Ubuntu 10.4 as tested version.
* include/common.ch
+ Added HB_HMERGE_* constant for HB_HMERGE() function.
* package/winuni/mpkg_win_uni_extra_copy.bat
* Commented line not necessary for official mingw build.
* contrib/hbsqlit3/tests/hooks.prg
* contrib/hbsqlit3/tests/authoriz.prg
* contrib/hbsqlit3/tests/backup.prg
+ Added missing '()'s from :__enum* accesses.
* config/win/mingw.mk
! Fixed after last minute change breaking it when HB_COMPILER_VER
is not set.
* examples/httpsrv/uhttpd.prg
% Replaced 'var:__enumValue()' with 'var' in FOR EACH loops.
* INSTALL
- Deleted 'rarely updated' from official mingw comment.
- Deleted equation mingw edition.
* QT 4.5.x is not recommended over 4.6.x anymore.
+ Added link for QT 4.6.x.
+ Added more details to mingw version with DWARF support.
(required for QT 4.6.x)
* config/win/mingw.mk
+ Added more comment on newly added linker options.
! Fixed to only enable newly added linker options for
4.5.x and above. (tdm 4.4.x doesn't support them)
* src/rtl/Makefile
* src/rtl/getsys.prg
+ src/rtl/getsyshb.prg
! Moved HB_GETREADVAR() to separate source file.
! HB_GETREADVAR() fixed to use HB_ASCIIUPPER() like
TGETLIST():GETREADVAR() instead of UPPER().
* src/rtl/tgetlist.prg
% TGETLIST():GETREADVAR() now can use HB_GETREADVAR()
instead of duplicating the code locally.
* INSTALL
+ Added sort of "disclaimer" note to HB_BUILD_IMPLIB option.
* include/hbextern.ch
+ Added missing TBREADER().
* src/common/hbtrace.c
* INSTALL
+ Added trace output support to syslog() for *nix systems
(except watcom builds).
It's enabled by HB_TR_SYSOUT=yes envvar, which now
supercedes previous HB_TR_WINOUT setting.
Windows users pls change HB_TR_WINOUT to HB_TR_SYSOUT.
! Fixed potential problem in HB_TR_WINOUT code, where
the same vararg holder variable was used multiple
times. On *nix this caused GPF. The safest is to make
a copy of it for each usage.
* contrib/hbwin/hbwin.ch
* contrib/hbwin/Makefile
+ contrib/hbwin/tests/testevnt.prg
+ contrib/hbwin/win_evnt.c
+ Added function to add a new event to the Windows event log:
WIN_REPORTEVENT( [<cServerName]>, <cEventLog>,
<nType>, [<nCategory>], [<nEventID>],
<cString> | <acString>, [<cRawData>] ) -> <lSuccess>
* contrib/hbwin/win_prn2.c
! Fixed wce warning.
* utils/hbmk2/examples/contribf.hbc
* utils/hbmk2/examples/contrib.hbc
+ Added minizip lib.
* INSTALL
* Minor updates to tool links and information.
* INSTALL
* external/Makefile
+ external/minizip
+ external/minizip/Makefile
+ external/minizip/readme.txt
+ external/minizip/minizip.dif
+ external/minizip/ioapi.c
+ external/minizip/zip.c
+ external/minizip/unzip.c
+ external/minizip/ioapi.h
+ external/minizip/crypt.h
+ external/minizip/zip.h
+ external/minizip/unzip.h
* contrib/hbmzip/Makefile
* contrib/hbmzip/hbmzip.hbc
* contrib/hbmzip/readme.txt
- contrib/hbmzip/minizip.dif
- contrib/hbmzip/ioapi.c
- contrib/hbmzip/zip.c
- contrib/hbmzip/unzip.c
- contrib/hbmzip/crypt.h
- contrib/hbmzip/ioapi.h
- contrib/hbmzip/zip.h
- contrib/hbmzip/unzip.h
* Moved embedded external code from hbmzip library to
separate, locally hosted library inside the 'external'
directory. This way we keep all external code under this
directory. This change also makes it possible to use
custom version of this external library, via the
HB_WITH_MINIZIP envvar.
NOTE: Everyone using hbmzip, must now add 'minizip'
to their lib list. (INCOMPATIBLE)
+ config/ren_sfn.prg
- external/bzip2/cnv_hb2o.bat
- external/bzip2/cnv_o2hb.bat
+ external/bzip2/ren_sfn.txt
- external/libhpdf/cnv_o2hb.bat
- external/libhpdf/cnv_hb2o.bat
+ external/libhpdf/ren_sfn.txt
- external/pcre/cnv_o2hb.bat
- external/pcre/cnv_hb2o.bat
+ external/pcre/ren_sfn.txt
+ Replaced .bat method for converting long filenames to
short ones to a .prg script and simple text input file.
Also much of the logic is automatized.
* src/rtl/gtwvt/gtwvt.c
* Minor in old comment.
* INSTALL
- Deleted no more relevant restriction with HB_BUILD_PKG.
* contrib/hbwin/wapi_winuser.c
* contrib/hbwin/hbwin.ch
+ Added WAPI_SETWINDOWPOS() + relevant constants.
+ Added WIN_WS_* constants.
+ Added WAPI_ISICONIC(), WAPI_ISZOOMED().
* contrib/hbwin/tests/testax.prg
! Fixed to compile without warning.
* Using hbwin.ch.
- bin/postinst.bat
* bin/postinst.prg
* INSTALL
* Moved remaining .bat to .prg. This means that HB_BUILD_PKG now
should work with all shells and (cross) build situations. I didn't
test these (pls do so), but it's now easy to make necessary
tweaks for these platforms in case it's necessary.
; Harbour doesn't use a single line of .bat anymore in the build process.
* INSTALL
* config/rules.mk
+ config/res.mk
* config/bin.mk
* config/wce/global.mk
* config/wce/mingwarm.mk
* config/wce/poccarm.mk
* config/wce/msvcarm.mk
* config/common/watcom.mk
* config/win/xcc.mk
* config/win/mingw.mk
* config/win/pocc.mk
* config/win/bcc.mk
* config/win/watcom.mk
* config/win/cygwin.mk
* config/win/global.mk
* config/win/msvc.mk
* config/os2/watcom.mk
* config/os2/gcc.mk
* config/os2/global.mk
+ Added support to GNU Make system to compile and link resources
on win, wce and os2 platforms.
* bin/postinst.bat
+ Deleted requirements from local comment. These are
documented in INSTALL.
* bin/hb-mkimp.prg
+ Finished, tested. This version also adds pocc64 support.
It also gives proper feedback.
* INSTALL
* bin/postinst.bat
- bin/hb-mkimp.bat
* package/winuni/mpkg_win_uni_extra_copy.bat
* package/winuni/mpkg_win_uni.bat
* package/winuni/mpkg_win_uni.nsi
+ Switched to use hb-mkimp.prg instead of .bat.
25KB less of non-portable .bat file in Harbour SVN.
Remains only ~100 lines of .bat stuff in core parts.
+ Deleted GNU Sed requirement.
+ Lifted Windows NT requirement for implib creation.
+ Lifted NT shell requirement for implib creation.
* INSTALL
! Fixed Debian bzip2 package name.
* external/bzip2/Makefile
* contrib/hbbzip2/hbbzip2.hbc
* Changed local bzip2 lib name to match regular name used on *nix systems.
* external/zlib/Makefile
* Formatting.
* contrib/hbmzip/Makefile
! Minor fix.
* INSTALL
+ Added bzip2 information. (not fully complete, it also
needs to be added to .spec files like zlib)
- external/bzip2/bzip2.dif
- external/bzip2/bzip2.c
* external/bzip2/cnv_hb2o.bat
* external/bzip2/cnv_o2hb.bat
* external/bzip2/Makefile
- Deleted accindentally included bzip2 tool.
+ contrib/hbbzip2/tests
+ contrib/hbbzip2/tests/hbmk.hbm
+ contrib/hbbzip2/tests/test.prg
+ Added little test code.
+ contrib/hbbzip2/hbbzip2.hbc
+ Added .hbc file.
* contrib/hbbzip2/hbbzip2.ch
+ Added 'it's also used by C code' comment.
* external/sqlite3/sqlite3.c
* external/sqlite3/sqlite3.h
+ sqlite upgraded to 3.6.23 (from 3.6.22)
* INSTALL
+ Added one more real-life example for unnecessary
envvars (HB_DIR).
* src/rtl/hbini.prg
* Deleted several unnecessary empty lines at EOF.
* INSTALL
* Minor.
* include/dbinfo.ch
* Formatting.
+ include/hb.ch
* include/Makefile
+ Added Harbour header which #includes commonly used in
applications.
It also enables us to easily extend standard set of macros
and constants.
* contrib/hbide/idesaveload.prg
* "hbide.set" -> "hbidewnd.ini". At least it uses standard
extension. Still wrong solution and a remaining TOFIX.
* src/rtl/hbsocket.c
* bin/hb-mkdyn.sh
* bin/hb-func.sh
* utils/hbmk2/hbmk2.prg
* config/win/global.mk
+ Restored to work with ws2_32.dll. (instead of wsock32)
* INSTALL
+ Added information on Win9x/ME support.
* src/vm/hvm.c
* include/hbapi.h
* Marked hb_synEval public symbol with HB_LEGACY_LEVEL3
* src/rtl/gtwin/gtwin.c
! Copyright header update.
* src/rtl/objfunc.prg
* include/hboo.ch
* Minor cleanup and formatting.
* INSTALL
* Minor refinement in wording.
* contrib/hbide/hbide.prg
* contrib/hbide/ideactions.prg
* contrib/hbide/idedocks.prg
! "Codec" -> "Encoding" in a few more places.
! "..." added to some more menu items.
! Double "(.ext)" text in filetypes in open project dialog.
; Please review me.
* INSTALL
* bin/hb-mkimp.bat
+ contrib/rddsql/sddoci
+ contrib/rddsql/sddoci/Makefile
+ contrib/rddsql/sddoci/ocidd.c
+ contrib/rddsql/sddoci/sddoci.hbc
+ contrib/rddsql/sddoci/tests
+ contrib/rddsql/sddoci/tests/hbmk.hbm
+ contrib/rddsql/sddoci/tests/test1.prg
* contrib/rddsql/Makefile
+ Added support for direct connection to Oracle
databases via OCILIB library.
UNICODE, ANSI (default) and MIXED modes are supported.
For mingw targets, the library will be linked
statically, for the rest dynamically.
You need to have Oracle client (oci.dll and the
rest of the package) installed to use it.
; TODO: Finish type conversion and mapping.
* contrib/rddsql/sddmy/mysqldd.c
* contrib/rddsql/sddpg/pgsqldd.c
* contrib/rddsql/sddfb/fbirddd.c
* contrib/rddsql/sddodbc/odbcdd.c
! HB_ULONG -> HB_SIZE
; TOFIX: To Mindaugas: Current SDD architecture will crash with GPF
if dbUseArea() is attempted after a failed RDDI_CONNECT
call. You can check it f.e. with sddodbc's test1.prg, by
modifying test.mdb to test_.mdb, and simply run it.
* config/os2/gcc.mk
+ Attempt to fix direct ld usage to create Harbour .dlls.
Please make tests for all versions of gcc/gccomf targets.
* INSTALL
- Deleted TCPV4 header instructions for OS/2. (they still
works, it just got less emphasis with this)
* include/hbdefs.h
! Fixed to not #include <dos.h> unconditionally. This should
be done by specific source code, if needed. INCOMPATIBLE,
if source code relied on this behavior. From now on it,
should include dos.h manually.
* src/vm/thread.c
* src/common/hbver.c
* src/rtl/gtdos/gtdos.c
* src/rtl/isprint.c
* src/rtl/diskspac.c
* src/rtl/disksphb.c
* src/rtl/net.c
* contrib/hbct/print.c
! Fixed to #include <dos.h> manually.
* src/rtl/fstemp.c
! Fixed recent warning for dos targets.
* contrib/hbct/video.c
! Fixed old unused variable warning for dos/watcom targets.
* INSTALL
+ Documented that OS/2 Warp 4 is supported (instead of generic OS/2).
* src/common/hbverdsp.c
* include/hbsetup.ch
* contrib/xhb/xhbver.prg
- Deleted HB_COMPAT_VO, HB_COMPAT_DBASE, HB_COMPAT_CLIP as build-time
options. They were not used, and in the future these should be
implemented as addon libraries.
* INSTALL
* Minor terminogology adjustment.
* examples/hbdoc2/tmplates.prg
* examples/hbdoc2/hbdoc2.prg
- Deleted special handling of FlagShip functions.
* INSTALL
* Changed to use win-make/dos-make in examples.
* contrib/hbwin/win_tbmp.prg
- Deleted XBPBITMAP class mapped to WIN_BMP.
This should be the job of HBXBP.
* contrib/xpp/xpp.hbc
+ contrib/xpp/tests
+ contrib/xpp/tests/testdll.prg
* contrib/xpp/Makefile
+ contrib/xpp/win_dllx.c
* contrib/hbwin/Makefile
- contrib/hbwin/win_dllx.c
* contrib/hbwin/tests/testdll.prg
+ Moved Xbase++ compatible DLL functions to xpp lib.
* INCOMPATIBLE change. If you use these functions (DLL*())
add xpp lib to your lib list.
; Finally we don't have any HB_COMPAT_* dependent parts
in hbwin.
* contrib/hbwin/hbwin.ch
* Changed to use full (0xFF) color components for RGB presets.
* contrib/gtwvg/Makefile
* Deleted trailing spaces.
* INSTALL
* external/Makefile
* contrib/Makefile
+ Added build option to exclude specific list of contrib/external
libraries using syntax: 'HB_CONTRIBLIBS=no lib1 lib2 libn'
* INSTALL
+ Added new item to TROUBLESHOOTING section describing
common problem when native executables are forgotten to be
rebuilt, and causing error in cross-build.
This typically causes problems when compiler/pp/hbmk2 get
new feature.
* contrib/hbwin/win_tprn.prg
! Deleted trace msg left there by mistake.
* contrib/hbwin/hbwin.ch
+ Added WIN_*_QUALITY constants.
* config/global.mk
+ Displaying HB_BIN_COMPILE even if explicitly specified by user.
* INSTALL
+ Added gcc pkg to opensolaris pkg list.
* harbour.spec
! Do not mark Red Hat and SUSE as discontinued. These names seem
to be used for "enterprise" versions of these distros, but correct
me if I'm wrong.
* utils/hbmk2/hbmk2.pt_BR.po
* utils/hbmk2/hbmk2.hu_HU.po
* utils/hbmk2/hbmk2.prg
+ Made it clean on the help screen which options can only be used
from the command line.
* INSTALL
+ Extended Linux deb/rpm sections:
- Added list of base packages
- Listed actual active distro names
- Added pkg install command for various rpm distros
- Added link to webpage containing extensive information
about pkg management commands on different distros
+ Added SUNWsvn package for OpenSolaris.
* harbour.spec
! Typo in comment.
+ Added 'DISCONTINUED' comments to those distros which are
(suprise!) discontinued.
* contrib/hbwin/wapi_winbase.c
! Fixed to set internal getlasterror value in WAPI_FORMATMESSAGE().
Thanks Xavi.
* contrib/hbwin/wapi_err.c
! Fixed to include 'hbwapi.h'
Thanks Xavi again.
* config/global.mk
+ Added autodetection of Gentoo Linux package manager.
* contrib/hbbtree/hb_btree.c
+ Added two TOFIX notes. Both reported on the list previously.
* config/global.mk
! Fixed to not require HB_BIN_COMPILE is host and target
platform is the same, host is x64 and target is x86.
x64 hosts can run x86 binaries. (pls shout if you know
any exception)
* INSTALL
+ Added extra info to openSUSE section.
; TODO: Update .rpm/opensuse section.
* harbour.spec
+ Added initialization of HB_USER_DFLAGS.
; TOFIX: Current setup doesn't allow passing -m32 to force 32-bit
.rpm builds on 64-bit systems.
; TOFIX: OpenSUSE 10.2 uses 'gpm' instead of 'gpm-devel'.
* contrib/hbqt/hbqt.hbc
* contrib/hbqt/hbqts.hbc
* Changed to enable -hbcppmm only on win and os2 platforms.
I don't know about linux, but on darwin this option caused
this error:
hbide(70507,0x7fff708a0be0) malloc: *** error for object 0x1019d3948: pointer being freed was not allocated
*** set a breakpoint in malloc_error_break to debug
Abort trap
* INSTALL
+ Added free SVN book link.
* src/vm/extrap.c
% Marked exception filter callback as 'static'
; TOCHECK: Please verify that OS/2 still works this way.
* src/rtl/oemansi.c
! Fixed two tabs.
* src/rtl/gtwvt/gtwvt.c
* contrib/gtwvg/gtwvg.c
* contrib/rddads/adsfunc.c
! Fixed to not use unsafe/ANSI CharToOemBuffA() API.
; Please review me.
* config/win/mingw.mk
+ Added information about MinGW alternatives for MSVC
security features. Unfortunately they need Cygwin
binary plus some depend on MinGW host platform
and/or version.
* include/hbwince.h
* src/common/hbwince.c
- Deleted CharToOemBuffA(), OemToCharBuffA(). No longer
needed by Harbour.
; TODO: Delete rest of not anymore used ANSI WinAPI
functions. Now Harbour never uses ANSI
WinAPI functions in UNICODE mode.
* config/win/global.mk
- Deleted reference to CharToOemBuffA(), OemToCharBuffA().
* INSTALL
* Updated valgrind example.
* contrib/hbnetio/utils/netiosrv.hbp
* utils/hbformat/hbformat.hbp
* utils/hbmk2/hbmk2.hbp
* utils/hbi18n/hbi18n.hbp
* utils/hbtest/hbtest.hbp
* utils/hbrun/hbrun.hbp
* config/wce/msvcarm.mk
* config/win/msvc.mk
+ Added MSVC linker switches to enhance security by
enabling NX compatibility and ASLR.
Especially important for server apps like netiosrv and hbrun.
; TODO: Enable the same for MinGW.
; TOCHECK: Please test this with old MSVC versions and MSVCARM,
maybe we will need to disable them in some cases.
; QUESTION: I'm unsure of -fixed:no MSVC option. Do we need it
to increase security?
* config/wce/msvcarm.mk
+ Changed to use link.exe for linking instead of cl[arm].exe.
This now syncs it with rest of Harbour.