diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 119f40eede..251801c802 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -16,6 +16,11 @@ The license applies to all entries newer than 2009-04-28. */ +2012-02-07 22:47 UTC+0100 Viktor Szakats (harbour syenar.net) + * contrib/hbmlzo/3rd/minilzo/minilzo.hbp + * contrib/hbmlzo/3rd/minilzo/* + * 2.05 -> 2.06 (using hb3rdpat) + 2012-02-07 22:42 UTC+0100 Viktor Szakats (harbour syenar.net) * contrib/3rd/sqlite3/sqlite3.dif - deleted hunk fixed upstream diff --git a/harbour/contrib/hbmlzo/3rd/minilzo/README.LZO b/harbour/contrib/hbmlzo/3rd/minilzo/README.LZO index c0bf7eee8c..058eace70a 100644 --- a/harbour/contrib/hbmlzo/3rd/minilzo/README.LZO +++ b/harbour/contrib/hbmlzo/3rd/minilzo/README.LZO @@ -6,8 +6,8 @@ Author : Markus Franz Xaver Johannes Oberhumer http://www.oberhumer.com/opensource/lzo/ - Version : 2.05 - Date : 23 Apr 2011 + Version : 2.06 + Date : 12 Aug 2011 I've created miniLZO for projects where it is inconvenient to include (or require) the full LZO source code just because you diff --git a/harbour/contrib/hbmlzo/3rd/minilzo/lzoconf.h b/harbour/contrib/hbmlzo/3rd/minilzo/lzoconf.h index 1d0fe14fcd..23c6ca93fc 100644 --- a/harbour/contrib/hbmlzo/3rd/minilzo/lzoconf.h +++ b/harbour/contrib/hbmlzo/3rd/minilzo/lzoconf.h @@ -44,9 +44,9 @@ #ifndef __LZOCONF_H_INCLUDED #define __LZOCONF_H_INCLUDED 1 -#define LZO_VERSION 0x2050 -#define LZO_VERSION_STRING "2.05" -#define LZO_VERSION_DATE "Apr 23 2011" +#define LZO_VERSION 0x2060 +#define LZO_VERSION_STRING "2.06" +#define LZO_VERSION_DATE "Aug 12 2011" /* internal Autoconf configuration file - only used when building LZO */ #if defined(LZO_HAVE_CONFIG_H) diff --git a/harbour/contrib/hbmlzo/3rd/minilzo/minilzo.c b/harbour/contrib/hbmlzo/3rd/minilzo/minilzo.c index 25a1f68b3b..34ce0f090b 100644 --- a/harbour/contrib/hbmlzo/3rd/minilzo/minilzo.c +++ b/harbour/contrib/hbmlzo/3rd/minilzo/minilzo.c @@ -1874,7 +1874,7 @@ extern "C" { #undef LZO_HAVE_CONFIG_H #include "minilzo.h" -#if !defined(MINILZO_VERSION) || (MINILZO_VERSION != 0x2050) +#if !defined(MINILZO_VERSION) || (MINILZO_VERSION != 0x2060) # error "version mismatch in miniLZO source files" #endif @@ -2561,10 +2561,8 @@ LZOLIB_PUBLIC(lzo_hvoid_p, lzo_hmemset) (lzo_hvoid_p s, int c, lzo_hsize_t len) #endif #undef ACCCHK_ASSERT -#if 0 #define WANT_lzo_bitops_clz32 1 #define WANT_lzo_bitops_clz64 1 -#endif #define WANT_lzo_bitops_ctz32 1 #define WANT_lzo_bitops_ctz64 1 @@ -2611,7 +2609,7 @@ static __lzo_inline unsigned lzo_bitops_ctz64(lzo_uint64 v) #define lzo_bitops_ctz64 lzo_bitops_ctz64 #endif -#elif (LZO_CC_CLANG || (LZO_CC_GNUC >= 0x030400ul) || (LZO_CC_INTELC && (__INTEL_COMPILER >= 1000)) || LZO_CC_LLVM) +#elif (LZO_CC_CLANG || (LZO_CC_GNUC >= 0x030400ul) || (LZO_CC_INTELC && (__INTEL_COMPILER >= 1000)) || (LZO_CC_LLVM && (!defined(__llvm_tools_version__) || (__llvm_tools_version__+0 >= 0x010500ul)))) #if !defined(lzo_bitops_clz32) && defined(WANT_lzo_bitops_clz32) #define lzo_bitops_clz32(v) ((unsigned) __builtin_clz(v)) #endif @@ -2688,25 +2686,25 @@ _lzo_config_check(void) #endif #if defined(lzo_bitops_clz32) { unsigned i; lzo_uint32 v = 1; - for (i = 0; i < 31; i++, v <<= 1) + for (i = 0; i < 32; i++, v <<= 1) r &= lzo_bitops_clz32(v) == 31 - i; } #endif #if defined(lzo_bitops_clz64) { unsigned i; lzo_uint64 v = 1; - for (i = 0; i < 63; i++, v <<= 1) + for (i = 0; i < 64; i++, v <<= 1) r &= lzo_bitops_clz64(v) == 63 - i; } #endif #if defined(lzo_bitops_ctz32) { unsigned i; lzo_uint32 v = 1; - for (i = 0; i < 31; i++, v <<= 1) + for (i = 0; i < 32; i++, v <<= 1) r &= lzo_bitops_ctz32(v) == i; } #endif #if defined(lzo_bitops_ctz64) { unsigned i; lzo_uint64 v = 1; - for (i = 0; i < 63; i++, v <<= 1) + for (i = 0; i < 64; i++, v <<= 1) r &= lzo_bitops_ctz64(v) == i; } #endif @@ -3091,9 +3089,13 @@ DVAL_ASSERT(lzo_xint dv, const lzo_bytep p) # define do_compress LZO_CPP_ECONCAT2(DO_COMPRESS,_core) #endif -#if defined(UA_GET64) +#if defined(UA_GET64) && (LZO_ABI_BIG_ENDIAN) +# define WANT_lzo_bitops_clz64 1 +#elif defined(UA_GET64) && (LZO_ABI_LITTLE_ENDIAN) # define WANT_lzo_bitops_ctz64 1 -#elif defined(UA_GET32) +#elif defined(UA_GET32) && (LZO_ABI_BIG_ENDIAN) +# define WANT_lzo_bitops_clz32 1 +#elif defined(UA_GET32) && (LZO_ABI_LITTLE_ENDIAN) # define WANT_lzo_bitops_ctz32 1 #endif @@ -3140,7 +3142,7 @@ static __lzo_inline unsigned lzo_bitops_ctz64(lzo_uint64 v) #define lzo_bitops_ctz64 lzo_bitops_ctz64 #endif -#elif (LZO_CC_CLANG || (LZO_CC_GNUC >= 0x030400ul) || (LZO_CC_INTELC && (__INTEL_COMPILER >= 1000)) || LZO_CC_LLVM) +#elif (LZO_CC_CLANG || (LZO_CC_GNUC >= 0x030400ul) || (LZO_CC_INTELC && (__INTEL_COMPILER >= 1000)) || (LZO_CC_LLVM && (!defined(__llvm_tools_version__) || (__llvm_tools_version__+0 >= 0x010500ul)))) #if !defined(lzo_bitops_clz32) && defined(WANT_lzo_bitops_clz32) #define lzo_bitops_clz32(v) ((unsigned) __builtin_clz(v)) #endif @@ -3175,7 +3177,7 @@ do_compress ( const lzo_bytep in , lzo_uint in_len, op = out; ip = in; - ii = ip - ti; + ii = ip; ip += ti < 4 ? 4 - ti : 0; for (;;) @@ -3237,6 +3239,7 @@ next: } #endif + ii -= ti; ti = 0; { register lzo_uint t = pd(ip,ii); if (t != 0) @@ -3318,7 +3321,14 @@ next: goto m_len_done; } while (v == 0); } -#if (LZO_ABI_LITTLE_ENDIAN) && defined(lzo_bitops_ctz64) +#if (LZO_ABI_BIG_ENDIAN) && defined(lzo_bitops_clz64) + m_len += lzo_bitops_clz64(v) / CHAR_BIT; +#elif (LZO_ABI_BIG_ENDIAN) + if ((v >> (64 - CHAR_BIT)) == 0) do { + v <<= CHAR_BIT; + m_len += 1; + } while ((v >> (64 - CHAR_BIT)) == 0); +#elif (LZO_ABI_LITTLE_ENDIAN) && defined(lzo_bitops_ctz64) m_len += lzo_bitops_ctz64(v) / CHAR_BIT; #elif (LZO_ABI_LITTLE_ENDIAN) if ((v & UCHAR_MAX) == 0) do { @@ -3341,7 +3351,14 @@ next: goto m_len_done; } while (v == 0); } -#if (LZO_ABI_LITTLE_ENDIAN) && defined(lzo_bitops_ctz32) +#if (LZO_ABI_BIG_ENDIAN) && defined(lzo_bitops_clz32) + m_len += lzo_bitops_clz32(v) / CHAR_BIT; +#elif (LZO_ABI_BIG_ENDIAN) + if ((v >> (32 - CHAR_BIT)) == 0) do { + v <<= CHAR_BIT; + m_len += 1; + } while ((v >> (32 - CHAR_BIT)) == 0); +#elif (LZO_ABI_LITTLE_ENDIAN) && defined(lzo_bitops_ctz32) m_len += lzo_bitops_ctz32(v) / CHAR_BIT; #elif (LZO_ABI_LITTLE_ENDIAN) if ((v & UCHAR_MAX) == 0) do { @@ -3428,7 +3445,7 @@ m_len_done: } *out_len = pd(op, out); - return pd(in_end,ii); + return pd(in_end,ii-ti); } LZO_PUBLIC(int) diff --git a/harbour/contrib/hbmlzo/3rd/minilzo/minilzo.h b/harbour/contrib/hbmlzo/3rd/minilzo/minilzo.h index 74fefa9fe2..4c7b237849 100644 --- a/harbour/contrib/hbmlzo/3rd/minilzo/minilzo.h +++ b/harbour/contrib/hbmlzo/3rd/minilzo/minilzo.h @@ -50,7 +50,7 @@ #ifndef __MINILZO_H #define __MINILZO_H 1 -#define MINILZO_VERSION 0x2050 +#define MINILZO_VERSION 0x2060 #ifdef __LZOCONF_H # error "you cannot use both LZO and miniLZO" diff --git a/harbour/contrib/hbmlzo/3rd/minilzo/minilzo.hbp b/harbour/contrib/hbmlzo/3rd/minilzo/minilzo.hbp index a4b8849eda..a29d4382b9 100644 --- a/harbour/contrib/hbmlzo/3rd/minilzo/minilzo.hbp +++ b/harbour/contrib/hbmlzo/3rd/minilzo/minilzo.hbp @@ -13,8 +13,8 @@ minilzo.c # ORIGIN http://www.oberhumer.com/opensource/lzo/ -# VER 2.05 -# URL http://www.oberhumer.com/opensource/lzo/download/minilzo-2.05.tar.gz +# VER 2.06 +# URL http://www.oberhumer.com/opensource/lzo/download/minilzo-2.06.tar.gz # DIFF # # MAP COPYING