cons-discuss
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

win32 weirdness


From: Kolarik, Tony
Subject: win32 weirdness
Date: Thu, 19 Oct 2000 11:46:37 -0400

I'm seeing strange behavior here and wonder if anyone can check this on
their NT systems.  

It seems that the microsoft developers studio text editor saves files
differently than my editor (or notepad) and things don't get rebuilt as a
result.  

With a generic editor I make a small change to a c file, save it, switch to
a dos box, cons rebuilds it, and looking at the linked directory I see a c
file that is identical to the src file, and the consign has changed.  NT has
3 ways of checking timestamps with the "dir" command, one shows Creation
(/C), one shows Last Access (/A),  and one shows Last Written (/W).  doing a
dir these three ways the times match in both dirs, all of them showing the
time the file was just edited and saved.

With MSDEV I make the same change to a c file, save it, switch to a dos box,
cons tells me its up to date, and looking at the link directory I see a c
file with a different size than that in the src dir, but the consign has not
changed.  
The Creation times of the two files now are different; the file in the
Linked dir shows the old (pre-edit) date (June 15th), the src dir file shows
the time that the file was just edited - not created.  The other two flags
show identical mod times, both of them being the NEW times.  Diffing the
files in the linked and src dirs, sure enough the Linked file doesn't have
my edits, whereas the file in the src dir does.

If I then do another file save from the msdev editor w/o editing
anything.... cons builds it!!!

I'd really appreciate any thoughts on this. I'm hoping this is something odd
about Link() that I can change within cons.  
Or maybe a perl bug that a different version will fix. Whatever it is its a
major problem because most of the developers here use msdev to edit.  Not
only do they have to get used to this new cons tool, but builds don't work
anymore!

Any ideas for narrowing the area of cons to debug would be a big help. 

I'm using cons 1.8 development build with Greg Spencer's win32 additions,
and ActiveState perl version 616 for NT.

I've included some stuff from my testing below.  Thanks a lot.
 -- Tony K.



unzip it and build from commandline...
consign says:
Hello.cxx:3f3753336b3b050641ed1db3c8d107f3


D:\tmp\cons-winnt>dir /T:C cmd\hello
06/05/00  12:38p                 4,876 Hello.cxx

D:\tmp\cons-winnt>dir /T:C build\debug\cmd\hello
10/19/00  10:01a                   664 .consign
06/05/00  12:38p                 4,876 Hello.cxx

D:\tmp\cons-winnt>

Edit with Hello.cxx with notepad Alt F S

D:\tmp\cons-winnt>perl cons build\debug\cmd\hello\Hello.obj
cl.exe /nologo /MDd /W3 /GR /GX /GZ /Od /Zi
/Fd"build\debug\cmd\hello\HelloPDB.pdb" /D "WIN32" /U "_WIN32_WINNT" /D "_WI
N32_WINNT=0x0400" /D "_DEBUG" /D "DEBUG" /D "_UNICODE" /D "UNICODE" /D
"_WINDOWS" /D "_AFXDLL" /Iexport\debug\include /c
 D:\tmp\cons-winnt\cmd\hello\Hello.cxx /Fobuild\debug\cmd\hello\
Hello.cxx

consign says
Hello.cxx:dd50f031f3784d6663c2a6e6e0236e5f


D:\tmp\cons-winnt>dir /T:C cmd\hello
06/05/00  12:38p                 4,887 Hello.cxx

D:\tmp\cons-winnt>dir /T:C build\debug\cmd\hello
10/19/00  10:05a                   664 .consign
06/05/00  12:38p                 4,887 Hello.cxx

D:\tmp\cons-winnt>dir /T:A cmd\hello
10/19/00  10:05a                 4,887 Hello.cxx

D:\tmp\cons-winnt>dir /T:A build\debug\cmd\hello
10/19/00  10:05a                   664 .consign
10/19/00  10:05a                 4,887 Hello.cxx

D:\tmp\cons-winnt>dir /T:W cmd\hello
10/19/00  10:05a                 4,887 Hello.cxx

D:\tmp\cons-winnt>dir /T:W build\debug\cmd\hello
10/19/00  10:05a                   664 .consign
10/19/00  10:05a                 4,887 Hello.cxx

D:\tmp\cons-winnt>

kill whole tree

unzip and build
D:\tmp\cons-winnt>perl cons .


D:\tmp\cons-winnt>msdev

Edit Hello.cxx in MSDEV, Alt F S

D:\tmp\cons-winnt>perl cons build\debug\cmd\hello\Hello.obj
cons: "build\debug\cmd\hello\Hello.obj" is up-to-date.

D:\tmp\cons-winnt>dir /T:C cmd\hello
10/19/00  10:15a                 4,887 Hello.cxx

D:\tmp\cons-winnt>dir /T:C build\debug\cmd\hello
10/19/00  10:16a                   664 .consign
06/05/00  12:38p                 4,876 Hello.cxx

D:\tmp\cons-winnt>dir /T:A cmd\hello
10/19/00  10:15a                 4,887 Hello.cxx

D:\tmp\cons-winnt>dir /T:A build\debug\cmd\hello
10/19/00  10:16a                   664 .consign
10/19/00  10:15a                 4,876 Hello.cxx

D:\tmp\cons-winnt>dir /T:W cmd\hello
10/19/00  10:15a                 4,887 Hello.cxx

D:\tmp\cons-winnt>dir /T:W build\debug\cmd\hello
10/19/00  10:16a                   664 .consign
10/19/00  10:15a                 4,876 Hello.cxx

D:\tmp\cons-winnt>

Shut down MSDEV



D:\tmp\cons-winnt>dir /T:C cmd\hello
10/19/00  10:15a                 4,887 Hello.cxx

D:\tmp\cons-winnt>dir /T:C build\debug\cmd\hello
10/19/00  10:16a                   664 .consign
06/05/00  12:38p                 4,876 Hello.cxx

D:\tmp\cons-winnt>dir /T:A cmd\hello
10/19/00  10:15a                 4,887 Hello.cxx

D:\tmp\cons-winnt>dir /T:A build\debug\cmd\hello
10/19/00  10:16a                   664 .consign
10/19/00  10:15a                 4,876 Hello.cxx

D:\tmp\cons-winnt>dir /T:W cmd\hello
10/19/00  10:15a                 4,887 Hello.cxx

D:\tmp\cons-winnt>dir /T:W build\debug\cmd\hello
10/19/00  10:16a                   664 .consign
10/19/00  10:15a                 4,876 Hello.cxx



D:\tmp\cons-winnt>perl cons build\debug\cmd\hello\Hello.obj
cons: "build\debug\cmd\hello\Hello.obj" is up-to-date.


cmd\Hello\Hello.cxx line:
        LoadString(true ? hInstance : 0, IDS_APP_TITLE, szTitle,
MAX_LOADSTRING);
        
build\debug\cmd\hello
        LoadString(hInstance, IDS_APP_TITLE, szTitle, MAX_LOADSTRING);





reply via email to

[Prev in Thread] Current Thread [Next in Thread]