Re: [AD] custom DLLs with cmake

[ Thread Index | Date Index | More lists.liballeg.org/allegro-developers Archives ]


On Wednesday 24 December 2008 04:09:49 am Elias Pschernig wrote:
> In CMakeLists.txt, there is this part:
>
>
> # On Windows, disable shared build if either D3D or OpenGL are not present,
> # because it would produce a incompatible DLL.
> if(WIN32)
>     if(SHARED)
>         if(NOT SUPPORT_D3D OR NOT SUPPORT_OPENGL)
>             message(STATUS
>                 "Both D3D and OpenGL must be present for the SHARED build.
>                 Disabling SHARED build.")
>             set(SHARED off)
>         endif(NOT SUPPORT_D3D OR NOT SUPPORT_OPENGL)
>     endif(SHARED)
> endif(WIN32)
>
>
> I think this is a very wrong philosophy. If someone wants to create a
> custom DLL, let them. We're not Microsoft or Apple and need to control
> what users want to do with their DLLs they ship in their games (without
> having to hack the cmake scripts).

Wouldn't it be better to fix the problem (so that disabling D3D or OGL 
produces a binary-compatible DLL)? Otherwise, I personally think it's fine. 
It helps keep users/developers from accidentally creating a DLL that doesn't 
work with other Allegro games. If someone wants to purposely make a 
binary-incompatible DLL, they can remove that check.




Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/