make editline build properly on cygwin (bug #4624)
authorKevin P. Fleming <kpfleming@digium.com>
Tue, 5 Jul 2005 19:30:18 +0000 (19:30 +0000)
committerKevin P. Fleming <kpfleming@digium.com>
Tue, 5 Jul 2005 19:30:18 +0000 (19:30 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6029 65c4cc65-6c06-0410-ace0-fbb531ad65f3

editline/Makefile.in
editline/config.h.in
editline/configure
editline/configure.in

index 67ae6ad..c4e5695 100755 (executable)
@@ -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) > $@
index a645a7f..151fb22 100755 (executable)
@@ -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
index ce38a97..9dccffd 100755 (executable)
@@ -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*)
index 72ae918..dcef07a 100755 (executable)
@@ -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*)