diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 68e7e9e40c..b56296407d 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -8,6 +8,19 @@ 2008-12-31 13:59 UTC+0100 Foo Bar (foo.bar foobar.org) */ +2009-01-26 16:53 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/config/darwin/gcc.cf + ! changed CCACHE to HB_CCACHE + * harbour/include/hbatomic.h + ! removed unnecessary volatile casting in Darwin atomic function + parameters + * harbour/source/compiler/harbour.y + ! cleaned one untyped expression assign + (by Phil Krylov borrowed from xHarbour) + + * harbour/bin/hb-func.sh + * updated contrib library last + 2009-01-26 13:11 UTC+0100 Francesco Saverio Giudice (info/at/fsgiudice.com) * harbour/source/rdd/usrrdd/rdds/logrdd.prg * changed REQUEST to DYNAMIC HB_LOGRDDINHERIT diff --git a/harbour/bin/hb-func.sh b/harbour/bin/hb-func.sh index de70d71911..ea66b82582 100755 --- a/harbour/bin/hb-func.sh +++ b/harbour/bin/hb-func.sh @@ -99,7 +99,8 @@ mk_hbgetlibsctb() then libs="$libs gtwin" fi - echo "$libs rddads hbct hbnf hbmzip hbtip xhb hbgd rddsql sddfb sddmy sddpg hbodbc hbpg hbmysql rddado hbwin gtwvg $HB_USR_LIBS" + echo "$libs hbct hbnf hbmzip hbcrypt hbtip xhb hbgd hbfimage rddsql sddfb sddmy sddpg hbodbc hbpgsql hbmysql hbfbird rddads rddado hbhpdf hbvpdf hbcurl hbwin gtwvg hbgtalleg hbsqlit3 hbbtree $HB_USR_LIBS" + #"hbgf hbgt hbbmcdx hbmisc hbole hbtpathy hbwhat hbziparc hbmsql" else echo "$@" fi diff --git a/harbour/config/darwin/gcc.cf b/harbour/config/darwin/gcc.cf index 3088776553..5dc90dbe7b 100644 --- a/harbour/config/darwin/gcc.cf +++ b/harbour/config/darwin/gcc.cf @@ -4,21 +4,29 @@ include $(TOP)$(ROOT)config/$(HB_ARCHITECTURE)/global.cf +ifeq ($(HB_COMPILER),gpp) + HB_CMP = g++ +else + # intentionally used 'cc' instead of 'gcc' - I'm not an Darwin user + # but the system where I was testing it has GCC 2.95 named 'cc' + HB_CMP = cc +endif + OBJ_EXT = .o EXE_EXT = LIB_PREF = lib LIB_EXT = .a -# intentionally used 'cc' instead of 'gcc' - I'm not an Darwin user -# but the system where I was testing it has GCC 2.95 named 'cc' -CC = $(CCACHE) cc +CC = $(HB_CCACHE) $(HB_CMP) CC_IN = -c # NOTE: The ending space after -o is important, please preserve it. # Now solved with '$(subst x,x, )' expression. CC_OUT = -o$(subst x,x, ) +CPPFLAGS = -I. -I$(HB_INC_COMPILE) + # -no-cpp-precomp prevents from using buggy precompiled headers -CPPFLAGS = -no-cpp-precomp -I. -I$(HB_INC_COMPILE) +CPPFLAGS += -no-cpp-precomp # -fno-common enables building .dylib files CFLAGS = -fno-common -Wall -W -O3 diff --git a/harbour/include/hbatomic.h b/harbour/include/hbatomic.h index 79f14d14d0..9ad8c2d581 100644 --- a/harbour/include/hbatomic.h +++ b/harbour/include/hbatomic.h @@ -308,13 +308,13 @@ HB_EXTERN_BEGIN # undef HB_ATOM_GET # undef HB_ATOM_SET # if HB_COUNTER_SIZE == 8 -# define HB_ATOM_INC( p ) (OSAtomicIncrement64((volatile int64_t *)(p))) -# define HB_ATOM_DEC( p ) (OSAtomicDecrement64((volatile int64_t *)(p))) +# define HB_ATOM_INC( p ) (OSAtomicIncrement64((int64_t *)(p))) +# define HB_ATOM_DEC( p ) (OSAtomicDecrement64((int64_t *)(p))) # define HB_ATOM_GET( p ) (*(int64_t volatile *)(p)) # define HB_ATOM_SET( p, n ) do { *((int64_t volatile *)(p)) = (n); } while(0) # else -# define HB_ATOM_INC( p ) (OSAtomicIncrement32((volatile int32_t *)(p))) -# define HB_ATOM_DEC( p ) (OSAtomicDecrement32((volatile int32_t *)(p))) +# define HB_ATOM_INC( p ) (OSAtomicIncrement32((int32_t *)(p))) +# define HB_ATOM_DEC( p ) (OSAtomicDecrement32((int32_t *)(p))) # define HB_ATOM_GET( p ) (*(volatile int32_t *)(p)) # define HB_ATOM_SET( p, n ) do { *((volatile int32_t *)(p)) = (n); } while(0) # endif diff --git a/harbour/source/compiler/harbour.y b/harbour/source/compiler/harbour.y index b885924693..051c98740b 100644 --- a/harbour/source/compiler/harbour.y +++ b/harbour/source/compiler/harbour.y @@ -1390,7 +1390,7 @@ IfEndif : IfBegin EndIf { hb_compGenJumpHere( $1, HB_COMP_ IfBegin : IF ExpList { ++HB_COMP_PARAM->functions.pLast->wIfCounter; hb_compLinePushIfInside( HB_COMP_PARAM ); } Crlf - { HB_COMP_EXPR_DELETE( hb_compExprGenPush( $2, HB_COMP_PARAM ) ); $$ = hb_compGenJumpFalse( 0, HB_COMP_PARAM ); } + { HB_COMP_EXPR_DELETE( hb_compExprGenPush( $2, HB_COMP_PARAM ) ); $$ = hb_compGenJumpFalse( 0, HB_COMP_PARAM ); } EmptyStats { $$ = hb_compGenJump( 0, HB_COMP_PARAM ); hb_compGenJumpHere( $5, HB_COMP_PARAM ); } ;