- external/libpng
+ external/png
* external/png/Makefile
* external/libhpdf/Makefile
* external/Makefile
* harbour.spec
* contrib/hbhpdf/hbhpdf.hbc
* contrib/hbwin/hbwin.hbc
* Renamed locally hosted libpng lib name from 'libpng'
to 'png'.
This way Harbour shifts to the *nix naming and syncs
better with these systems. On Windows the "most official"
binary builds still use 'libpng', so if someone uses them
instead of locally hosted version (which is not very likely)
the .hbc files shipped with Harbour should be edited
accordingly. This change also satisfies past request from
some users.
; NOTE: INCOMPATIBLE, pls change lib name 'libpng' to 'png'
for all platforms in your make files.
* contrib/hbhpdf/tests/harupdf.prg
* Indentation.
* Formatting.
* external/minizip/readme.txt
* Deleted paths from filenames.
* 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/wce/poccarm.mk
* config/dos/watcom.mk
* config/win/xcc.mk
* config/win/pocc.mk
* config/win/bcc.mk
* config/win/watcom.mk
* config/linux/watcom.mk
* config/os2/watcom.mk
* Changed to not forcefully turn off warnings in some targets.
(so HB_BUILD_WARN=no is now equivalent to hbmk2 -warn=def)
; NOTE: This will result in some new warnings in /external
dir since for above compilers I've now upped the
warning level from nothing to the default level.
* external/zlib/Makefile
* Changed to not set Harbour level warnings for this
external component (in sync with all the others).
* external/zlib/zlib.dif
* contrib/hbmzip/minizip.dif
* Updated .difs.
+ external/libhpdf/libhpdf.dif
+ Added new .dif.
* contrib/hbide/ideprojmanager.prg
% Deleted -hbcmp when creating .ppo. It was unnecessary since
later -hbraw mode is selected.
* harbour/external/zlib/deflate.c
* harbour/external/zlib/gzread.c
* pacified warnings
* harbour/external/zlib/zutil.h
! fixed to compile with XCC
* harbour/external/zlib/zconf.h
! removed wrongly added #if 0 / #endif
* harbour/external/zlib/gzguts.h
! added missing header files to fix _ALL_ builds
* harbour/external/zlib/Makefile
* reenabled warnings - it's very danger to pacify warnings in such way
what recent ZLIB update clearly shows - it was seriously broken in all
builds due to missing header files with valid function declarations
but the problem was fully hidden because C++ mode and warnings were
disabled so no problem was reported at compile time.
Please also remember that many of Windows compilers does not fully
support pure ANSI C function declaration so this new library may
not work as expected.
* harbour/external/libhpdf/hpdfcfg.h
! removed setting for all platforms HAVE_UNISTD_H
this file was generated by autoconf on platform which has <unistd.h>
but we cannot leave it because it will break all code which uses
standard autoconf settings like HAVE_UNISTD_H and is compiled
on platform where <unistd.h> is not available
* harbour/contrib/hbmzip/ioapi.c
! fixed to include ioapi.h before any other header files - it uses
some feature macros which have to be set before including standard
C files
* harbour/contrib/hbmzip/ioapi.h
! removed from feature set macros setting of internal __USE_* ones
! do not set _LARGEFILE64_SOURCE in DOS and OS2 - macro with the same
name is used by new ZLIB 1.2.4 for explicit 64 bit gzip API.
* harbour/contrib/hbmzip/hbmzip.c
! fixed old typos in type of return value in hb_zipfileParam() and
hb_unzipfileParam()
NOTE: I haven't tested if this new mzip/zlib 64 bit file IO support
works. It's even possible that previously working code in 64 bit
platforms (except Win64 on all other 64 bit platforms 'long' is
64bit integer) stopped to work so please make real tests.
* external/zlib/zlib.dif
* external/zlib/zconf.h
! Tweak to make it build with BCC (when this specific
constant is defined, f.e. by libharu).
* external/pcre/Makefile
! Tweak to make 8.02 work with BCC.
; NOTE: BCC is seemingly not tested/used by any important
external projects. If it goes like this, I will stop
doing these updates and leave them to real BCC users.
It's going against the flow.
* config/postinst.prg
* /V2 -> -V2 to make *nix shells happy.
+ 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.
* 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/bzip2/Makefile
* external/bzip2/bzip2.dif
* external/bzip2/bzip2.c
+ Added patch to make it compile on dos and os2/watcom.
Thanks to Przemek.
* 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).
* external/pcre/Makefile
- Disabled stdint.h for all targets to make some Harbour
supported legacy compilers happy which don't support it
(f.e. bcc 5.5)
* contrib/hbmysql/hbmysql.hbc
* contrib/rddsql/sddmy/sddmy.hbc
! Fixed library name for Linux platforms.
I hope it also works for other *nix systems.
(On darwin/macports it doesn't because they placed
the lib in a subdir, but at least the lib name is
right)
+ external/bzip2
+ external/bzip2/LICENSE
+ external/bzip2/Makefile
+ external/bzip2/cnv_hb2o.bat
+ external/bzip2/cnv_o2hb.bat
+ external/bzip2/blocksor.c
+ external/bzip2/bzip2.c
+ external/bzip2/bzlib.c
+ external/bzip2/compress.c
+ external/bzip2/crctable.c
+ external/bzip2/decompre.c
+ external/bzip2/huffman.c
+ external/bzip2/randtabl.c
+ external/bzip2/bzlib.h
+ external/bzip2/bzlib_pr.h
+ Add locally hosted bzip2 library. Experimental, we
don't use it yet. Will be deleted if of no use, or
not portable enough. ATM OS/2, DOS and WCE targets
are not supported.
* external/pcre/pcre.dif
- Deleted not more required local patch, since
we're not using legacy (Windows) types anymore
in Harbour.
* external/pcre/pcre.h
* external/pcre/pcreexec.c
* external/pcre/pcreinal.h
* external/pcre/pcredfa.c
* external/pcre/pcrecomp.c
* external/pcre/config.h
* external/pcre/LICENCE
* external/pcre/pcreprni.h
* external/pcre/pcrestud.c
+ Updated to 8.0.1 (from 8.0.0)
* external/libpng/pngrio.c
* external/libpng/pngconf.h
* external/libpng/pngwrite.c
* external/libpng/pngset.c
* external/libpng/pngpread.c
* external/libpng/pngwtran.c
* external/libpng/LICENSE
* external/libpng/pngrutil.c
* external/libpng/pngwutil.c
* external/libpng/pngread.c
* external/libpng/pngmem.c
* external/libpng/pngget.c
* external/libpng/png.c
* external/libpng/png.h
* external/libpng/pngpriv.h
* external/libpng/pngrtran.c
+ Updated to 1.4.1 (from 1.4.0)
* harbour/contrib/hbct/video.c
* pacified DJGPP warning
* harbour/external/jpeg/Makefile
* define HAVE_STDLIB_H - it's necessary for exit() function used in
jerror.c
* INSTALL
* external/Makefile
* contrib/Makefile
+ Added build option to exclude specific list of contrib/external
libraries using syntax: 'HB_CONTRIBLIBS=no lib1 lib2 libn'
* external/pcre/Makefile
! Forcing C mode for this external component, which is
mainly tested and developed for C compiler.
Currently sunpro has problems in C++ mode due to little
bug in current PCRE code. Reported to author here:
http://bugs.exim.org/show_bug.cgi?id=939
* utils/hbmk2/hbmk2.prg
* Minor formatting.
* contrib/hbcairo/core.c
* Using HB_TRUE/HB_FALSE instead of 1/0.
* harbour/src/vm/strapi.c
* harbour/include/hbapistr.h
+ added new functions:
hb_itemPutStr(), hb_itemPutStrUTF8(), hb_itemPutStrU16(),
hb_arrayGetStr(), hb_arrayGetStrUTF8(), hb_arrayGetStrU16(),
hb_arraySetStrLen(), hb_arraySetStrLenUTF8(), hb_arraySetStrLenU16(),
hb_arraySetStr(), hb_arraySetStrUTF8(), hb_arraySetStrU16(),
* harbour/include/hbwinuni.h
* removed unnecessary and danger casting in UNICODE version of
HB_RETSTR(), HB_RETSTRLEN(), HB_STORSTR() and HB_STORSTRLEN() macros
* modify HB_ARRAYSETSTR() and HB_ARRAYSETSTRLEN() macros to use new
STR API functions
* harbour/external/Makefile
* modified the order of compiled libraries for better performance in
parallel compilation (-j<N>)
* include/hbwince.h
+ Added following macros to help transitioning to new method
of CP conversion when interfacing with Windows API (both UNICODE
and non-UNICODE):
HB_PARSTR( n, h, len )
HB_RETSTR( str )
HB_RETSTRLEN( str, len )
HB_STORSTR( str, n )
HB_STORSTRLEN( str, len, n )
; The goal is to replace HB_TCHAR_*() macros and hb_osEncodeCP()
call with above ones. This will allow to use any CPs (even UTF8)
on the .prg level and transparently interface with Windows
with proper CP translation.
We will probably need a few more macros to store strings in
array elements f.e., but this is enough for a start.
* contrib/hbwin/wapi_shellapi.c
+ Experimental: WAPI_SHELLEXECUTE() converted to use above new
macros. It results in much cleaner code.
Minor incompatibility: 3rd parameter is now passed as-is, so
if non-string is passed it gets passed to Windows as NULL,
which isn't a valid input parameter.
; NOTE: Probably it will useful to have HB_PARSTRDEF() which also
accepts a default value to be used when non-string
parameter was passed. (to replace old hb_parcx() calls).
Is it possible to add such function or any other ways to solve that?
; TOFIX: I'm getting this warning:
warning: implicit declaration of function 'hb_setGetOSCP'
and it's probably too late, but I couldn't find a way to
include hbset.h without errors or with least side-effects.
Przemek, could you help?
* contrib/hbwin/win_prn1.c
* Formatting.
* src/rdd/dbcmd.c
* src/rdd/wafunc.c
+ Moved recently implemented codepage defaulting logic (_SET_DBCODEPAGE)
to lower lever functions.
Please review me.
* external/libpng/pngrio.c
* external/libpng/pngerror.c
* external/libpng/pngconf.h
* external/libpng/pngwrite.c
* external/libpng/pngset.c
* external/libpng/pngpread.c
* external/libpng/pngwtran.c
* external/libpng/LICENSE
* external/libpng/pngwio.c
* external/libpng/pngrutil.c
* external/libpng/pngwutil.c
* external/libpng/pngread.c
* external/libpng/pngmem.c
* external/libpng/png.c
* external/libpng/pngget.c
* external/libpng/pnggccrd.c
* external/libpng/png.h
* external/libpng/pngrtran.c
* external/libpng/pngtrans.c
* Updated to 1.2.41 (from 1.2.40)
* INSTALL
* bin/hb-mkimp.bat
* contrib/hbqt/hbqt.hbc
* contrib/hbqt/hbqts.hbc
* contrib/gtqtc/gtqtcs.hbc
* contrib/gtqtc/gtqtc.hbc
* utils/hbmk2/examples/xhgtk.hbc
* config/global.mk
+ Eliminated HB_DIR_* envvar requirement to find required 3rd
party component libs.
This means that it's now enough to only set HB_WITH_* envvars
to enable HB_BUILD_IMPLIB.
This should make configuration a lot simpler, and this clears
the last pending TODO in this area.
HB_INC_* won't work this way, so please start to migrate to
HB_WITH_* envvars, the values should stay the same.
* external/pcre/cnv_o2hb.bat
* external/pcre/cnv_hb2o.bat
* Updated comment.
* 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.
* debian/rules
% Minor Makefile optimizations. I hope this is right.
* INSTALL
+ Readded alternative package for curl on debian.
+ external/zlib/zlib.dif
+ external/sqlite3/sqlite3.dif
+ Added .dif files for local patches to locally hosted
3rd party code. Pls update these when modifying original
source locally.
; NOTE: I intentionally didn't add svn props to these files.
* external/sqlite3/Makefile
! Typo in comment.
* 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.
* harbour/external/libpng/Makefile
* disabled when XCC compiler is used - it cannot compile it
* harbour/contrib/hbnetio/netiomt.prg
* updated comment with NETIO_MTSERVER() syntax
* harbour/contrib/hbnetio/netiosrv.c
* minor formatting
* 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.