Hi all, I have hacked some Makefiles so that GRX builds cleanly under Cygwin. The attached patch does the following:
./makedefs.grx: * Add WIN32_GCC_i386_CYGWIN (cygwin native) and WIN_GCC_i386_CYGMING (MinGW) as systags 007 and 008. 008 really is 006, just using the Cygwin environment to build a MinGW target. * Appended a CYGMING specific section
Added makefile.cyg in ./, ./src, ./test/bgi and ./test.
The system then creates the static and shared libraries. Cygwin specific if CC = gcc MinGW version if you say CC = gcc -mno-cygwin in makedefs.grx
Default installation path for the static libraries is /usr/local/lib/[mingw] for the header files /usr/local/include/grx20
The DLLs do not get installed, as I have no clue where to install them :-) The cygwin one should probably go to /bin.
I set default font-path to "/usr/local/lib/fonts/grx", you may want to change this to your needs.
Further minor fixes: test/demogrx.c: * Added test for Cygwin in the_info(). BTW, is there a reason for not having this as switch( GrGetLibrarySystem() ){ ... }?
* Small workaround for spawning the test programs. in pev_command(), mostly "" vs. "/" related. The real error is in grx20.h, where "__WIN32__" gets defined if the compiler is cygwin. This is not a good idea and prevails building an X11 version with cygwin at the moment. I think I have stupidly introduced that myself :-) I am currently thinking about how to fix that, and what a fix really is. It basically should be possible to build a library that uses the native drivers or the X11 drivers, depending if the DISPLAY variable is set (just like rxvt under Cygwin). Any ideas and comments are appreciated :-)
Other than that, the only program that thoroughly fails so far is keys.exe, I have not yet tried to actually *use* the DLLs, so be warned :-)
Have fun, Ciao Tom
<<grx246_ptd1.pat.gz>>
Best regards / Mit freundlichen Grüssen,
Thomas Demmer Kraft Foods R&D Inc. Tel.: +49 (0)89 62738-6302 Fax: +49 (0)89 62738-86302 mailto:tdemmer@krafteurope.com mailto:
Thought of the day Love at first sight is one of the greatest labor-saving devices the world has ever seen.