* poll_for_input_1 undefined
@ 2014-07-11 16:57 Richard Stallman
2014-07-11 17:34 ` Dmitry Antipov
` (2 more replies)
0 siblings, 3 replies; 13+ messages in thread
From: Richard Stallman @ 2014-07-11 16:57 UTC (permalink / raw)
To: emacs-devel
[[[ To any NSA and FBI agents reading my email: please consider ]]]
[[[ whether defending the US Constitution against all enemies, ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]
In the trunk, updated an hour ago:
xterm.c at line 9012 calls poll_for_input_1,
but this is not defined anywhere.
keyboard.c has the only definition for poll_for_input_1
but it is inside #ifdef POLL_FOR_INPUT.
POLL_FOR_INPUT is not defined.
In fact, config.h does not mention POLL_FOR_INPUT, neither to define
it nor not to define it. That is because config.in does not mention
POLL_FOR_INPUT either.
It appears to me that the trunk is broken on X on all platforms,
and has been since the June 5 change in keyboard.c.
Can that really be true, with nobody noticing?
I'm compiling on the Yeeloong, which is mipsel,
but that should not affect much.
--
Dr Richard Stallman
President, Free Software Foundation
51 Franklin St
Boston MA 02110
USA
www.fsf.org www.gnu.org
Skype: No way! That's nonfree (freedom-denying) software.
Use Ekiga or an ordinary phone call.
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: poll_for_input_1 undefined
2014-07-11 16:57 poll_for_input_1 undefined Richard Stallman
@ 2014-07-11 17:34 ` Dmitry Antipov
2014-07-11 18:12 ` Glenn Morris
2014-07-11 18:19 ` Andreas Schwab
2 siblings, 0 replies; 13+ messages in thread
From: Dmitry Antipov @ 2014-07-11 17:34 UTC (permalink / raw)
To: rms; +Cc: emacs-devel
On 07/11/2014 08:57 PM, Richard Stallman wrote:
> In fact, config.h does not mention POLL_FOR_INPUT, neither to define
> it nor not to define it. That is because config.in does not mention
> POLL_FOR_INPUT either.
>
> It appears to me that the trunk is broken on X on all platforms,
> and has been since the June 5 change in keyboard.c.
This is pretty strange if you look at this configure.in fragment:
if test "$window_system" != "none"; then
AC_DEFINE(HAVE_WINDOW_SYSTEM, 1, [Define if you have a window system.])
AC_DEFINE(POLL_FOR_INPUT, 1, [Define if you poll periodically to detect C-g.])
WINDOW_SYSTEM_OBJ="fontset.o fringe.o image.o"
fi
Can you regenerate build stuff with autogen.sh and check whether it helps?
Dmitry
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: poll_for_input_1 undefined
2014-07-11 16:57 poll_for_input_1 undefined Richard Stallman
2014-07-11 17:34 ` Dmitry Antipov
@ 2014-07-11 18:12 ` Glenn Morris
2014-07-11 18:19 ` Andreas Schwab
2 siblings, 0 replies; 13+ messages in thread
From: Glenn Morris @ 2014-07-11 18:12 UTC (permalink / raw)
To: rms; +Cc: emacs-devel
Richard Stallman wrote:
> It appears to me that the trunk is broken on X on all platforms,
> and has been since the June 5 change in keyboard.c.
>
> Can that really be true, with nobody noticing?
Since (IIUC) you build infrequently and do not bootstrap, it is very
unlikely you will be the first person to notice such an error. It is
much more likely that you encounter some random glitch because you did
not do a clean rebuild. I assume that's the case here.
Note that there are automated builds on Emacs that run on several
platforms, in theory after every commit, though in practice they often
don't run quite that often. But normally several times a day.
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: poll_for_input_1 undefined
2014-07-11 16:57 poll_for_input_1 undefined Richard Stallman
2014-07-11 17:34 ` Dmitry Antipov
2014-07-11 18:12 ` Glenn Morris
@ 2014-07-11 18:19 ` Andreas Schwab
2014-07-12 13:07 ` Richard Stallman
2 siblings, 1 reply; 13+ messages in thread
From: Andreas Schwab @ 2014-07-11 18:19 UTC (permalink / raw)
To: Richard Stallman; +Cc: emacs-devel
Richard Stallman <rms@gnu.org> writes:
> In fact, config.h does not mention POLL_FOR_INPUT, neither to define
> it nor not to define it. That is because config.in does not mention
> POLL_FOR_INPUT either.
config.in is a generated file. Unless your host has an instable clock
this will be regenerated automatically.
Andreas.
--
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
"And now for something completely different."
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: poll_for_input_1 undefined
2014-07-11 18:19 ` Andreas Schwab
@ 2014-07-12 13:07 ` Richard Stallman
2014-07-12 13:25 ` Andreas Schwab
0 siblings, 1 reply; 13+ messages in thread
From: Richard Stallman @ 2014-07-12 13:07 UTC (permalink / raw)
To: Andreas Schwab; +Cc: emacs-devel
[[[ To any NSA and FBI agents reading my email: please consider ]]]
[[[ whether defending the US Constitution against all enemies, ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]
config.in is a generated file. Unless your host has an instable clock
this will be regenerated automatically.
It wasn't regenerated in my case.
(config.in used to be edited manually, and I did not realize that
was no longer the practice.)
I went to src and ran "make -k emacs".
First it recompiled all the .o files in src.
Then it did a recursive make for a library
which reran configure, but without updating config.in.
Then it recompiled the .o files again.
This does not seem right.
--
Dr Richard Stallman
President, Free Software Foundation
51 Franklin St
Boston MA 02110
USA
www.fsf.org www.gnu.org
Skype: No way! That's nonfree (freedom-denying) software.
Use Ekiga or an ordinary phone call.
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: poll_for_input_1 undefined
2014-07-12 13:07 ` Richard Stallman
@ 2014-07-12 13:25 ` Andreas Schwab
2014-07-12 23:17 ` Richard Stallman
2014-07-12 23:17 ` Richard Stallman
0 siblings, 2 replies; 13+ messages in thread
From: Andreas Schwab @ 2014-07-12 13:25 UTC (permalink / raw)
To: Richard Stallman; +Cc: emacs-devel
Richard Stallman <rms@gnu.org> writes:
> Then it did a recursive make for a library
> which reran configure, but without updating config.in.
config.in isn't generated by configure. It is generated by autoheader.
> Then it recompiled the .o files again.
> This does not seem right.
Most likely you have inconsistent timestamps due to instable clock.
Andreas.
--
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
"And now for something completely different."
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: poll_for_input_1 undefined
2014-07-12 13:25 ` Andreas Schwab
@ 2014-07-12 23:17 ` Richard Stallman
2014-07-13 7:25 ` Andreas Schwab
2014-07-12 23:17 ` Richard Stallman
1 sibling, 1 reply; 13+ messages in thread
From: Richard Stallman @ 2014-07-12 23:17 UTC (permalink / raw)
To: Andreas Schwab; +Cc: emacs-devel
[[[ To any NSA and FBI agents reading my email: please consider ]]]
[[[ whether defending the US Constitution against all enemies, ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]
> Then it recompiled the .o files again.
> This does not seem right.
Most likely you have inconsistent timestamps due to instable clock.
Could you explain what you mean by "instable clock"?
My machine's clock seems to advance steadily and properly.
All the files are local on this machine.
--
Dr Richard Stallman
President, Free Software Foundation
51 Franklin St
Boston MA 02110
USA
www.fsf.org www.gnu.org
Skype: No way! That's nonfree (freedom-denying) software.
Use Ekiga or an ordinary phone call.
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: poll_for_input_1 undefined
2014-07-12 13:25 ` Andreas Schwab
2014-07-12 23:17 ` Richard Stallman
@ 2014-07-12 23:17 ` Richard Stallman
2014-07-13 0:05 ` Glenn Morris
1 sibling, 1 reply; 13+ messages in thread
From: Richard Stallman @ 2014-07-12 23:17 UTC (permalink / raw)
To: Andreas Schwab; +Cc: emacs-devel
[[[ To any NSA and FBI agents reading my email: please consider ]]]
[[[ whether defending the US Constitution against all enemies, ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]
> Then it did a recursive make for a library
> which reran configure, but without updating config.in.
config.in isn't generated by configure. It is generated by autoheader.
The makefile should update config.in before using it.
And it should run configure before compiling the C sources,
if it is going to run configure at all.
--
Dr Richard Stallman
President, Free Software Foundation
51 Franklin St
Boston MA 02110
USA
www.fsf.org www.gnu.org
Skype: No way! That's nonfree (freedom-denying) software.
Use Ekiga or an ordinary phone call.
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: poll_for_input_1 undefined
2014-07-12 23:17 ` Richard Stallman
@ 2014-07-13 0:05 ` Glenn Morris
2014-07-13 21:54 ` Richard Stallman
0 siblings, 1 reply; 13+ messages in thread
From: Glenn Morris @ 2014-07-13 0:05 UTC (permalink / raw)
To: rms; +Cc: Andreas Schwab, emacs-devel
Richard Stallman wrote:
> The makefile should update config.in before using it.
It does.
> And it should run configure before compiling the C sources,
> if it is going to run configure at all.
It does.
You can test this eg by: touch configure.ac; make.
If you can give a reproducible recipe showing how to get into the state
that you did, things could be improved. But I imagine that even with
a slow machine, it would be quicker and more efficient to just do a
clean rebuild, rather than us all trying to figure it exactly what
happened.
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: poll_for_input_1 undefined
2014-07-12 23:17 ` Richard Stallman
@ 2014-07-13 7:25 ` Andreas Schwab
2014-07-13 15:58 ` Paul Eggert
0 siblings, 1 reply; 13+ messages in thread
From: Andreas Schwab @ 2014-07-13 7:25 UTC (permalink / raw)
To: Richard Stallman; +Cc: emacs-devel
Richard Stallman <rms@gnu.org> writes:
> Could you explain what you mean by "instable clock"?
http://lists.gnu.org/archive/html/emacs-devel/2013-11/msg00421.html
Andreas.
--
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
"And now for something completely different."
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: poll_for_input_1 undefined
2014-07-13 7:25 ` Andreas Schwab
@ 2014-07-13 15:58 ` Paul Eggert
0 siblings, 0 replies; 13+ messages in thread
From: Paul Eggert @ 2014-07-13 15:58 UTC (permalink / raw)
To: Andreas Schwab, Richard Stallman; +Cc: emacs-devel
I think Richard's problem this time was caused not by clock skew, but
because 'bzr up' significantly changed the build procedure, and then 'cd
src; make -k' did not propagate those changes properly.
I took a shot at fixing this and installed the fix as trunk bzr 117526.
This fixes only the src subdirectory; I expect lib-src, lisp, and nt
need similar fixes, but one step at a time.
It is a pain that this build-procedure stuff needs to be semi-copied
around from one makefile to another. One possibility to avoid this
pain, if someone has the time, would be to switch Emacs to a
non-recursive 'make' style [1], which we've already done in other GNU
projects (e.g., coreutils) to good effect. Another possibility would be
to use Automake.
[1] Miller P. Recursive make considered harmful. AUUGN 1998
Feb;19(1):14-25. http://aegis.sourceforge.net/auug97.pdf
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: poll_for_input_1 undefined
2014-07-13 0:05 ` Glenn Morris
@ 2014-07-13 21:54 ` Richard Stallman
2014-07-14 20:25 ` Paul Eggert
0 siblings, 1 reply; 13+ messages in thread
From: Richard Stallman @ 2014-07-13 21:54 UTC (permalink / raw)
To: Glenn Morris; +Cc: schwab, emacs-devel
[[[ To any NSA and FBI agents reading my email: please consider ]]]
[[[ whether defending the US Constitution against all enemies, ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]
> The makefile should update config.in before using it.
It does.
> And it should run configure before compiling the C sources,
> if it is going to run configure at all.
It does.
It didn't for me yesterday.
I don't have the output saved. Next time I hope I will remember
to save it.
If you can give a reproducible recipe showing how to get into the state
that you did, things could be improved. But I imagine that even with
a slow machine, it would be quicker and more efficient to just do a
clean rebuild, rather than us all trying to figure it exactly what
happened.
This is a bug and it should be fixed.
(I am not sure exactly what "a clean rebuild" means.
'make bootstrap'? That takes ages.)
--
Dr Richard Stallman
President, Free Software Foundation
51 Franklin St
Boston MA 02110
USA
www.fsf.org www.gnu.org
Skype: No way! That's nonfree (freedom-denying) software.
Use Ekiga or an ordinary phone call.
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: poll_for_input_1 undefined
2014-07-13 21:54 ` Richard Stallman
@ 2014-07-14 20:25 ` Paul Eggert
0 siblings, 0 replies; 13+ messages in thread
From: Paul Eggert @ 2014-07-14 20:25 UTC (permalink / raw)
To: rms; +Cc: emacs-devel
Richard Stallman wrote:
> Next time I hope I will remember to save it.
My guess is that you could reproduce the bug as follows:
cd emacs
touch configure.ac
cd src
make -k
However, please don't bother. Instead, please do this:
cd emacs
bzr up
make
This may take a while, but after that the bug should be fixed, because
of the patch that I contributed in trunk bzr 117526.
^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2014-07-14 20:25 UTC | newest]
Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-07-11 16:57 poll_for_input_1 undefined Richard Stallman
2014-07-11 17:34 ` Dmitry Antipov
2014-07-11 18:12 ` Glenn Morris
2014-07-11 18:19 ` Andreas Schwab
2014-07-12 13:07 ` Richard Stallman
2014-07-12 13:25 ` Andreas Schwab
2014-07-12 23:17 ` Richard Stallman
2014-07-13 7:25 ` Andreas Schwab
2014-07-13 15:58 ` Paul Eggert
2014-07-12 23:17 ` Richard Stallman
2014-07-13 0:05 ` Glenn Morris
2014-07-13 21:54 ` Richard Stallman
2014-07-14 20:25 ` Paul Eggert
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).