The Leonardo GSM firmware in the ../Sotovik directory was developed in a Windows environment. However, I (Spacefalcon the Outlaw) have succeeded in making the firmware build work under Wine instead of real Windows, and in this directory I present the necessary tools. At a high level, the firmware build process uses the following tools: * TI's proprietary TMS470 compiler toolchain (binary-only software). Supposedly there were/are binary versions for some commercial Unixes, and maybe even for Linux, but the Windows binary version is the only one that's commonly available. These tools run just fine under Wine though. * Some Cygwin tools - I haven't looked deeply enough to figure out exactly which tools and for what. Running what were originally Unix tools under Cygwin under Wine under Linux is assinine, but it's the least invasive way of getting TI's existing build mechanism to just work as-is. * Windows versions of Perl and Java. Once again, reproducing the complete Windows environment under Wine was easier than figuring out how to make TI's build process use native Linux tools instead. * Some TI special tools interspersed in the firmware source package itself as Windows EXE files. The only part for which I needed to use a real Windows machine was running the installers - the *.exe and *.msi files you'll find in the ../Sotovik directory. However, after I ran those installers on a WinXP machine and got everything installed in C:\Dvpt_tools and C:\j2sdk1.4.2_02 (as expected by the GSM firmware package), I was then able to copy those two directories into my Wine environment (i.e., into my ~/.wine/drive_c directory), and then build the GSM firmware under Wine: wine cmd /c build.bat just worked! (I run Slackware 13.37.) The installed-env.tar.xz tarball presented here is a copy of that installed environment which I copied from WinXP into Wine. Thus if you would like to play with the GSM firmware, you won't need a real Windows machine or VM: simply extract this tarball into your ~/.wine/drive_c directory, and you should be in business. The nowhine.c and winebuild.sh wrappers are some additional icing - see the code for yourself.