[AD] Patch for the Borland port

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


Attached is a patch (already commited) that lets Allegro programs run when
compiled with Borland C++Builder 4 (with a few other cosmetic changes).

Allegro 4.0.0 doesn't work with BCB4, because it implicitly makes the
assumption that the linker doesn't override allegro.def's (the export
definition file) settings to link to DLL symbols by index number, as it is
the case with BC++ 5. Now it turns out that BCB4's linker authoritatively
links by symbol name, using to do so the compile time name of symbols
(prepended with an underscore) because allegro.def doesn't specify the run
time name (without the underscore). The patch fixes that, by making
allegro.def specify the two symbol names.

So the Borland C++ port and the MinGW32 port both use now linking by symbol
name, whereas the MSVC port uses linking by symbol index number. Hence my
question: is there any way for Allegro to force MSVC to use linking by
symbol name too ? This would greatly simplify the DLL binary compatibility
issue.

--
Eric Botcazou
ebotcazou@xxxxxxxxxx

Attachment: fixdll.zip
Description: Zip compressed data



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