Re: [Flightgear-devel] windows.h

2008-07-28 Thread Durk Talsma
On Sunday 27 July 2008 21:24, James Turner wrote: Incidentally, a minor rant - even in the past week, I've seen the 'XXX is being worked on, person YYY has lots of changes which they haven't committed for arbitrary (justifiable) reason ZZZ'. I'd like to get involved in hacking on some actual

Re: [Flightgear-devel] windows.h

2008-07-27 Thread Curtis Olson
On Sun, Jul 27, 2008 at 5:03 AM, James Turner wrote: (mostly for Fred, I guess) Hi James, I'll defer to Fred's expertise here, but I'm pretty sure that #include windows.h does several magic things that are required for a clean compile on the windows platform. It wouldn't surprise me if the

Re: [Flightgear-devel] windows.h

2008-07-27 Thread Melchior FRANZ
* Melchior FRANZ -- Sunday 27 July 2008: I don't see why the noisy include lines aren't then in config.h, rather than in every single code file. Ah, I remember, config.h is also loaded just conditionally. But that's really the root of the annoyance. m.

Re: [Flightgear-devel] windows.h

2008-07-27 Thread Frederic Bouvier
Melchior FRANZ a écrit : * Curtis Olson -- Sunday 27 July 2008: It wouldn't surprise me if the standard hello world example for windows is: [...] Wouldn't surprise me either. But I don't see why the noisy include lines aren't then in config.h, rather than in every single code

Re: [Flightgear-devel] windows.h

2008-07-27 Thread Melchior FRANZ
* Curtis Olson -- Sunday 27 July 2008: It wouldn't surprise me if the standard hello world example for windows is: [...] Wouldn't surprise me either. But I don't see why the noisy include lines aren't then in config.h, rather than in every single code file. m.

Re: [Flightgear-devel] windows.h

2008-07-27 Thread Melchior FRANZ
* Frederic Bouvier -- Sunday 27 July 2008: My next commit will please you. Most are gone. ;-) The real problem was unneeded inclusion of GLU.h and GL.h that required windows.h Sounds good. :-) I've always envisioned a system where every simgear code file includes simgear.hxx and every

Re: [Flightgear-devel] windows.h

2008-07-27 Thread Frederic Bouvier
Melchior FRANZ a écrit : * Frederic Bouvier -- Sunday 27 July 2008: My next commit will please you. Most are gone. ;-) The real problem was unneeded inclusion of GLU.h and GL.h that required windows.h Sounds good. :-) I've always envisioned a system where every simgear code file

Re: [Flightgear-devel] windows.h

2008-07-27 Thread Melchior FRANZ
Oh, and while we are at it, this silliness should also disappear: #ifndef __cplusplus # error This library requires C++ #endif If anyone needs to be reminded that foo.hxx is a C++ file then there's no hope. It's just visual noise. I mean, foo.hxx isn't an image or a sound file either, and

Re: [Flightgear-devel] windows.h

2008-07-27 Thread Melchior FRANZ
* Frederic Bouvier -- Sunday 27 July 2008: That would mean even longer compilation time. Yes, a few milliseconds. Come on! The file is loaded into the file cache and then takes almost *no* time for loading, and not more time for parsing as if it's directly in the code file. Following that

Re: [Flightgear-devel] windows.h

2008-07-27 Thread Frederic Bouvier
Melchior FRANZ a écrit : * Frederic Bouvier -- Sunday 27 July 2008: That would mean even longer compilation time. Yes, a few milliseconds. Come on! The file is loaded into the file cache and then takes almost *no* time for loading, and not more time for parsing as if it's directly

Re: [Flightgear-devel] windows.h

2008-07-27 Thread Melchior FRANZ
* Frederic Bouvier -- Sunday 27 July 2008: you have no idea about the cruft windows.h is dragging. True. But I had the impression that you were adding the #if ... #include windows.h #endif to every single file, anyway. :-) m.

Re: [Flightgear-devel] windows.h

2008-07-27 Thread Frederic Bouvier
Melchior FRANZ a écrit : * Frederic Bouvier -- Sunday 27 July 2008: you have no idea about the cruft windows.h is dragging. True. But I had the impression that you were adding the #if ... #include windows.h #endif to every single file, anyway. :-) You are misinformed. I was

Re: [Flightgear-devel] windows.h

2008-07-27 Thread James Turner
On 27 Jul 2008, at 16:41, Frederic Bouvier wrote: you have no idea about the cruft windows.h is dragging. True. But I had the impression that you were adding the #if ... #include windows.h #endif to every single file, anyway. :-) You are misinformed. I was adding config.h. Look at the

Re: [Flightgear-devel] windows.h

2008-07-27 Thread Durk Talsma
Hi James, On Sunday 27 July 2008 18:06, James Turner wrote: - header inclusion is a very very real compilation time issue, especially for gcc since they're not shared (MSVC can do magic caching I believe). As I have time / boredom, I'm going to start reviewing header / source files in turn

Re: [Flightgear-devel] windows.h

2008-07-27 Thread James Turner
On 27 Jul 2008, at 17:24, Durk Talsma wrote: You might be interested in some work done by Thomas Foerster. Thomas has done a fairly detailed analysis of the current interdependencies in FlightGear's include files. IIRC, Thomas has a patched version of FlightGear that already removes

Re: [Flightgear-devel] windows.h

2008-07-27 Thread Tim Moore
James Turner wrote: On 27 Jul 2008, at 16:41, Frederic Bouvier wrote: you have no idea about the cruft windows.h is dragging. True. But I had the impression that you were adding the #if ... #include windows.h #endif to every single file, anyway. :-) You are misinformed. I was adding

Re: [Flightgear-devel] windows.h

2008-07-27 Thread James Turner
On 27 Jul 2008, at 21:02, Tim Moore wrote: If you're doing that work, I'd like you to follow a *really* minimalist stance i.e., if a header file only contains pointers or references to another class or includes them as arguments in uninstantiated templates (e.g., osg::ref_ptrfoo), then

Re: [Flightgear-devel] windows.h

2008-07-27 Thread Tim Moore
James Turner wrote: On 27 Jul 2008, at 21:02, Tim Moore wrote: If you're doing that work, I'd like you to follow a *really* minimalist stance i.e., if a header file only contains pointers or references to another class or includes them as arguments in uninstantiated templates (e.g.,