Following Cygwin and MinGW convention would have some nice consequences:
- people used to them would find the libraries more easily,
- they would now what the liner will pick up first by default.
On cygwin this means having:
- the shared library as cygecl-.dll in bin dir,
- the static library as libecl.a in bin dir
If libtool is used it also generate a libecl.la file in lib dir.
On MinGW its the same except the shared library has prefix lib as well.
Building import library could be useful if someone wants to link with a different linker.
(This file is not needed to link from Cygwin to a dll created by Cygwin, same for MinGW.)
For the Sage project it would also have the nice effect of ensuring that the import library (and so the shared one) is picked up by default before the static one.
There are two possibilities for doing so:
- modify the main compilation command line but that would create two files by one command which can be unexcpected,
- create it after the shared library has been with dlltool but that's a little more overkill.
RedHat has very nice and complete about this stuff as well: