wgcc 2.0 RC1 released

Hi again! For all interested in native Windows binaries built with Autotools and mnay other interesting things: wgcc is a cross-compiler tool primarily written for Microsoft's Interix. Its primary purpose is to produce native Windows binaries (internally using the Microsoft Tool chain), and to mimic the behaviour of the GNU compiler collection. This means that wgcc understands many of GCC's command line arguments, and in most cases delivers the same results as expected, sometimes manipulating the underlying tool's input and output. Even though wgcc was written for Interix only, it can be used on native Windows (without Interix), and other Systems, like Cygwin. The only restriction is that on Platforms other than Interix, only Windows style paths are understood. This will change in the future for Cygwin, and/or others. On Interix wgcc automatically converts UNIX style paths to Windows style ones (i.e. /wgcc to C:\SFU\wgcc). wgcc abstracts away lots of inconveniences that are introduced by building static libraries, shared libraries (DLL's) and executables with any possible combination of those three. When using wgcc both static and shared libraries behave exactly the same on Windows, and this makes tons of defines unnecessary. The only thing that still has to be done is to give all Data symbols (i.e. Variables) an import attribute (__declspec(dllimport)) when using them (i.e. in the library header files) in an executable. For a simple example take a look at the file tests/shared.test inside the wgcc distribution. The Release Candidate 1 of wgcc has a completely rewritten Configuration File parser, which allows for faster and safer parsing; now adding the ability to include empty directives in configuration files. This could be something like "paths.c++ =" to unset all C++ search directories. Also the ability to automatically generate export definitions and import trampolines for mixing static and shared libraries with executables has been reviewed and improved. This did not change the behaviour of wgcc regarding the 2.0-pre.x versions, but only speeded it up a little. pxwc, the accompanying library for wgcc allows further abstraction for C code, allowing use of the ANSI function names (i.e. without the leading "_"). pxwc currently includes only a small set of functions, so your help is needed to find out which others to include. Just open a Feature Request at http://sourceforge.net/tracker/?group_id=158081&atid=806407 and we will try to add functionality as soon as possible. Using the patch provided for GNU Libtool, wgcc can be used with many Open Source packages. After patching and installing Libtool, simply bootstrap the package in question, configure (set CC, CXX and LD to "wgcc") and build. The configure Script should tell that the linker in use is the "Interix to Win32 cross linker (wgcc)". Since the version jump to 2.x wgcc now resides in the Sourceforge Subversion Repository. The CVS Repository still continues to contain previous wgcc versions (0.x). To continue improving wgcc and pxwc packages, we now need your help in testing them. Please download wgcc and try to compile you software using it. If something goes wrong please contact mduft or open an issue using the Sourceforge Tracker at http://sourceforge.net/tracker/?group_id=158081&atid=806404, or ask your questions at the forums at http://sourceforge.net/forum/?group_id=158081. You can browse the Subversion Repository here: http://svn.sourceforge.net/viewvc/interix-wgcc/trunks/ Documentation can be found here: http://sourceforge.net/project/showfiles.php?group_id=158081&package_id= 203917&release_id=446943 Source Packages can be found here: http://sourceforge.net/project/showfiles.php?group_id=158081&package_id= 177049&release_id=445894 The Patch for Libtool can be found here: http://sourceforge.net/project/showfiles.php?group_id=158081&package_id= 196163&release_id=446510

"Duft Markus" <Markus.Duft@salomon.at> writes:
Hi again!
For all interested in native Windows binaries built with Autotools and mnay other interesting things:
I'm not sure whether this is on-topic for Boost; it seems of somewhat borderline relevance. However, now that you've started the thread, one obvious question leaps to mind: why would anyone want to use wgcc in lieu of Cygwin or MinGW gcc? -- Dave Abrahams Boost Consulting www.boost-consulting.com

I have been using interix for roughly 2 years, so I am definitely interested in wgcc (not RC1 though). There were a few reasons for me to choose interix over Cygwin. Licensing/cost was one. Tools not expecting "\r\n" at the end of line or '\' as root directory (including many in-house scripts) also worked under interix with minimal porting efforts. Besides, interix is on top of the windows kernel, not win32 API. Hence it should be 'lighter' than Cygwin. On the other hand, interix is not available on the 'Home' edition of windows. David Abrahams wrote:
"Duft Markus" <Markus.Duft@salomon.at> writes:
Hi again!
For all interested in native Windows binaries built with Autotools and mnay other interesting things:
I'm not sure whether this is on-topic for Boost; it seems of somewhat borderline relevance. However, now that you've started the thread, one obvious question leaps to mind: why would anyone want to use wgcc in lieu of Cygwin or MinGW gcc?
-- Dave Abrahams Boost Consulting www.boost-consulting.com
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost

David Abrahams wrote:
"Duft Markus" <Markus.Duft@salomon.at> writes:
Hi again!
For all interested in native Windows binaries built with Autotools and mnay other interesting things:
I'm not sure whether this is on-topic for Boost; it seems of somewhat borderline relevance. However, now that you've started the thread, one obvious question leaps to mind: why would anyone want to use wgcc in lieu of Cygwin or MinGW gcc?
hi all, i try to get 'distcc' (running on cygwin) compiling with vc71 + vc8. i can't switch to gcc, and i don't want to buy 'incredibuild'. btw, i only found out about wgcc because i'm reading the boost lists :) -- regards, dave
participants (4)
-
David Abrahams
-
David Klein
-
Duft Markus
-
Russell Mok