* contrib/hbcurl/hbcurl.c
+ Added all remaining known guards to HB_CURLOPT_* options, so in
theory now f.e. even libcurl version 7.5.0 is supported.
! Fixed HB_CURLOPT_HTTPGET being disabled when building against
libcurl < 7.14.1
! Fixed HB_CURLOPT_FTP_ACCOUNT being enabled at the wrong libcurl
version.
* mpkg_nightly.sh
* Minor.
* package/winuni/RELNOTES
* Versions updated.
+ config/detplat.mk
* config/global.mk
+ Last usage of $(eval) replaced with "quasi-function" call
solution. It's less efficient, but now it should support
GNU Make 3.79.
NOTE: If someone has a better solution, or even a more optimal
version of this one, pls speak up!
+ Two usages of $(eval) replaced with GNU Make version agnostic
solution. (in previous commit)
* config/detfun.mk
* config/global.mk
% Streamlined internal handling of HB_SRC_ROOTPATH value.
+ HB_SRC_ROOTPATH will now be conditioned before use:
ending pathsep added, pathseps converted to forward
slash, double slashes deleted.
! Fixed HB_BIN_COMPILE autodetection in PATH, $(realpath
was not necessary, it only ruined already absolute paths
which are likely to appear in PATH anyway.
% Optimized HB_BIN_COMPILE autodetection in PATH to reuse
function created for this purpose.
! Fixed GNU Make 3.81 version detection to work also with
future GNU Make versions.
+ Added GNU Make 3.80 version detection. (unused, commented)
% Deleted version guards from around $(eval) and $(info) calls:
Unknown function calls will simply be ignored by
GNU Make and empty string returned, so this is safe.
% Force HB_BUILD_PKG off only if HB_SRC_ROOTPATH is not
specified (and running < 3.81 GNU Make version).
+ Show warning when using < 3.81 GNU Make version and
HB_SRC_ROOTPATH was not specified.
+ Falling back to using HB_SRC_ROOTPATH in all places where
$(realpath) or $(abspath) calls are used in 3.81 version.
! Protected one $(realpath) with version guard.
+ Automatized how HB_VER_STATUS_SH is filled for final releases.
; NOTE: HB_SRC_ROOTPATH support is completely untested.
; TODO: If everything works as intended, now "only" $(eval)
calls need some workaround to give full blown
functionality also with 3.79 version of GNU Make.
* config/instsh.mk
! Fixed to not use $(realpath) (and fail to install),
when running under < 3.81 GNU Make.
* utils/hbmk2/hbmk2.prg
* config/global.mk
* Changed to use 'wcc386' executable for watcom detection
(was 'wpp386').
* INSTALL
+ Minor updates regarding QT.
* contrib/hbide/resources/setup.ui
* contrib/hbide/resources/setup.uic
* contrib/hbide/hbide.ch
* contrib/hbide/hbide.prg
* contrib/hbide/idedocks.prg
* contrib/hbide/idesaveload.prg
* contrib/hbide/idestylesheets.prg
+ Implemented: OS system themes via "Setup" dialog.
Animation mode and system theme ( both settable via "Setup" )
are remembered for next run. Please do not set "macintosh" theme
on windows machines, it GPF's.
% Enhanced: "Setup" dialog with fields to hold settings for
variety of actions. Please have a look into them and propose more.
Currently only Theme and Animation mode, two actions are active
in real-time.
* INSTALL
* config/detfun.mk
* config/global.mk
* HB_ROOT -> HB_SRC_ROOTPATH
Renamed to not have such obvious and short name and not
to collide with build-in hbmk2 macro with the same name.
* INSTALL
* config/global.mk
* config/detfun.mk
* config/detect.mk
* external/sqlite3/Makefile
* external/png/Makefile
* external/jpeg/Makefile
* external/bzip2/Makefile
* external/libhpdf/Makefile
* contrib/hbsqlit3/Makefile
* contrib/hbmzip/Makefile
* contrib/hbbz2/Makefile
* contrib/hbhpdf/Makefile
* contrib/sddsqlt3/Makefile
* contrib/hbwin/Makefile
+ Added HB_ROOT variable which can be used to specify Harbour
source tree root as an absolute directory, when using
older than 3.81 GNU Make version (f.e. on QNX).
+ Changed the way locally hosted source directories are
specified for detection function, in order to support
HB_ROOT functionality.
* INSTALL
+ Added Mac OS X QT pkg recommended link.
* ChangeLog
* Updated list of pending issue on QNX system.
* contrib/hbmysql/mysql.c
! Fixed version guard around mysql_get_server_version() call
to check against the documented version number this
function appeared.
* utils/hbmk2/hbmk2.prg
! Fix for *nix filename escaping code.
! Fixed to escape and decorate filename in entry function
detection external call using nm tool.
; Patches by Tamas Tevesz.
* contrib/hbcurl/hbcurl.c
! Fixed to build against very old libcurl versions.
% Using hb_parnldef().
! Fixed few guards being off by one minor version.
* contrib/xhb/xhbfs.c
! Fixed ISDIRECTORY() to work like originally intended.
This effectively reverts breakage caused by this change:
2009-07-06 10:06 UTC+0100 Miguel Angel Marchuet <miguelangel@marchuet.net>
* source/rtl/file.c
* Changed IsDirectory to fix IsDirectory( "\\machine\c" ) style call
under windows platforms.
BTW, in Harbour to achieve above effect, you can use
native HB_DIREXISTS( "\\machine\c" ) function call.
* harbour-win-spec
* harbour-wce-spec
* harbour.spec
! Deleted references to hbcc, hbcmp, hblnk. They still work,
and they still can be readded as links if someone finds them
necessary. As a general direction for most users though it's
preferred to use hbmk2 as-is.
* Updated help text. (pls fix it further, it's not perfect)
* contrib/hbcomm/hbcomm.prg
+ OUTCHR() smartened to use a loop until failure or the whole
data is transmitted. As suggested by Mindaugas.
* harbour/contrib/xhb/xhbcomp.prg
* harbour/contrib/xhb/xhbmsgs.c
+ added emulation for some xHarbour extensions in ==, = and !=
operators.
<block> == <block>
<hash> = <hash> // it does not work correctly in xHarbour
<hash> != <hash>
* harbour/include/hbdefs.h
* harbour/include/hbvmpub.h
* harbour/src/common/expropt1.c
* harbour/src/common/expropt2.c
* harbour/src/common/hbstr.c
* harbour/src/compiler/gencc.c
* harbour/src/vm/hvm.c
* harbour/src/vm/itemapi.c
* harbour/src/vm/task.c
* harbour/src/rtl/abs.c
* harbour/src/rtl/hbdyn.c
* harbour/src/rdd/dbsql.c
* harbour/contrib/hbwin/olecore.c
* harbour/contrib/sddoci/sddoci.c
* harbour/contrib/sddsqlt3/sddsqlt3.c
* renamed HB_LONG_{MIN,MAX} to HB_VMLONG_{MIN,MAX} and
HB_INT_{MIN,MAX} to HB_VMINT_{MIN,MAX} to not confuse users
after renaming HB_LONG to HB_MAXINT and LONG to HB_LONG.
They could expect that HB_LONG_{MIN,MAX} are for HB_LONG type.
* contrib/hbide/idedocks.prg
* contrib/hbide/idestylesheets.prg
% Prepared to apply ideThemes ( upcoming ) if user so defines.
A glimpse can be had from <View><Toggle Animation>.
Current theme is Microsoft Office look and feel, though a
little more work is required. RGB Colors supplied by
Antonio Linares.
* mpkg_deb.sh
* mpkg_rpm.sh
* mpkg_rpm_win.sh
* mpkg_nightly.sh
* mpkg_src.sh
* mpkg_rpm_wce.sh
* mpkg_tgz.sh
* bin/hb-mkdyn.sh
* bin/hb-func.sh
* bin/postinst.sh
- Do not force bash.
(QNX by default doesn't have bash f.e., and now with the
limited amount of .sh code in SVN, we can focus on making
the code POSIX compliant.)
* ChangeLog
! One QNX TODO marked as DONE.
* src/rtl/hbzlib.c
+ Added QNX version number to the comment noting the hack.
* contrib/xhb/xhbfs.c
+ Added ISDIRECTORY() implementation which exactly mimics
current xhb behavior. Current xhb behavior seems wrong
because on Windows platform it works like HB_DIREXISTS()
in Harbour (not allowing wildcards), while on rest of
platforms it accept wildcards. The original intent in
xhb was the latter.
* contrib/xhb/hbcompat.ch
- Deleted ISDIRECTORY() <-> HB_DIREXISTS() mapping.
* external/minizip/minizip.dif
* external/minizip/ioapi.h
+ Update for MS-DOS from Tamas Tevesz.
- contrib/hbqt/qth/QSyntaxHighlighter.qth
- Deleted to try to fix the SVN update breakage caused by
deleting a file and readding it in the same commit on a
Windows machine.
* config/qnx/libs.mk
+ Added x11 libs. QNX supports it, though not the ancient
release I have.
* src/vm/dynlibhb.c
* include/hbthread.h
+ Added QNX support.
* src/rtl/hbzlib.c
! Added hack to fix missing zlibVersion() and zError()
functions from the zlib lib shipped with QNX 6.2.1.
+ config/qnx/libs.mk
+ Added QNX specific lib configuration.
* utils/hbmk2/hbmk2.prg
+ Added (untested) list of system libs for qnx/gcc.
* INSTALL
+ Added QNX reference to one more place.
; NOTE on QNX:
All binaries build cleanly, hbtest works.
; TOFIX/TODO:
- hbrun seems to misdetect the width of the terminal
- Clean some hack in QNX port
- platform autodetection
- retest whole port from vanilla SVN source, test MT
linkage.
; So now Harbour can run in cars, planes and spaceships.
* external/zlib/Makefile
* config/dos/djgpp.mk
+ Added patch by Tamas Tevesz targeting djgpp cross-builds:
- makes zlib compile with djgpp 2.03
- adding ranlib makes the whole thing cross-compile (the linker was
complaining about index not being present in the archives)
the reason of the dash prefix is that since it wasn't there before,
it must have worked without, so let's not break situations where it
isn't present (it is present in bnu219b.zip though, and it seems to
be chugging along nicely in a native situation as well)
- adds $(HB_CCPATH)$(HB_CCPREFIX) to the bin tools used
* src/common/hbffind.c
* src/rtl/fstemp.c
* src/rtl/filesys.c
* src/rtl/fssize.c
! Fixed to use '#define _LARGEFILE64_SOURCE 1' instead of
'define _LARGEFILE64_SOURCE' to fix compilation on QNX.
This replaced previously added hack for stat64 in two
locations.
* src/rtl/hbzlibgz.c
! Protected gzungetc() and gzclearerr() calls with 'ZLIB_VERNUM >= 0x1202'
; QNX 6.2.1 ships with zlib 1.1.3.
* src/rtl/gttrm/gttrm.c
! Added fix to compile when SA_RESTART is not available (in QNX).
; TOFIX: Replace this with some more meaningful solution.
* src/rtl/hbzlib.c
! Fixed to compile when compressBound() is not available.
The detection is hackish because proper zlib version detection
is not available here yet.
* src/rtl/hbznet.c
! Fixed to build with older zlib versions where Z_RLE and/or
Z_FIXED are not available.
* include/hbdefs.h
! Fixed stdint handling for QNX.
* INSTALL
* include/hbsetup.h
* utils/hbmk2/hbmk2.prg
+ Added experimental support for QNX operating systems.
Tested with 6.2.1.
+ config/qnx
+ config/qnx/gcc.mk
+ config/qnx/global.mk
+ Added qnx GNU make files. For now this is a simple copy
of linux ones.
* src/common/hbgete.c
* src/common/hbprintf.c
+ HB_OS_QNX tweaks.
* src/common/hbffind.c
* src/rtl/fssize.c
! Disabled stat64 for HB_OS_QNX.
* src/common/hbffind.c
! Fixed very old error in default (todo) branch
where hbrtl function was mistakenly referenced.
* external/Makefile
* contrib/Makefile
* contrib/sddoci/Makefile
* config/none.mk
* config/global.mk
* config/bin.mk
* config/dir.mk
+ Since QNX has GNU Make 3.79.1, I had to re-xmastree
the GNU Make files (though I didn't restore the xmas
indentation), plus restore all logic that dealt
with older GNU Make versions. Also added some new logic.
+ Changed to give warning only when using older than
3.81 make versions. Some feature are disabled in this case,
f.e. HB_BUILD_PKG (win/dos specific feature)
; TOFIX: host platform and cpu detection relies on $(eval)
which is not present on pre 3.80.
; habour and hbpp builds fine, but there are several remaining
problems in rtl and vm.
* mpkg_nightly.sh
+ Added feeback about what the script does.
+ Using -q for zip to lessen large amount of unnecessary feedback
* external/pcre/pcre.dif
* external/pcre/Makefile
! Tweak to make PCRE build on djgpp 2.3
Patch by Tamas Tevesz (2nd version posted on dev list)
* contrib/hbide/resources/curlinehilight.png
+ contrib/hbide/resources/horzruler.png
* contrib/hbide/resources/togglelinenumber.png
* contrib/hbide/resources/toolsutilities.ui
* contrib/hbide/resources/toolsutilities.uic
* contrib/hbide/resources/setup.ui
* contrib/hbide/resources/setup.uic
* contrib/hbqt/qth/HBQPlainTextEdit.qth
* contrib/hbqt/qth/QTableWidget.qth
- contrib/hbqt/qth/HBQSyntaxHighLighter.qth
+ contrib/hbqt/qth/HBQSyntaxHighlighter.qth
* contrib/hbqt/doc/en/class_hbqplaintextedit.txt
* contrib/hbqt/doc/en/class_hbqsyntaxhighlighter.txt
* contrib/hbqt/qtgui/HBQPlainTextEdit.cpp
* contrib/hbqt/qtgui/QTableWidget.cpp
* contrib/hbqt/qtgui/THBQPlainTextEdit.prg
* contrib/hbqt/qtgui/HBQSyntaxHighlighter.cpp
* contrib/hbqt/qtgui/THBQSyntaxHighlighter.prg
* contrib/hbqt/hbqt_hbqplaintextedit.cpp
* contrib/hbqt/hbqt_hbqplaintextedit.h
* contrib/hbqt/hbqt_hbqsyntaxhighlighter.cpp
* contrib/hbqt/hbqt_hbqsyntaxhighlighter.h
* contrib/hbide/hbide.hbp
* contrib/hbide/hbide.ch
* contrib/hbide/hbide.prg
+ contrib/hbide/idedict.prg
* contrib/hbide/idedocks.prg
* contrib/hbide/ideedit.prg
* contrib/hbide/ideeditor.prg
* contrib/hbide/idemisc.prg
* contrib/hbide/ideobject.prg
* contrib/hbide/idesaveload.prg
* contrib/hbide/ideshortcuts.prg
* contrib/hbide/idestylesheets.prg
* contrib/hbide/idethemes.prg
* contrib/hbide/idetools.prg
% Widened padding for menubar prompts to show up at a proper distance.
+ Controlled "RETURN" keyword not to jump to first indentation place,
with env variable - HBIDE_RETURN_ATBEGINING=yes. Scheduled to be
included in "Setup" interface.
+ Allowed hbIDE execution with any text type file. It was accepting .PRG.CPP only.
+ Broadened the scope of keyword coloring for any case, mixed or absolute.
It was all lower or all upper previously.
+ Prepared ground for user defined keywords through user dictionaries.
+ Added new flags in "Setup" dialog ( yet not active ).
Please have a look into the contents of different pages and
let me know what else can qualify to be included therein.
+ More macro for Tools parameter - ${source_fullname_less_ext}
% Tools & Utilities dialog made modeless. At times it is desirable
to execute a tool multiple times and also to gather output logs.
+ Tools & Utilities dialog now remembers its last opened position.
+ Implemented: user-configurable 5 toolbars which can be populated
through Tool & Utilities interface. Invoke "Tools & Utilities"
interface and play with the toolbars. You will find it really
rewarding. I am also trying to find a way to hook
"Kayboard Mappings" macros to be included under this interface.
Your input is welcome. I will write the help in about a week,
but interface is straight enough to grab/grasp/use.
+ Implemented: to switch on/off horizontal ruler.
+ Implemented: to remember the last settings for next run for
Horizontal Ruler, Line Numbers display and Current Line highlighting.
* mpkg_nightly.sh
+ Added patch by Tamas Tevesz. Thank you very much.
+ Will now use simple cp to put nightlies in place if
the scripts detects that it's run in sf.net server shell.
* mpkg_nightly.sh
+ Added instructions to setup unattended file upload on sf.net.
If SSH key pair is setup and public key uploaded to sf.net
user account, nightlies can be created and automatically
upload to sf.net, using these commands:
---
$ export HB_SFNET_FRS_PRIVATE_KEY=~/.ssh/id_dsa
$ export HB_SFNET_USER=myuser
$ ./mpkg_nightly.sh
---
* src/vm/set.c
* Reset default value to "hb_out.log".
+ mpkg_nightly.sh
+ Added script to generate nightly sources.
; TODO: Upload nightlies to sf.net.
; TODO: Change nightly filenames to match our normal source releases.
; TOFIX: Current .zip nighly has wrong (*nix) EOLs. This has to be
changed to CRLF.
* INSTALL
* Changed nightly script URLs to point to sf.net file area.
! Minor fix to bug tracker address.
* contrib/xhb/regexrpl.prg
* contrib/hbtip/httpcli.prg
* contrib/hbtip/mail.prg
! Fixed to use EMPTY() on HB_REGEX[ALL]() return
value instead of NIL check.
Required after recent change in HB_REGEX*()
return values in no-match case.
* contrib/hbcurl/hbcurl.c
* contrib/hbcurl/hbcurl.ch
+ Added support to download-to/upload-from file handle.
* contrib/hbqt/qtgui/Makefile
* contrib/hbqt/qtcore/Makefile
* contrib/hbqt/Makefile
* contrib/hbqt/gtqtc/Makefile
* contrib/hbqt/qtnetwork/Makefile
! Fixed to not build separate HBQT libs for static
linkage for non-win/wce targets.
* package/mpkg_win.nsi
* package/winuni/mpkg_win_uni.nsi
* Changed to use 'Harbour Project' as folder name in registry.
(instead of 'Harbour'). Just to be consistent.
* package/winuni/mpkg_win_uni.nsi
+ Add major.minor version number to registry folder names.
This allows multiple major versions of Harbour to be installed
in parallel.
* contrib/xhb/ttable.prg
% '&("{||" + c + "}")' -> HB_MACROBLOCK()
* contrib/xhb/trpccli.prg
* contrib/xhb/hblognet.prg
* contrib/xhb/xcstr.prg
* contrib/xhb/tedit.prg
* contrib/xhb/xdbmodst.prg
* contrib/xhb/trpc.prg
* contrib/xhb/thtm.prg
* contrib/xhb/dumpvar.prg
* contrib/xhb/xhbmt.prg
* contrib/xhb/xhberr.prg
* contrib/xhb/ttable.prg
* contrib/xhb/txml.prg
* '.NOT.' -> '!'
% ValType( x ) == "Y" -> IS*()
* Some other basic formatting and cleanup.
* src/rtl/hbini.prg
* examples/httpsrv/session.prg
* Formatting.
* tests/db_brows.prg
* tests/server.prg
* tests/testrdd2.prg
* tests/setkeys.prg
* contrib/hbtip/tests/tiptest.prg
* contrib/hbtip/tests/loadhtml.prg
* examples/hbsqlit2/tests/hbsqlite.prg
* examples/gtwvw/tests/wvwtest9.prg
* examples/gtwvw/tests/ebtest7.prg
* '.NOT.' -> '!'
* contrib/hbqt/hbqt_base.cpp
+ Added QVERSION() function which returns QT lib version as string.
Wrapper to QT function with the same name.
+ Added QSHAREDBUILD() function which returns whether QT lib used
are shared or static. Wrapper to QT function with the same name.
- Deleted HBQT_ISSTATICLINK() which was not portable implementation.
+ contrib/hbqt/tests/qtver.prg
+ Added test code to display all detecable QT version/lib information.
* INSTALL
* contrib/hbqt/hbqts.hbp
* contrib/hbqt/hbqtguis.hbp
* contrib/hbqt/hbqtcores.hbp
* contrib/hbqt/hbqtnetworks.hbp
* contrib/hbqt/hbqts.hbc
% Fixed to avoid building separate, but completely idendical
HBQT libs on Linux platform for linking to static QT libs.
Please note that on all platforms except Windows and Symbian,
it's not necessary to create separate HBQT builds for
static and dynamic QT libraries. Instead, on these
platforms (Linux, Darwin and possible OS/2) it's enough to
just link the same HBQT libs with either static or dynamic
QT libs. For this reason, recently added HBQT_ISSTATICLINK()
function will only work on Windows, thus it's not portable.
It needs to be redesigned to use QT API to retrieve lib type,
or if such API doesn't exist, this function should be deleted
from Harbour.
* external/zlib/deflate.c
* external/zlib/zutil.c
* external/zlib/deflate.h
* external/zlib/zutil.h
* external/zlib/crc32.c
* external/zlib/trees.c
* external/zlib/uncompr.c
* external/zlib/zconf.h
* external/zlib/compress.c
* external/zlib/adler32.c
! Restored original version ID to help creating more meaningful
.dif of local patches.