Fix mismatch in conditionals.
[bpt/emacs.git] / lib-src / wakeup.c
1 /* Program to produce output at regular intervals. */
2
3 #include <config.h>
4
5 #include <stdio.h>
6 #include <sys/types.h>
7
8 #ifdef TIME_WITH_SYS_TIME
9 #include <sys/time.h>
10 #include <time.h>
11 #else
12 #ifdef HAVE_SYS_TIME_H
13 #include <sys/time.h>
14 #else
15 #include <time.h>
16 #endif
17 #endif
18
19 struct tm *localtime ();
20
21 void
22 main (argc, argv)
23 int argc;
24 char **argv;
25 {
26 int period = 60;
27 time_t when;
28 struct tm *tp;
29
30 if (argc > 1)
31 period = atoi (argv[1]);
32
33 while (1)
34 {
35 /* Make sure wakeup stops when Emacs goes away. */
36 if (getppid () == 1)
37 exit (0);
38 printf ("Wake up!\n");
39 fflush (stdout);
40 /* If using a period of 60, produce the output when the minute
41 changes. */
42 if (period == 60)
43 {
44 time (&when);
45 tp = localtime (&when);
46 sleep (60 - tp->tm_sec);
47 }
48 else
49 sleep (period);
50 }
51 }