diff --git a/editline/Makefile.in b/editline/Makefile.in index 67ae6ad4047b244fbcbb43c9997a1cc6d97fa1be..c4e5695154daa85e2a0d559a2baba4f23a61fa9e 100755 --- a/editline/Makefile.in +++ b/editline/Makefile.in @@ -3,6 +3,13 @@ # OSTYPE=$(shell uname -s) +cygx="$(shell uname -s | sed -e c\cygwin | tr [:upper:] [:lower:])" +define cyg_subst_sys + if [ $(cygx) = "cygwin" ]; then \ + cat $@ | sed -e s/"sys\.h"/"config.h"/g > $@.copy; \ + mv --force $@.copy $@; \ + fi +endef SHELL = /bin/sh @@ -184,7 +191,7 @@ $(LIB_A) : $(BGCSRCS:.c=.o_a) $(CCSRCS:.c=.o_a) $(RANLIB) $@ $(LIB_S) : $(BGCSRCS:.c=.o_s) $(CCSRCS:.c=.o_s) - $(CC) $(S_LDFLAGS) -o $@ $(BGCSRCS:.c=.o_s) $(CCSRCS:.c=.o_s) + $(CC) $(S_LDFLAGS) -o $@ $(BGCSRCS:.c=.o_s) $(CCSRCS:.c=.o_s) $(LIBS) $(TEST) : $(TCSRCS:.c=.o) $(LIB_A) $(CC) -o $@ $(TCSRCS:.c=.o) $(LIB_A) $(LIBS) @@ -203,12 +210,14 @@ fcns.h : $(AGHDRS) fcns.c : $(AGHDRS) fcns.h $(SHELL) makelist -fc $(AGHDRS) > $@ + $(cyg_subst_sys) help.h : $(ACSRCS) $(SHELL) makelist -bh $(ACSRCS) > $@ help.c : $(ACSRCS) help.h $(SHELL) makelist -bc $(ACSRCS) > $@ + $(cyg_subst_sys) editline.c : $(ACSRCS) $(BCSRCS) $(AGCSRCS) $(SHELL) makelist -e $(ACSRCS) $(BCSRCS) $(AGCSRCS) > $@ diff --git a/editline/config.h.in b/editline/config.h.in index a645a7f06fc491a8b9e483abf8a628ffbeb70139..151fb226db69d744870818e4b34549be178902dd 100755 --- a/editline/config.h.in +++ b/editline/config.h.in @@ -1,4 +1,5 @@ #undef SUNOS +#undef CYGWIN #undef HAVE_SYS_CDEFS_H #undef HAVE_TERMCAP_H @@ -15,3 +16,6 @@ #undef HAVE_STRUNVIS #include "sys.h" +#ifdef CYGWIN +# include "cygdef.h" +#endif diff --git a/editline/configure b/editline/configure index ce38a97a54f94b61a90b0a37e52ac4f9d14a1c5c..9dccffd0ff9f862e1c4bded976389151813f47af 100755 --- a/editline/configure +++ b/editline/configure @@ -894,7 +894,26 @@ case "${host}" in *-*-freebsd*) ABI="elf" ;; - *-*-linux*) + *-*-linux* | *cygwin*) + cyg="$(echo ${host} | sed -e c\cygwin)" + if [ ${cyg} = cygwin ]; then \ + echo "cygwin detected"; \ + S_CFLAGS=""; \ + echo "/* cygdef.h. Generated automatically by configure. */ +#ifndef _CYGDEF_H_ +#define _CYGDEF_H_ 1 +#include <sys/ioctl.h> +#define __linux__ 1 + + +typedef void (*sig_t)(int); + + +#endif /* _CYGDEF_H_ */" > cygdef.h; \ + echo " + #define CYGWIN 1 +" > confdefs.h; \ + fi ABI="elf" ;; *-*-netbsd*) diff --git a/editline/configure.in b/editline/configure.in index 72ae9180bc06f542ac151bb4955c81bbcb099ca9..dcef07a91aedb98024b338fa2d14e05ba96cfb44 100755 --- a/editline/configure.in +++ b/editline/configure.in @@ -31,7 +31,26 @@ case "${host}" in *-*-freebsd*) ABI="elf" ;; - *-*-linux*) + *-*-linux* | *cygwin*) + cyg="$(echo ${host} | sed -e c\cygwin)" + if [ ${cyg} = cygwin ]; then \ + echo "cygwin detected"; \ + S_CFLAGS=""; \ + echo "/* cygdef.h. Generated automatically by configure. */ +#ifndef _CYGDEF_H_ +#define _CYGDEF_H_ 1 +#include <sys/ioctl.h> +#define __linux__ 1 + + +typedef void (*sig_t)(int); + + +#endif /* _CYGDEF_H_ */" > cygdef.h; \ + echo " + #define CYGWIN 1 +" > confdefs.h; \ + fi ABI="elf" ;; *-*-netbsd*)