Ticket #225 (closed enhancement: fixed)
qmake: Keep long names in import libraries
|Reported by:||dmik||Owned by:|
In order to overcome the 8.3 DLL file name format limitation imposed by OS/2 we introduced the TARGET_SHORT qmake variable that specifies the alternative name for the DLL being built that is intended to fit the 8.3 limitation. Besides with the DLL name itself, both the corresponding import library and the .prl files get this short name as well.
Given that all other platforms supoprt long DLL names, applications link to these DLLs at build time through their import libraries by simply doing LIBS += MyLongDLLName. This doesn't work on OS/2 (since the import library name is shortened by TARGET_SHORT to something like MyDLLLib) and therefore requires a modification in each .pro file linking to that library. When linking to Qt libraries itself, all the magic is done in mkspecs files and the problem is not visible for the end user, but in custom applications it pops up.
Taking into account that it is not really necessary for the .lib file to have the same name as the .DLL file, nor it is so for the .prl file, I will change the relevant code so that the name of the .lib or .prl file is not shortened any more by making sure that TARGET_SHORT only affects the .dll name itself and also the name of the respective .def and .map files (which is necessary for obvious reasons, both describe the DLL, not the import library or anything else).