Here are the results of the most recent vote:
Jon Leech B
Michael Gold C
Allen Akin C
Brett Johnson C
Brian Paul C
Mark Kilgard C
Ron Bielaski C
Andy Ross C
Thomas Roell B
Totals: B 2, C 7.
Due to a mailer problem, I was unable to reach Jose Luu to confirm
that he really wanted to vote, so I've omitted his name from the list.
(His preference was for C, but it wouldn't have changed the outcome
materially.)
Out of curiosity, I combined these results with the previous results
(from Jon's summary message) to form meta-votes. I lumped together
the two options that favored legacy apps (A and B), and left C
separate.
Of the total votes cast, 8 were for A and B, 13 were for C.
Eliminating duplicates (people who voted the same way both
times) yields 6 for A and B, 9 for C.
Two people changed their positions, switching from A in the
first vote to C in the second. Counting only the most recent
votes, and eliminating duplicates, yields 4 for A and B, and 7
for C.
To be frank, this is not what I expected. Michael and I spoke to a
fair number of people offline before holding this vote. It seemed
that most people had made up their minds on the basic issue of whether
upward compatibility was essential; B was a reasonable compromise, so
it seemed likely to carry the day. It appears that either the premise
was incorrect, or people are simply too frustrated with the process to
pursue the question.
Where do we go from here? Well, I'd suggest that option A (do nothing
at all, stick with what we have) doesn't have majority support.
Therefore it would be a good thing for folks building gl.h and glext.h
to
(a) make the extension function prototypes in gl.h optional
(b) make sure there are no extension function prototypes in glext.h
(c) make sure there are extension function typedefs in glext.h
(d) have gl.h optionally include glext.h
I'd recommend that the sense of the conditional compilation directives
follow option C (the new semantics are the default). If this can be
done in a few days, several of us could try out the new files to see
whether any surprises occur.
In the meantime, if Steve wants to hold further discussion and/or a
new vote, of course he's welcome. (Advice: It's not as easy as it
looks.) If a consensus is reached that the default behavior should
favor legacy apps rather than new apps, then hacking the new gl.h to
change the sense of the conditional compilation should be very easy.
I'd say we have about one week. After that point, at least Mesa's
gl.h needs to freeze for XFree86 4.0.1, so further changes will be
disruptive.
Allen