25.3 Writing A Cygwin Friendly Package
One approach to using the Cygwin support offered by GNU Autotools in your
own package is to have an eye towards having it compile nicely on Unix
and on Windows, or indeed of tweaking the configuration of existing
packages which use GNU Autotools but which do not compile under Cygwin, or
do not behave quite right after compilation. There are several things
you need to be aware of in order to design a package to work seamlessly
under Cygwin, and yet several more if portability to DOS and
(non-Cygwin) Windows is important too. We discussed many of these issues
in 15.3.5 Unix/Windows Issues.
In this section, we will expand on those issues with ways in which
GNU Autotools can help deal with them.
If you only need to build executables and static libraries, then Cygwin
provides an environment close enough to Unix that any packages which
ship with a relatively recent configuration will compile pretty much out
of the box, except for a few peculiarities of Windows which are discussed
throughout the rest of this section. If you want to build a package
which has not been maintained for a while, and which consequently uses
an old Autoconf, then it is usually just a matter of removing the
generated files, rebootstrapping the package with the installed (up to
date!) Autoconf, and rerunning the `configure' script. On occasion
some tweaks will be needed in the `configure.in' to satisfy the
autoconf will almost always
diagnose these for you while it is being run.