Configure does not show error for old Windows SDKs ('dispatcherqueue.h' file not found)

RESOLVED FIXED in Firefox 68

Status

defect
RESOLVED FIXED
2 months ago
2 months ago

People

(Reporter: bytesized, Assigned: froydnj)

Tracking

(Blocks 1 bug, Regression)

unspecified
mozilla68
Dependency tree / graph

Firefox Tracking Flags

(firefox68 fixed)

Details

Attachments

(1 attachment)

My builds are failing with this error:

73:40.42 In file included from c:/mozilla-central/gfx/angle/checkout/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp:67:
73:40.42 c:/mozilla-central/gfx/angle/checkout/src\libANGLE/renderer/d3d/d3d11/converged/CompositorNativeWindow11.h(15,10): fatal error: 'dispatcherqueue.h' file not found
73:40.42 #include <dispatcherqueue.h>
73:40.42 ^~~~~~~~~~~~~~~~~~~
73:52.24 1 error generated.

It does indeed appear that the specified header does not exist in my Windows SDK (version 10.0.15063.0).

My coworker has a newer version of the SDK installed and seems to have the header.

If the Windows SDK 10.0.15063.0 is too old to build Firefox now, our configure script should say that.

I am going to update my Windows SDK and make sure that it fixes my build problems. I'll post the result here.

Tried to update my Windows SDK. Updated it to 10.0.16299.0. Now I am getting an error. Which seems... odd.

0:26.53 ERROR: Found SDK version 10.0.16299.0 but clang-cl builds currently don't work with the SDK version. You should use a different version, either by uninstalling version 10.0.16299.0 or setting a custom WINDOWSSDKDIR.

(In reply to Kirk Steuber (he/him) [:bytesized] from comment #1)

Tried to update my Windows SDK. Updated it to 10.0.16299.0. Now I am getting an error. Which seems... odd.

0:26.53 ERROR: Found SDK version 10.0.16299.0 but clang-cl builds currently don't work with the SDK version. You should use a different version, either by uninstalling version 10.0.16299.0 or setting a custom WINDOWSSDKDIR.

This is expected, for the reason stated in the message. You'd have to use something >= 10.0.17134.0.

Right. My point is that I got that error message for 10.0.16299.0 but not for 10.0.15063.0

(In reply to Kirk Steuber (he/him) [:bytesized] from comment #3)

Right. My point is that I got that error message for 10.0.16299.0 but not for 10.0.15063.0

Sure. And that's because 10.0.15063.0 was known to not be broken (at least before whatever ANGLE change added dispatcherqueue.h), whereas 10.0.16299.0 was:

https://searchfox.org/mozilla-central/source/build/moz.configure/windows.configure#222-241

jgilbert, do you know what the minimum SDK version for dispatcherqueue.h is?

Flags: needinfo?(jgilbert)
Duplicate of this bug: 1546504

The versions aren't really monotonic version numbers, so there's not a clear "minimum SDK version", from what I can tell.

Flags: needinfo?(jgilbert)

(In reply to Jeff Gilbert [:jgilbert] from comment #6)

The versions aren't really monotonic version numbers, so there's not a clear "minimum SDK version", from what I can tell.

Perhaps the version of the first SDK that dispatcherqueue.h appeared in would be sufficient?

Flags: needinfo?(jgilbert)

Or at least they haven't seemed monotonic/supersets to me.

The file is located in "Windows Kits/10/Include/<version>/um/DispatcherQueue.h".

Versions with DispatcherQueue.h on my system are 10.0.17134.0 and 10.0.17763.0.

I believe you only need 10.0.17763.0.

Flags: needinfo?(jgilbert)

Using 10.0.17763.0 works for me.

Regressed by: angle-68

We've landed some recent changes that implicitly require SDK
10.0.17134.0. Since we've been building with that version for some time
in automation, let's go ahead and raise the minimum version accordingly.

Comment 11

2 months ago
Pushed by nfroyd@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/445a4ea25bb1
raise minimum windows SDK version; r=RyanVM
Flags: needinfo?(nfroyd)

Comment 13

2 months ago
Pushed by nfroyd@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/b4763accfb72
raise minimum windows SDK version; r=RyanVM
Duplicate of this bug: 1546793
Summary: Configure does not show error for old Windows SDKs → Configure does not show error for old Windows SDKs ('dispatcherqueue.h' file not found)

Comment 15

2 months ago
bugherder
Status: NEW → RESOLVED
Closed: 2 months ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla68
Assignee: nobody → nfroyd
You need to log in before you can comment on or make changes to this bug.