BMK speed up has no effect on included source

Archives Forums/BlitzMax Bug Reports/BMK speed up has no effect on included source

Tommo(Posted 2009) [#1]
Assuming that
A.bmx INCLUDES A1.bmx
B.bmx IMPORTS A.bmx

If you make non-interface modification to A1.bmx, BMK fails to speed up, then B.bmx will get recompiled.
It's quite annoying when I have to tweak some basecode which uses Includes for cross-reference. The whole project have to get recompiled every time.

I checked bmk sources, found that
@bmk_make.bmx
@line: 318
If Not opt_all And FileType( i_path2 )=FILETYPE_FILE And src.time=FileTime( src.path )
...


Apparently, the last condition "src.time=FileTime(src.path)" will give false if you have only modified Include files, that's why BMK skips comparing .I and .I2 files in this case.

I removed this condition and it's working fine. But I'm not sure will there be any potential issue for this.

*EDIT* It's not actually working, a few more jobs need to be done. :(

*EDIT2* Add a new timestamp field to TFile seems working.

@Line 22
Type TFile

	Field path$, time
	field itime      'Added: timestamp for included files
.....
...
@Line:213
	If dep.time>src.time src.time=dep.time src.itime=dep.time

@Line:318
        If Not opt_all And FileType( i_path2 )=FILETYPE_FILE And (src.time=FileTime( src.path ) or src.time=src.itime)



*EDIT3* It can also affect Incbin, but no idea if this is safe. :(