Re: [AD] custom DLLs with cmake

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


On December 24, 2008, Elias Pschernig wrote:
> On Wed, 2008-12-24 at 05:10 -0800, Chris Robinson wrote:
> > Wouldn't the idea be to have one (set of) DLLs, that all Allegro programs
> > use? Apps that worry can provide their own, or they can be installed
> > system-wide for the rest.
>
> Yes. And my personal DLLs really have nothing to do with the official
> DLLs.
>
> > For other developers, they may have their own tweaks or
> > development code, and want to use their own in place of the one with the
> > app; but if the app is built against a binary-incompatible lib, they
> > couldn't (and the creator might not even realize it was built against a
> > binary-incompatible lib).
>
> You can't really build against any other but the official DLL unless you
> compile yourself, as you need the .lib file and not the .dll. And
> there's no way anyone could get the .lib file for the DLL I distribute
> with my game.
>
> > Now imagine if it did give you a DLL, you built-against it, then provided
> > just an executable for other Allegro users to test. It inexplicably
> > wouldn't work for them, without any forewarning. :)
>
> That seems unlikely in Windows, you basically always get the DLLs along
> with the EXE. I wouldn't suggest incompatible .so files for linux
> distributions (but as .so uses symbolic lookup, this wouldn't be much of
> a problem there either I guess).

People hand out dlls to people all the time. One person may not realize one 
game uses a non compatible dll and start handing it out as a regular dll...

> > I've come to realize with CMake, you cannot rely on MESSAGE(STATUS ...)
> > to print warnings. If you use ccmake, or apparently some other graphical
> > cmake shell, you completely miss them. So even having
> > MESSAGE(STATUS "Warning, you are building an incompatible DLL!")
> > wouldn't be that good because some people may not see it, through no
> > fault of their own.
>
> There's one place, which is the tooltip for the D3D and OpenGL options
> (which we do provide after all). I'll put a warning into each that you
> should not uncheck the box if you want a compatible DLL. But if you
> choose to do so, I see no reason to add an extra hurdle of editing the
> CMakeLists.txt before you can build again.
>
> --
> Elias Pschernig <elias@xxxxxxxxxx>
>
>
> ---------------------------------------------------------------------------
>---


-- 
Thomas Fjellstrom
tfjellstrom@xxxxxxxxxx




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