I have almost a dozen projects that I am using DDKBUILD to build drivers.
The XP and NT4 versions plunk along fine for either checked or free builds.
However … 2000 ALWAYS fails on the release builds with each source compile
failing to find \WinDdk\2600\public\sdk\inc\warning.h.
This is incredibaly silly but I ain’t seeing what I should be seeing. If
things compile and build fine under CHECKED why would a FREE build fail
because it can’t find warning.h? The path is indeed incredibly silly, but
who the *** is setting that path? It is NOT in the sources and I do NOT find
it anyware in the DDKBUILD.BAT that I downloaded from OSR today.
Just in case … here is a sources file that is used to build both 2000 and
XP binaries:
TARGETNAME=PeerToPeer
TARGETPATH=obj
TARGETTYPE=DRIVER
INCLUDES=.;…;\projects\windows\include;\projects\windows\fcapi;
USER_C_FLAGS=/DISP2200
MSC_WARNING_LEVEL= /W3 /WX
SOURCES=\
…\FgErrors.rc \
…\Control.cpp \
…\DevQueue.cpp \
…\ReadWrite.cpp \
…\RemoveLock.cpp \
…\stddcls.cpp \
DriverEntry.cpp \
Platform.cpp \
PlugPlay.cpp \
Power.cpp \
Wmi.cpp
NTTARGETFILE0=FgErrors.h
LINKER_FLAGS=-MAP:$(TARGETNAME).map
BROWSER_INFO=TRUE
UMTYPE=nt
–
Gary G. Little
Have Computer, Will Travel …
909-698-3191
909-551-2105
(Pay attention OSR and Roddy, because this fails in both DDKBUILD files.)
Ok, boys and girls, it ain’t the sources file that is causing the problem.
I do believe the problem is buried deep in the heart of
\winddk\2600\bin\w2k\set2k.bat. I am currently performing cardiac surgery
to fix it.
When I use OSRs file and do “DDKBUILD -WXP2K free . /a”, with
W2KBASE=D:\WinDDK\2600 I get the following:
------------------------------------
snip ---------------------------------------
OSR DDKBUILD.BAT V5.2 - OSR, Open Systems Resources, Inc.
W2K 32 BIT BUILD using WXP DDK
usage: setenv [free|checked]
Example: setenv d:\ddk checked set checked environment
Example: setenv d:\ddk defaults to free environment
------------------------------------ end
snip ---------------------------------------
The first two lines are simply brag-banner lines. However, note that the
call to set2k.bat failed. It doesn’t when doing a checked build.
<yuck … deeper still arms up to the elbows>
Aaaaaahhh haaaa! … there’s the pulsating putresence that is causing the
problem. DDKBUILD sets mode to “fre” and then does a “call
%BASEDIR%\bin\w2k\set2k.bat %BASEDIR% %mode%” Unforutnately, set2k.bat does
NOT understand “fre”. It wants to see FREE or free. “fre” causes it to
output the error lines but DDKBUILD does NOT then abort. It merrily
continues on, setting up a bogus environment and calling BUILD which then
embarrases itself.
Damn, am I the first sucker that has tried to build NT4, 2000, and XP all
from a common set of source files? No I’m not. I found this before and sent
the problem and fix to Mark, but failed to complain to the DDK folks.
So I guess I am now complaining to the DDK boys and girls … PLEASE FIX
SET2K.BAT so that it handles (FREE free FRE fre)!!!
–
Gary G. Little
Have Computer, Will Travel …
909-698-3191
909-551-2105
“Gary G. Little” wrote in message news:xxxxx@ntdev…
>
> I have almost a dozen projects that I am using DDKBUILD to build drivers.
> The XP and NT4 versions plunk along fine for either checked or free
builds.
> However … 2000 ALWAYS fails on the release builds with each source
compile
> failing to find \WinDdk\2600\public\sdk\inc\warning.h.
>
> This is incredibaly silly but I ain’t seeing what I should be seeing. If
> things compile and build fine under CHECKED why would a FREE build fail
> because it can’t find warning.h? The path is indeed incredibly silly, but
> who the *** is setting that path? It is NOT in the sources and I do NOT
find
> it anyware in the DDKBUILD.BAT that I downloaded from OSR today.
>
How very odd that I had the exact same bug in my version of ddkbuild.
-----Original Message-----
From: Gary G. Little [mailto:xxxxx@inland.net]
Sent: Saturday, November 09, 2002 3:42 PM
To: NT Developers Interest List
Subject: [ntdev] Re: DDKBUILD …
(Pay attention OSR and Roddy, because this fails in both DDKBUILD files.)
Ok, boys and girls, it ain’t the sources file that is causing the problem.
I do believe the problem is buried deep in the heart of
\winddk\2600\bin\w2k\set2k.bat. I am currently performing cardiac surgery
to fix it.
When I use OSRs file and do “DDKBUILD -WXP2K free . /a”, with
W2KBASE=D:\WinDDK\2600 I get the following:
------------------------------------
snip ---------------------------------------
OSR DDKBUILD.BAT V5.2 - OSR, Open Systems Resources, Inc.
W2K 32 BIT BUILD using WXP DDK
usage: setenv [free|checked]
Example: setenv d:\ddk checked set checked environment
Example: setenv d:\ddk defaults to free environment
------------------------------------ end
snip ---------------------------------------
The first two lines are simply brag-banner lines. However, note that the
call to set2k.bat failed. It doesn’t when doing a checked build.
<yuck … deeper still arms up to the elbows>
Aaaaaahhh haaaa! … there’s the pulsating putresence that is causing the
problem. DDKBUILD sets mode to “fre” and then does a “call
%BASEDIR%\bin\w2k\set2k.bat %BASEDIR% %mode%” Unforutnately, set2k.bat does
NOT understand “fre”. It wants to see FREE or free. “fre” causes it to
output the error lines but DDKBUILD does NOT then abort. It merrily
continues on, setting up a bogus environment and calling BUILD which then
embarrases itself.
Damn, am I the first sucker that has tried to build NT4, 2000, and XP all
from a common set of source files? No I’m not. I found this before and sent
the problem and fix to Mark, but failed to complain to the DDK folks.
So I guess I am now complaining to the DDK boys and girls … PLEASE FIX
SET2K.BAT so that it handles (FREE free FRE fre)!!!
–
Gary G. Little
Have Computer, Will Travel …
909-698-3191
909-551-2105
“Gary G. Little” wrote in message news:xxxxx@ntdev…
>
> I have almost a dozen projects that I am using DDKBUILD to build drivers.
> The XP and NT4 versions plunk along fine for either checked or free
builds.
> However … 2000 ALWAYS fails on the release builds with each source
compile
> failing to find \WinDdk\2600\public\sdk\inc\warning.h.
>
> This is incredibaly silly but I ain’t seeing what I should be seeing. If
> things compile and build fine under CHECKED why would a FREE build fail
> because it can’t find warning.h? The path is indeed incredibly silly, but
> who the *** is setting that path? It is NOT in the sources and I do NOT
find
> it anyware in the DDKBUILD.BAT that I downloaded from OSR today.
>
—
You are currently subscribed to ntdev as: xxxxx@stratus.com
To unsubscribe send a blank email to %%email.unsub%%
(Hmmm, are we being factitious? :))
Mostly because it tain’t a DDKBUILD problem.
The SETENV and SET2K batch files do not check for “fre and FRE” and fail.
The only problem I see with either variant of DDKBUILD is that the batch
files do not fail at that point and exit.
–
Gary G. Little
Have Computer, Will Travel …
909-698-3191
909-551-2105
“Roddy, Mark” wrote in message news:xxxxx@ntdev…
>
> How very odd that I had the exact same bug in my version of ddkbuild.
>
>
> -----Original Message-----
> From: Gary G. Little [mailto:xxxxx@inland.net]
> Sent: Saturday, November 09, 2002 3:42 PM
> To: NT Developers Interest List
> Subject: [ntdev] Re: DDKBUILD …
>
> (Pay attention OSR and Roddy, because this fails in both DDKBUILD files.)
>
> Ok, boys and girls, it ain’t the sources file that is causing the problem.
>
> I do believe the problem is buried deep in the heart of
> \winddk\2600\bin\w2k\set2k.bat. I am currently performing cardiac surgery
> to fix it.
>
> When I use OSRs file and do “DDKBUILD -WXP2K free . /a”, with
> W2KBASE=D:\WinDDK\2600 I get the following:
>
> ------------------------------------
> snip ---------------------------------------
> OSR DDKBUILD.BAT V5.2 - OSR, Open Systems Resources, Inc.
> W2K 32 BIT BUILD using WXP DDK
>
> usage: setenv [free|checked]
>
> Example: setenv d:\ddk checked set checked environment
> Example: setenv d:\ddk defaults to free environment
>
> ------------------------------------ end
> snip ---------------------------------------
>
> The first two lines are simply brag-banner lines. However, note that the
> call to set2k.bat failed. It doesn’t when doing a checked build.
>
> <yuck … deeper still arms up to the elbows>
>
> Aaaaaahhh haaaa! … there’s the pulsating putresence that is causing the
> problem. DDKBUILD sets mode to “fre” and then does a “call
> %BASEDIR%\bin\w2k\set2k.bat %BASEDIR% %mode%” Unforutnately, set2k.bat
does
> NOT understand “fre”. It wants to see FREE or free. “fre” causes it to
> output the error lines but DDKBUILD does NOT then abort. It merrily
> continues on, setting up a bogus environment and calling BUILD which then
> embarrases itself.
>
> Damn, am I the first sucker that has tried to build NT4, 2000, and XP all
> from a common set of source files? No I’m not. I found this before and
sent
> the problem and fix to Mark, but failed to complain to the DDK folks.
>
> So I guess I am now complaining to the DDK boys and girls … PLEASE FIX
> SET2K.BAT so that it handles (FREE free FRE fre)!!!
>
> –
> Gary G. Little
> Have Computer, Will Travel …
> 909-698-3191
> 909-551-2105
>
> “Gary G. Little” wrote in message news:xxxxx@ntdev…
> >
> > I have almost a dozen projects that I am using DDKBUILD to build
drivers.
> > The XP and NT4 versions plunk along fine for either checked or free
> builds.
> > However … 2000 ALWAYS fails on the release builds with each source
> compile
> > failing to find \WinDdk\2600\public\sdk\inc\warning.h.
> >
> > This is incredibaly silly but I ain’t seeing what I should be seeing. If
> > things compile and build fine under CHECKED why would a FREE build fail
> > because it can’t find warning.h? The path is indeed incredibly silly,
but
> > who the *** is setting that path? It is NOT in the sources and I do NOT
> find
> > it anyware in the DDKBUILD.BAT that I downloaded from OSR today.
> >
>
>
>
> —
> You are currently subscribed to ntdev as: xxxxx@stratus.com
> To unsubscribe send a blank email to %%email.unsub%%
>
>
>
Me? Never! Actually I think this is fixed in the later .net ddks, and I have
a repaired version of ddkbuild that I really should upload at some point in
the near future.
-----Original Message-----
From: Gary G. Little [mailto:xxxxx@inland.net]
Sent: Monday, November 11, 2002 12:15 PM
To: NT Developers Interest List
Subject: [ntdev] Re: DDKBUILD …
(Hmmm, are we being factitious? :))
Mostly because it tain’t a DDKBUILD problem.
The SETENV and SET2K batch files do not check for “fre and
FRE” and fail. The only problem I see with either variant of
DDKBUILD is that the batch files do not fail at that point and exit.
–
Gary G. Little
Have Computer, Will Travel …
909-698-3191
909-551-2105
“Roddy, Mark” wrote in message
> news:xxxxx@ntdev…
> >
> > How very odd that I had the exact same bug in my version of
> ddkbuild.
> >
> >
> > -----Original Message-----
> > From: Gary G. Little [mailto:xxxxx@inland.net]
> > Sent: Saturday, November 09, 2002 3:42 PM
> > To: NT Developers Interest List
> > Subject: [ntdev] Re: DDKBUILD …
> >
> > (Pay attention OSR and Roddy, because this fails in both DDKBUILD
> > files.)
> >
> > Ok, boys and girls, it ain’t the sources file that is causing the
> > problem.
> >
> > I do believe the problem is buried deep in the heart of
> > \winddk\2600\bin\w2k\set2k.bat. I am currently performing cardiac
> > surgery to fix it.
> >
> > When I use OSRs file and do “DDKBUILD -WXP2K free . /a”, with
> > W2KBASE=D:\WinDDK\2600 I get the following:
> >
> > ------------------------------------
> > snip ---------------------------------------
> > OSR DDKBUILD.BAT V5.2 - OSR, Open Systems Resources, Inc.
> > W2K 32 BIT BUILD using WXP DDK
> >
> > usage: setenv [free|checked]
> >
> > Example: setenv d:\ddk checked set checked environment
> > Example: setenv d:\ddk defaults to free environment
> >
> > ------------------------------------ end
> > snip ---------------------------------------
> >
> > The first two lines are simply brag-banner lines. However,
> note that
> > the call to set2k.bat failed. It doesn’t when doing a checked build.
> >
> > <yuck … deeper still arms up to the elbows>
> >
> > Aaaaaahhh haaaa! … there’s the pulsating putresence that
> is causing
> > the problem. DDKBUILD sets mode to “fre” and then does a “call
> > %BASEDIR%\bin\w2k\set2k.bat %BASEDIR% %mode%”
> Unforutnately, set2k.bat
> does
> > NOT understand “fre”. It wants to see FREE or free. “fre”
> causes it to
> > output the error lines but DDKBUILD does NOT then abort. It merrily
> > continues on, setting up a bogus environment and calling
> BUILD which
> > then embarrases itself.
> >
> > Damn, am I the first sucker that has tried to build NT4,
> 2000, and XP
> > all from a common set of source files? No I’m not. I found
> this before
> > and
> sent
> > the problem and fix to Mark, but failed to complain to the
> DDK folks.
> >
> > So I guess I am now complaining to the DDK boys and girls
> … PLEASE
> > FIX SET2K.BAT so that it handles (FREE free FRE fre)!!!
> >
> > –
> > Gary G. Little
> > Have Computer, Will Travel …
> > 909-698-3191
> > 909-551-2105
> >
> > “Gary G. Little” wrote in message
> > news:xxxxx@ntdev…
> > >
> > > I have almost a dozen projects that I am using DDKBUILD to build
> drivers.
> > > The XP and NT4 versions plunk along fine for either
> checked or free
> > builds.
> > > However … 2000 ALWAYS fails on the release builds with
> each source
> > compile
> > > failing to find \WinDdk\2600\public\sdk\inc\warning.h.
> > >
> > > This is incredibaly silly but I ain’t seeing what I should be
> > > seeing. If things compile and build fine under CHECKED
> why would a
> > > FREE build fail because it can’t find warning.h? The path
> is indeed
> > > incredibly silly,
> but
> > > who the *** is setting that path? It is NOT in the
> sources and I do
> > > NOT
> > find
> > > it anyware in the DDKBUILD.BAT that I downloaded from OSR today.
> > >
> >
> >
> >
> > —
> > You are currently subscribed to ntdev as: xxxxx@stratus.com To
> > unsubscribe send a blank email to %%email.unsub%%
> >
> >
> >
>
>
>
> —
> You are currently subscribed to ntdev as:
> xxxxx@stratus.com To unsubscribe send a blank email to
> %%email.unsub%%
>
Incase any one is interested … the DDK I received today from Microsoft on
CD does indeed have the problem fixed. … in SETENV.BAT, which is alright
since SET2K.BAt now call SETENV.BAT.
Thanks folks …
–
Gary G. Little
Have Computer, Will Travel …
909-698-3191
909-551-2105
“Gary G. Little” wrote in message news:xxxxx@ntdev…
>
> I have almost a dozen projects that I am using DDKBUILD to build drivers.
> The XP and NT4 versions plunk along fine for either checked or free
builds.
> However … 2000 ALWAYS fails on the release builds with each source
compile
> failing to find \WinDdk\2600\public\sdk\inc\warning.h.
>
> This is incredibaly silly but I ain’t seeing what I should be seeing. If
> things compile and build fine under CHECKED why would a FREE build fail
> because it can’t find warning.h? The path is indeed incredibly silly, but
> who the *** is setting that path? It is NOT in the sources and I do NOT
find
> it anyware in the DDKBUILD.BAT that I downloaded from OSR today.
>
> Just in case … here is a sources file that is used to build both 2000
and
> XP binaries:
>
> --------------------------------------------------------------------------
–
> --------
>
> TARGETNAME=PeerToPeer
> TARGETPATH=obj
> TARGETTYPE=DRIVER
>
> INCLUDES=.;…;\projects\windows\include;\projects\windows\fcapi;
>
> USER_C_FLAGS=/DISP2200
>
> MSC_WARNING_LEVEL= /W3 /WX
>
> SOURCES=<br>> …\FgErrors.rc <br>> …\Control.cpp <br>> …\DevQueue.cpp <br>> …\ReadWrite.cpp <br>> …\RemoveLock.cpp <br>> …\stddcls.cpp <br>> DriverEntry.cpp <br>> Platform.cpp <br>> PlugPlay.cpp <br>> Power.cpp <br>> Wmi.cpp
>
> NTTARGETFILE0=FgErrors.h
>
> LINKER_FLAGS=-MAP:$(TARGETNAME).map
>
> BROWSER_INFO=TRUE
>
> UMTYPE=nt
>
> –
> Gary G. Little
> Have Computer, Will Travel …
> 909-698-3191
> 909-551-2105
>
>
>
>
“Gary G. Little” wrote in message news:xxxxx@ntdev…
>
> Incase any one is interested … the DDK I received today from Microsoft
on
> CD does indeed have the problem fixed. … in SETENV.BAT, which is alright
> since SET2K.BAt now call SETENV.BAT.
Just a nit with the current rev of setenv.bat, but it will still fail if you
pass it Checked or Free. The simplest fix., of course, is to, (All together
now…) “Don’t do that!” I had a wrapper that did that, and it was a
surprise, since I already knew it was trivial to fix.
If one is inclined to twiddle with setenv.bat, one can add /i to the if
statements, so that it doesn’t care what case is passed. This works on W2K
and XP as the development system. I’m not sure if this will work on NT4,
and I don’t have one conveniently available to check that. Of course, it’s
not going to work on the toy WINDOSes that don’t have cmd.exe, only
command.com. Since these are still supported (why?) as driver development
platforms, I’m guessing that’s why MSFT hasn’t already done this, and
reduced the number of lines that compare “%1” to various flavors of checked
and free.
Phil
–
Philip D. Barila
Seagate Technology, LLC
(720) 684-1842