unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Build failure in xterm.c
@ 2003-06-26  4:00 Vin Shelton
  0 siblings, 0 replies; 5+ messages in thread
From: Vin Shelton @ 2003-06-26  4:00 UTC (permalink / raw


Sorry if this has already been discussed, but I couldn't find any
reference to it in the archive of the mailinglist.

Using the latest CVS sources, xterm.c will not build for me.  I'm
getting the following error:

gcc -c -D_BSD_SOURCE  -I/usr/local/include -Demacs -DHAVE_CONFIG_H -DUSE_LUCID  -I. -I/opt/src/emacs-2003-06-25/src -D_BSD_SOURCE -g -O2 /opt/src/emacs-2003-06-25/src/xterm.c
/opt/src/emacs-2003-06-25/src/xterm.c: In function `xim_initialize':
/opt/src/emacs-2003-06-25/src/xterm.c:8126: error: `XRegisterIMInstantiateCallback_arg6' undeclared (first use in this function)
/opt/src/emacs-2003-06-25/src/xterm.c:8126: error: (Each undeclared identifier is reported only once
/opt/src/emacs-2003-06-25/src/xterm.c:8126: error: for each function it appears in.)
/opt/src/emacs-2003-06-25/src/xterm.c:8126: error: parse error before "xim_inst"
make: *** [xterm.o] Error 1

This is because the necessary definition was not added to
src/config.in when configure.in was modified to generate the
appropriate type for XRegisterIMInstantiateCallback_arg6.  I've
attached a patch for this problem.

However, the configure test itself is wrong.  It purports to
differentiate between systems which require XPointer as the final
argument to XRegisterIMInstantiateCallback and those which require
XPointer*.  My system requires an XPointer (witness these lines from
/usr/include/X11/Xlib.h:

extern Bool XRegisterIMInstantiateCallback(
#if NeedFunctionPrototypes
    Display*                    /* dpy */,
    struct _XrmHashBucketRec*   /* rdb */,
    char*                       /* res_name */,
    char*                       /* res_class */,
    XIDProc                     /* callback */,
    XPointer                    /* client_data */
#endif
);

yet the configure test reports that I need XPointer*.  The reason for
this is that gcc only generates a warning on the incorrect argument
type, but still compiles the conftest code and generates an object
file.  Here is the relevant output from my config.log file:

configure:8917: gcc -c   -O2  -D_BSD_SOURCE  -I/usr/local/include conftest.c >&5
configure: In function `main':
configure:8978: warning: passing arg 5 of `XRegisterIMInstantiateCallback' from incompatible pointer type
configure:8978: warning: passing arg 6 of `XRegisterIMInstantiateCallback' from incompatible pointer type
configure:8920: $? = 0
configure:8923: test -s conftest.o
configure:8926: $? = 0

and if you look at the definitions at the end of config.log you'll
see:

#define XRegisterIMInstantiateCallback_arg6 XPointer*


Here is the patch for src/config.in:

ChangeLog entry for src/ChangeLog:
2003-06-25  Vin Shelton  <acs@xemacs.org>

	* config.in: Add definition for
	XRegisterIMInstantiateCallback_arg6.


Index: src/config.in
===================================================================
RCS file: /cvsroot/emacs/emacs/src/config.in,v
retrieving revision 1.187
diff -a -u -r1.187 config.in
--- src/config.in	6 Jun 2003 10:16:42 -0000	1.187
+++ src/config.in	26 Jun 2003 03:52:27 -0000
@@ -615,6 +615,10 @@
 /* Define to 1 if you have the XkbGetKeyboard function. */
 #undef HAVE_XKBGETKEYBOARD
 
+/* Define the appropriate type for the 6th argument
+   to the XRegisterIMInstantiateCallback function */
+#undef XRegisterIMInstantiateCallback_arg6
+
 /* Define to 1 if you have the Xpm libary (-lXpm). */
 #undef HAVE_XPM
 

Regards,
  Vin Shelton

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

* Re: Build failure in xterm.c
@ 2003-06-27  8:55 Jan D.
  2003-06-27  9:26 ` Andreas Schwab
  2003-06-28  4:03 ` Richard Stallman
  0 siblings, 2 replies; 5+ messages in thread
From: Jan D. @ 2003-06-27  8:55 UTC (permalink / raw


 > Using the latest CVS sources, xterm.c will not build for me.  I'm
 > getting the following error:
...
 > /opt/src/emacs-2003-06-25/src/xterm.c:8126: error:
 > `XRegisterIMInstantiateCallback_arg6' undeclared (first use in this
 > function)

I've checked the changes in to config.in, and regenerated configure.
But I see the changes in xterm.c that needed this has been backed out.
Maybe we should just cast to (void *) and be done with it?

	Jan D.

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

* Re: Build failure in xterm.c
  2003-06-27  8:55 Build failure in xterm.c Jan D.
@ 2003-06-27  9:26 ` Andreas Schwab
  2003-06-27 11:44   ` Jan D.
  2003-06-28  4:03 ` Richard Stallman
  1 sibling, 1 reply; 5+ messages in thread
From: Andreas Schwab @ 2003-06-27  9:26 UTC (permalink / raw
  Cc: emacs-devel

"Jan D." <jan.h.d@swipnet.se> writes:

|>  > Using the latest CVS sources, xterm.c will not build for me.  I'm
|>  > getting the following error:
|> ...
|>  > /opt/src/emacs-2003-06-25/src/xterm.c:8126: error:
|>  > `XRegisterIMInstantiateCallback_arg6' undeclared (first use in this
|>  > function)
|> 
|> I've checked the changes in to config.in, and regenerated configure.

Note that config.in is supposted to be generated by autoheader.  Please
don't make any manual changes there.

Andreas.

-- 
Andreas Schwab, SuSE Labs, schwab@suse.de
SuSE Linux AG, Deutschherrnstr. 15-19, D-90429 Nürnberg
Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."

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

* Re: Build failure in xterm.c
  2003-06-27  9:26 ` Andreas Schwab
@ 2003-06-27 11:44   ` Jan D.
  0 siblings, 0 replies; 5+ messages in thread
From: Jan D. @ 2003-06-27 11:44 UTC (permalink / raw
  Cc: emacs-devel

> Note that config.in is supposted to be generated by autoheader.  Please
> don't make any manual changes there.

I did use autheader.  Sorry if my wording indicated something else.

	Jan D.

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

* Re: Build failure in xterm.c
  2003-06-27  8:55 Build failure in xterm.c Jan D.
  2003-06-27  9:26 ` Andreas Schwab
@ 2003-06-28  4:03 ` Richard Stallman
  1 sibling, 0 replies; 5+ messages in thread
From: Richard Stallman @ 2003-06-28  4:03 UTC (permalink / raw
  Cc: emacs-devel

    I've checked the changes in to config.in, and regenerated configure.
    But I see the changes in xterm.c that needed this has been backed out.

I backed it out because, even given the new code in config.in,
I found that configure made the wrong choice on my system.
It can be put back in when someone fixes configure.in.

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

end of thread, other threads:[~2003-06-28  4:03 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-06-27  8:55 Build failure in xterm.c Jan D.
2003-06-27  9:26 ` Andreas Schwab
2003-06-27 11:44   ` Jan D.
2003-06-28  4:03 ` Richard Stallman
  -- strict thread matches above, loose matches on Subject: below --
2003-06-26  4:00 Vin Shelton

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