hedecai/fog

Separated Build Targets - Improvement, not bug.

Closed this issue · 3 comments

As it stands, I can see that Fog compiles everything into one binary blob. I 
would personally like to be able to compile and use only the rendering part of 
the library as the backend of my own 2D solution.


Original issue reported on code.google.com by mikrya...@gmail.com on 8 Sep 2011 at 1:21

Hi,

this "improvement" is currently not possible and won't be possible in the 
future. I did several compromises when it comes into the building a binary and 
current situation is the best one:

- internal functions and classes are never exported.
- separate parts of the library are more closely connected.
- bloat generated by templates is in single binary, not duplicated into modules.
- static linking is done easy, and this was always demanded from commercial 
side.

When I started working on Fog there were more libraries, but the current design 
is better for the development and working with others. You can use the only 
module you need, but remember that Fog/Core is always needed - Fog/G2d is built 
on it, and other modules like Fog/Svg or Fog/UI are really small (in blob 
bytes) compared to the first two I mentioned.

I will mark this issue as WontFix, but I'd like to write the reasons for this 
architecture on some better place.

Original comment by kobalicek.petr on 9 Sep 2011 at 7:15

Hi,

it was decided that the UI part will be optional in the future. So marking as 
accepted, will be close after finished.

Thanks!
Petr

Original comment by kobalicek.petr on 2 Dec 2011 at 2:28

  • Changed state: Accepted
Fog contains now build option called FOG_BUILD_UI which tells to build Fog with 
user interface. To build Fog only for graphics just set this value to false or 
don't set it at all.

Marking as Fixed.

Original comment by kobalicek.petr on 16 Dec 2011 at 8:20

  • Changed state: Fixed