DO NOT REPLY TO THIS MESSAGE.  INSTEAD, POST ANY RESPONSES TO THE LINK BELOW.

[STR New]

In my project I add C++ source files into one of few large translation unit
(many *.cpp files het included into one .cpp file and this gets compiled).
This trick helps me to reduce compilation time (one or two orders of
magnitude for a large, Boost heavy application) and I try to use it for
every library.

I tried the same with FLTK2.0 and found several things that would need a
change. I'll mention few of them here and can publish all those found if
there's interest in such feature. Otherwise compiling the FLTK files
separately works OK for me (GCC 3.4.2 on Windows)


Things that prevent compileing FLTK as single TU:

1. the symbol 'Rectangle' is used by windows Headers. I needed to prepend
fltk:: to every 'Rectangle' used as parameter or local variable, e.g. 
void _draw(const fltk::Rectangle& r) const;

2. Several functions are implemented in more than one file: nogroup() or
min().  

3. Several symbols are used in different contexts: e.g. NOTHING.

4. Macro REPEAT is defined in several files.

5. Symbols as 'small' and 'horizontal' are defined, somewhere, as macros
and this clashes with their use elsewhere.


When FLTK 2.0 will be released I'll patch it locally to compile as single
TU. If there's interest by developers I may provide details, patches,
tests, whatever is needed. It is quite a lot of boring work, however.

Link: http://www.fltk.org/str.php?L1663
Version: 2.0-feature

_______________________________________________
fltk-dev mailing list
[email protected]
http://lists.easysw.com/mailman/listinfo/fltk-dev

Reply via email to