2006-11-29 16:11 UTC+0200 Chen Kedem <niki@actcom.co.il>
This commit is contained in:
@@ -8,6 +8,14 @@
|
||||
2002-12-01 13:30 UTC+0100 Foo Bar <foo.bar@foobar.org>
|
||||
*/
|
||||
|
||||
2006-11-29 16:11 UTC+0200 Chen Kedem <niki@actcom.co.il>
|
||||
* 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.
|
||||
|
||||
76
harbour/TODO
76
harbour/TODO
@@ -190,41 +190,6 @@ Status...: Open.
|
||||
|
||||
***
|
||||
|
||||
Assign to: <nobody>
|
||||
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: <nobody>
|
||||
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: <nobody>
|
||||
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: <nobody>
|
||||
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.
|
||||
|
||||
***
|
||||
|
||||
=======================================================================
|
||||
|
||||
@@ -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=
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
Reference in New Issue
Block a user