[liblouis-liblouisxml] Re: Question over version appended to windows DLL

  • From: "Michael Whapples" <dmarc-noreply@xxxxxxxxxxxxx> (Redacted sender "mwhapples@xxxxxxx" for DMARC)
  • To: liblouis-liblouisxml@xxxxxxxxxxxxx
  • Date: Tue, 23 Sep 2014 11:50:22 +0100

I am having some trouble with what you describe for how to implement this. See my inline comments.

On 22/09/2014 10:46, Bert Frees wrote:
Michael Whapples writes:

When I was discussing this for the MSVC build scripts it was accepted to
drop this -2 part of the output DLL name.

I would like to ask the same for the GNU make system as well so that
building with mingw-w64 will result in liblouis.dll as well.

NOTE: Just renaming it will not be sufficient, it should be done at
build time. [...]
I know it can be done by adding -avoid-version to
liblouis_la_LDFLAGS. To do it for Windows builds only we probably need
something like this in configure.in:
I cannot find configure.in, do you mean configure.ac?
     liblouis_la_LDFLAGS_MINGW_EXTRA=
     case "$host" in
       *-*-mingw*)
       liblouis_la_LDFLAGS_MINGW_EXTRA="-avoid-version"
       ;;
     esac
     AC_SUBST(liblouis_la_LDFLAGS_MINGW_EXTRA)

and in liblouis/Makefile.am:

     liblouis_la_LDFLAGS = @liblouis_la_LDFLAGS_MINGW_EXTRA@ ...

When putting @liblouis_la_LDFLAGS_MINGW_EXTRA@ in liblouis_la_LDFLAGS in liblouis/Makefile.am it does not seem to be being substituted when I build. As I said I could not find configure.in so used configure.ac instead. NOTE: I did the modifications to configure.ac and liblouis/Makefile.am before I even did ./autogen.sh so it is not a case of old generated files being used.

As an alternative I have tried in configure.ac, where there is a block for windows builds which does:
CFLAGS="-Wl,--add-stdcall-alias"
I added inside the conditional block the line:
LDFLAGS="-avoid-version"
This did work, but I don't know whether it will have negative issues elsewhere.

Please suggest how best to deal with this.
I think we need to make it so the mingw-w64 and the MSVC build files
will give the same named outputs.
For a description of the software, to download it and links to
project pages go to http://www.abilitiessoft.com

For a description of the software, to download it and links to
project pages go to http://www.abilitiessoft.com

Other related posts: