Mercurial > emacs
annotate lib-src/=wakeup.c @ 28508:a68042252425
* lisp.h (make_number) [!NO_UNION_TYPE && __GNUC__ >= 2 && __OPTIMIZE__]:
Provide a GNU C macro version that handles lisp-object unions.
(XSET) [!NO_UNION_TYPE]: Set the value field first, then the type field, to
better cope with ENABLE_CHECKING and calls that modify a Lisp_Object using its
old value.
author | Ken Raeburn <raeburn@raeburn.org> |
---|---|
date | Wed, 05 Apr 2000 18:47:29 +0000 |
parents | f41d9619ffc4 |
children |
rev | line source |
---|---|
77 | 1 /* Program to produce output at regular intervals. */ |
2 | |
15104
f41d9619ffc4
[HAVE_CONFIG_H]: Only include config.h when defined.
Richard M. Stallman <rms@gnu.org>
parents:
9491
diff
changeset
|
3 #ifdef HAVE_CONFIG_H |
4696
1fc792473491
Include <config.h> instead of "config.h".
Roland McGrath <roland@gnu.org>
parents:
4127
diff
changeset
|
4 #include <config.h> |
15104
f41d9619ffc4
[HAVE_CONFIG_H]: Only include config.h when defined.
Richard M. Stallman <rms@gnu.org>
parents:
9491
diff
changeset
|
5 #endif |
4127
d253c8a4b7e5
* wakeup.c: Use CPP tangle from autoconf manual to #include the
Jim Blandy <jimb@redhat.com>
parents:
3572
diff
changeset
|
6 |
77 | 7 #include <stdio.h> |
4127
d253c8a4b7e5
* wakeup.c: Use CPP tangle from autoconf manual to #include the
Jim Blandy <jimb@redhat.com>
parents:
3572
diff
changeset
|
8 #include <sys/types.h> |
d253c8a4b7e5
* wakeup.c: Use CPP tangle from autoconf manual to #include the
Jim Blandy <jimb@redhat.com>
parents:
3572
diff
changeset
|
9 |
d253c8a4b7e5
* wakeup.c: Use CPP tangle from autoconf manual to #include the
Jim Blandy <jimb@redhat.com>
parents:
3572
diff
changeset
|
10 #ifdef TIME_WITH_SYS_TIME |
d253c8a4b7e5
* wakeup.c: Use CPP tangle from autoconf manual to #include the
Jim Blandy <jimb@redhat.com>
parents:
3572
diff
changeset
|
11 #include <sys/time.h> |
77 | 12 #include <time.h> |
4127
d253c8a4b7e5
* wakeup.c: Use CPP tangle from autoconf manual to #include the
Jim Blandy <jimb@redhat.com>
parents:
3572
diff
changeset
|
13 #else |
d253c8a4b7e5
* wakeup.c: Use CPP tangle from autoconf manual to #include the
Jim Blandy <jimb@redhat.com>
parents:
3572
diff
changeset
|
14 #ifdef HAVE_SYS_TIME_H |
3437 | 15 #include <sys/time.h> |
4127
d253c8a4b7e5
* wakeup.c: Use CPP tangle from autoconf manual to #include the
Jim Blandy <jimb@redhat.com>
parents:
3572
diff
changeset
|
16 #else |
d253c8a4b7e5
* wakeup.c: Use CPP tangle from autoconf manual to #include the
Jim Blandy <jimb@redhat.com>
parents:
3572
diff
changeset
|
17 #include <time.h> |
d253c8a4b7e5
* wakeup.c: Use CPP tangle from autoconf manual to #include the
Jim Blandy <jimb@redhat.com>
parents:
3572
diff
changeset
|
18 #endif |
d253c8a4b7e5
* wakeup.c: Use CPP tangle from autoconf manual to #include the
Jim Blandy <jimb@redhat.com>
parents:
3572
diff
changeset
|
19 #endif |
77 | 20 |
21 struct tm *localtime (); | |
22 | |
9491
dd3b83e4ceb0
Eliminate some -Wall warnings.
David J. MacKenzie <djm@gnu.org>
parents:
4696
diff
changeset
|
23 void |
77 | 24 main (argc, argv) |
25 int argc; | |
26 char **argv; | |
27 { | |
28 int period = 60; | |
3336
44df7395bed8
(main): Make when a time_t.
Richard M. Stallman <rms@gnu.org>
parents:
366
diff
changeset
|
29 time_t when; |
77 | 30 struct tm *tp; |
31 | |
32 if (argc > 1) | |
33 period = atoi (argv[1]); | |
34 | |
35 while (1) | |
36 { | |
366 | 37 /* Make sure wakeup stops when Emacs goes away. */ |
38 if (getppid () == 1) | |
39 exit (0); | |
77 | 40 printf ("Wake up!\n"); |
41 fflush (stdout); | |
42 /* If using a period of 60, produce the output when the minute | |
43 changes. */ | |
44 if (period == 60) | |
45 { | |
46 time (&when); | |
47 tp = localtime (&when); | |
48 sleep (60 - tp->tm_sec); | |
49 } | |
50 else | |
51 sleep (period); | |
52 } | |
53 } |