<<< Date Index >>>     <<< Thread Index >>>

Re: mutt/2820: Mutt doesn't build with --without-wc-funcs



The following reply was made to PR mutt/2820; it has been noted by GNATS.

From: Vincent Lefevre <vincent@xxxxxxxxxx>
To: Mutt Developers <mutt-dev@xxxxxxxx>
Cc: bug-any@xxxxxxxxxxxxx
Subject: Re: mutt/2820: Mutt doesn't build with --without-wc-funcs
Date: Sun, 4 Mar 2007 13:15:35 +0100

 --AhhlLboLdkugWU4S
 Content-Type: text/plain; charset=iso-8859-1
 Content-Disposition: inline
 Content-Transfer-Encoding: quoted-printable
 
 On 2007-03-04 12:31:36 +0100, Vincent Lefevre wrote:
 > When I configure Mutt using --without-wc-funcs (this should be
 > better under Mac OS X as its wcwidth function is buggy), I get the
 > following error when running make:
 >=20
 > gcc -DHAVE_CONFIG_H -I. -I..  -I.. -I../intl -I../intl  -Wall -pedantic=
  -g -O2 -MT auth.o -MD -MP -MF .deps/auth.Tpo -c -o auth.o auth.c
 > In file included from ../protos.h:24,
 >                  from ../mutt.h:956,
 >                  from auth.c:27:
 > ../mbyte.h:16: error: parse error before '(' token
 > ../mbyte.h:17: error: parse error before '(' token
 > ../mbyte.h:18: error: parse error before '(' token
 
 I could fix the build problem by adding #undef's in mbyte.h:
 
 Index: mbyte.h
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
 RCS file: /home/roessler/cvs/mutt/mbyte.h,v
 retrieving revision 3.1
 diff -d -u -r3.1 mbyte.h
 --- mbyte.h    5 Feb 2005 14:11:36 -0000       3.1
 +++ mbyte.h    4 Mar 2007 12:09:38 -0000
 @@ -11,13 +11,21 @@
  # endif
 =20
  # ifndef HAVE_WC_FUNCS
 +#  undef wcrtomb
  size_t wcrtomb (char *s, wchar_t wc, mbstate_t *ps);
 +#  undef mbrtowc
  size_t mbrtowc (wchar_t *pwc, const char *s, size_t n, mbstate_t *ps);
 +#  undef iswprint
  int iswprint (wint_t wc);
 +#  undef iswspace
  int iswspace (wint_t wc);
 +#  undef iswalnum
  int iswalnum (wint_t wc);
 +#  undef towupper
  wint_t towupper (wint_t wc);
 +#  undef towlower
  wint_t towlower (wint_t wc);
 +#  undef wcwidth
  int wcwidth (wchar_t wc);
  # endif /* !HAVE_WC_FUNCS */
 =20
 but combining characters aren't displayed correctly. I get:
 
 e\01.1 e\01.2 e\01.3 e\01.4 e\01.5 e\01.6 e\01.7 e\01.8 e\01.9+e\01.10 e\=
 01.11 e
 \01.12 e\01.13 e\01.14 e\01.15 e\01.16 e\01.17+e\01.18 e\01.19 e\01.20
 
 for the attached mail message.
 
 --=20
 Vincent Lef=E8vre <vincent@xxxxxxxxxx> - Web: <http://www.vinc17.org/>
 100% accessible validated (X)HTML - Blog: <http://www.vinc17.org/blog/>
 Work: CR INRIA - computer arithmetic / Arenaire project (LIP, ENS-Lyon)
 
 --AhhlLboLdkugWU4S
 Content-Type: text/plain; charset=utf-8
 Content-Disposition: attachment; filename=combining-wcwidth
 Content-Transfer-Encoding: quoted-printable
 
 From vincent@xxxxxxxxxx Sun Mar  4 11:58:35 2007
 Date: Sun, 4 Mar 2007 11:58:31 +0100
 From: Vincent Lefevre <vincent@xxxxxxxxxx>
 To: Vincent Lefevre <vincent@xxxxxxxxxx>
 Subject: test of combining-character width
 Message-ID: <20070304105831.GC5012@xxxxxxxxxxxxxxxxxxx>
 MIME-Version: 1.0
 Content-Type: text/plain; charset=3Dutf-8
 Content-Disposition: inline
 Content-Transfer-Encoding: 8bit
 Status: RO
 Content-Length: 131
 Lines: 1
 
 e=CC=81.1 e=CC=81.2 e=CC=81.3 e=CC=81.4 e=CC=81.5 e=CC=81.6 e=CC=81.7 e=CC=
 =81.8 e=CC=81.9 e=CC=81.10 e=CC=81.11 e=CC=81.12 e=CC=81.13 e=CC=81.14 e=CC=
 =81.15 e=CC=81.16 e=CC=81.17 e=CC=81.18 e=CC=81.19 e=CC=81.20
 
 
 --AhhlLboLdkugWU4S--