2009-08-22 16:22 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* source/pp/Makefile
! Fixed case when OBJ_DYN_POSTFIX was empty (all platforms
except win/wce non-gcc family) and hbpp object was deleted
twice, the second one resulting in error message.
! Deleted ineffective hack to add an empty line after pptable
rules. I turned out the behavior I was trying to fix with this
is totally random.
* source/pp/hbpp.c
! Disabled content when built in HB_DYNLIB. This file should
never go into a the Harbour dynamic library.
Of course we already have the object deletion trick, but,
at least on bcc it doesn't work reliably. After chasing this
for half a day it turns out bcc build with mingw32-make 3.81
has some sort of random behvior and sometimes hbpp_dyn.obj is
deleted, sometimes not. Also 'rm hbpp.obj' either appears at
the end of the make process, or not, I don't know if there is
any realtion between the two. Maybe we're exploiting some
make bugs with bcc rules, I don't know.
So this patch will make bcc dynamic lib creation reliable.
* config/global.mk
* Comments.
This commit is contained in:
@@ -17,6 +17,31 @@
|
||||
past entries belonging to author(s): Viktor Szakats.
|
||||
*/
|
||||
|
||||
2009-08-22 16:22 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
|
||||
* source/pp/Makefile
|
||||
! Fixed case when OBJ_DYN_POSTFIX was empty (all platforms
|
||||
except win/wce non-gcc family) and hbpp object was deleted
|
||||
twice, the second one resulting in error message.
|
||||
! Deleted ineffective hack to add an empty line after pptable
|
||||
rules. I turned out the behavior I was trying to fix with this
|
||||
is totally random.
|
||||
|
||||
* source/pp/hbpp.c
|
||||
! Disabled content when built in HB_DYNLIB. This file should
|
||||
never go into a the Harbour dynamic library.
|
||||
Of course we already have the object deletion trick, but,
|
||||
at least on bcc it doesn't work reliably. After chasing this
|
||||
for half a day it turns out bcc build with mingw32-make 3.81
|
||||
has some sort of random behvior and sometimes hbpp_dyn.obj is
|
||||
deleted, sometimes not. Also 'rm hbpp.obj' either appears at
|
||||
the end of the make process, or not, I don't know if there is
|
||||
any realtion between the two. Maybe we're exploiting some
|
||||
make bugs with bcc rules, I don't know.
|
||||
So this patch will make bcc dynamic lib creation reliable.
|
||||
|
||||
* config/global.mk
|
||||
* Comments.
|
||||
|
||||
2009-08-22 15:06 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
|
||||
* config/rules.mk
|
||||
! Deleted dynlib related rule causing problems in some situations
|
||||
|
||||
@@ -1065,9 +1065,11 @@ ifneq ($(HB_INSTALL_PREFIX),)
|
||||
endif
|
||||
endif
|
||||
|
||||
# Standard name: BINDIR
|
||||
ifeq ($(HB_BIN_INSTALL),)
|
||||
export HB_BIN_INSTALL := $(HB_INSTALL_PREFIX)$(DIRSEP)bin
|
||||
endif
|
||||
# Standard name: LIBDIR
|
||||
ifeq ($(HB_LIB_INSTALL),)
|
||||
export HB_LIB_INSTALL := $(HB_INSTALL_PREFIX)$(DIRSEP)lib$(LIBPOSTFIX)
|
||||
endif
|
||||
@@ -1078,11 +1080,13 @@ ifneq ($(HB_INSTALL_PREFIX),)
|
||||
export HB_DYN_INSTALL := $(HB_LIB_INSTALL)
|
||||
endif
|
||||
endif
|
||||
# Standard name: INCLUDEDIR
|
||||
ifeq ($(HB_INC_INSTALL),)
|
||||
ifneq ($(HB_INSTALL_PREFIX),$(HB_INSTALL_PREFIX_TOP))
|
||||
export HB_INC_INSTALL := $(HB_INSTALL_PREFIX)$(DIRSEP)include$(INCPOSTFIX)
|
||||
endif
|
||||
endif
|
||||
# Standard name: DOCDIR
|
||||
ifeq ($(HB_DOC_INSTALL),)
|
||||
# Don't set doc dir for *nix targets
|
||||
ifeq ($(HB_OS_UNIX),no)
|
||||
|
||||
@@ -34,8 +34,7 @@ vpath hbpp$(BIN_EXT) $(BIN_DIR)
|
||||
pptable.c : hbpp$(BIN_EXT)
|
||||
$(HB_HOST_BIN_DIR)/hbpp$(HB_HOST_BIN_EXT) $(TOP)$(ROOT)include/hbstdgen.ch -opptable.c -q -c$(TOP)$(ROOT) -v$(HB_VERHEADER)
|
||||
$(if $(wildcard hbpp$(OBJ_EXT)),-@$(RM) hbpp$(OBJ_EXT),)
|
||||
$(if $(wildcard hbpp$(OBJ_DYN_POSTFIX)$(OBJ_EXT)),-@$(RM) hbpp$(OBJ_DYN_POSTFIX)$(OBJ_EXT),)
|
||||
|
||||
$(if $(OBJ_DYN_POSTFIX),$(if $(wildcard hbpp$(OBJ_DYN_POSTFIX)$(OBJ_EXT)),-@$(RM) hbpp$(OBJ_DYN_POSTFIX)$(OBJ_EXT),),)
|
||||
|
||||
ifneq ($(HB_HOST_BUILD),lib)
|
||||
ifneq ($(HB_BIN_INSTALL),)
|
||||
|
||||
@@ -52,6 +52,8 @@
|
||||
*
|
||||
*/
|
||||
|
||||
#if ! defined( HB_DYNLIB )
|
||||
|
||||
#include "hbapi.h"
|
||||
|
||||
int hb_verSvnID( void ) { return 0; }
|
||||
@@ -827,3 +829,5 @@ int main( int argc, char * argv[] )
|
||||
#if defined( HB_OS_WIN_CE ) && !defined( __CEGCC__ )
|
||||
# include "hbwmain.c"
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user