X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=src%2Fs%2Fcygwin32.h;h=65ee42d69aa12f6c9cdfd8ff25e78c8c7571a8cb;hb=debb7eb5baa3e6aae77e4fc0b7704887baf3006e;hp=e45a70f15dcaca8f3adf82ac6e577e4a27260506;hpb=6883ee56ec887c2c48abe5b06b5e66aa74031910;p=chise%2Fxemacs-chise.git diff --git a/src/s/cygwin32.h b/src/s/cygwin32.h index e45a70f..65ee42d 100644 --- a/src/s/cygwin32.h +++ b/src/s/cygwin32.h @@ -28,58 +28,36 @@ Boston, MA 02111-1307, USA. */ * horribly. What does get defined is HAVE_MS_WINDOWS, but this is * done by configure and only applies to the window system. * - * The important thing about building is that it is done on a binary - * mounted filesystem. i.e. something mounted like: mount -b c: - * /binary. If you do not do this then compilation of el files may - * produce garbage. As of b24 there are fixes in xemacs to make - * building on text mounts but I don't generally do this. Make sure - * you have installed cygwin32 b18 + patched dll (which can be found - * at http://www.lexa.ru/sos or on my home page - * http://www.parallax.co.uk/~andyp. Alternatively when b19 comes out - * the patched dll will be unnecessary. Also make sure your HOME path - * is unix style - i.e. without a drive letter. + * When building make sure your HOME path is unix style - i.e. without + * a drive letter. * - * Note that some people have reported problems with the patched - * cygwin.dll on Sergey's home page so you may want to use the one on - * mine which I *know* works. - * - * once you have done this, configure and make. If you want unexec - * support you need to download a.out.h from my web page or use cygwin - * b19. You probably want to build with mule support since this - * addresses crlf issues in a sensible way. + * once you have done this, configure and make. * * windows '95 - I haven't tested this under '95, it will probably * build but I konw there are some limitations with cygwin under 95 so * YMMV. I build with NT4 SP3. * - * What I want to do: - * - * the fileio stuff merely uses the unix system calls this means that - * the mount type of your fs will determine how files are edited. This - * is fine except in the instance that you want to convert one to the - * other. In this instance I would like to bring the buffer_file_type - * code into the picture without all the other windows-nt - * cruft. Apparently the best way to do this is use the mule coding - * stuff. - * - * process support needs fixing although basic support works (a la - * make-docfile) - * - * Andy Piper 8/1/98 - * http://www.parallax.co.uk/~andyp */ + * Andy Piper 8/1/98 + * http://www.xemacs.freeserve.co.uk/ */ /* cheesy way to determine cygwin version */ #ifndef NOT_C_CODE #include +#ifdef HAVE_CYGWIN_VERSION_H +#include +#else #ifdef SIGIO #define CYGWIN_B19 #else #define BROKEN_CYGWIN #endif +#endif + extern void cygwin32_win32_to_posix_path_list(const char*, char*); extern int cygwin32_win32_to_posix_path_list_buf_size(const char*); extern void cygwin32_posix_to_win32_path_list(const char*, char*); extern int cygwin32_posix_to_win32_path_list_buf_size(const char*); +#ifndef CYGWIN_VERSION_DLL_MAJOR struct timeval; struct timezone; struct itimerval; @@ -102,27 +80,18 @@ extern int utimes(char *file, struct timeval *tvp); extern int srandom( unsigned seed); extern long random(); -#endif -#ifdef HAVE_MS_WINDOWS -#define HAVE_NTGUI -#define HAVE_FACES -#endif - -#ifndef ORDINARY_LINK -#define ORDINARY_LINK -#endif - -#define C_SWITCH_SYSTEM -Wno-sign-compare -fno-caller-saves -#define LIBS_SYSTEM -lwinmm - -#define ICC_BAR_CLASSES 4 +#define SND_ASYNC 1 +#define SND_NODEFAULT 2 +#define SND_MEMORY 4 +#define SND_FILENAME 0x2000L +#define VK_APPS 0x5D #define SIF_TRACKPOS 0x0010 +#define ICC_BAR_CLASSES 4 #define FW_BLACK FW_HEAVY #define FW_ULTRABOLD FW_EXTRABOLD #define FW_DEMIBOLD FW_SEMIBOLD #define FW_ULTRALIGHT FW_EXTRALIGHT -#define VK_APPS 0x5D #define APPCMD_FILTERINITS 0x20L #define CBF_FAIL_SELFCONNECTIONS 0x1000 #define CBF_SKIP_ALLNOTIFICATIONS 0x3C0000 @@ -130,20 +99,43 @@ extern long random(); #define CBF_FAIL_POKES 0x10000 #define CBF_FAIL_REQUESTS 0x20000 #define SZDDESYS_TOPIC "System" -#define SND_ASYNC 1 -#define SND_NODEFAULT 2 -#define SND_MEMORY 4 -#define SND_FILENAME 0x2000L #define JOHAB_CHARSET 130 #define MAC_CHARSET 77 +#endif +#endif + +#define PBS_SMOOTH 0x01 + +#ifdef HAVE_MS_WINDOWS +#define HAVE_NTGUI +#define HAVE_FACES +#endif + +#ifndef ORDINARY_LINK +#define ORDINARY_LINK +#endif + +#define C_SWITCH_SYSTEM -Wno-sign-compare -fno-caller-saves +#define LIBS_SYSTEM -lwinmm + + #define TEXT_START -1 #define TEXT_END -1 #define DATA_END -1 #define HEAP_IN_DATA #define UNEXEC "unexcw.o" -/* #define BROKEN_SIGIO */ + +#ifdef CYGWIN_VERSION_DLL_MAJOR +#if 0 +/* ### FIXME: although defining BROKEN_SIGIO is correct for proper ^G + behavior, bugs in cygwin mean that xemacs locks up frequently if + this is defined. */ +#define BROKEN_SIGIO +#endif +#else #define PROCESS_IO_BLOCKING +#endif #define strnicmp strncasecmp #ifndef HAVE_SOCKETS #define HAVE_SOCKETS @@ -257,7 +249,7 @@ cygwin32_posix_to_win32_path_list(src, dst) /* Pseudo-terminal support under SVR4 only loops to deal with errors. */ -#define PTY_ITERATION for (i = 0; i < 1; i++) +#define PTY_ITERATION for (i = 0, c = 0; i < 1; i++) /* This sets the name of the master side of the PTY. */