From 6c2a6995cb9f729a5bcdd72f6a64237f8873398d Mon Sep 17 00:00:00 2001 From: Chen Kedem Date: Wed, 29 Nov 2006 14:10:53 +0000 Subject: [PATCH] 2006-11-29 16:11 UTC+0200 Chen Kedem --- harbour/ChangeLog | 8 +++++ harbour/TODO | 76 -------------------------------------------- harbour/make_b32.bat | 9 ++++++ harbour/makefile.bc | 32 ++++++++++--------- 4 files changed, 34 insertions(+), 91 deletions(-) diff --git a/harbour/ChangeLog b/harbour/ChangeLog index f4b33fad32..24ced06e3d 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -8,6 +8,14 @@ 2002-12-01 13:30 UTC+0100 Foo Bar */ +2006-11-29 16:11 UTC+0200 Chen Kedem + * makefile.bc + * make_b32.bat + ! Fixed the COPY command to work on Windows-NT (/Y flag isn't supported) + + * TODO + - Remove TOFIX item with were fixed + 2006-11-29 10:30 UTC+0100 J. Lefebvre (jfl/at/mafact.com) * harbour/makefile.vc * Sync. with makefile.bc for msvc compiler. diff --git a/harbour/TODO b/harbour/TODO index 674cace338..fd64531e1a 100644 --- a/harbour/TODO +++ b/harbour/TODO @@ -190,41 +190,6 @@ Status...: Open. *** -Assign to: -Detail...: An error in the evaluated macro cause memory leak. - - --tt2.prg-- - func test - local x := "user input" // this is junk - local y - errorblock({|e|break(e)}) - begin sequence - y := &x - end - return nil - ----------- - - bld_b32 tt2 /w/a/n - tt2 - - the program runs, and on exit it gives following CodeGuard - warning: - ,- - | Resource leak: The memory block was never freed - | The memory block [size: 10 bytes] was allocated with malloc - | NOTE: Ask me if you need the exact call tree. [Chen] - `- - This is simpler example of the same problem: - - --tt2b.prg-- - proc test - ? type("user input") - return - -Status...: Open. - -*** - Assign to: Detail...: The Borland CodeGuard warn about Access overrun in some of the console IO functions, it appears to be a fault in @@ -244,45 +209,4 @@ Status...: Open. *** -Assign to: -Detail...: Access in freed memory compiling a macro array item. - - --tt23.prg-- - proc Main() - LOCAL GetList := {} - PRIVATE cMacro := "cEarly", cEarly := {"Early"} - @ 12,10 GET &cMacro[1] - READ - RETURN - ------------ - - When compiling, Harbour gives the following CodeGuard warning: - ,- - | Access in freed memory: Attempt to access 2 byte(s) at NNNNNNNN+32 - | The memory block [size: 40 bytes] was allocated with malloc - | NOTE: Ask me if you need the exact call tree. [Chen] - `- - -Status...: Open. - -*** - -Assign to: -Detail...: Resource leak while compiling the following: - - --tt25.prg-- - FUNCTION ()x - ------------ - - When compiling, Harbour gives the following CodeGuard warning: - ,- - | Resource leak: The memory block was never freed - | The memory block [size: 40 bytes] was allocated with malloc - | NOTE: Ask me if you need the exact call tree. [Chen] - `- - -Status...: Open. - -*** - ======================================================================= diff --git a/harbour/make_b32.bat b/harbour/make_b32.bat index c8131c1f53..e9861b8e98 100644 --- a/harbour/make_b32.bat +++ b/harbour/make_b32.bat @@ -15,12 +15,18 @@ rem set HB_BUILD_MODE=P rem set HB_BUILD_DLL=yes rem set HB_BUILD_DEBUG=yes rem set HB_BUILD_VERBOSE=yes +rem set HB_REBUILD_PARSER=yes rem set HB_MAKE_PROGRAM= rem set HB_MAKE_FLAGS= rem --------------------------------------------------------------- if "%HB_MAKE_PROGRAM%" == "" set HB_MAKE_PROGRAM=make.exe +rem Save the user value, force silent file overwrite with COPY +rem (not all Windows versions support the COPY /Y flag) +set HB_ORGENV_COPYCMD=%COPYCMD% +set COPYCMD=/Y + rem --------------------------------------------------------------- if "%1" == "clean" goto CLEAN @@ -71,3 +77,6 @@ rem --------------------------------------------------------------- rem --------------------------------------------------------------- :EXIT +rem Restore user value +set COPYCMD=%HB_ORGENV_COPYCMD% +set HB_ORGENV_COPYCMD= diff --git a/harbour/makefile.bc b/harbour/makefile.bc index e24f2f5f52..e9fd0db2ee 100644 --- a/harbour/makefile.bc +++ b/harbour/makefile.bc @@ -36,6 +36,8 @@ # dll in addition to normal static build # HB_BUILD_DEBUG - If set to yes causes to compile with debug info # HB_BUILD_VERBOSE - enables echoing commands being executed +# HB_REBUILD_PARSER - If set to yes force preprocessing new rules by +# bison (you must use bison 2.3 or later) # BCCDLL_WITH_DYNRT - If set to -tWR causes that harbour-bc.dll # will use dynamic runtime library (recommended) # HB_INSTALL_PREFIX - Path to instalation directory into which @@ -266,14 +268,14 @@ Install : doInstall INSTALL : doInstall doInstall: $(HB_BIN_INSTALL) $(HB_LIB_INSTALL) $(HB_INC_INSTALL) - -if exist $(HB_BIN_INSTALL)\nul if exist $(BIN_DIR)\*.exe copy /B /Y $(BIN_DIR)\*.exe $(HB_BIN_INSTALL) > inst_$(CC_DIRNAME).log - -if exist $(HB_BIN_INSTALL)\nul if exist $(BIN_DIR)\*.dll copy /B /Y $(BIN_DIR)\*.dll $(HB_BIN_INSTALL) >> inst_$(CC_DIRNAME).log - -if exist $(HB_LIB_INSTALL)\nul if exist $(BIN_DIR)\*.lib copy /B /Y $(BIN_DIR)\*.lib $(HB_LIB_INSTALL) >> inst_$(CC_DIRNAME).log - -if exist $(HB_LIB_INSTALL)\nul if exist $(LIB_DIR)\*.lib copy /B /Y $(LIB_DIR)\*.lib $(HB_LIB_INSTALL) >> inst_$(CC_DIRNAME).log + -if exist $(HB_BIN_INSTALL)\nul if exist $(BIN_DIR)\*.exe copy /B $(BIN_DIR)\*.exe $(HB_BIN_INSTALL) > inst_$(CC_DIRNAME).log + -if exist $(HB_BIN_INSTALL)\nul if exist $(BIN_DIR)\*.dll copy /B $(BIN_DIR)\*.dll $(HB_BIN_INSTALL) >> inst_$(CC_DIRNAME).log + -if exist $(HB_LIB_INSTALL)\nul if exist $(BIN_DIR)\*.lib copy /B $(BIN_DIR)\*.lib $(HB_LIB_INSTALL) >> inst_$(CC_DIRNAME).log + -if exist $(HB_LIB_INSTALL)\nul if exist $(LIB_DIR)\*.lib copy /B $(LIB_DIR)\*.lib $(HB_LIB_INSTALL) >> inst_$(CC_DIRNAME).log !if "$(HB_INSTALL_PREFIX)" != "." - -if exist $(HB_INC_INSTALL)\nul copy /A /Y include\*.api $(HB_INC_INSTALL) >> inst_$(CC_DIRNAME).log - -if exist $(HB_INC_INSTALL)\nul copy /A /Y include\*.ch $(HB_INC_INSTALL) >> inst_$(CC_DIRNAME).log - -if exist $(HB_INC_INSTALL)\nul copy /A /Y include\*.h $(HB_INC_INSTALL) >> inst_$(CC_DIRNAME).log + -if exist $(HB_INC_INSTALL)\nul copy /A include\*.api $(HB_INC_INSTALL) >> inst_$(CC_DIRNAME).log + -if exist $(HB_INC_INSTALL)\nul copy /A include\*.ch $(HB_INC_INSTALL) >> inst_$(CC_DIRNAME).log + -if exist $(HB_INC_INSTALL)\nul copy /A include\*.h $(HB_INC_INSTALL) >> inst_$(CC_DIRNAME).log !endif #********************************************************** @@ -639,12 +641,12 @@ $(OBJ_DIR)\harboury.c : $(HARBOUR_DIR)\harbour.y !else $(OBJ_DIR)\macroy.c : $(MACRO_DIR)\macro.yyc - copy /A /Y $** $@ >> inst_$(CC_DIRNAME).log - copy /A /Y $(**:.yyc=.yyh) $(@:.c=.h) >> inst_$(CC_DIRNAME).log + copy /A $** $@ + copy /A $(**:.yyc=.yyh) $(@:.c=.h) $(OBJ_DIR)\harboury.c : $(HARBOUR_DIR)\harbour.yyc - copy /A /Y $** $@ >> inst_$(CC_DIRNAME).log - copy /A /Y $(**:.yyc=.yyh) $(@:.c=.h) >> inst_$(CC_DIRNAME).log + copy /A $** $@ + copy /A $(**:.yyc=.yyh) $(@:.c=.h) !endif @@ -683,12 +685,12 @@ $(DLL_OBJ_DIR)\harboury.c : $(HARBOUR_DIR)\harbour.y !else $(DLL_OBJ_DIR)\macroy.c : $(MACRO_DIR)\macro.yyc - copy /A /Y $** $@ >> inst_$(CC_DIRNAME).log - copy /A /Y $(**:.yyc=.yyh) $(@:.c=.h) >> inst_$(CC_DIRNAME).log + copy /A $** $@ + copy /A $(**:.yyc=.yyh) $(@:.c=.h) $(DLL_OBJ_DIR)\harboury.c : $(HARBOUR_DIR)\harbour.yyc - copy /A /Y $** $@ >> inst_$(CC_DIRNAME).log - copy /A /Y $(**:.yyc=.yyh) $(@:.c=.h) >> inst_$(CC_DIRNAME).log + copy /A $** $@ + copy /A $(**:.yyc=.yyh) $(@:.c=.h) !endif