Summary: | Detect if the Platform SDK is missing when building with Visual C++ Express Edition | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Daniel Bates <dbates> | ||||||
Component: | Tools / Tests | Assignee: | Daniel Bates <dbates> | ||||||
Status: | RESOLVED FIXED | ||||||||
Severity: | Normal | CC: | abarth, aroben, bweinstein, commit-queue, eric | ||||||
Priority: | P2 | ||||||||
Version: | 528+ (Nightly build) | ||||||||
Hardware: | PC | ||||||||
OS: | Windows XP | ||||||||
Attachments: |
|
Description
Daniel Bates
2010-03-11 21:02:39 PST
Created attachment 50597 [details]
Patch
Comment on attachment 50597 [details]
Patch
Yay!
Comment on attachment 50597 [details] Patch Clearing flags on attachment: 50597 Committed r56044: <http://trac.webkit.org/changeset/56044> All reviewed patches have been landed. Closing bug. Sweet! Reverted r56044 for reason: This patch broke Windows Debug (Tests) Committed r56099: <http://trac.webkit.org/changeset/56099> Thanks for rolling this out. Will look into. (In reply to comment #6) > Reverted r56044 for reason: > > This patch broke Windows Debug (Tests) > > Committed r56099: <http://trac.webkit.org/changeset/56099> Created attachment 51221 [details]
Patch
Moved check for Platform SDK into subroutine buildVisualStudioProject from subroutine setupCygwinEnv so that we only check for its existence when we are are going to build. This resolves the issue observed on the Windows Debug (Test) bot where run-webkit-tests is passed the --root argument and thus does not build DRT (hence, there is no need to check for the Platform SDK).
Also, updated the criterion for determining whether the Platform SDK is installed by checking for the existence of its registry entry instead of a fixed install location.
Comment on attachment 51221 [details] Patch > +my $isBuildingWithVCExpress = 0; > > # Defined in VCSUtils. > sub exitStatus($); > @@ -1026,6 +1027,7 @@ sub setupCygwinEnv() > print "*************************************************************\n"; > die; > } > + $isBuildingWithVCExpress = 1; > } The name of this variable makes it sound like it will only be set to 1 when a build is actually in progress. Maybe $willUseVCExpressWhenBuilding or something like that would be better? > +sub dieIfWindowsPlatformSDKNotInstalled > +{ > + my $windowsPlatformSDKRegistryEntry = "/proc/registry/HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/MicrosoftSDK/InstalledSDKs/D2FF9F89-8AA2-4373-8A31-C838BF4DBBE1"; > + > + if (-e $windowsPlatformSDKRegistryEntry) { > + return; > + } This can be written as: return if -e $windowsPlatformSDKRegistryEntry; r=me (In reply to comment #9) > (From update of attachment 51221 [details]) > > +my $isBuildingWithVCExpress = 0; > > > > # Defined in VCSUtils. > > sub exitStatus($); > > @@ -1026,6 +1027,7 @@ sub setupCygwinEnv() > > print "*************************************************************\n"; > > die; > > } > > + $isBuildingWithVCExpress = 1; > > } > > The name of this variable makes it sound like it will only be set to 1 when a > build is actually in progress. Maybe $willUseVCExpressWhenBuilding or something > like that would be better? Will change before I land. > > > +sub dieIfWindowsPlatformSDKNotInstalled > > +{ > > + my $windowsPlatformSDKRegistryEntry = "/proc/registry/HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/MicrosoftSDK/InstalledSDKs/D2FF9F89-8AA2-4373-8A31-C838BF4DBBE1"; > > + > > + if (-e $windowsPlatformSDKRegistryEntry) { > > + return; > > + } > > This can be written as: > > return if -e $windowsPlatformSDKRegistryEntry; Will change before I land. Committed r56419: <http://trac.webkit.org/changeset/56419> |