* harbour/include/hbsetup.h
+ added HB_FORCEINLINE macro
* harbour/include/hbatomic.h
* use HB_FORCEINLINE instead of _HB_INLINE_
* harbour/src/vm/fm.c
* define for DLMALLOC FORCEINLINE macro as HB_FORCEINLINE
* harbour/src/vm/dlmalloc.c
* removed some cleanup in FORCEINLINE declaration and _HB_INLINE_
usage reducing number of local Harbour modifications.
* harbour/include/hbatomic.h
* removed unnecessary parenthesis
* renamed HB_SPINLOCK_INIT_R macro to HB_SPINLOCK_INITVAL_R
+ added HB_SPINLOCK_INIT_R(l) macro
* harbour/src/vm/fm.c
* harbour/src/vm/dlmalloc.c
+ updated to DLMALLOC 2.8.4
* added OS2 support from our previous DLMALLOC version
+ updated to use our own recursive locks when available
* disabled hack which breaks strict aliasing
! added some fixes to new DLMALLOC code
TODO: Test it with MSVC win and wince builds and add _MSC_VER
based protection for __forceinline usage (I do not know
in which MSVC version it was added).
Test it with OS2 GCC and OpenWatcom builds.
Test it Darwin and some other *nixes.
* harbour/contrib/sddfb/sddfb.c
! fixed missing reference operator in isc_detach_database()
! fixed NULL used to clear connection handles
* keep references to connection handlers passed to isc_*() functions
* minor formatting
* src/vm/dlmalloc.c
! Fixed two potentially uninitialized variables, signaled by MSVC.
* src/common/hbgete.c
+ Changed to use native SetEnvironmentVariable() API instead of
forced ANSI one.
* src/common/hbwince.c
* include/hbwince.h
% Deleted unused ANSI Windows API stubs.
+ Added empty SetEnvironmentVariable() stub for WinCE
builds where it's missing.
* Reconfigured these stubs:
SetCurrentDirectory()
GetCurrentDirectory()
GetComputerName()
GetUserName()
* config/win/global.mk
* Comment updated.
* config/win/msvc.mk
+ Added -nxcompat and -dynamicbase to .dll link command.
(I'm unsure what -dynamicbase is good for in a .dll, but it's
accepted and set)
! Fixed to add -nxcompat/-dynamicbase for MSVC 2008 and upper.
(it's also possible to use it with MSVS 2005 SP1 though, but
build won't detect this case)
* harbour/src/vm/dlmalloc.c
% use harbour spin locks if available by default in all builds
* harbour/include/hbatomic.h
* removed HB_SPINLOCK_SLEEP macro and enable code to always yield
the processor in spin locks
* cover double spin lock setting by HB_SPINLOCK_REPEAT
* harbour/src/vm/garbage.c
* removed unused HB_SPINLOCK_SLEEP macro
* harbour/include/hbstack.h
* harbour/src/vm/estack.c
+ added new internal function hb_stackAllocator()
* disable hb_stackTotalItems() stack macro so this function can be
used also in internal HVM code to check if stack is initialized
* harbour/src/vm/fm.c
! use hb_stackAllocator() to access pointer to DLMALLOC mspace
It should fix GPF when DLMT was used in OS2 builds - please test.
* harbour/src/vm/dlmalloc.c
* harbour/src/vm/hvmall.c
+ added support for DLMALLOC in OS/2 builds.
I would like to ask OS/2 users to make harbour OS/2 build tests
using WATCOM and GCC with HB_USER_CFLAGS=-DHB_FM_DL_ALLOC to
check if it works.
+ harbour/config/linux/clang.mk
+ added support for CLANG in LINUX builds
* harbour/include/hbatomic.h
+ added assembler code for SPINLOCKs in WATCOM x86 builds
* harbour/src/vm/fm.c
* enabled HB_FM_DLMT_ALLOC by default in MT HVM if HB_FM_DL_ALLOC is
also enabled
* harbour/src/vm/dlmalloc.c
* modifications for non MS-Windows WATCOM builds
TOFIX: now it compiles in Linux and OS2 builds but it still does not
work
* harbour/src/vm/dlmalloc.c
! removed hack with overlapped structures with small chunks to not
confuse C compilers which can make strict-aliasing optimizations
* harbour/src/vm/set.c
! removed old casting left by mistake in hb_conSetCursor() calls
* harbour/include/hbthread.h
* minor cleanup in comment
* harbour/src/vm/dlmalloc.c
* use harbour spinlocks in windows builds to eliminate calling
InterlockedCompareExchange[Pointer]() function
* harbour/include/hbstack.h
! disabled TLS ASM inline code which seems to not work with Win9x.
- source
+ src
* src/Makefile
* src/dynlib/mt/Makefile
* src/dynlib/Makefile
* INSTALL
* Makefile
* ChangeLog
* harbour.spec
* mpkg_tgz.sh
* Renamed 'source' dir to 'src' to move closer to other FOSS
projects. It's also easier to type, plus it has the side
effect that some cmdlines will be shorter in the
build process.