unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#12464: 24.2.50; nt/configure.bat fails to detect giflib-5.0.0
@ 2012-09-18  9:13 Kazuhiro Ito
  2012-09-18 10:04 ` Eli Zaretskii
  0 siblings, 1 reply; 4+ messages in thread
From: Kazuhiro Ito @ 2012-09-18  9:13 UTC (permalink / raw)
  To: 12464

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


-- 
Kazuhiro Ito





^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#12464: 24.2.50; nt/configure.bat fails to detect giflib-5.0.0
  2012-09-18  9:13 bug#12464: 24.2.50; nt/configure.bat fails to detect giflib-5.0.0 Kazuhiro Ito
@ 2012-09-18 10:04 ` Eli Zaretskii
  2012-09-18 10:32   ` Kazuhiro Ito
  0 siblings, 1 reply; 4+ messages in thread
From: Eli Zaretskii @ 2012-09-18 10:04 UTC (permalink / raw)
  To: Kazuhiro Ito; +Cc: 12464

> Date: Tue, 18 Sep 2012 18:13:45 +0900
> From: Kazuhiro Ito <kzhr@d1.dion.ne.jp>
> 
> 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.





^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#12464: 24.2.50; nt/configure.bat fails to detect giflib-5.0.0
  2012-09-18 10:04 ` Eli Zaretskii
@ 2012-09-18 10:32   ` Kazuhiro Ito
  2012-09-18 10:52     ` Eli Zaretskii
  0 siblings, 1 reply; 4+ messages in thread
From: Kazuhiro Ito @ 2012-09-18 10:32 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 12464

> > 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





^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#12464: 24.2.50; nt/configure.bat fails to detect giflib-5.0.0
  2012-09-18 10:32   ` Kazuhiro Ito
@ 2012-09-18 10:52     ` Eli Zaretskii
  0 siblings, 0 replies; 4+ messages in thread
From: Eli Zaretskii @ 2012-09-18 10:52 UTC (permalink / raw)
  To: Kazuhiro Ito; +Cc: 12464-done

> Date: Tue, 18 Sep 2012 19:32:21 +0900
> From: Kazuhiro Ito <kzhr@d1.dion.ne.jp>
> Cc: 12464@debbugs.gnu.org
> 
> > 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.

Thanks, I committed the change below to fix this, as trunk revision
110088, and I'm marking the bug as done.

=== modified file 'nt/ChangeLog'
--- nt/ChangeLog	2012-09-17 13:22:45 +0000
+++ nt/ChangeLog	2012-09-18 10:49:33 +0000
@@ -1,3 +1,8 @@
+2012-09-18  Eli Zaretskii  <eliz@gnu.org>
+
+	* configure.bat: Include stddef.h before gif_lib.h, to have size_t
+	defined, as needed by giflib-5.0.0.  (Bug#12464)
+
 2012-09-17  Juanma Barranquero  <lekktu@gmail.com>
 
 	* config.nt: Sync with autogen/config.in.

=== modified file 'nt/configure.bat'
--- nt/configure.bat	2012-09-08 11:20:32 +0000
+++ nt/configure.bat	2012-09-18 10:49:33 +0000
@@ -627,7 +627,10 @@ rm -f junk.c junk.obj
 if (%gifsupport%) == (N) goto gifDone
 
 echo Checking for libgif...
-echo #include "gif_lib.h" >junk.c
+rem giflib-5.0.0 needs size_t defined before gif_lib.h is included
+rem redirection characters need to be protected from the shell
+echo #include ^<stddef.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






^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2012-09-18 10:52 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-09-18  9:13 bug#12464: 24.2.50; nt/configure.bat fails to detect giflib-5.0.0 Kazuhiro Ito
2012-09-18 10:04 ` Eli Zaretskii
2012-09-18 10:32   ` Kazuhiro Ito
2012-09-18 10:52     ` Eli Zaretskii

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

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 read-only IMAP folder(s) and NNTP newsgroup(s).