On 03/02/2011 10:45, Graham Bloice wrote: > On 03/02/2011 10:16, Guy Harris wrote: >> On Feb 3, 2011, at 2:02 AM, Graham Bloice wrote: >> >>> I've perhaps conjoined two issues. Compiler and linker flags do depend on >>> the toolchain in use, but IME don't actually vary too much. >> "Not too much" != "not at all", so, unless there's a way to make them not >> vary at all, we *do* need to determine the toolchain in use. > Ack, there will still have to be some conditionals, but hopefully less than > we have now. Of course running a very old VS with a much newer SDK might > show some interesting issues with our current configs due to the newer tools > in the SDK. >>> Compile time decisions on what the OS API's and structures look like depend >>> on the SDK in use. >> In what fashion can one determine the SDK in use? Or will the user have to >> specify that in config.nmake as well? > If the user is running from a command prompt that has run the correct > toolchain init script then various env vars get set. The easiest way to get > the correct toolchain init script is to open the command prompt from the > Start menu entry for the SDK if you have one installed, else the copy of VS > you have installed. You can also run the commands directly with appropriate > parms to select the architecture (x86 or x64) and the target OS (to > determine what OS API you can use, SetEnv only), e.g. vcvarsall.bat for VS > and SetEnv.cmd for the SDK > > Looking at my home machine with VS 2010 & SDK 7.1, from the VS prompt I get > "WindowsSdkDir=C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\" and > from the SDK prompt I get "WindowsSDKDir=C:\Program Files\Microsoft > SDKs\Windows\v7.1\". I don't see a simple env var that simply states the > SDK in use. The SDK prompt also has an sdkdir var set to the same path. > > I'll check some other combinations when I get to work. > > And for VS 2005 and SDK v6.0A (Vista),
VS2005: MSSdk=C:\Program Files\Microsoft SDK\. SDK V6.0A: MSSdk=C:\Program Files\Microsoft SDKs\Windows\v6.0 note the very subtle path differences "SDK" vs "SDKs". Checking the compiler versions for each prompt I get: VS 2005: 14.00.50727.762 SDK V6.0A: 14.00.50727.42 I can't remember whether the VS2010 \ SDK 7.0 set MSsdk. -- Regards, Graham Bloice
___________________________________________________________________________ Sent via: Wireshark-dev mailing list <wireshark-dev@wireshark.org> Archives: http://www.wireshark.org/lists/wireshark-dev Unsubscribe: https://wireshark.org/mailman/options/wireshark-dev mailto:wireshark-dev-requ...@wireshark.org?subject=unsubscribe