From: Ken B. <kb...@co...> - 2017-03-05 21:36:25
|
Hi Bruno, On 3/5/2017 2:53 PM, Bruno Haible wrote: > Hi Ken, > >> I'd like to try removing all uses of '#include <windows.h>' from the Cygwin build. >> Cygwin is a Posix platform, and trying to mix the Posix API with the Windows API >> often causes problems. > > Do you mean > a) to not use Windows API on Cygwin? > b) keep using the Windows API on Cygwin, but don't include <windows.h> from > lispbibl.d and clisp.h. > > a) If you know good replacements for our uses of the Windows API? > > b) I would advise against this. > > In a world where the system's include files are all standalone and not > conflicting (like glibc systems), it's OK if every compilation unit does > only the #includes that it needs. > > But in a world where the include files define types differently, have to > be included in a particular order, or define identifiers like ULONGLONG > that belong in the programmer's namespace, it's less effort in the long > run to use the same includes for all compilation units. This is how > lispbibl.d started out, and this is why many other projects also have > one main include file. > > With Cygwin and <windows.h> - which we DO need to mix in some places - > we are in the second case. I see your point. And in any case, removing the use of windows.h is much more complicated than I thought. I spent a few hours on this, and every change I made led to a new problem that had to be fixed. I withdraw my suggestion. Thanks for all your work on clisp. It's nice to see development resuming. Ken |