Mercurial > hg > xemacs-beta
annotate lib-src/wakeup.c @ 2536:7edc33019aa4
[xemacs-hg @ 2005-01-31 20:01:49 by ben]
Documentation updates
GETTING.GNU.SOFTWARE, Makefile.in.in: Delete GETTING.GNU.SOFTWARE from SOURCES.
PROBLEMS: Delete reference to check_cygwin_setup.sh.
Delete stuff that is irrelevant, mislocated or woefully out-of-date.
GNU, SERVICE: Delete.
* ORDERS, ORDERS.EUROPE, ORDERS.JAPAN: Delete.
* CHARSETS, CODINGS: Delete.
* DEBUG, LPF, MORE.STUFF, MOTIVATION: Delete.
aliases.ksh: Delete. (moved to xemacs-builds/steve)
* README.HYPERBOLE, README.OO-BROWSER: Delete.
* chr.png, chrm.png: Move to photos/.
check_cygwin_setup.sh: Delete.
* gnu.xpm, gnu.xbm, sink.xbm: Delete.
* ms-kermit, ms-kermit-7bit: Delete.
TERMS: Delete.
* DISTRIB, FTP, MACHINES, MAILINGLISTS, PACKAGES:
Delete and move to FAQ.
BETA: Delete and move to man/beta.texi.
README: Update.
help.el: Removed.
xemacs/help.texi: Delete references to DISTRIB. Point to FAQ.
xemacs/new.texi: Update sample code for version checking.
xemacs/xemacs.texi: Delete references to DISTRIB. Point directly to web site.
Update stuff referring to GNU Emacs. Delete references to Win-Emacs.
Makefile: Add beta.texi and built files.
xemacs-faq.texi: Major overhaul of section 1. Add mailing list info, update
downloading info, add info on CVS, etc.
xemacs.mak: Also copy BUGS, README, COPYING and Installation.
author | ben |
---|---|
date | Mon, 31 Jan 2005 20:01:50 +0000 |
parents | abe6d1db359e |
children |
rev | line source |
---|---|
428 | 1 /* Program to produce output at regular intervals. */ |
2 | |
438 | 3 #include <config.h> |
428 | 4 |
5 #if __STDC__ || defined(STDC_HEADERS) | |
6 #include <stdlib.h> | |
442 | 7 #ifdef HAVE_UNISTD_H |
428 | 8 #include <unistd.h> |
9 #endif | |
442 | 10 #endif |
428 | 11 |
12 #include <stdio.h> | |
13 #include <sys/types.h> | |
14 | |
442 | 15 #ifdef WIN32_NATIVE |
428 | 16 #define WIN32_LEAN_AND_MEAN |
17 #include <windows.h> | |
18 #undef sleep | |
19 #define sleep(t) Sleep ((t) * 1000) | |
20 #define getppid() (0) | |
21 #undef HAVE_SYS_TIME_H | |
442 | 22 #endif /* WIN32_NATIVE */ |
428 | 23 |
24 #ifdef TIME_WITH_SYS_TIME | |
25 #include <sys/time.h> | |
26 #include <time.h> | |
27 #else | |
28 #ifdef HAVE_SYS_TIME_H | |
29 #include <sys/time.h> | |
30 #else | |
31 #include <time.h> | |
32 #endif | |
33 #endif | |
34 | |
35 int | |
36 main (int argc, char *argv[]) | |
37 { | |
38 int period = 60; | |
39 | |
40 if (argc > 1) | |
41 period = atoi (argv[1]); | |
42 | |
43 while (1) | |
44 { | |
45 /* Make sure wakeup stops when Emacs goes away. */ | |
46 if (getppid () == 1) | |
47 return 0; | |
48 printf ("Wake up!\n"); | |
49 /* If fflush fails, then our stdout pipe is broken. */ | |
50 if (fflush (stdout) != 0) | |
51 return 0; | |
52 /* If using a period of 60, produce the output when the minute | |
53 changes. */ | |
54 if (period == 60) | |
55 { | |
56 time_t when; | |
57 struct tm *tp; | |
58 time (&when); | |
59 tp = localtime (&when); | |
60 sleep (60 - tp->tm_sec); | |
61 } | |
62 else | |
63 sleep (period); | |
64 } | |
65 } |