[Stk] stk build system ported to automake/libtool

Stephen Sinclair sinclair at music.mcgill.ca
Tue Oct 1 05:35:59 PDT 2013


To follow up, I decided to test cross-compiling for fun.

Using the automake branch, I managed to build and test Windows
executables of the demo applications under Linux using MingW and Wine
using the following configure line:

./configure --host i686-w64-mingw32 LDFLAGS="-static-libgcc -static-libstdc++"

To test, I had to modify the launch scripts (e.g Physical) like so:

from:
wish < tcl/Physical.tcl | ./demo Clarinet -or -ip

to:
wish < tcl/Physical.tcl | wine ./demo.exe Clarinet -or -ip

(Notice the wish shell is running under Linux while the demo.exe
executable is running under Wine -- I haven't tried running Wish under
Wine.)

Unfortunately it seems that it won't build the DLL files this way, it
only seems to generate static .a libraries, but it's a pretty good
proof of concept nonetheless.  Haven't tested the generated
executables on a real Windows machine yet.

Steve


On Tue, Oct 1, 2013 at 1:53 PM, Stephen Sinclair
<sinclair at music.mcgill.ca> wrote:
> Hi,
>
> While we're talking about re-organizing things, I took the liberty of
> playing with porting the build system to automake.  Checkout my
> "automake" branch to see:
>
> https://github.com/radarsat1/stk/tree/automake
>
> I'm not suggesting to necessarily merge this right away or even at all
> (if there is no consensus), but I thought it might be nice to give an
> idea of how it could work.  The workflow is very similar to the
> existing autoconf-based build, but all the complexities of install
> targets, cross-compiling, dist-making, etc are handled by automake.
>
> In addition, building outside the source directory works.  (So-called
> "VPATH builds")  This allows e.g. to have one build directory
> configured for debug, and another for release, alleviating the need
> for those Debug and Release folders.
>
> The Makefile.in files are replaced by rather simpler Makefile.am files.
>
> The user must run "autogen.sh" instead of running "autoconf" directly.
>  The autogen.sh script is set up to automatically create a "build"
> directory configured for debug mode.
>
> Tested so far on Linux and Mac only, with automake-1.11.
>
>
> Steve



More information about the Stk mailing list