* INSTALL
* external/Makefile
* contrib/Makefile
* utils/Makefile
- Deleted HB_CONTRIB_ADDONS, HB_EXTERNAL_ADDONS,
HB_UTIL_ADDONS.
+ Documented HB_ADDONS_LIB, HB_ADDONS_BIN (still not
necessarily the final names)
* package/winuni/mpkg_win_uni_extra_copy.bat
* package/winuni/mpkg_win_uni.bat
* package/winuni/mpkg_win_uni.nsi
+ Included hbnetio in Windows based installers.
(.zip already had it after previous changes)
* package/winuni/mpkg_win_uni_extra_copy.bat
* package/winuni/mpkg_win_uni.bat
* package/winuni/mpkg_win_uni.nsi
* config/postinst.hbs
- Deleted building hbrun-dll. It makes simpler,
won't be missed by too many users. Users needing
fully shared binaries can use HB_BUILD_SHARED=yes.
- external/patchup.prg
+ bin/patchup.prg
* Moved to bin dir for universal access. F.e. we may want
to support external components inside contribs or anywhere
else in the tree.
+ Added support to recognize and use .hbp file as well, if
Makefile is not available in current dir.
* external/bzip2/Makefile
- Deleted now not needed old URL tag.
* external/patchup.prg
+ Added option to create temp dir in cwd.
+ Using --force-local tar option to make broken Windows
tar build (gnuwin32 latest 1.13 release from 2003) happy.
+ Changing to target dir on our own instead of using -C
tar option. This option is broken on Windows tar build
(gnuwin32 latest 1.13 release from 2003)
* package/winuni/RELNOTES
+ libcurl updated.
- external/minizip/readme.txt
- Deleted. Most information was obsolete and now update
is automatic.
- contrib/hbide/resources/hbmk2_plugin_ui.prg
+ contrib/hbqt/hbmk2_plugin_ui.prg
+ Moved this hbmk2 plugin to its proper place inside
hbqt. It's QT specific functionality.
* contrib/hbide/hbide.hbp
* contrib/hbqt/hbqt.hbc
* contrib/hbqt/hbqts.hbc
* Changed to follow above plugin location change.
* contrib/hbide/ideprojmanager.prg
- Commented ui plugin from hbide. It's needs to be solved
differently. ui plugin is QT specific so it cannot be
inside hbide tree.
* config/postinst.prg
+ Some more feedback.
! Slight correction to another feedback.
* external/patchup.prg
* Changed gtcgi force option to be the more portable-style one.
* contrib/hbqt/utils/hbqtui.prg
+ Added error message
; TOFIX: This tool needs serious ruggedizing to be ready for
production environment. It just fails to give _any_
on screen feedback about what's happening, or what
fails. This means that the caller will fail in various
ways depending on how hbqtui failed. It also doesn't
return anything via errorlevel. Pritpal can you look
at it?
* contrib/Makefile
* contrib/makefile.prg
+ Added experimental call out from GNU Make to Harbour
contrib make orchestrator script.
* include/hbapicom.h
! Fixed missing HB_EXTERN_BEGIN/END
+ Added HB_EXTERN
* external/patchup.prg
; Patch and log text by Tamas Tevesz:
+ don't let first `map' source be non-flat (would break
tree top search)
+ on errors, also cite line numbers for easier makefile debugging
+ check and enforce destination files to fit in the 8+3 naming
scheme
+ document (mis)features of, and requirements for `URL' + small
clarifications
* external/patchup.prg
+ Added patch by Tamas Tevesz:
- if rediffing, patchup will now proceed even if there's no DIFF. this
helps when creating the very first diff.
- new file name defaults to $(component).dif
- if a rediff produces no result (no differences between upstream and
hb), no zero-length .dif will be written, and a possibly
pre-existing diff will be removed.
there's still some room for improvement for patchup to articulate what
it is doing, but hopefully not even the current one is confusing.
+ contrib/hbwin/hbwin.hbp
+ Added hbmk2 build file
* contrib/hbwin/legacycd.c
* contrib/hbwin/wapi_winbase.c
* contrib/hbwin/win_evnt.c
! Fixed msvc cast warnings (when building using hbmk2)
Two of them were long time notorious ones.
* external/png/Makefile
! Fixed one MAP entry. Patch by Tamas Tevesz.
* contrib/hbodbc/todbc.prg
! Attempt to fix sf.net bug #2984474.
- TODBC class seems to have a typo where ROUND() is called with
full number width instead of number of decimals in
in TODBC():LoadData() method
- Added SQL_BIGINT to list of numeric types when doing the
conversion in TODBC():LoadData() method.
; Please review me a test with real ODBC connection, these were
blind fixes, I'm not user of TODBC class.
* external/libhpdf/Makefile
- external/libhpdf/libhpdf.dif
* external/patchup.prg
+ Applied three patches sent to the list by Tamas Tevesz,
tweaking patchup tool and pcre metadata.
Pls check me, there was one hunk failure which I redid
manually.
+ external/patchup.prg
+ Added new 'patchup' Harbour script written by Tamas Tevesz.
The script serves as a tool to automate downloading,
file renaming, patching and recreating local .dif for
source packages we host locally in external directory.
The tool is also able to automatically recreate .dif file
after making local modifications in these sources,
don't forget to run 'hbrun patchup -rediff' in such case.
[ It replaces prev ren_sfn.prg tool created by me. ]
Please make sure to read the documentation and tool
requirements included in the .prg itself.
Very nice job, thanks a lot Tamas.
; TODO: Updating Makefiles with new metadata.
- config/ren_sfn.prg
- Deleted tool now superceded by patchup.prg
* config/win/pocc.mk
* config/win/pocc64.mk
! Fixed pocc64 build. The build setup was broken since
about 2.0.0beta2. One year without anyone noticing.
* src/rtl/hbsocket.c
! Readded once present (in old hbinet.c) ugly kludge for pocc64
to at least be able to build binaries instead of choking on a
missing Windows function. More in the source code.
Affecting both 5 and 6.
* external/zlib/Makefile
! Added ugly workaround to avoid quite strange pocc64 (both 5 and 6)
error when compiling crc32 for dynamic lib:
---
pocc.exe -I. -I../../../../../include -Ze -Go -MT -Tamd64-coff -Ot -DHB_LEGACY_TYPES_OFF -DUNICODE -Focrc32_dyn.obj -DHB_DYNLIB -DZLIB_DLL -c ../../../crc32.c
../../../crc32.c(209): error #3101: [asm] Invalid argument to 'GLOBAL'.
../../../crc32.c(209): error #3152: [asm] Expected ']'.
../../../crc32.c(209): error #3151: [asm] Syntax error.
../../../crc32.c(223): error #3101: [asm] Invalid argument to 'FUNCTION'.
../../../crc32.c(223): error #3152: [asm] Expected ']'.
../../../crc32.c(223): error #3151: [asm] Syntax error.
../../../crc32.c(223): error #3151: [asm] Syntax error.
---
* external/bzip2/Makefile
! Disabled for pocc64 (both 5 and 6), due to this error:
---
pocc.exe -I. -I../../../../../include -Ze -Go -MT -Tamd64-coff -Ot -DHB_LEGACY_TYPES_OFF -DUNICODE -Foblocksor.obj -c ../../../blocksor.c
../../../blocksor.c(583): error #3114: [asm] Invalid combination of opcode and operands.
---
* 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.
* 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.
* 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
* 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)
* 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.
* INSTALL
* external/sqlite3/Makefile
* utils/hbmk2/hbmk2.prg
* config/global.mk
* config/wce/msvcarm.mk
* config/win/msvc.mk
* Changed HB_COMPILER_VER values for msvc targets. Previously it was
the Visual Studio version, now it is the C compiler version,
the same value used in _MSC_VER predefined macro:
Name old NEW
-------------------------------------- ---- ----
C Compiler version 6.0 600
C/C++ compiler version 7.0 700
Visual C++, Windows, version 1.0 100 800
Visual C++, 32-bit, version 1.0 100 800
Visual C++, Windows, version 2.0 200 900
Visual C++, 32-bit, version 2.x 200 900
Visual C++, 32-bit, version 4.0 400 1000
Visual C++, 32-bit, version 5.0 500 1100
Visual C++, 32-bit, version 6.0 600 1200
Visual Studio .NET (2002), version 7.0 700 1300
Visual Studio .NET 2003, version 7.1 710 1310
Visual Studio 2005, version 8.0 800 1400
Visual Studio 2008, version 9.0 900 1500
Visual Studio 2010, version 10.0 1000 1600
INCOMPATIBLE for users setting HB_COMPILER_VER manually, pls
change the value as indicated above. For most users it's
recommended to rely on autodetection and not to set this
variable at all.
* config/postinst.prg
! Fixed to use hb_osFileMask() instead of hard-coded '*' mask.
* config/global.mk
* config/rules.mk
* external/pcre/Makefile
+ Added HB_CFLAGS_STA variable to hold C compiler options
passed solely when compiling for static lib.
* Change PCRE setup to use HB_CFLAGS_STA instead of -U
trick at the same time silencing msvc warning.
* config/global.mk
* config/rules.mk
+ Added HB_CFLAGS_DYN variable to pass lib specific options
specially directed to compilation phase when building
to create a .dll. Currently this affects pcre and zlib since
these are included in harbour .dll.
* external/libhpdf/Makefile
* external/pcre/Makefile
* external/png/Makefile
* external/zlib/Makefile
+ Configured HB_CFLAGS_DYN for these libs to properly create
exported symbols in harbour .dll. This was a problem so far
for any non-mingw made harbour .dll.
* harbour/external/minizip/ioapi.h
! fixed FreeBSD and HAIKU builds
* harbour/src/rtl/fserr.c
* added translation for EPERM
* harbour/include/Makefile
+ harbour/include/hbapicom.h
* harbour/src/rtl/Makefile
+ harbour/src/rtl/hbcom.c
+ added Harbour multiplatform serial port C API (hb_com*() functions).
implemented code for *nixes, MS-Windows and OS2. DOS is not supported
yet. Please make test on different platforms.
; few notes about this code:
termios (*nix) based builds:
- reading LSR is not supported
- duration in break signal is fixed (at least 0.25 seconds, and not
more that 0.5 seconds)
- DTR/DSR hardware flow control is not supported
- setting error character is not supported
- discard card is supported only on few platforms
- checking input/output flow state is not supported
- if some platforms do not support some termio extensions then
compile time warnings TODO_* should be generated.
MS-Windows builds:
- discard card is not supported
OS2 builds:
- checking for input flow state is not supported
- discard card is not supported
In all builds not all RS-232 hardware flags/state are available.
OS2 build supports most of them,
This code needs to be extensively tested. I wrote it without any
serious tests. Especially OS2 builds should be verified by OS2
users. I wrote this port using only documentation which OS2 API
available in the Internet.
DOS is not supported yet though it's possible to compile termio code
for *nixes with DJGPP. Anyhow it would be very nice if we can add
our own DOS serial port code. I would like to ask if any of you
has low level serial port code in C for DOS (i.e. used with Clipper)
and can send it to us so we can use it with Harbour. I have my
own serial port library for Clipper but it's written in assembler
and it's much wider then sth what we need so it cannot be easy
adopted for Harbour.
* harbour/contrib/hbct/Makefile
+ harbour/contrib/hbct/ctcom1.c
+ harbour/contrib/hbct/ctcom.ch
+ harbour/contrib/hbct/ctcom2.c
+ added CT3 compatible COM_*() functions.
+ added CT3 compatible XMOBLOCK(), XMOCHECK(), ZEROINSERT() and
ZEROREMOVE() functions.
+ added new CT COM function:
COM_DEVNAME( <nComPort> [, <cNewName> ] ) -> <cPrevName>
which can be used to specify device name for given port in modern
systems which do not give direct hardware access for the process.
; few notes about CT3 COM_*() functions in Harbour.
In COM_OPEN() only 1-st parameter is significant, input/output buffer
sizes and trap mode parameters are ignored. In modern OS-es such
functionality is controlled by OS and usually buffered read/write
is always enabled. The sizes of IO buffers can be used only as
suggested IO buffer size for OS in some systems. It's possible that
these additional parameters will be used in DOS builds in the future.
COM_READ() does not support 2-nd parameter <lNoDelete>. It can be
implemented but because we do not have direct access to OS buffers
then we will have to emulate it ourselves what is rather inefficient.
Anyhow I can implement it if users think it's critical.
In COM_CRC() I fixed few CT3 bugs so it's not bug compatible with CT3,
i.e. it works correctly for 8 bit and smaller polynomials instead of
returning 0 or supports much larger polynomials up to 64bits.
For 16/17 bit polynomials it gives the same results as CT3 so for most
common usage it should be binary compatible with CT3.
In ZEROREMOVE() I fixed decoding some wrong CCITT strings which does
not have trailing 0 so it returns empty string "" for such corrupted
data. If someone needs original CT3 behavior for some broken code then
is can be enabled by HB_CT3_ZEROREMOVE_BUG macro.
I haven't implemented few functions.
COM_GETIO(), COM_SETIO(), COM_GETIRQ(), COM_SETIRQ() are not portable
and can be implemented only for really few platforms, i.e. for DOS
when/if we add support for serial ports to Harbour DOS builds.
Similar functionality for all other platforms gives our new function
COM_DEVNAME().
COM_KEY(), COM_SKEY() and COM_EVENT() are also not implemented.
To make them well we should add support for asynchronous events to HVM
and such extension is still unavailable. Some simulation can be
implemented using idle tasks but this can be done also by final
Harbour users so I decided to not make it.
Please test it - I've never used CT3 COM_*() API with Clipper.
* harbour/contrib/hbct/dummy.c
* removed dummy CT3 serial communication functions
; such files with dummy functions introduces very serious problems for
user code because they do not respect original module granularity
effectively breaking overloading only chosen functions so it breaks
also some real Clipper code.
- 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.