[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#12464: 24.2.50; nt/configure.bat fails to detect giflib-5.0.0
From: |
Kazuhiro Ito |
Subject: |
bug#12464: 24.2.50; nt/configure.bat fails to detect giflib-5.0.0 |
Date: |
Tue, 18 Sep 2012 19:32:21 +0900 |
User-agent: |
Wanderlust/2.15.9 (Almost Unreal) SEMI-EPG/1.14.7 (Harue) FLIM/1.14.9 (Gojō) APEL/10.8 EasyPG/1.0.0 Emacs/24.2.50 (i386-mingw-nt6.1.7601) MULE/6.0 (HANACHIRUSATO) |
> > Because gif_lib.h of giflib-5.0.0 assumes size_t is defined (I don't
> > know whether that is intended), nt/configure.bat fails to check its
> > availability.
> >
> > In nt/config.log
> > > In file included from junk.c:1:0:
> > > f:/build/emacs-w32/include/gif_lib.h:262:37: error: expected ';', ',' or
> > > ')' before 'GifExtensionLength'
> > > f:/build/emacs-w32/include/gif_lib.h:265:8: error: expected '=', ',',
> > > ';', 'asm' or '__attribute__' before 'EGifGCBToExtension'
> > > The failed program was:
> > > #include "gif_lib.h"
> > > main (){}
> > > gcc -If:/build/emacs-w32/include -If:/build/emacs-w32/include/libxml2 -g
> > > -c junk.c -o junk.obj
> > > gcc -If:/build/emacs-w32/include -If:/build/emacs-w32/include/libxml2 -g
> > > -c junk.c -o junk.obj
> >
> > Though I don't know whether Emacs supports giflib-5.0.0, the below
> > patch can fix the problem. Gif support on my binaries (built by gcc
> > 4.5.2, MinGW) has no problem with giflib-5.0.0 as far as I tested.
> >
> > === modified file 'nt/configure.bat'
> > --- nt/configure.bat 2012-09-08 11:20:32 +0000
> > +++ nt/configure.bat 2012-09-18 03:14:43 +0000
> > @@ -627,7 +627,8 @@
> > if (%gifsupport%) == (N) goto gifDone
> >
> > echo Checking for libgif...
> > -echo #include "gif_lib.h" >junk.c
> > +echo #include "stdio.h" >junk.c
> > +echo #include "gif_lib.h" >>junk.c
> > echo main (){} >>junk.c
> > rem -o option is ignored with cl, but allows result to be consistent.
> > echo %COMPILER% %usercflags% %mingwflag% -c junk.c -o junk.obj >>config.log
>
> Does it work to use stddef.h instead of stdio.h? stddef.h is where
> size_t is normally defined.
Yes, stddef.h also works. I didn't care where size_t is defined.
--
Kazuhiro Ito