* contrib/hbtip/encqp.prg
+ Implemented quoted-printable encoder/decoder.
Not yet used. Not extremely well tested, just something
to start with. Please review. Probably should be done
in C for speed, but anyway.
* contrib/hbtip/sendmail.prg
* contrib/hbtip/mail.prg
+ Added 'charset' property and setting hb_sendmail().
Not yet effective, as Harbour uses 7-bit encoding yet.
* utils/hbmk2/examples/hmg.hbc
* Updated HMG hbmk2 config file with some extra tricks.
* utils/hbmk2/hbmk2.pt_BR.po
* utils/hbmk2/hbmk2.hu_HU.po
* utils/hbmk2/hbmk2.prg
* "(internal") -> "(embedded)" (also HU translation)
To avoid possible misunderstandings in some contexts.
* package/winuni/RELNOTES
+ Note about upx update. (still no win64 support, but there are
some other goodies for OS X and Linux)
* utils/hbmk2/hbmk2.prg
+ Enabled upx support on darwin. (You need to install it via
macports)
* INSTALL
+ Added upx to macports install list for darwin.
+ Added few missing '$' prefixes from commands included in text.
* config/common/watcom.mk
- Deleted OS/2 make bug workaround.
Thanks to David Arturo Macias Corona for instructions/tests.
* harbour/harbour.spec
! fixed to build with postinst.prg executed by shared linked hbrun
* harbour/bin/hb-func.sh
* harbour/debian/rules
* harbour/harbour.spec
% use HB_INST_PKGPREF instead of _DEFAULT_*_DIR
Please test DEB building in Debian, Ubuntu or in other DPKG
based distro. It probably has the same problem with postinst.prg
as all other builds.
* harbour/debian/rules
* harbour/harbour.spec
* harbour/mpkg_tgz.sh
* harbour/source/compiler/gencobj.c
* updated harbour.cfg localization in *nix builds
* harbour/utils/hbrun/Makefile
! restored support for default include directory in system wide builds
* INSTALL
* config/global.mk
* config/wce/msvcarm.mk
* config/win/msvc.mk
+ Replaced MSVC specific compiler version setting with generic
compiler version setting.
HB_VISUALC_VER_PRE80 and HB_VISUALC_VER_PRE70 setting are
deleted and HB_COMPILER_VER is activated.
; INCOMPATIBLE.
* config/global.mk
+ Added MSVC compiler version autodetection.
(6.0, 7.x, 8.0, 9.0)
* config/win/msvc.mk
+ Enabled UNICODE mode for MSVC 2008 (9.0) and above.
This compiler version doesn't support Win9x anyway.
* utils/hbmk2/hbmk2.prg
- Deleted support for HB_VISUALC_VER_PRE80 in hbmk2.
(HB_COMPILER_VER was already supported in hbmk2)
* INSTALL
+ More details to MS Windows SDK 7.
* utils/hbmk2/hbmk2.prg
! Minor typo in comment.
* config/win/bcc.mk
+ Added syslibs to dynlib link command. This seems to be needed
for some newer (6.20) versions of BCC.
Thanks Przemek for noticing, Mario for reporting.
And please test, I didn't do it for either BCC versions due
to lack of time.
* INSTALL
! Minor fix to OS/2 example.
* utils/hbmk2/hbmk2.prg
* config/os2/gcc.mk
! Fixed to use 'stripomf' tool instead of 'strip' in gccomf mode.
; Please only post comments on above patch if it contains real
information. I'm not interested in "This is wrong.", "You messed it up."
kind of comments, only in real information, since I'm not OS/2 user.
* INSTALL
* utils/hbmk2/hbmk2.prg
* config/os2/gcc.mk
+ config/os2/gccomf.mk
+ Added OS/2 GCC OMF support.
This tries to fix resource support in hbmk2 compared to David's
solution. hbmk2 support is completely newly done, .mk support was imported
as is, with little change in actication logic.
! Fixed to use $(ECHOQUOTE) in some $(ECHO) command parameters.
; NOTE: Until we don't add autodetection for OMF supporting GCC versions,
it will have to be selected manually using HB_COMPILER=gccomf.
Notice that for GCC 4.x this is obligatory since COFF support is
broken in these versions.
Additional EMX* envvar options are left as an excercise for the
users, I intentionally didn't document these in INSTALL, as INSTALL
servers as Harbour documentation, not 3rd party tools like GCC.
* config/global.mk
! Minor in comment.
* contrib/hbqt/Makefile
* contrib/hbqt/hbqts/Makefile
* contrib/gtqtc/gtqtcs/Makefile
* contrib/gtqtc/Makefile
! Disabled QT dependent parts for msvcia64 targets.
; Fails with error:
---
z:\devl\qt\4.5.2\include\qtcore\../../src/corelib/tools/qvector.h(541) : warning C4346: 'QVector<T>::iterator' : dependent name is not a type
prefix with 'typename' to indicate a type
z:\devl\qt\4.5.2\include\qtcore\../../src/corelib/tools/qvector.h(541) : error C2143: syntax error : missing ';' before 'QVector<T>::insert'
z:\devl\qt\4.5.2\include\qtcore\../../src/corelib/tools/qvector.h(541) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
z:\devl\qt\4.5.2\include\qtcore\../../src/corelib/tools/qvector.h(541) : fatal error C1903: unable to recover from previous error(s); stopping compilation
---
* package/winuni/HARBOUR_README_MINGWARM
* Minor raw update to document newly found --force-local tar switch.
* config/global.mk
* utils/hbmk2/hbmk2.prg
+ Added autodetection for win/msvcia64 compiler.
* INSTALL
+ Tweaks to links.
* ChangeLog
! Fixed wrong entry header in my prev commit.
* INSTALL
* utils/hbmk2/hbmk2.prg
* config/os2/gcc.mk
! Reverted "rogue" patch. I'd like to kindly ask David,
to commit when doubts are cleared, otherwise I will
have to revoke R/W rights to avoid extra cleanup work.
This solution is wrong, for specific concerns see dev list.
* harbour/config/os2/gcc.mk
* harbour/utils/hbmk2/hbmk2.prg
+ Added support of OMF library format
To select alternative OMF library format, use:
set HB_OS2_OMF=yes
* INSTALL
+ Added note for OMF library format
* Makefile
* utils/Makefile
* Changed to build hbrun and hbmk2 in HB_BUILD_PARTS=compiler mode.
+ Added running bin/postinst.prg.
+ bin/postinst.prg
+ Added postinst.prg with test content.
* package/winuni/RELNOTES
* Added information about new MinGW CEGCC build.
* utils/Makefile
* Changed HB_UTILS setting name to HB_UTIL_ADDONS. To be
in sync with rest of similar settings.
* INSTALL
+ Documented HB_UTIL_ADDONS setting. (formerly HB_UTILS)
* INSTALL
* Pelles C support version numbers adjusted.
6.0 DOESN'T work with Harbour due to multiple bugs in this compilers.
Don't report such problems to the list.
* package/winuni/HARBOUR_README_MINGWARM
* Updated for latest cegcc binary release.
* utils/hbmk2/hbmk2.prg
! Typo in BSD macro redefinition.
* config/global.mk
+ Extended platform macro redefinition for all supported platforms.
+ Extended arch bit macro redefinition (didn't test it though)
* config/globsh.mk
! Fixed implib not being deleted when using POSIX shells.
! Fixed dynlib and implib not being deleted when using OS/2 or MS-DOS shells.
* utils/hbmk2/hbmk2.prg
* config/global.mk
! Changed .dll names for OS/2 to be the same as in MS-DOS:
harbour/harbourm. (.dll names in OS/2 are limited to 8.3)
* config/dos/djgpp.mk
! Attempt to fix empty line problem when stripping isn't requested.
Something better would be good here.
* config/os2/gcc.mk
! Fixed empty line problem when stripping isn't requested.
* utils/hbmk2/hbmk2.prg
+ Added support for -strip option in -hblib mode.
! Fixed -strip in -hbdyn mode for darwin and sunos targets which
use individual strip command.
* harbour-win-spec
* harbour-wce-spec
* Reverted change in 2009-09-21 14:03.
; See related pending question on dev list.
* config/sunos/global.mk
! Fixed to not use -s option for stripping. This doesn't seem to
be supported on sunos platform, at least according to code found
in hbmk2.
* utils/hbmk2/hbmk2.prg
+ Added support for -strip in -hbdyn mode.
+ Added -strip support for sunos/gcc targets.
! Fixed to use strip command instead of -s option with sunos/sunpro
targets.
* utils/hbmk2/hbmk2.prg
* config/bin.mk
+ Added hbmainstd lib for os/2 targets in shared mode.
Maurilio, please restest after this change.
; Needless to say I couldn't test these, so I'd appreciate if sunos
users could verify it (except -strip in -hbdyn mode).
* contrib/hbqt/Makefile
* contrib/hbqt/hbqts/Makefile
* contrib/gtqtc/Makefile
* contrib/gtqtc/gtqtcs/Makefile
! Fixed QT detection on darwin after 2009-09-18 12:19 change
in detfun.mk.
* utils/hbmk2/hbmk2.prg
+ Comment added (from .mk).
* config/darwin/gcc.mk
* config/darwin/icc.mk
* config/darwin/clang.mk
* config/darwin/global.mk
* config/rules.mk
+ Implemented HB_BUILD_STRIP for darwin.
(on darwin strip has to be called directly)
* utils/hbmk2/hbmk2.prg
; Fixes based on Przemek's extensive tests/suggestions on different *nix systems.
! -fixshared option now only effective for gcc compilers. For the rest
it behaves as -fullshared.
! Added x11 and curses/slang libpath for bsd targets in shared mode.
hbmk2 solution is rough, but didn't see a reason to make it more
complicated. I hope it fixes the problem.
+ Enabled -fullstatic mode for sunpro compilers.
* utils/hbmk2/hbmk2.prg
! Fixed to add /usr/X11R6/lib64 dir to libpath list on linux
targets only. (sync with similar guard in sunpro compiler support)
; TOFIX: This leaves the GPF in sunpro/linux on the pending list.
; TOFIX: And here comes to mind that mingw64 also GPFs in shared mode.
* utils/hbmk2/hbmk2.prg
* config/global.mk
+ Added beos system location detection.
+ Added system location detection based on [LD_]LIBRARY_PATH.
; Please review and even tweak code if needed. I didn't test these changes.
* utils/hbmk2/hbmk2.prg
% system location detection code disabled for non-*nix hbmk2 builds.
It's of no use there, as far as I can overview all scenrios.
* config/global.mk
* Restored default lib dir to simply lib on *nixes.
% Minor opt to system location detection.
! Fixed to only use 'harbour' lib/inc postfixes on beos
when installed on system location. Thanks Przemek for the patch.
* mpkg_tgz.sh
* bin/postinst.sh
% Attempt to clean mpkg_tgz.sh from redundant make logic.
Some tasks (stripping, shared tool making using HB_BUILD_SHARED,
chmod on HB_INC_INSTALL) moved to postinst.sh, some others
deleted (platform detection, shared tool building using old
method, component detections, install dir forming and creation.
; Please review me and test.
; TODO: Maybe above tasks in postinst.sh should only be
executed when HB_BUILD_PKG=yes.
* config/global.mk
! Fixed to only use lib64 dir if it exists. Please review/test
this feature.
+ Now exports HB_SYSLOC variable which is set to non-empty if
HB_INSTALL_PREFIX points to system location.
* harbour.spec
- Deleted PIC option related lines. These are handled by GNU Make now.
* utils/hbmk2/hbmk2.prg
+ Added PIC related options to *nix compilers when using -hbdyn option.
% Deleted PIC related option from link command. Not needed.
* config/bin.mk
! Fixed to leave sys libs for non-*nix systems in shared mode.
+ Added support for win/watcom.
* utils/hbmk2/Makefile
* utils/hbrun/Makefile
+ Added extra core lib specs required in shared mode.
* utils/hbmk2/hbmk2.prg
% Deleted bin dir from lib dir list in shared mode for
non-*nix compilers. Implibs are used in all cases so this
is isn't necessary anymore.
* external/sqlite3/sqlite3.c
* external/sqlite3/sqlite3.dif
* external/sqlite3/sqlite3.h
+ sqlite upgraded to 3.6.18 (from 3.6.17)
* external/sqlite3/Makefile
+ Enabled for mingwarm. Now it compiles with only one warning.
* utils/hbmk2/hbmk2.prg
+ Added 'fossil' version control system support to -vcshead option.
* utils/hbmk2/hbmk2.prg
! Fixed to add windows system libs in mingw -shared mode.
+ Added some steps towards os2/gcc -shared support.
* INSTALL
* Minor.
* ChangeLog
! Typos.
* source/rtl/hbsocket.c
! Applied patch for BEOS/HAIKU by Tamas Tevesz.
* contrib/hbtip/sendmail.prg
! Fixed to append CRLF instead of hb_osNewLine() to e-mail body.
Patch submitted by Lorenzo Fiorini.
NOTE: This fix is surely valid, I'll apply further fixes as we
manage to find out more on the bigger picture.
* contrib/hbtip/mail.prg
! Applied a few patches from mail.prg sent by Gerald Drouillard:
- Using :setBody() from :New() instead of replicating (little bit
different) logic.
- "Content-Length" deleted from generated e-mail text.
- Added parameter list to METHOD declaration for :setHeader().
* Minor formatting.
* config/beos/libs.mk
+ Applied patch from Tamas Tevesz changing 'socket' lib to 'network' for BEOS/HAIKU.
* utils/hbmk2/hbmk2.prg
+ Done the same for hbmk2 (changed 'socket' lib to 'network' for BEOS/HAIKU).
* config/detfun.mk
+ Changed to avoid duplicate component detection lines in verbose output.
(_DET_OPT_VERB=very|yes - not yet documented)
(note this needs absolute paths to be used when referring to internal
components in _DET_INC_DEFP/_DET_INC_LOCL)
* external/sqlite3/Makefile
* external/libhpdf/Makefile
* external/libpng/Makefile
* contrib/hbsqlit3/Makefile
* contrib/hbhpdf/Makefile
+ Changed to use absolute paths when referring to locally hosted components
in _DET_INC_LOCL variables.
* utils/hbmk2/hbmk2.prg
- Deleted supc++ lib. hbmk2 won't be able to solve every existing
compiler configuration problems, so in this case users will have to deal
with this special case and supply supc++ or supcxx or stdc++
lib if it's required, or manually select C++ mode for hbmk2 if
that better solves local needs.
Case closed from my side.
* contrib/hbqt/hbqts.hbc
* contrib/hbqt/hbqt.hbc
* contrib/gtqtc/gtqtcs.hbc
* contrib/gtqtc/gtqtc.hbc
+ Readded supc++ libs to .hbc files, where needed.
* utils/hbmk2/hbmk2.prg
- Deleted supc++ lib from os2/gcc targets.
It causes warnings like this:
---
emxomf warning: Undefined stabs type 182 referenced
emxomf info: parsing sym no.676 type=1 at char 'xyz' in position 12:context:p182
emxomf warning: Cycle detected by make_type.
---
; TODO: Check if C++ built Harbour works with hbmk2 in (default) C mode.
* source/Makefile
* config/lib.mk
+ Added Przemek's patch to add local hbzlib and hbpcre
libs to Harbour dynlib.
; TODO: Add some ways to disable this because it has some
drawbacks (it f.e. makes it impossible to link 3rd
party libs also exporting zlib / pcre interfaces).
This information needs to be passed to hbmk2, too.
I don't have any elegant way to solve this problem ATM.
* utils/hbmk2/hbmk2.prg
* Changed to only add local hbzlib and hbpcre libs to liblist
in static mode. (this is needed to support change above).
+ Enabled lib grouping for beos/gcc.
+ Added supc++/supcxx lib to liblist of gcc family compilers.
This aims to solve link problems when Harbour is built
in C++, but hbmk2 is used in C mode.
* contrib/hbqt/hbqts.hbc
* contrib/hbqt/hbqt.hbc
* contrib/gtqtc/gtqtcs.hbc
* contrib/gtqtc/gtqtc.hbc
- Deleted explicit supc++ libspec. Now it's added by
hbmk2 automatically.
* config/dyn.mk
! Modified to add local hbpcre and hbzlib to syslib
list to make it link with beos/haiku.
Please test/confirm this change.
- Disabled above logic, since it's not needed.
* config/global.mk
+ Added autodetection for linux/sunpro, linux/icc,
darwin/clang, darwin/gcc, darwin/icc.
On darwin clang became the default, if available.
* external/sqlite3/Makefile
+ Tweak for linux/watcom. Based on Przemek patch sent to the devlist.
* config/detfun.mk
* config/bin.mk
* config/dyn.mk
* source/Makefile
* config/lib.mk
% Minor modification to HB_HAS_*_LOCAL logic to make
it safe to use this var without first checking HB_HAS_*.
; Please test/review these. I didn't restest everything after above changes.
* utils/hbmk2/hbmk2.prg
* utils/hbmk2/hbmk2.pt_BR.po
* utils/hbmk2/hbmk2.hu_HU.po
+ Added HBMK_OPTIONS environment variable where options
can be specified in the same format as in the cmdline.
This is the supported and recommended way to control
hbmk2 by envvar.
+ Documented HBMK_OPTION on help screen.
% Cleaned internal handling of 'legacy' environment
variables. This means they will be processed in one
central place and converted to regular cmdline options
just as if they were specified in HBMK_OPTIONS.
+ Showing screen message if there were any settings read
from the environment (also showing the actual settings).
This will make it easy to debug problems caused by
leftover envvars.
- Deleted HB_COMPILER and HB_PLATFORM envvar references
from screen messages. Now these are considered legacy
and not advertised.
* Regenerated *.po files.
* contrib/hbtip/sendmail.prg
! Fixed hang experienced in some situations when sending
e-mail. This was reported on Linux, but was also present
on Windows (and all OSes). It was cause by not checking
:GetOk() return value, but looking for :cReply being NIL.
This seems to be incorrectly coded since the very beginning,
but surfaced only after cleaning up socket API in core.
Please review/test, I left also old condition in.
* utils/hbmk2/hbmk2.prg
* Minor formatting.
* utils/hbmk2/examples/contribf.hbc
* contrib/Makefile
- contrib/hbvpdf
+ examples/hbvpdf
* Moved hbvpdf lib to examples section.
This code is barely updated and offers duplicate functionality
of superior hbhpdf lib.
* source/rtl/filesys.c
* Minor formatting.
* contrib/hbtip/sendmail.prg
! Applied patch from Alex Strickland.
Fixes wrong encoding (7-bit).
Fixed mails sent as multi-part even if there was only simple body.
* utils/hbmk2/hbmk2.prg
! Fixed stupid error in last cmomit.
* utils/hbmk2/hbmk2.prg
+ Extended autodetection of mingw cross-compiler on *nix system.
* Disabled native compiler tool autodetection for non-*nix targets
on *nix hosts. This will need further refinement.
* config/haiku/libs.mk
- Deleted commented lines.
* config/global.mk
+ Some more Haiku/BeOS autodetection.
* utils/hbmk2/hbmk2.prg
% Deleted UTF-8 hack. Now using the built-in UTF-8 conversion
support.
* contrib/hbwin/win_com.c
% Minor optimization and fixed warnings after recent patch.
* INSTALL
+ Added see also HB_CC* to HB_COMPILER settings.
* utils/hbmk2/hbmk2.prg
! Fixed to include system zlib/pcre libs in static mode if local built lib
isn't found.
* external/sqlite3/Makefile
* external/libhpdf/Makefile
* external/libpng/Makefile
* utils/hbmk2/hbmk2.prg
* contrib/hbsqlit3/Makefile
* contrib/hbhpdf/Makefile
* config/detfun.mk
* config/detect.mk
- Deleted _DET_LOC_PLAT variable.
* package/winuni/mpkg_win_uni_extra_copy.bat
- Deleted some extra commented lines dealing with pcre/zlib headers.
* Makefile
- source/hbpcre
- source/hbzlib
* external/Makefile
+ external/pcre
+ external/zlib
* external/pcre/Makefile
* external/zlib/Makefile
* external/libhpdf/Makefile
* external/libpng/Makefile
* include/hbsetup.h
* include/hbzlib.h
* include/hbregex.h
* source/rtl/hbzlibgz.c
* source/rtl/Makefile
* source/rtl/hbregexc.c
* source/rtl/hbregex.c
* source/rtl/hbzlib.c
* source/Makefile
* contrib/xhb/Makefile
* contrib/hbmzip/Makefile
* utils/hbmk2/hbmk2.prg
* config/global.mk
* config/lib.mk
* config/bin.mk
* config/detect.mk
* config/darwin/libs.mk
* config/linux/libs.mk
* config/wce/mingwarm.mk
* config/wce/poccarm.mk
* config/wce/msvcarm.mk
* config/win/xcc.mk
* config/win/mingw.mk
* config/win/pocc.mk
* config/win/bcc.mk
* config/win/watcom.mk
* config/win/icc.mk
* config/win/cygwin.mk
* config/win/msvc.mk
* config/dyn.mk
* config/os2/watcom.mk
* config/os2/gcc.mk
* config/bsd/libs.mk
* config/hpux/libs.mk
* config/sunos/libs.mk
* Changed the way embedded zlib and pcre are handled:
- They now reside in /external dir.
- They are now excluded from Harbour dynlib. This means they
will now be linked statically on non-*nix systems and
dynamically on *nix systems. On *nix it's probably easy to
switch to link statically. On non-*nix this is quite
complicated to do.
- If these libs are provided by the system, those will be used.
- On non-*nix systems the locally hosted versions will be used,
unless user overrides them using HB_INC_PCRE or HB_INC_ZLIB.
- There is currently no officially supported way to force usage
of locally hosted libs.
- If PCRE lib is forcibly disabled or not found, build system
will fall back to POSIX regex on *nix systems and Borland regex
with bcc compiler. Otherwise it will stop the build with an error.
- If zlib is forcibly disabled or not found, an error will be
generated at build-time (in hbrtl). hbmzip is simply skipped
in this case.
- hbmk2 will use local builds of these libs if they are present
in lib dir.
; TOFIX: hbmk script.
; TOFIX: dos builds. cmdline lenghts are most probably too big for them.
; NOTE: Bumps are expected.
; NOTE: I've yet to test/verify it.
- external/libhpdf/ori_src
- external/libhpdf/ori_dst
- Deleted. (added in prev commit by oversight)
* config/darwin/clang.mk
+ Disable -c option to avoid warnings when --analyze user option is used.
* utils/hbmk2/hbmk2.prg
! Implemented fix from hbmk script for shared mingw targets in GUI mode.
* bin/hb-func.sh
! Synced wce .dll name with rest of Harbour.
* utils/hbmk2/hbmk2.prg
! Fixed to use 'rc' AR cmd on sunos. (instead of 'rcs')
+ Added -hbdyn support for gcc family of compilers. (very light testing with mingw)
+ Added sunpro compiler support. (not tested, bazaar style)
! Basic CPU detection fixed for clang.
+ Added TOFIX for CPU detection for *nix based gcc, icc, clang, sunpro
compilers.
* config/wce/mingwarm.mk
* config/hpux/gcc.mk
* config/win/mingw.mk
* config/linux/gcc.mk
* config/linux/icc.mk
* config/linux/sunpro.mk
* config/sunos/gcc.mk
* config/sunos/sunpro.mk
* Minor: AR cmd chars reordered to be in sync with hbmk2.
* config/darwin/clang.mk
+ Added comment with option to force C++ mode with clang.
* utils/hbmk2/hbmk2.prg
+ Added (not yet tested) darwin/clang support.
Probably it could be added for other platforms, too. Also
for GNU Make. clang cmdline is compatible with GCC for the most
part, so it's easy to do and if the few differences can be sorted out,
it can be done without duplicating .mk file logic.
* config/darwin/gcc.mk
- Disabled '-no-cpp-precomp' option for darwin/gcc. Most probably
it's not needed anymore. For users using older darwin systems, this
can be added manually.