From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 23365 invoked by alias); 26 Feb 2003 20:14:57 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 23354 invoked from network); 26 Feb 2003 20:14:57 -0000 Received: from unknown (HELO crack.them.org) (65.125.64.184) by 172.16.49.205 with SMTP; 26 Feb 2003 20:14:57 -0000 Received: from nevyn.them.org ([66.93.61.169] ident=mail) by crack.them.org with asmtp (Exim 3.12 #1 (Debian)) id 18o9qN-00028s-00 for ; Wed, 26 Feb 2003 16:16:05 -0600 Received: from drow by nevyn.them.org with local (Exim 3.36 #1 (Debian)) id 18o7x6-0003M4-00 for ; Wed, 26 Feb 2003 15:14:52 -0500 Date: Wed, 26 Feb 2003 20:14:00 -0000 From: Daniel Jacobowitz To: gdb-patches@sources.redhat.com Subject: Re: [Patch] correctly configure wcwidth in readline Message-ID: <20030226201452.GA6815@nevyn.them.org> Mail-Followup-To: gdb-patches@sources.redhat.com References: <00d101c2ddbd$6d3bfac0$0202040a@catdog> <20030226173758.GA14836@nevyn.them.org> <00e901c2ddbe$b23815e0$0202040a@catdog> <20030226175141.GA15347@nevyn.them.org> <00fd01c2ddc0$28ab75e0$0202040a@catdog> <20030226175915.GA15700@nevyn.them.org> <013401c2ddc7$000abf90$0202040a@catdog> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <013401c2ddc7$000abf90$0202040a@catdog> User-Agent: Mutt/1.5.1i X-SW-Source: 2003-02/txt/msg00739.txt.bz2 On Wed, Feb 26, 2003 at 01:43:48PM -0500, Kris Warkentin wrote: > > Try: > > AC_CHECK_FUNC(wcwidth, have_wcwidth=yes, have_wcwidth=no) > > if test $have_wcwidth = yes; then > > AC_DEFINE(HAVE_WCWIDTH) > > AC_SUBST(WCWIDTH_OBJ,wcwidth.o) > > else > > AC_SUBST(WCWIDTH_OBJ,) > > fi > > > > You'd have to test it though. > > Okay. This works great on systems with and without wcwidth. Good thing you tested it, since I got the logic backwards above :) And your mailer ate the tabs but I assume you had them in the right places. Elena, I recommend this patch. [Kris: changelog!] > > Kris > > Index: Makefile.in > =================================================================== > RCS file: /cvs/src/src/readline/Makefile.in,v > retrieving revision 1.4 > diff -u -r1.4 Makefile.in > --- Makefile.in 8 Dec 2002 22:31:37 -0000 1.4 > +++ Makefile.in 26 Feb 2003 18:41:35 -0000 > @@ -86,6 +86,8 @@ > LIBRARY_NAME = libreadline.a > STATIC_LIBS = libreadline.a libhistory.a > > +WCWIDTH_OBJ = @WCWIDTH_OBJ@ > + > # The C code source files for this library. > CSOURCES = $(srcdir)/readline.c $(srcdir)/funmap.c $(srcdir)/keymaps.c \ > $(srcdir)/vi_mode.c $(srcdir)/parens.c $(srcdir)/rltty.c \ > @@ -98,7 +100,7 @@ > $(srcdir)/histfile.c $(srcdir)/nls.c $(srcdir)/search.c \ > $(srcdir)/shell.c $(srcdir)/savestring.c $(srcdir)/tilde.c \ > $(srcdir)/text.c $(srcdir)/misc.c $(srcdir)/compat.c \ > - $(srcdir)/mbutil.c > + $(srcdir)/mbutil.c $(srcdir)/support/wcwidth.c > > # The header files for this library. > HSOURCES = readline.h rldefs.h chardefs.h keymaps.h history.h histlib.h \ > @@ -111,7 +113,8 @@ > OBJECTS = readline.o vi_mode.o funmap.o keymaps.o parens.o search.o \ > rltty.o complete.o bind.o isearch.o display.o signals.o \ > util.o kill.o undo.o macro.o input.o callback.o terminal.o \ > - text.o nls.o misc.o compat.o xmalloc.o $(HISTOBJ) $(TILDEOBJ) > + text.o nls.o misc.o compat.o xmalloc.o $(HISTOBJ) $(TILDEOBJ) \ > + $(WCWIDTH_OBJ) > > # The texinfo files which document this library. > DOCSOURCE = doc/rlman.texinfo doc/rltech.texinfo doc/rluser.texinfo > @@ -146,6 +149,10 @@ > $(RM) $@ > $(AR) $(ARFLAGS) $@ $(HISTOBJ) xmalloc.o > -test -n "$(RANLIB)" && $(RANLIB) $@ > + > +wcwidth.o: $(srcdir)/support/wcwidth.c > + $(RM) $@ > + $(CC) $(CCFLAGS) -c $(srcdir)/support/wcwidth.c > > # Since tilde.c is shared between readline and bash, make sure we compile > # it with the right flags when it's built as part of readline > Index: aclocal.m4 > =================================================================== > RCS file: /cvs/src/src/readline/aclocal.m4,v > retrieving revision 1.4 > diff -u -r1.4 aclocal.m4 > --- aclocal.m4 8 Dec 2002 22:31:37 -0000 1.4 > +++ aclocal.m4 26 Feb 2003 18:41:35 -0000 > @@ -1653,7 +1653,13 @@ > AC_CHECK_HEADERS(langinfo.h) > > AC_CHECK_FUNC(mbsrtowcs, AC_DEFINE(HAVE_MBSRTOWCS)) > -AC_CHECK_FUNC(wcwidth, AC_DEFINE(HAVE_WCWIDTH)) > +AC_CHECK_FUNC(wcwidth, have_wcwidth=yes) > +if test "$have_wcwidth" = yes; then > + AC_DEFINE(HAVE_WCWIDTH) > + AC_SUBST(WCWIDTH_OBJ,) > +else > + AC_SUBST(WCWIDTH_OBJ,wcwidth.o) > +fi > > AC_CACHE_CHECK([for mbstate_t], bash_cv_have_mbstate_t, > [AC_TRY_RUN([ > Index: shlib/Makefile.in > =================================================================== > RCS file: /cvs/src/src/readline/shlib/Makefile.in,v > retrieving revision 1.4 > diff -u -r1.4 Makefile.in > --- shlib/Makefile.in 8 Dec 2002 22:31:38 -0000 1.4 > +++ shlib/Makefile.in 26 Feb 2003 18:41:36 -0000 > @@ -103,6 +103,8 @@ > SHARED_HISTORY = libhistory.$(SHLIB_LIBVERSION) > SHARED_LIBS = $(SHARED_READLINE) $(SHARED_HISTORY) > > +WCWIDTH_OBJ = @WCWIDTH_OBJ@ > + > # The C code source files for this library. > CSOURCES = $(topdir)/readline.c $(topdir)/funmap.c $(topdir)/keymaps.c \ > $(topdir)/vi_mode.c $(topdir)/parens.c $(topdir)/rltty.c \ > @@ -115,7 +117,7 @@ > $(topdir)/histfile.c $(topdir)/nls.c $(topdir)/search.c \ > $(topdir)/shell.c $(topdir)/savestring.c $(topdir)/tilde.c \ > $(topdir)/text.c $(topdir)/misc.c $(topdir)/compat.c \ > - $(topdir)/mbutil.c > + $(topdir)/mbutil.c $(WCWIDTH_SRC) > > # The header files for this library. > HSOURCES = readline.h rldefs.h chardefs.h keymaps.h history.h histlib.h \ > @@ -129,7 +131,7 @@ > rltty.so complete.so bind.so isearch.so display.so signals.so \ > util.so kill.so undo.so macro.so input.so callback.so terminal.so \ > text.so nls.so misc.so xmalloc.so $(SHARED_HISTOBJ) $(SHARED_TILDEOBJ) \ > - compat.so > + compat.so $(WCWIDTH_OBJ) > > ########################################################################## > > @@ -152,6 +154,10 @@ > $(SHARED_HISTORY): $(SHARED_HISTOBJ) xmalloc.so > $(RM) $@ > $(SHOBJ_LD) ${SHOBJ_LDFLAGS} ${SHLIB_XLDFLAGS} -o $@ $(SHARED_HISTOBJ) > xmalloc.so $(SHLIB_LIBS) > + > +wcwidth.o: $(srcdir)/support/wcwidth.c > + $(RM) $@ > + $(SHOBJ_CC) -c $(CCFLAGS) $(SHOBJ_FLAGS) $(srcdir)/support/wcwidth.c > > # Since tilde.c is shared between readline and bash, make sure we compile > # it with the right flags when it's built as part of readline > > -- Daniel Jacobowitz MontaVista Software Debian GNU/Linux Developer