-Codechange: remove all BindCString and related functions and replace it by RAW_STRING which prints the C-string raw pointer that is on the 'print stack'.
-Fix (r7759): supply the correct flags to cygwin to make it compile.
Note: cygwin itself is 'broken'. Known issues with cygwin are:
- bash does not work when including files that have dos line ending (\r\n).
This causes the strange errors in config.lib. The solution is running:
dos2unix config.lib
- the windows-native svn does not work (though it previously did). The
solution for this is to install the cygwin svn.
- libfreetype2's freetype-config --cflags does not have ft2build.h in the
path include search path. The workaround for this is to copy
/usr/include/ft2build.h to /usr/include/freetype2/. Also linking does
not work for static builds as freetype-config does not support that.
You have to add the '--disable-static' flag when running './configure'.
- libpng12 does not work with static building either. You have to add
the '--disable-static' flag when running './configure' too.
- A proper ./configure, so everything needs to be configured only once, not for every make.
- Usage of makedepend when available. This greatly reduces the time needed for generating the dependencies.
- A generator for all project files. There is a single file with sources, which is used to generate Makefiles and the project files for MSVC.
- Proper support for OSX universal binaries.
- Object files for non-MSVC compiles are also placed in separate directories, making is faster to switch between debug and release compiles and it does not touch the directory with the source files.
- Functionality to make a bundle of all needed files for for example a nightly or distribution of a binary with all needed GRFs and language files.
Note: as this merge moves almost all files, it is recommended to make a backup of your working copy before updating your working copy.