zsh-workers
 help / color / mirror / code / Atom feed
From: "Peter A. Castro" <doctor@fruitbat.org>
To: zsh-workers@sunsite.dk
Subject: Patch for 4.2.3 building on Cygwin
Date: Sun, 30 Jan 2005 21:07:38 -0800 (PST)	[thread overview]
Message-ID: <Pine.LNX.4.58.0501241602420.16726@ming.fruitbat.org> (raw)
In-Reply-To: <Pine.LNX.4.53.0404051424500.11532@gremlin.fruitbat.org>

[-- Attachment #1: Type: TEXT/PLAIN, Size: 1263 bytes --]

Cygwin updates against zsh-4.2.3.  See attached diffs:

configure.ac - check for iconv.h
             - check for libiconv() if cygwin
	     - call 'pcre-config --libs' to get LIBS if using pcre
Src/utils.c  - added if defined(HAVE_ICONV_H) to #if's which test for
               HAVE_ICONV or HAVE_LIBICONV

Notes:

Added iconv.h header to header check list.  This is really just for
completeness.  iconv() in Cygwin is really libiconv() (iconv.h does a
"#define iconv libiconv").  However the AC_CHECK_LIB() macro doesn't know
to include iconv.h.  I played with coding a custom conf test to #include
iconv.h but ran into prototype issues and decided it was simpler to just
look for the real function instead using AC_CHECK_LIB.

pcre's libs should be obtained by running pcre-config.  This isn't really
a cygwin-ism, but more of a generic pcre issue.

FIFO's in Cygwin are implemented using Windows' underlying named pipes
implementation and are somewhat buggy (like Windows, itself :).  Until
this is resolved, it makes more sense to disable their usage.  I'll
track this issue and send updates when things are working properly.

Thanks!

-- 
Peter A. Castro <doctor@fruitbat.org> or <Peter.Castro@oracle.com>
	"Cats are just autistic Dogs" -- Dr. Tony Attwood

[-- Attachment #2: zsh423cygwin.patch --]
[-- Type: TEXT/PLAIN, Size: 2971 bytes --]

diff -urN -x .build -x .inst -x .sinst zsh-4.2.3-orig/Src/utils.c zsh-4.2.3/Src/utils.c
--- zsh-4.2.3-orig/Src/utils.c	2005-01-12 02:56:16.000000000 -0800
+++ zsh-4.2.3/Src/utils.c	2005-01-22 21:37:58.765625000 -0800
@@ -35,7 +35,7 @@
 #else
 # ifdef HAVE_LANGINFO_H 			       
 #   include <langinfo.h>			       
-#   if defined(HAVE_ICONV) || defined(HAVE_LIBICONV)   
+#   if defined(HAVE_ICONV_H) || defined(HAVE_ICONV) || defined(HAVE_LIBICONV)   
 #     include <iconv.h> 			       
 #   endif					       
 # endif 					       
@@ -3521,7 +3521,7 @@
     size_t count;
 #else
     unsigned int wval;
-# if defined(HAVE_NL_LANGINFO) && defined(CODESET) && (defined(HAVE_ICONV) || defined(HAVE_LIBICONV))
+# if defined(HAVE_NL_LANGINFO) && defined(CODESET) && (defined(HAVE_ICONV_H) || defined(HAVE_ICONV) || defined(HAVE_LIBICONV))
     iconv_t cd;
     char inbuf[4];
     size_t inbytes, outbytes;
@@ -3642,7 +3642,7 @@
 		    t += ucs4toutf8(t, wval);
 		    continue;
 		} else {
-#   if defined(HAVE_ICONV) || defined(HAVE_LIBICONV)
+#   if defined(HAVE_ICONV_H) || defined(HAVE_ICONV) || defined(HAVE_LIBICONV)
     	    	    inbytes = 4;
 		    outbytes = 6;
     	    	    inptr = inbuf;
diff -urN -x .build -x .inst -x .sinst zsh-4.2.3-orig/configure.ac zsh-4.2.3/configure.ac
--- zsh-4.2.3-orig/configure.ac	2005-01-12 02:55:06.000000000 -0800
+++ zsh-4.2.3/configure.ac	2005-01-29 11:53:24.187500000 -0800
@@ -1,4 +1,3 @@
-dnl
 dnl  configure.ac: Configure template for zsh.
 dnl  Process this file with autoconf to produce a configure script.
 dnl
@@ -529,7 +528,7 @@
 		 locale.h errno.h stdio.h stdlib.h unistd.h sys/capability.h \
 		 utmp.h utmpx.h sys/types.h pwd.h grp.h poll.h sys/mman.h \
 		 netinet/in_systm.h pcre.h langinfo.h wchar.h stddef.h \
-		 sys/stropts.h)
+		 sys/stropts.h iconv.h)
 if test $dynamic = yes; then
   AC_CHECK_HEADERS(dlfcn.h)
   AC_CHECK_HEADERS(dl.h)
@@ -727,11 +726,17 @@
 
 AC_CHECK_LIB(socket, socket)
 
-AC_CHECK_LIB(iconv, iconv)
+dnl AC_CHECK_LIB(iconv, iconv)
+
+if test "$host_os" = cygwin; then
+dnl cygwin iconv() is really libiconv()
+AC_CHECK_LIB(iconv, libiconv)
+fi
 
 if test x$enable_pcre = xyes; then
 dnl pcre-config should probably be employed here
-AC_SEARCH_LIBS(pcre_compile, pcre)
+dnl AC_SEARCH_LIBS(pcre_compile, pcre)
+  LIBS="`pcre-config --libs` $LIBS"
 fi
 
 dnl ---------------------
@@ -1633,7 +1638,11 @@
 dnl -----------
 AC_CACHE_CHECK(if named FIFOs work,
 zsh_cv_sys_fifo,
-[AC_TRY_RUN([
+[if test "$host_os" = cygwin; then
+dnl for now, fifos no worky in cygwin
+zsh_cv_sys_fifo=no
+else
+AC_TRY_RUN([
 #include <fcntl.h>
 #include <signal.h>
 main()
@@ -1663,7 +1672,8 @@
 ],
   zsh_cv_sys_fifo=yes,
   zsh_cv_sys_fifo=no,
-  zsh_cv_sys_fifo=yes)])
+  zsh_cv_sys_fifo=yes)
+fi])
 AH_TEMPLATE([HAVE_FIFOS],
 [Define to 1 if system has working FIFOs.])
 if test $zsh_cv_sys_fifo = yes; then

  parent reply	other threads:[~2005-01-31  5:11 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <s38u10erwrz.fsf@ackusativ.ling.uu.se>
     [not found] ` <1vvf60l9i7n4nlobcroik2le5ofe6v2rn4@4ax.com>
     [not found]   ` <Pine.LNX.4.53.0403291441160.5939@gremlin.fruitbat.org>
2004-03-30  9:32     ` zsh and line breaks Oliver Kiddle
2004-03-30 18:54       ` Peter A. Castro
2004-03-31 12:45         ` Oliver Kiddle
2004-03-31 17:53           ` Peter A. Castro
2004-04-01  9:09             ` Oliver Kiddle
2004-04-01 21:20               ` Peter A. Castro
2004-04-02  9:49                 ` Dave Korn
2004-04-02 16:59                   ` Peter A. Castro
2004-04-03  1:23                 ` Peter A. Castro
2004-04-03 20:35                   ` Bart Schaefer
2004-04-04 19:29                     ` Peter Stephenson
2004-04-05 16:19                       ` Peter A. Castro
2004-04-05 17:40                         ` Peter Stephenson
2004-04-05 22:08                           ` Peter A. Castro
2004-04-05 23:08                             ` Clint Adams
2004-04-05 23:25                               ` Peter A. Castro
2004-04-07 21:10                                 ` Clint Adams
2004-04-08  1:16                                   ` Peter A. Castro
2004-04-09  5:00                                     ` Felix Rosencrantz
2004-04-09 16:26                                       ` Peter A. Castro
2004-04-06  9:43                             ` Peter Stephenson
2004-04-06 22:25                               ` Peter A. Castro
2004-04-15  5:03                             ` Clint Adams
2004-04-15  6:43                               ` Peter A. Castro
2004-04-15 10:35                                 ` Clint Adams
2004-04-15 16:57                                   ` Peter A. Castro
2004-04-15 18:14                                     ` Clint Adams
2005-01-31  5:07                             ` Peter A. Castro [this message]
2005-01-31 11:37                               ` Patch for 4.2.3 building on Cygwin Peter Stephenson
2005-01-31 20:48                                 ` Peter A. Castro
2005-02-01 10:53                                   ` Peter Stephenson
2005-02-01 16:03                                     ` Bart Schaefer
2005-02-01 18:04                                       ` Peter Stephenson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Pine.LNX.4.58.0501241602420.16726@ming.fruitbat.org \
    --to=doctor@fruitbat.org \
    --cc=zsh-workers@sunsite.dk \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/zsh/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).