[alt.sources] Xkal 1.13 - Part01/05

ferguson@cs.rochester.edu (George Ferguson) (03/14/91)

Okay, here goes nothing... I announced the availablility of xkal 1.10 about
two weeks ago and have tried to fix any problems reported since then. As things
seem to have settled down, I thought I'd post the latest version and wait
for the fallout.

*** If you want to compile this program please take EzMenu and ad2c that ***
*** are in the two postings following the five parts of xkal. Take them  ***
*** again even if you already have them since they've probably changed.  ***

With that said, I'll remind you all that xkal is an appointment book for X.
The new version has many new features including better handling of various
kinds of partly-specified dates (like monthly, yearly, etc. in addition to
one-shot and weekly reminders as before). There's more editing features and
lots of bug fixes and cleaned up code. There's probably lots of new bugs also.
The README is the first file in the shar below.

I'd be happy to receive any comments, suggestions, or bug reports. Anything
but requests for pieces to be mailed. The latest version will always be
available on cs.rochester.edu (192.5.53.209), so please check there before
reporting a bug if at all possible. Please do not use ftp between 8am and 6pm
Eastern time.

George Ferguson			ARPA: ferguson@cs.rochester.edu
University of Rochester		UUCP: {decvax,rutgers}!rochester!ferguson
Rochester  NY  14627-0226	VOX:  (716) 275-2527

#! /bin/sh
# This is a shell archive.  Remove anything before this line, then unpack
# it by saving it into a file and typing "sh file".  To overwrite existing
# files, type "sh file -c".  You can also feed this as standard input via
# unshar, or by typing "sh <file", e.g..  If this archive is complete, you
# will see the following message at the end:
#		"End of archive 1 (of 5)."
# Contents:  README Imakefile Makefile alert.c alert.h app-resources.h
#   date-strings.c date-strings.h dysize.c
# Wrapped by ferguson@swan.cs.rochester.edu on Wed Mar 13 13:49:56 1991
PATH=/bin:/usr/bin:/usr/ucb ; export PATH
if test -f 'README' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'README'\"
else
echo shar: Extracting \"'README'\" \(5959 characters\)
sed "s/^X//" >'README' <<'END_OF_FILE'
X		 README for XKAL - X Appointment Calendar
X
X		George Ferguson, ferguson@cs.rochester.edu
X
X			     27 Feb 1990
X
XDISCLAIMER:
X
X     This is no longer a BETA release, but there have been drastic
X     changes since the original (1.0beta). No doubt the increased complexity
X     of the program has introduced many new bugs. While it has been in
X     use for some time at our site, there are certainly many bugs left to
X     find.
X
X     This software is provided as is with no warranty expressed or implied.
X     I hope you find it useful, but I won't be held responsible for
X     any damage that may occur from reading, compiling, installing or
X     using it.
X
X     You are free to use any part of this code for other purposes. It
X     would be nice if you could keep my name on some part of whatever the
X     final product is.
X
X
XINSTALLATION:
X
X     1. Edit the Imakefile to reflect any changes for your site. These
X	include setting BINDIR, LIBDIR, and MANDIR if needed, and
X	checking CDEBUGFLAGS if debugging or optimization is desired.
X
X	This program uses the EzMenu widgets, which provides a resource
X	manager interface to the SimpleMenuWidget. You should check the
X	definitions in the Imakefile to reflect your installation of
X	the EzMenu package. In particular, you may not need the TARGET_MACH
X	flag if you only intend to compile for one architecture. Note that
X	the version of the EzMenu widgets used with this version (1.10 and
X	up) of xkal is slightly changed from that originally in xtex (and in
X	xkal 1.0beta). It allows only commas to separate arguments to action
X	procedures, rather than whitespace as well, since otherwise it was
X	too hard to pass things.
X
X	Compiling this program requires the "ad2c" program. You should
X	set the AD2C variable as required. Actually, ad2c is only required
X	if you change Xkal.ad and want the new defaults compiled in as
X	fallback resources. If you don't have ad2c, you probably want
X	to remove the line that adds Xkal.ad.h to the "clean" target.
X
X	Decide if you want to use the popup alert boxes. More importantly,
X	decide if you can compile them. If not (ie. if the subsequent make
X	barfs), then comment out the ALERT* definitions and error messages
X	will go to stderr.
X
X	If you don't have dysize(3) you should uncomment the relevant
X	definitions (DYSIZE*) to include it. This includes Ultrix and
X	maybe SGI systems.
X
X	If you don't have strcasecmp(3) you should uncomment the relevant
X	definitions (STRCASECMP*) to include it. This includes at least
X	Sun386i systems.
X
X	If you have troubles compiling "string-convert.c" due to missing
X	or multiple declarations of "XtCXtToolkitError" and the like, just
X	remove "string-convert.o" from the definitions of OBJS[123] in the
X	Imakefile. This will mean that you will see the message
X		Cannot convert string "NULL" to type Widget
X	on startup, but otherwise doesn't affect xkal's operation.
X
X     2. You may want to change defaults in Xkal.ad; consult the man page for
X	details, and see above about ad2c.
X
X     2. Execute
X		% xmkmf
X	to create the Makefile.
X
X     3. Execute
X		% make depend
X	to add the dependencies to the Makefile. This is necessary to
X	ensure that Xkal.ad.h is created when needed.
X	IMPORTANT: Ignore the error message from makedepend if Xkal.ad.h
X		   is not found; it will be created automatically.
X
X     4. Make the package using
X		% make
X	or install it directly with
X		% make install install.man
X
XHISTORY:
X     Unless otherwise indicated, things are listed with the person who
X     suggested them. These people did not write code; I get the blame for
X     that). Apologies if I didn't credit someone.
X
X     Released to alt.sources (version 1.0 beta), 13 Nov 1990.
X
X     Patched 16 Nov 1990:
X	Bad values in XtSetValues(), lines 169, 172, 175 "day.c"
X		- douglis@cs.vu.nl (Fred Douglis)
X		- sengillo@isdc00.kodak.com (Alan Sengillo)
X
X     Version 1.10 made available for ftp, 27 Feb 1991. The following are
X	some of the changes in this version, listed with the person who
X	suggested them (these people did not write code; I get the blame for
X	that). Apologies if I didn't credit someone.
X	From: netmgr@venus.csc.fi (Pekka Kyt|laakso)
X		Customize dow and month labels and allow Monday at start of
X		week for European users.
X	From: Colin Walls <ctw@sun.central-services.umist.ac.uk>
X		Allow calendar format and preprocessor. Actually it will
X		handle almost any date spec., and provides #include.
X	From: several people
X		Ultrix defs for dysize() and don't use += if possible.
X	From: rackow@antares.mcs.anl.gov (Gene Rackow)
X		Different reminder types, like monthly and yearly. In fact,
X		the appointment format is considerably more flexible, with
X		respect to both syntax and semantics.
X	From: weissman%pianoforte.esd.sgi.com@SGI.COM
X		Fixed major grossness in selectDay()
X	From: mucit@cs.rochester.edu (Bulent Murtezaoglu)
X		Two month format and better labelling algorithm for moved
X		appoints.
X	And from me:
X		- System and personal files, with #include functionality
X		- Added appointment editor to replace schedule editor
X		- Added defaults editor
X		- Fully customizable day layout, including start and end times,
X		  increment, number and label of notes
X		- Switch to "criticality levels" for appointment highlighting
X		- Popup error messages where appropriate (if wanted)
X		- "xkal-system()" action for arbitrary commands
X		- Automail scripts
X		- Programs to write in xremind and pcal formats
X     Version 1.11 - 1 Mar 1991
X	gf: Get notesLabel in non-interactive mode
X     Version 1.12 - 2 Mar 1991
X	gf: Mail tomorrow's reminders in xkal-mail and xkal-automail, rather
X	    than today's. Duuh...
X     Version 1.13 - 13 Mar 1991
X	From: rme@olympia.net.com (Richard Emberson)
X		- Added notes to README concerning EzMenu changes
X	From: jdm5548@diamond.tamu.edu (James Darrell McCauley)
X		- Added notes to README concerning handling string-convert.c
X		  problems.
X		- Fixed bogus ad hoc handling of am/pm, and added noonStr
X		  and midnightStr resources
END_OF_FILE
if test 5959 -ne `wc -c <'README'`; then
    echo shar: \"'README'\" unpacked with wrong size!
fi
# end of 'README'
fi
if test -f 'Imakefile' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Imakefile'\"
else
echo shar: Extracting \"'Imakefile'\" \(3768 characters\)
sed "s/^X//" >'Imakefile' <<'END_OF_FILE'
X#
X#	Imakefile for xkal - X appointment calendar
X#
X#	George Ferguson, ferguson@cs.rochester.edu, 15 Oct 1990.
X#	Version 1.1 - 27 Feb 1991.
X#
X#	$Id: Imakefile,v 2.3 91/03/13 13:30:40 ferguson Exp $
X#
X
X#
X# Here's what to change to customize the installation...
X#
X# Where do you want this stuff (if the defaults aren't okay)?
X#
XBINDIR = /u/ferguson/bin
XLIBDIR = /u/ferguson/lib
XMANDIR = /u/ferguson/man/man1
X
X#
X# Where is the ezMenu package?
X#
XEZMENU_DIR =		/u/ferguson/src/x/EzMenu
XEZMENU_INCLUDES =	-I$(EZMENU_DIR)
XEZMENU_LIBRARIES =	-L$(EZMENU_DIR) -lezMenu$(TARGET_MACH)
X
X#
X# Where is the app-defaults to C converter?
X# Only needed if you change the app-defaults file Xkal.ad and want the changes
X# compiled into the program. If you don't have ad2c you should remove the
X# extra clean target for Xkal.ad.h below. If you lose Xkal.ad.h and can't
X# remake it, create it to be a line containing NULL (i.e. those four
X# characters) only.
X#
XAD2C = ad2c
X
X#
X# Do you want to use popup alert boxes (can you compile them)? If not,
X# comment out these definitions and error messages will go to stderr.
X#
XALERTC = alert.c
XALERTO = alert.o
XALERTDEFS = -DUSE_ALERT
X
X#
X# Is dysize(3) in your standard library? If not, you need these definitions.
X# It appears that Ultrix and maybe SGI systems need this for sure.
X#
X#DYSIZEC = dysize.c
X#DYSIZEO = dysize.o
X
X#
X# Is strcasecmp(3) in your standard library? If not, you need these definitions.
X# It appears that at least Sun 386i systems need this for sure.
X#
X#STRCASECMPC = strcasecmp.c
X#STRCASECMPO = strcasecmp.o
X
X#
X# This is -g for debugging or -O for optimization (or nothing).
X#
XCDEBUGFLAGS = -g
X
X#	#	#	#	#	#	#	#	#	#
X# Nothing to change below here
X#
X
XPROGRAMS	=	xkal xkal2xremind xkal2pcal
XDEFINES		=	-DXAPPLOADDIR=\"$(XAPPLOADDIR)\" $(ALERTDEFS)
XEXTRA_INCLUDES  =	$(EZMENU_INCLUDES)
XLOCAL_LIBRARIES =	$(EZMENU_LIBRARIES) XawClientLibs
X
X#
X# These definitions are for xkal itself
X#
XSRCS1 = xkal.c month.c day.c edit.c edit-defaults.c db.c \
X	util.c date-strings.c resources.c string-convert.c \
X	$(ALERTC) $(DYSIZEC) $(STRCASECMPC)
XOBJS1 = xkal.o month.o day.o edit.o edit-defaults.o db.o \
X	util.o date-strings.o resources.o string-convert.o \
X	$(ALERTO) $(DYSIZEO) $(STRCASECMPO)
X
XComplexProgramTarget_1(xkal,$(LOCAL_LIBRARIES),)
XInstallAppDefaults(Xkal)
XInstallNonExec(xkal.appoints,$(LIBDIR))
X
X#
X# These definitions are for xkal2xremind
X#
XOBJS2 = xkal2xremind.o resources.o db.o util.o date-strings.o $(STRCASECMPO)
XSRCS2 = xkal2xremind.c resources.c db.c util.c date-strings.c $(STRCASECMPC)
X
XComplexProgramTarget_2(xkal2xremind,$(XTOOLLIB) $(XLIB),)
X
X#
X# These definitions are for xkal2pcal
X#
XOBJS3 = xkal2pcal.o resources.o db.o util.o date-strings.o $(STRCASECMPO)
XSRCS3 = xkal2pcal.c resources.c db.c util.c date-strings.c $(STRCASECMPC)
X
XComplexProgramTarget_3(xkal2pcal,$(XTOOLLIB) $(XLIB),)
X
X#
X# This definition installs xkal-mail and xkal-automail
X#
Xinstall::
X	$(INSTALL) -c $(INSTPGMFLAGS) xkal-mail xkal-automail $(BINDIR)
XInstallManPage(xkal-mail,$(MANDIR))
XInstallManPage(xkal-automail,$(MANDIR))
X
X
X#
X#	Generate C code for fallback resources
X#
XXkal.ad.h: Xkal.ad
X	$(AD2C) Xkal.ad >Xkal.ad.h
X
Xclean::
X	$(RM) Xkal.ad.h
X
X#
X#	Miscellaneous other rules:
X#
Xci:
X	ci -u *.c *.h Xkal.ad xkal.man xkal.appoints Imakefile
X
Xtar:
X	tar cvf - \
X		README Imakefile Makefile Xkal.ad \
X		alert.c alert.h app-resources.h date-strings.c date-strings.h \
X		day.c day.h db.c db.h dysize.c edit-defaults.c edit-defaults.h \
X		edit.c edit.h month.c month.h patchlevel.h \
X		resources.c resources.h \
X		strcasecmp.c string-convert.c util.c util.h \
X		xkal-automail xkal-automail.man xkal-mail xkal-mail.man \
X		xkal.appoints xkal.c xkal.h xkal.man \
X		xkal2pcal.c xkal2pcal.man xkal2xremind.c xkal2xremind.man | \
X	    compress >xkal.tar.Z
END_OF_FILE
if test 3768 -ne `wc -c <'Imakefile'`; then
    echo shar: \"'Imakefile'\" unpacked with wrong size!
fi
# end of 'Imakefile'
fi
if test -f 'Makefile' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Makefile'\"
else
echo shar: Extracting \"'Makefile'\" \(34379 characters\)
sed "s/^X//" >'Makefile' <<'END_OF_FILE'
X# Makefile generated by imake - do not edit!
X# $XConsortium: imake.c,v 1.51 89/12/12 12:37:30 jim Exp $
X#
X# The cpp used on this machine replaces all newlines and multiple tabs and
X# spaces in a macro expansion with a single space.  Imake tries to compensate
X# for this, but is not always successful.
X#
X
X###########################################################################
X# Makefile generated from "Imake.tmpl" and </tmp/IIf.a01895>
X# $XConsortium: Imake.tmpl,v 1.77 89/12/18 17:01:37 jim Exp $
X#
X# Platform-specific parameters may be set in the appropriate .cf
X# configuration files.  Site-wide parameters may be set in the file
X# site.def.  Full rebuilds are recommended if any parameters are changed.
X#
X# If your C preprocessor doesn't define any unique symbols, you'll need
X# to set BOOTSTRAPCFLAGS when rebuilding imake (usually when doing
X# "make Makefile", "make Makefiles", or "make World").
X#
X# If you absolutely can't get imake to work, you'll need to set the
X# variables at the top of each Makefile as well as the dependencies at the
X# bottom (makedepend will do this automatically).
X#
X
X###########################################################################
X# platform-specific configuration parameters - edit sun.cf to change
X
X# platform:  $XConsortium: sun.cf,v 1.38 89/12/23 16:10:10 jim Exp $
X# operating system:  SunOS 4.0.3
X
X###########################################################################
X# site-specific configuration parameters - edit site.def to change
X
X# site:  $XConsortium: site.def,v 1.21 89/12/06 11:46:50 jim Exp $
X
X            SHELL = /bin/sh
X
X              TOP = .
X      CURRENT_DIR = .
X
X               AR = ar cq
X  BOOTSTRAPCFLAGS =
X               CC = cc
X
X         COMPRESS = compress
X              CPP = /lib/cpp $(STD_CPP_DEFINES)
X    PREPROCESSCMD = cc -E $(STD_CPP_DEFINES)
X          INSTALL = install
X               LD = ld
X             LINT = lint
X      LINTLIBFLAG = -C
X         LINTOPTS = -axz
X               LN = ln -s
X             MAKE = make
X               MV = mv
X               CP = cp
X           RANLIB = ranlib
X  RANLIBINSTFLAGS =
X               RM = rm -f
X     STD_INCLUDES =
X  STD_CPP_DEFINES =
X      STD_DEFINES =
X EXTRA_LOAD_FLAGS =
X  EXTRA_LIBRARIES =
X             TAGS = ctags
X
X    SHAREDCODEDEF = -DSHAREDCODE
X         SHLIBDEF = -DSUNSHLIB
X
X    PROTO_DEFINES =
X
X     INSTPGMFLAGS =
X
X     INSTBINFLAGS = -m 0755
X     INSTUIDFLAGS = -m 4755
X     INSTLIBFLAGS = -m 0664
X     INSTINCFLAGS = -m 0444
X     INSTMANFLAGS = -m 0444
X     INSTDATFLAGS = -m 0444
X    INSTKMEMFLAGS = -g kmem -m 2755
X
X          DESTDIR =
X
X     TOP_INCLUDES = -I$(INCROOT)
X
X      CDEBUGFLAGS = -O
X        CCOPTIONS =
X      COMPATFLAGS =
X
X      ALLINCLUDES = $(STD_INCLUDES) $(TOP_INCLUDES) $(INCLUDES) $(EXTRA_INCLUDES)
X       ALLDEFINES = $(ALLINCLUDES) $(STD_DEFINES) $(PROTO_DEFINES) $(DEFINES) $(COMPATFLAGS)
X           CFLAGS = $(CDEBUGFLAGS) $(CCOPTIONS) $(ALLDEFINES)
X        LINTFLAGS = $(LINTOPTS) -DLINT $(ALLDEFINES)
X           LDLIBS = $(SYS_LIBRARIES) $(EXTRA_LIBRARIES)
X        LDOPTIONS = $(CDEBUGFLAGS) $(CCOPTIONS)
X   LDCOMBINEFLAGS = -X -r
X
X        MACROFILE = sun.cf
X           RM_CMD = $(RM) *.CKP *.ln *.BAK *.bak *.o core errs ,* *~ *.a .emacs_* tags TAGS make.log MakeOut
X
X    IMAKE_DEFINES =
X
X         IRULESRC = $(CONFIGDIR)
X        IMAKE_CMD = $(IMAKE) -DUseInstalled -I$(IRULESRC) $(IMAKE_DEFINES)
X
X     ICONFIGFILES = $(IRULESRC)/Imake.tmpl $(IRULESRC)/Imake.rules \
X			$(IRULESRC)/Project.tmpl $(IRULESRC)/site.def \
X			$(IRULESRC)/$(MACROFILE) $(EXTRA_ICONFIGFILES)
X
X###########################################################################
X# X Window System Build Parameters
X# $XConsortium: Project.tmpl,v 1.63 89/12/18 16:46:44 jim Exp $
X
X###########################################################################
X# X Window System make variables; this need to be coordinated with rules
X# $XConsortium: Project.tmpl,v 1.63 89/12/18 16:46:44 jim Exp $
X
X          PATHSEP = /
X        USRLIBDIR = /usr/staff/lib
X           BINDIR = /usr/staff/bin
X          INCROOT = /usr/staff/include
X     BUILDINCROOT = $(TOP)
X      BUILDINCDIR = $(BUILDINCROOT)/X11
X      BUILDINCTOP = ..
X           INCDIR = $(INCROOT)/X11
X           ADMDIR = /tmp
X           LIBDIR = $(USRLIBDIR)/X11
X        CONFIGDIR = $(LIBDIR)/config
X       LINTLIBDIR = $(USRLIBDIR)/lint
X
X          FONTDIR = $(LIBDIR)/fonts
X         XINITDIR = $(LIBDIR)/xinit
X           XDMDIR = $(LIBDIR)/xdm
X           AWMDIR = $(LIBDIR)/awm
X           TWMDIR = $(LIBDIR)/twm
X           GWMDIR = $(LIBDIR)/gwm
X          MANPATH = $(DESTDIR)/usr/staff/man
X    MANSOURCEPATH = $(MANPATH)/man
X           MANDIR = $(MANSOURCEPATH)1
X        LIBMANDIR = $(MANSOURCEPATH)3
X      XAPPLOADDIR = $(LIBDIR)/app-defaults
XXFILESEARCHPATHDEFAULT = $(LIBDIR)/%L/%T/%N%S:$(LIBDIR)/%l/%T/%N%S:$(LIBDIR)/%T/%N%S
X	         ERRORDB = $(LIBDIR)/XtErrorDB
X
X        SOXLIBREV = 4.4
X          SOXTREV = 4.1
X         SOXAWREV = 4.0
X        SOOLDXREV = 4.0
X         SOXMUREV = 4.0
X        SOXEXTREV = 4.0
X
X       FONTCFLAGS = -t
X
X     INSTAPPFLAGS = $(INSTDATFLAGS)
X
X            IMAKE = imake
X           DEPEND = makedepend
X              RGB = rgb
X            FONTC = bdftosnf
X        MKFONTDIR = mkfontdir
X        MKDIRHIER = /bin/sh $(BINDIR)/mkdirhier.sh
X
X        CONFIGSRC = $(TOP)/config
X        CLIENTSRC = $(TOP)/clients
X          DEMOSRC = $(TOP)/demos
X           LIBSRC = $(TOP)/lib
X          FONTSRC = $(TOP)/fonts
X       INCLUDESRC = $(TOP)/X11
X        SERVERSRC = $(TOP)/server
X          UTILSRC = $(TOP)/util
X        SCRIPTSRC = $(UTILSRC)/scripts
X       EXAMPLESRC = $(TOP)/examples
X       CONTRIBSRC = $(TOP)/../contrib
X           DOCSRC = $(TOP)/doc
X           RGBSRC = $(TOP)/rgb
X        DEPENDSRC = $(UTILSRC)/makedepend
X         IMAKESRC = $(CONFIGSRC)
X         XAUTHSRC = $(LIBSRC)/Xau
X          XLIBSRC = $(LIBSRC)/X
X           XMUSRC = $(LIBSRC)/Xmu
X       TOOLKITSRC = $(LIBSRC)/Xt
X       AWIDGETSRC = $(LIBSRC)/Xaw
X       OLDXLIBSRC = $(LIBSRC)/oldX
X      XDMCPLIBSRC = $(LIBSRC)/Xdmcp
X      BDFTOSNFSRC = $(FONTSRC)/bdftosnf
X     MKFONTDIRSRC = $(FONTSRC)/mkfontdir
X     EXTENSIONSRC = $(TOP)/extensions
X
X  DEPEXTENSIONLIB = $(USRLIBDIR)/libXext.a
X     EXTENSIONLIB =  -L$(USRLIBDIR) -lXext
X
X          DEPXLIB = $(DEPEXTENSIONLIB)
X             XLIB = $(EXTENSIONLIB) -L$(USRLIBDIR) -lX11
X
X      DEPXAUTHLIB = $(USRLIBDIR)/libXau.a
X         XAUTHLIB =  -L$(USRLIBDIR) -lXau
X
X        DEPXMULIB =
X           XMULIB = -L$(USRLIBDIR) -lXmu
X
X       DEPOLDXLIB =
X          OLDXLIB = -L$(USRLIBDIR) -loldX
X
X      DEPXTOOLLIB =
X         XTOOLLIB = -L$(USRLIBDIR) -lXt
X
X        DEPXAWLIB =
X           XAWLIB = -L$(USRLIBDIR) -lXaw
X
X LINTEXTENSIONLIB = $(USRLIBDIR)/llib-lXext.ln
X         LINTXLIB = $(USRLIBDIR)/llib-lX11.ln
X          LINTXMU = $(USRLIBDIR)/llib-lXmu.ln
X        LINTXTOOL = $(USRLIBDIR)/llib-lXt.ln
X          LINTXAW = $(USRLIBDIR)/llib-lXaw.ln
X
X          DEPLIBS = $(DEPXAWLIB) $(DEPXMULIB) $(DEPXTOOLLIB) $(DEPXLIB)
X
X         DEPLIBS1 = $(DEPLIBS)
X         DEPLIBS2 = $(DEPLIBS)
X         DEPLIBS3 = $(DEPLIBS)
X
X###########################################################################
X# Imake rules for building libraries, programs, scripts, and data files
X# rules:  $XConsortium: Imake.rules,v 1.67 89/12/18 17:14:15 jim Exp $
X
X###########################################################################
X# start of Imakefile
X
X#
X#	Imakefile for xkal - X appointment calendar
X#
X#	George Ferguson, ferguson@cs.rochester.edu, 15 Oct 1990.
X#	Version 1.1 - 27 Feb 1991.
X#
X#	$Id: Makefile,v 1.1 91/03/13 13:30:46 ferguson Exp $
X#
X
X#
X# Here's what to change to customize the installation...
X#
X# Where do you want this stuff (if the defaults aren't okay)?
X#
XBINDIR = /u/ferguson/bin
XLIBDIR = /u/ferguson/lib
XMANDIR = /u/ferguson/man/man1
X
X#
X# Where is the ezMenu package?
X#
XEZMENU_DIR =		/u/ferguson/src/x/EzMenu
XEZMENU_INCLUDES =	-I$(EZMENU_DIR)
XEZMENU_LIBRARIES =	-L$(EZMENU_DIR) -lezMenu$(TARGET_MACH)
X
X#
X# Where is the app-defaults to C converter?
X# Only needed if you change the app-defaults file Xkal.ad and want the changes
X# compiled into the program. If you don't have ad2c you should remove the
X# extra clean target for Xkal.ad.h below. If you lose Xkal.ad.h and can't
X# remake it, create it to be a line containing NULL (i.e. those four
X# characters) only.
X#
XAD2C = ad2c
X
X#
X# Do you want to use popup alert boxes (can you compile them)? If not,
X# comment out these definitions and error messages will go to stderr.
X#
XALERTC = alert.c
XALERTO = alert.o
XALERTDEFS = -DUSE_ALERT
X
X#
X# Is dysize(3) in your standard library? If not, you need these definitions.
X# It appears that Ultrix and maybe SGI systems need this for sure.
X#
X#DYSIZEC = dysize.c
X#DYSIZEO = dysize.o
X
X#
X# Is strcasecmp(3) in your standard library? If not, you need these definitions.
X# It appears that at least Sun 386i systems need this for sure.
X#
X#STRCASECMPC = strcasecmp.c
X#STRCASECMPO = strcasecmp.o
X
X#
X# This is -g for debugging or -O for optimization (or nothing).
X#
XCDEBUGFLAGS = -g
X
X#	#	#	#	#	#	#	#	#	#
X# Nothing to change below here
X#
X
XPROGRAMS	=	xkal xkal2xremind xkal2pcal
XDEFINES		=	-DXAPPLOADDIR=\"$(XAPPLOADDIR)\" $(ALERTDEFS)
XEXTRA_INCLUDES  =	$(EZMENU_INCLUDES)
XLOCAL_LIBRARIES =	$(EZMENU_LIBRARIES) $(XAWLIB) $(XMULIB) $(XTOOLLIB) $(XLIB)
X
X#
X# These definitions are for xkal itself
X#
XSRCS1 = xkal.c month.c day.c edit.c edit-defaults.c db.c \
X	util.c date-strings.c resources.c string-convert.c \
X	$(ALERTC) $(DYSIZEC) $(STRCASECMPC)
XOBJS1 = xkal.o month.o day.o edit.o edit-defaults.o db.o \
X	util.o date-strings.o resources.o string-convert.o \
X	$(ALERTO) $(DYSIZEO) $(STRCASECMPO)
X
X OBJS = $(OBJS1) $(OBJS2) $(OBJS3)
X SRCS = $(SRCS1) $(SRCS2) $(SRCS3)
X
Xall:: $(PROGRAMS)
X
Xxkal: $(OBJS1) $(DEPLIBS1)
X	$(RM) $@
X	$(CC) -o $@ $(LDOPTIONS) $(OBJS1) $(LOCAL_LIBRARIES) $(LDLIBS)  $(EXTRA_LOAD_FLAGS)
X
Xinstall:: xkal
X	$(INSTALL) -c $(INSTPGMFLAGS)   xkal $(BINDIR)
X
Xinstall.man:: xkal.man
X	$(INSTALL) -c $(INSTMANFLAGS) xkal.man $(MANDIR)/xkal.1
X
Xsaber_xkal:
X	#load $(ALLDEFINES) $(SRCS1) $(LOCAL_LIBRARIES) $(SYS_LIBRARIES) $(EXTRA_LIBRARIES)
X
Xosaber_xkal:
X	#load $(ALLDEFINES) $(OBJS1) $(LOCAL_LIBRARIES) $(SYS_LIBRARIES) $(EXTRA_LIBRARIES)
X
Xdepend::
X	$(DEPEND) -s "# DO NOT DELETE" -- $(ALLDEFINES) -- $(SRCS)
X
Xlint:
X	$(LINT) $(LINTFLAGS) $(SRCS) $(LINTLIBS)
Xlint1:
X	$(LINT) $(LINTFLAGS) $(FILE) $(LINTLIBS)
X
Xclean::
X	$(RM) $(PROGRAMS)
X
Xinstall:: Xkal.ad
X	$(INSTALL) -c $(INSTAPPFLAGS) Xkal.ad $(XAPPLOADDIR)/Xkal
X
Xinstall:: xkal.appoints
X	$(INSTALL) -c $(INSTDATFLAGS) xkal.appoints $(LIBDIR)
X
X#
X# These definitions are for xkal2xremind
X#
XOBJS2 = xkal2xremind.o resources.o db.o util.o date-strings.o $(STRCASECMPO)
XSRCS2 = xkal2xremind.c resources.c db.c util.c date-strings.c $(STRCASECMPC)
X
Xxkal2xremind: $(OBJS2) $(DEPLIBS2)
X	$(RM) $@
X	$(CC) -o $@ $(LDOPTIONS) $(OBJS2) $(XTOOLLIB) $(XLIB) $(LDLIBS)  $(EXTRA_LOAD_FLAGS)
X
Xsaber_xkal2xremind:
X	#load $(ALLDEFINES) $(SRCS2) $(XTOOLLIB) $(XLIB) $(SYS_LIBRARIES) $(EXTRA_LIBRARIES)
X
Xosaber_xkal2xremind:
X	#load $(ALLDEFINES) $(OBJS2) $(XTOOLLIB) $(XLIB) $(SYS_LIBRARIES) $(EXTRA_LIBRARIES)
X
Xinstall:: xkal2xremind
X	$(INSTALL) -c $(INSTPGMFLAGS)   xkal2xremind $(BINDIR)
X
Xinstall.man:: xkal2xremind.man
X	$(INSTALL) -c $(INSTMANFLAGS) xkal2xremind.man $(MANDIR)/xkal2xremind.1
X
X#
X# These definitions are for xkal2pcal
X#
XOBJS3 = xkal2pcal.o resources.o db.o util.o date-strings.o $(STRCASECMPO)
XSRCS3 = xkal2pcal.c resources.c db.c util.c date-strings.c $(STRCASECMPC)
X
Xxkal2pcal: $(OBJS3) $(DEPLIBS3)
X	$(RM) $@
X	$(CC) -o $@ $(LDOPTIONS) $(OBJS3) $(XTOOLLIB) $(XLIB) $(LDLIBS)  $(EXTRA_LOAD_FLAGS)
X
Xsaber_xkal2pcal:
X	#load $(ALLDEFINES) $(SRCS3) $(XTOOLLIB) $(XLIB) $(SYS_LIBRARIES) $(EXTRA_LIBRARIES)
X
Xosaber_xkal2pcal:
X	#load $(ALLDEFINES) $(OBJS3) $(XTOOLLIB) $(XLIB) $(SYS_LIBRARIES) $(EXTRA_LIBRARIES)
X
Xinstall:: xkal2pcal
X	$(INSTALL) -c $(INSTPGMFLAGS)   xkal2pcal $(BINDIR)
X
Xinstall.man:: xkal2pcal.man
X	$(INSTALL) -c $(INSTMANFLAGS) xkal2pcal.man $(MANDIR)/xkal2pcal.1
X
X#
X# This definition installs xkal-mail and xkal-automail
X#
Xinstall::
X	$(INSTALL) -c $(INSTPGMFLAGS) xkal-mail xkal-automail $(BINDIR)
X
Xinstall.man:: xkal-mail.man
X	$(INSTALL) -c $(INSTMANFLAGS) xkal-mail.man $(MANDIR)/xkal-mail.1
X
Xinstall.man:: xkal-automail.man
X	$(INSTALL) -c $(INSTMANFLAGS) xkal-automail.man $(MANDIR)/xkal-automail.1
X
X#
X#	Generate C code for fallback resources
X#
XXkal.ad.h: Xkal.ad
X	$(AD2C) Xkal.ad >Xkal.ad.h
X
Xclean::
X	$(RM) Xkal.ad.h
X
X#
X#	Miscellaneous other rules:
X#
Xci:
X	ci -u *.c *.h Xkal.ad xkal.man xkal.appoints Imakefile
X
Xtar:
X	tar cvf - \
X		README Imakefile Makefile Xkal.ad \
X		alert.c alert.h app-resources.h date-strings.c date-strings.h \
X		day.c day.h db.c db.h dysize.c edit-defaults.c edit-defaults.h \
X		edit.c edit.h month.c month.h patchlevel.h \
X		resources.c resources.h \
X		strcasecmp.c string-convert.c util.c util.h \
X		xkal-automail xkal-automail.man xkal-mail xkal-mail.man \
X		xkal.appoints xkal.c xkal.h xkal.man \
X		xkal2pcal.c xkal2pcal.man xkal2xremind.c xkal2xremind.man | \
X	    compress >xkal.tar.Z
X
X###########################################################################
X# common rules for all Makefiles - do not edit
X
Xemptyrule::
X
Xclean::
X	$(RM_CMD) \#*
X
XMakefile::
X	-@if [ -f Makefile ]; then \
X	echo "	$(RM) Makefile.bak; $(MV) Makefile Makefile.bak"; \
X	$(RM) Makefile.bak; $(MV) Makefile Makefile.bak; \
X	else exit 0; fi
X	$(IMAKE_CMD) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT_DIR)
X
Xtags::
X	$(TAGS) -w *.[ch]
X	$(TAGS) -xw *.[ch] > TAGS
X
Xsaber:
X	#load $(ALLDEFINES) $(SRCS)
X
Xosaber:
X	#load $(ALLDEFINES) $(OBJS)
X
X###########################################################################
X# empty rules for directories that do not have SUBDIRS - do not edit
X
Xinstall::
X	@echo "install in $(CURRENT_DIR) done"
X
Xinstall.man::
X	@echo "install.man in $(CURRENT_DIR) done"
X
XMakefiles::
X
Xincludes::
X
X###########################################################################
X# dependencies generated by makedepend
X
X# DO NOT DELETE
X
Xxkal.o: /usr/include/stdio.h /usr/include/ctype.h
Xxkal.o: /usr/staff/include/X11/Intrinsic.h /usr/staff/include/X11/Xlib.h
Xxkal.o: /usr/include/sys/types.h /usr/include/sys/stdtypes.h
Xxkal.o: /usr/include/sys/sysmacros.h /usr/staff/include/X11/X.h
Xxkal.o: /usr/staff/include/X11/Xutil.h /usr/staff/include/X11/Xresource.h
Xxkal.o: /usr/staff/include/X11/Xos.h /usr/include/strings.h
Xxkal.o: /usr/include/sys/file.h /usr/include/sys/fcntlcom.h
Xxkal.o: /usr/include/sys/stat.h /usr/include/sys/time.h
Xxkal.o: /usr/include/sys/time.h /usr/staff/include/X11/Core.h
Xxkal.o: /usr/staff/include/X11/Composite.h
Xxkal.o: /usr/staff/include/X11/Constraint.h /usr/staff/include/X11/Object.h
Xxkal.o: /usr/staff/include/X11/RectObj.h /usr/staff/include/X11/StringDefs.h
Xxkal.o: /usr/staff/include/X11/Xmu/Drawing.h
Xxkal.o: /usr/staff/include/X11/Xaw/Form.h
Xxkal.o: /usr/staff/include/X11/Xaw/MenuButton.h
Xxkal.o: /usr/staff/include/X11/Xaw/Command.h
Xxkal.o: /usr/staff/include/X11/Xaw/Label.h
Xxkal.o: /usr/staff/include/X11/Xaw/Simple.h
Xxkal.o: /usr/staff/include/X11/Xmu/Converters.h
Xxkal.o: /usr/staff/include/X11/Xaw/Cardinals.h
Xxkal.o: /u/ferguson/src/x/EzMenu/EzMenu.h /usr/staff/include/X11/Shell.h
Xxkal.o: /usr/staff/include/X11/Xaw/SimpleMenu.h app-resources.h resources.h
Xxkal.o: month.h day.h db.h edit.h edit-defaults.h util.h date-strings.h
Xxkal.o: patchlevel.h alert.h Xkal.ad.h
Xmonth.o: /usr/staff/include/X11/Intrinsic.h /usr/staff/include/X11/Xlib.h
Xmonth.o: /usr/include/sys/types.h /usr/include/sys/stdtypes.h
Xmonth.o: /usr/include/sys/sysmacros.h /usr/staff/include/X11/X.h
Xmonth.o: /usr/staff/include/X11/Xutil.h /usr/staff/include/X11/Xresource.h
Xmonth.o: /usr/staff/include/X11/Xos.h /usr/include/strings.h
Xmonth.o: /usr/include/sys/file.h /usr/include/sys/fcntlcom.h
Xmonth.o: /usr/include/sys/stat.h /usr/include/sys/time.h
Xmonth.o: /usr/include/sys/time.h /usr/staff/include/X11/Core.h
Xmonth.o: /usr/staff/include/X11/Composite.h
Xmonth.o: /usr/staff/include/X11/Constraint.h /usr/staff/include/X11/Object.h
Xmonth.o: /usr/staff/include/X11/RectObj.h /usr/staff/include/X11/Shell.h
Xmonth.o: /usr/staff/include/X11/StringDefs.h
Xmonth.o: /usr/staff/include/X11/Xaw/Form.h
Xmonth.o: /usr/staff/include/X11/Xaw/Command.h
Xmonth.o: /usr/staff/include/X11/Xaw/Label.h
Xmonth.o: /usr/staff/include/X11/Xaw/Simple.h
Xmonth.o: /usr/staff/include/X11/Xmu/Converters.h
Xmonth.o: /usr/staff/include/X11/Xaw/Toggle.h
Xmonth.o: /usr/staff/include/X11/Xaw/AsciiText.h
Xmonth.o: /usr/staff/include/X11/Xaw/Text.h
Xmonth.o: /usr/staff/include/X11/Xaw/TextSink.h
Xmonth.o: /usr/staff/include/X11/Xaw/TextSrc.h
Xmonth.o: /usr/staff/include/X11/Xaw/AsciiSrc.h
Xmonth.o: /usr/staff/include/X11/Xaw/AsciiSink.h
Xmonth.o: /usr/staff/include/X11/Xaw/Cardinals.h xkal.h month.h day.h db.h
Xmonth.o: app-resources.h date-strings.h
Xday.o: /usr/include/stdio.h /usr/include/ctype.h
Xday.o: /usr/staff/include/X11/Intrinsic.h /usr/staff/include/X11/Xlib.h
Xday.o: /usr/include/sys/types.h /usr/include/sys/stdtypes.h
Xday.o: /usr/include/sys/sysmacros.h /usr/staff/include/X11/X.h
Xday.o: /usr/staff/include/X11/Xutil.h /usr/staff/include/X11/Xresource.h
Xday.o: /usr/staff/include/X11/Xos.h /usr/include/strings.h
Xday.o: /usr/include/sys/file.h /usr/include/sys/fcntlcom.h
Xday.o: /usr/include/sys/stat.h /usr/include/sys/time.h
Xday.o: /usr/include/sys/time.h /usr/staff/include/X11/Core.h
Xday.o: /usr/staff/include/X11/Composite.h /usr/staff/include/X11/Constraint.h
Xday.o: /usr/staff/include/X11/Object.h /usr/staff/include/X11/RectObj.h
Xday.o: /usr/staff/include/X11/Shell.h /usr/staff/include/X11/StringDefs.h
Xday.o: /usr/staff/include/X11/Xaw/Form.h /usr/staff/include/X11/Xaw/Command.h
Xday.o: /usr/staff/include/X11/Xaw/Label.h /usr/staff/include/X11/Xaw/Simple.h
Xday.o: /usr/staff/include/X11/Xmu/Converters.h
Xday.o: /usr/staff/include/X11/Xaw/AsciiText.h
Xday.o: /usr/staff/include/X11/Xaw/Text.h
Xday.o: /usr/staff/include/X11/Xaw/TextSink.h
Xday.o: /usr/staff/include/X11/Xaw/TextSrc.h
Xday.o: /usr/staff/include/X11/Xaw/AsciiSrc.h
Xday.o: /usr/staff/include/X11/Xaw/AsciiSink.h
Xday.o: /usr/staff/include/X11/Xaw/Cardinals.h xkal.h month.h day.h db.h
Xday.o: util.h date-strings.h app-resources.h patchlevel.h alert.h
Xedit.o: /usr/include/stdio.h /usr/staff/include/X11/Intrinsic.h
Xedit.o: /usr/staff/include/X11/Xlib.h /usr/include/sys/types.h
Xedit.o: /usr/include/sys/stdtypes.h /usr/include/sys/sysmacros.h
Xedit.o: /usr/staff/include/X11/X.h /usr/staff/include/X11/Xutil.h
Xedit.o: /usr/staff/include/X11/Xresource.h /usr/staff/include/X11/Xos.h
Xedit.o: /usr/include/strings.h /usr/include/sys/file.h
Xedit.o: /usr/include/sys/fcntlcom.h /usr/include/sys/stat.h
Xedit.o: /usr/include/sys/time.h /usr/include/sys/time.h
Xedit.o: /usr/staff/include/X11/Core.h /usr/staff/include/X11/Composite.h
Xedit.o: /usr/staff/include/X11/Constraint.h /usr/staff/include/X11/Object.h
Xedit.o: /usr/staff/include/X11/RectObj.h /usr/staff/include/X11/Shell.h
Xedit.o: /usr/staff/include/X11/StringDefs.h /usr/staff/include/X11/Xaw/Form.h
Xedit.o: /usr/staff/include/X11/Xaw/Command.h
Xedit.o: /usr/staff/include/X11/Xaw/Label.h
Xedit.o: /usr/staff/include/X11/Xaw/Simple.h
Xedit.o: /usr/staff/include/X11/Xmu/Converters.h
Xedit.o: /usr/staff/include/X11/Xaw/AsciiText.h
Xedit.o: /usr/staff/include/X11/Xaw/Text.h
Xedit.o: /usr/staff/include/X11/Xaw/TextSink.h
Xedit.o: /usr/staff/include/X11/Xaw/TextSrc.h
Xedit.o: /usr/staff/include/X11/Xaw/AsciiSrc.h
Xedit.o: /usr/staff/include/X11/Xaw/AsciiSink.h
Xedit.o: /usr/staff/include/X11/Xaw/Cardinals.h xkal.h month.h day.h db.h
Xedit.o: util.h date-strings.h app-resources.h alert.h
Xedit-defaults.o: /usr/include/stdio.h /usr/staff/include/X11/Intrinsic.h
Xedit-defaults.o: /usr/staff/include/X11/Xlib.h /usr/include/sys/types.h
Xedit-defaults.o: /usr/include/sys/stdtypes.h /usr/include/sys/sysmacros.h
Xedit-defaults.o: /usr/staff/include/X11/X.h /usr/staff/include/X11/Xutil.h
Xedit-defaults.o: /usr/staff/include/X11/Xresource.h
Xedit-defaults.o: /usr/staff/include/X11/Xos.h /usr/include/strings.h
Xedit-defaults.o: /usr/include/sys/file.h /usr/include/sys/fcntlcom.h
Xedit-defaults.o: /usr/include/sys/stat.h /usr/include/sys/time.h
Xedit-defaults.o: /usr/include/sys/time.h /usr/staff/include/X11/Core.h
Xedit-defaults.o: /usr/staff/include/X11/Composite.h
Xedit-defaults.o: /usr/staff/include/X11/Constraint.h
Xedit-defaults.o: /usr/staff/include/X11/Object.h
Xedit-defaults.o: /usr/staff/include/X11/RectObj.h
Xedit-defaults.o: /usr/staff/include/X11/Shell.h
Xedit-defaults.o: /usr/staff/include/X11/StringDefs.h
Xedit-defaults.o: /usr/staff/include/X11/Xaw/Form.h
Xedit-defaults.o: /usr/staff/include/X11/Xaw/Command.h
Xedit-defaults.o: /usr/staff/include/X11/Xaw/Label.h
Xedit-defaults.o: /usr/staff/include/X11/Xaw/Simple.h
Xedit-defaults.o: /usr/staff/include/X11/Xmu/Converters.h
Xedit-defaults.o: /usr/staff/include/X11/Xaw/AsciiText.h
Xedit-defaults.o: /usr/staff/include/X11/Xaw/Text.h
Xedit-defaults.o: /usr/staff/include/X11/Xaw/TextSink.h
Xedit-defaults.o: /usr/staff/include/X11/Xaw/TextSrc.h
Xedit-defaults.o: /usr/staff/include/X11/Xaw/AsciiSrc.h
Xedit-defaults.o: /usr/staff/include/X11/Xaw/AsciiSink.h
Xedit-defaults.o: /usr/staff/include/X11/Xaw/Cardinals.h xkal.h month.h day.h
Xedit-defaults.o: db.h app-resources.h alert.h
Xdb.o: /usr/include/stdio.h /usr/include/string.h /usr/include/sys/stdtypes.h
Xdb.o: /usr/include/ctype.h /usr/include/errno.h /usr/include/sys/errno.h
Xdb.o: /usr/include/sys/types.h /usr/include/sys/sysmacros.h
Xdb.o: /usr/include/sys/stat.h /usr/staff/include/X11/Intrinsic.h
Xdb.o: /usr/staff/include/X11/Xlib.h /usr/staff/include/X11/X.h
Xdb.o: /usr/staff/include/X11/Xutil.h /usr/staff/include/X11/Xresource.h
Xdb.o: /usr/staff/include/X11/Xos.h /usr/include/strings.h
Xdb.o: /usr/include/sys/file.h /usr/include/sys/fcntlcom.h
Xdb.o: /usr/include/sys/time.h /usr/include/sys/time.h
Xdb.o: /usr/staff/include/X11/Core.h /usr/staff/include/X11/Composite.h
Xdb.o: /usr/staff/include/X11/Constraint.h /usr/staff/include/X11/Object.h
Xdb.o: /usr/staff/include/X11/RectObj.h db.h util.h date-strings.h
Xdb.o: app-resources.h alert.h
Xutil.o: /usr/include/sys/time.h /usr/include/sys/time.h /usr/include/ctype.h
Xutil.o: date-strings.h app-resources.h /usr/staff/include/X11/Intrinsic.h
Xutil.o: /usr/staff/include/X11/Xlib.h /usr/include/sys/types.h
Xutil.o: /usr/include/sys/stdtypes.h /usr/include/sys/sysmacros.h
Xutil.o: /usr/staff/include/X11/X.h /usr/staff/include/X11/Xutil.h
Xutil.o: /usr/staff/include/X11/Xresource.h /usr/staff/include/X11/Xos.h
Xutil.o: /usr/include/strings.h /usr/include/sys/file.h
Xutil.o: /usr/include/sys/fcntlcom.h /usr/include/sys/stat.h
Xutil.o: /usr/staff/include/X11/Core.h /usr/staff/include/X11/Composite.h
Xutil.o: /usr/staff/include/X11/Constraint.h /usr/staff/include/X11/Object.h
Xutil.o: /usr/staff/include/X11/RectObj.h
Xdate-strings.o: /usr/include/stdio.h /usr/include/ctype.h
Xdate-strings.o: /usr/staff/include/X11/Intrinsic.h
Xdate-strings.o: /usr/staff/include/X11/Xlib.h /usr/include/sys/types.h
Xdate-strings.o: /usr/include/sys/stdtypes.h /usr/include/sys/sysmacros.h
Xdate-strings.o: /usr/staff/include/X11/X.h /usr/staff/include/X11/Xutil.h
Xdate-strings.o: /usr/staff/include/X11/Xresource.h
Xdate-strings.o: /usr/staff/include/X11/Xos.h /usr/include/strings.h
Xdate-strings.o: /usr/include/sys/file.h /usr/include/sys/fcntlcom.h
Xdate-strings.o: /usr/include/sys/stat.h /usr/include/sys/time.h
Xdate-strings.o: /usr/include/sys/time.h /usr/staff/include/X11/Core.h
Xdate-strings.o: /usr/staff/include/X11/Composite.h
Xdate-strings.o: /usr/staff/include/X11/Constraint.h
Xdate-strings.o: /usr/staff/include/X11/Object.h
Xdate-strings.o: /usr/staff/include/X11/RectObj.h app-resources.h
Xresources.o: /usr/include/stdio.h /usr/include/ctype.h
Xresources.o: /usr/staff/include/X11/Intrinsic.h /usr/staff/include/X11/Xlib.h
Xresources.o: /usr/include/sys/types.h /usr/include/sys/stdtypes.h
Xresources.o: /usr/include/sys/sysmacros.h /usr/staff/include/X11/X.h
Xresources.o: /usr/staff/include/X11/Xutil.h
Xresources.o: /usr/staff/include/X11/Xresource.h /usr/staff/include/X11/Xos.h
Xresources.o: /usr/include/strings.h /usr/include/sys/file.h
Xresources.o: /usr/include/sys/fcntlcom.h /usr/include/sys/stat.h
Xresources.o: /usr/include/sys/time.h /usr/include/sys/time.h
Xresources.o: /usr/staff/include/X11/Core.h /usr/staff/include/X11/Composite.h
Xresources.o: /usr/staff/include/X11/Constraint.h
Xresources.o: /usr/staff/include/X11/Object.h /usr/staff/include/X11/RectObj.h
Xresources.o: /usr/staff/include/X11/StringDefs.h xkal.h app-resources.h
Xstring-convert.o: /usr/staff/include/X11/Intrinsic.h
Xstring-convert.o: /usr/staff/include/X11/Xlib.h /usr/include/sys/types.h
Xstring-convert.o: /usr/include/sys/stdtypes.h /usr/include/sys/sysmacros.h
Xstring-convert.o: /usr/staff/include/X11/X.h /usr/staff/include/X11/Xutil.h
Xstring-convert.o: /usr/staff/include/X11/Xresource.h
Xstring-convert.o: /usr/staff/include/X11/Xos.h /usr/include/strings.h
Xstring-convert.o: /usr/include/sys/file.h /usr/include/sys/fcntlcom.h
Xstring-convert.o: /usr/include/sys/stat.h /usr/include/sys/time.h
Xstring-convert.o: /usr/include/sys/time.h /usr/staff/include/X11/Core.h
Xstring-convert.o: /usr/staff/include/X11/Composite.h
Xstring-convert.o: /usr/staff/include/X11/Constraint.h
Xstring-convert.o: /usr/staff/include/X11/Object.h
Xstring-convert.o: /usr/staff/include/X11/RectObj.h
Xstring-convert.o: /usr/staff/include/X11/StringDefs.h
Xalert.o: /usr/staff/include/X11/Intrinsic.h /usr/staff/include/X11/Xlib.h
Xalert.o: /usr/include/sys/types.h /usr/include/sys/stdtypes.h
Xalert.o: /usr/include/sys/sysmacros.h /usr/staff/include/X11/X.h
Xalert.o: /usr/staff/include/X11/Xutil.h /usr/staff/include/X11/Xresource.h
Xalert.o: /usr/staff/include/X11/Xos.h /usr/include/strings.h
Xalert.o: /usr/include/sys/file.h /usr/include/sys/fcntlcom.h
Xalert.o: /usr/include/sys/stat.h /usr/include/sys/time.h
Xalert.o: /usr/include/sys/time.h /usr/staff/include/X11/Core.h
Xalert.o: /usr/staff/include/X11/Composite.h
Xalert.o: /usr/staff/include/X11/Constraint.h /usr/staff/include/X11/Object.h
Xalert.o: /usr/staff/include/X11/RectObj.h /usr/staff/include/X11/StringDefs.h
Xalert.o: /usr/staff/include/X11/Shell.h /usr/staff/include/X11/Xaw/Dialog.h
Xalert.o: /usr/staff/include/X11/Xaw/Form.h
Xalert.o: /usr/staff/include/X11/Xaw/Cardinals.h /usr/include/stdio.h
Xalert.o: /usr/include/varargs.h
Xxkal2xremind.o: /usr/include/stdio.h /usr/staff/include/X11/Intrinsic.h
Xxkal2xremind.o: /usr/staff/include/X11/Xlib.h /usr/include/sys/types.h
Xxkal2xremind.o: /usr/include/sys/stdtypes.h /usr/include/sys/sysmacros.h
Xxkal2xremind.o: /usr/staff/include/X11/X.h /usr/staff/include/X11/Xutil.h
Xxkal2xremind.o: /usr/staff/include/X11/Xresource.h
Xxkal2xremind.o: /usr/staff/include/X11/Xos.h /usr/include/strings.h
Xxkal2xremind.o: /usr/include/sys/file.h /usr/include/sys/fcntlcom.h
Xxkal2xremind.o: /usr/include/sys/stat.h /usr/include/sys/time.h
Xxkal2xremind.o: /usr/include/sys/time.h /usr/staff/include/X11/Core.h
Xxkal2xremind.o: /usr/staff/include/X11/Composite.h
Xxkal2xremind.o: /usr/staff/include/X11/Constraint.h
Xxkal2xremind.o: /usr/staff/include/X11/Object.h
Xxkal2xremind.o: /usr/staff/include/X11/RectObj.h app-resources.h db.h
Xxkal2xremind.o: date-strings.h
Xresources.o: /usr/include/stdio.h /usr/include/ctype.h
Xresources.o: /usr/staff/include/X11/Intrinsic.h /usr/staff/include/X11/Xlib.h
Xresources.o: /usr/include/sys/types.h /usr/include/sys/stdtypes.h
Xresources.o: /usr/include/sys/sysmacros.h /usr/staff/include/X11/X.h
Xresources.o: /usr/staff/include/X11/Xutil.h
Xresources.o: /usr/staff/include/X11/Xresource.h /usr/staff/include/X11/Xos.h
Xresources.o: /usr/include/strings.h /usr/include/sys/file.h
Xresources.o: /usr/include/sys/fcntlcom.h /usr/include/sys/stat.h
Xresources.o: /usr/include/sys/time.h /usr/include/sys/time.h
Xresources.o: /usr/staff/include/X11/Core.h /usr/staff/include/X11/Composite.h
Xresources.o: /usr/staff/include/X11/Constraint.h
Xresources.o: /usr/staff/include/X11/Object.h /usr/staff/include/X11/RectObj.h
Xresources.o: /usr/staff/include/X11/StringDefs.h xkal.h app-resources.h
Xdb.o: /usr/include/stdio.h /usr/include/string.h /usr/include/sys/stdtypes.h
Xdb.o: /usr/include/ctype.h /usr/include/errno.h /usr/include/sys/errno.h
Xdb.o: /usr/include/sys/types.h /usr/include/sys/sysmacros.h
Xdb.o: /usr/include/sys/stat.h /usr/staff/include/X11/Intrinsic.h
Xdb.o: /usr/staff/include/X11/Xlib.h /usr/staff/include/X11/X.h
Xdb.o: /usr/staff/include/X11/Xutil.h /usr/staff/include/X11/Xresource.h
Xdb.o: /usr/staff/include/X11/Xos.h /usr/include/strings.h
Xdb.o: /usr/include/sys/file.h /usr/include/sys/fcntlcom.h
Xdb.o: /usr/include/sys/time.h /usr/include/sys/time.h
Xdb.o: /usr/staff/include/X11/Core.h /usr/staff/include/X11/Composite.h
Xdb.o: /usr/staff/include/X11/Constraint.h /usr/staff/include/X11/Object.h
Xdb.o: /usr/staff/include/X11/RectObj.h db.h util.h date-strings.h
Xdb.o: app-resources.h alert.h
Xutil.o: /usr/include/sys/time.h /usr/include/sys/time.h /usr/include/ctype.h
Xutil.o: date-strings.h app-resources.h /usr/staff/include/X11/Intrinsic.h
Xutil.o: /usr/staff/include/X11/Xlib.h /usr/include/sys/types.h
Xutil.o: /usr/include/sys/stdtypes.h /usr/include/sys/sysmacros.h
Xutil.o: /usr/staff/include/X11/X.h /usr/staff/include/X11/Xutil.h
Xutil.o: /usr/staff/include/X11/Xresource.h /usr/staff/include/X11/Xos.h
Xutil.o: /usr/include/strings.h /usr/include/sys/file.h
Xutil.o: /usr/include/sys/fcntlcom.h /usr/include/sys/stat.h
Xutil.o: /usr/staff/include/X11/Core.h /usr/staff/include/X11/Composite.h
Xutil.o: /usr/staff/include/X11/Constraint.h /usr/staff/include/X11/Object.h
Xutil.o: /usr/staff/include/X11/RectObj.h
Xdate-strings.o: /usr/include/stdio.h /usr/include/ctype.h
Xdate-strings.o: /usr/staff/include/X11/Intrinsic.h
Xdate-strings.o: /usr/staff/include/X11/Xlib.h /usr/include/sys/types.h
Xdate-strings.o: /usr/include/sys/stdtypes.h /usr/include/sys/sysmacros.h
Xdate-strings.o: /usr/staff/include/X11/X.h /usr/staff/include/X11/Xutil.h
Xdate-strings.o: /usr/staff/include/X11/Xresource.h
Xdate-strings.o: /usr/staff/include/X11/Xos.h /usr/include/strings.h
Xdate-strings.o: /usr/include/sys/file.h /usr/include/sys/fcntlcom.h
Xdate-strings.o: /usr/include/sys/stat.h /usr/include/sys/time.h
Xdate-strings.o: /usr/include/sys/time.h /usr/staff/include/X11/Core.h
Xdate-strings.o: /usr/staff/include/X11/Composite.h
Xdate-strings.o: /usr/staff/include/X11/Constraint.h
Xdate-strings.o: /usr/staff/include/X11/Object.h
Xdate-strings.o: /usr/staff/include/X11/RectObj.h app-resources.h
Xxkal2pcal.o: /usr/include/stdio.h /usr/staff/include/X11/Intrinsic.h
Xxkal2pcal.o: /usr/staff/include/X11/Xlib.h /usr/include/sys/types.h
Xxkal2pcal.o: /usr/include/sys/stdtypes.h /usr/include/sys/sysmacros.h
Xxkal2pcal.o: /usr/staff/include/X11/X.h /usr/staff/include/X11/Xutil.h
Xxkal2pcal.o: /usr/staff/include/X11/Xresource.h /usr/staff/include/X11/Xos.h
Xxkal2pcal.o: /usr/include/strings.h /usr/include/sys/file.h
Xxkal2pcal.o: /usr/include/sys/fcntlcom.h /usr/include/sys/stat.h
Xxkal2pcal.o: /usr/include/sys/time.h /usr/include/sys/time.h
Xxkal2pcal.o: /usr/staff/include/X11/Core.h /usr/staff/include/X11/Composite.h
Xxkal2pcal.o: /usr/staff/include/X11/Constraint.h
Xxkal2pcal.o: /usr/staff/include/X11/Object.h /usr/staff/include/X11/RectObj.h
Xxkal2pcal.o: app-resources.h db.h date-strings.h
Xresources.o: /usr/include/stdio.h /usr/include/ctype.h
Xresources.o: /usr/staff/include/X11/Intrinsic.h /usr/staff/include/X11/Xlib.h
Xresources.o: /usr/include/sys/types.h /usr/include/sys/stdtypes.h
Xresources.o: /usr/include/sys/sysmacros.h /usr/staff/include/X11/X.h
Xresources.o: /usr/staff/include/X11/Xutil.h
Xresources.o: /usr/staff/include/X11/Xresource.h /usr/staff/include/X11/Xos.h
Xresources.o: /usr/include/strings.h /usr/include/sys/file.h
Xresources.o: /usr/include/sys/fcntlcom.h /usr/include/sys/stat.h
Xresources.o: /usr/include/sys/time.h /usr/include/sys/time.h
Xresources.o: /usr/staff/include/X11/Core.h /usr/staff/include/X11/Composite.h
Xresources.o: /usr/staff/include/X11/Constraint.h
Xresources.o: /usr/staff/include/X11/Object.h /usr/staff/include/X11/RectObj.h
Xresources.o: /usr/staff/include/X11/StringDefs.h xkal.h app-resources.h
Xdb.o: /usr/include/stdio.h /usr/include/string.h /usr/include/sys/stdtypes.h
Xdb.o: /usr/include/ctype.h /usr/include/errno.h /usr/include/sys/errno.h
Xdb.o: /usr/include/sys/types.h /usr/include/sys/sysmacros.h
Xdb.o: /usr/include/sys/stat.h /usr/staff/include/X11/Intrinsic.h
Xdb.o: /usr/staff/include/X11/Xlib.h /usr/staff/include/X11/X.h
Xdb.o: /usr/staff/include/X11/Xutil.h /usr/staff/include/X11/Xresource.h
Xdb.o: /usr/staff/include/X11/Xos.h /usr/include/strings.h
Xdb.o: /usr/include/sys/file.h /usr/include/sys/fcntlcom.h
Xdb.o: /usr/include/sys/time.h /usr/include/sys/time.h
Xdb.o: /usr/staff/include/X11/Core.h /usr/staff/include/X11/Composite.h
Xdb.o: /usr/staff/include/X11/Constraint.h /usr/staff/include/X11/Object.h
Xdb.o: /usr/staff/include/X11/RectObj.h db.h util.h date-strings.h
Xdb.o: app-resources.h alert.h
Xutil.o: /usr/include/sys/time.h /usr/include/sys/time.h /usr/include/ctype.h
Xutil.o: date-strings.h app-resources.h /usr/staff/include/X11/Intrinsic.h
Xutil.o: /usr/staff/include/X11/Xlib.h /usr/include/sys/types.h
Xutil.o: /usr/include/sys/stdtypes.h /usr/include/sys/sysmacros.h
Xutil.o: /usr/staff/include/X11/X.h /usr/staff/include/X11/Xutil.h
Xutil.o: /usr/staff/include/X11/Xresource.h /usr/staff/include/X11/Xos.h
Xutil.o: /usr/include/strings.h /usr/include/sys/file.h
Xutil.o: /usr/include/sys/fcntlcom.h /usr/include/sys/stat.h
Xutil.o: /usr/staff/include/X11/Core.h /usr/staff/include/X11/Composite.h
Xutil.o: /usr/staff/include/X11/Constraint.h /usr/staff/include/X11/Object.h
Xutil.o: /usr/staff/include/X11/RectObj.h
Xdate-strings.o: /usr/include/stdio.h /usr/include/ctype.h
Xdate-strings.o: /usr/staff/include/X11/Intrinsic.h
Xdate-strings.o: /usr/staff/include/X11/Xlib.h /usr/include/sys/types.h
Xdate-strings.o: /usr/include/sys/stdtypes.h /usr/include/sys/sysmacros.h
Xdate-strings.o: /usr/staff/include/X11/X.h /usr/staff/include/X11/Xutil.h
Xdate-strings.o: /usr/staff/include/X11/Xresource.h
Xdate-strings.o: /usr/staff/include/X11/Xos.h /usr/include/strings.h
Xdate-strings.o: /usr/include/sys/file.h /usr/include/sys/fcntlcom.h
Xdate-strings.o: /usr/include/sys/stat.h /usr/include/sys/time.h
Xdate-strings.o: /usr/include/sys/time.h /usr/staff/include/X11/Core.h
Xdate-strings.o: /usr/staff/include/X11/Composite.h
Xdate-strings.o: /usr/staff/include/X11/Constraint.h
Xdate-strings.o: /usr/staff/include/X11/Object.h
Xdate-strings.o: /usr/staff/include/X11/RectObj.h app-resources.h
END_OF_FILE
if test 34379 -ne `wc -c <'Makefile'`; then
    echo shar: \"'Makefile'\" unpacked with wrong size!
fi
# end of 'Makefile'
fi
if test -f 'alert.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'alert.c'\"
else
echo shar: Extracting \"'alert.c'\" \(2685 characters\)
sed "s/^X//" >'alert.c' <<'END_OF_FILE'
X/*
X *	alert.c : A popup click-to-remove message box.
X *
X *	George Ferguson, ferguson@cs.rochester.edu, 17 July 1990.
X *
X *	$Id: alert.c,v 1.1 91/02/28 11:20:47 ferguson Exp $
X */
X
X#include <X11/Intrinsic.h>
X#include <X11/StringDefs.h>
X#include <X11/Shell.h>
X#include <X11/Xaw/Dialog.h>
X#include <X11/Xaw/Cardinals.h>
X#include <stdio.h>
X#include <varargs.h>
Xextern Widget toplevel;			/* this is the only external */
X
X/*
X * Functions defined here
X */
Xvoid alert();			/* main public routine */
Xvoid alertOk();			/* public action procedure */
X
Xstatic Widget popup,alerter;
Xstatic Boolean alertDone;
X
Xvoid
Xalert(va_alist)
Xva_dcl
X{
X    va_list vptr;
X    char prompt[BUFSIZ],*fmt;
X    Arg args[2];
X    XEvent event;
X    Window rwin,child;
X    int rx,ry,cx,cy,but,x,y;
X    Dimension w,h;
X
X    if (popup == NULL) {
X	popup = XtCreatePopupShell("popup",transientShellWidgetClass,
X							toplevel,NULL,ZERO);
X	alerter = XtCreateManagedWidget("alert",dialogWidgetClass,
X							popup,NULL,ZERO);
X	XawDialogAddButton(alerter,"okButton",alertOk,NULL);
X	XtRealizeWidget(popup);							
X    }
X/*
X * This vsprintf() code from Dan Heller (argv@sun.com).
X */
X    va_start(vptr);
X    fmt = va_arg(vptr,char *);
X#if defined(sun) || defined(SYSV) || defined(VPRINTF)
X    vsprintf(prompt, fmt, vptr);
X#else /* !VPRINTF */
X    {
X        /* we're on a BSD machine that has no vsprintf() */
X        FILE foo;
X        foo._cnt = BUFSIZ;
X        foo._base = foo._ptr = prompt; /* may have to cast(unsigned char *) */
X        foo._flag = _IOWRT+_IOSTRG;
X        (void) _doprnt(fmt, vptr, &foo);
X        *foo._ptr = '\0'; /* plant terminating null character */
X    }
X#endif /* VPRINTF */
X    va_end (vptr);
X
X    XtSetArg(args[0],XtNlabel,prompt);
X    XtSetValues(alerter,args,ONE);
X    XtSetArg(args[0],XtNwidth,&w);
X    XtSetArg(args[1],XtNheight,&h);
X    XtGetValues(popup,args,TWO);
X    XQueryPointer(XtDisplay(toplevel),XtWindow(toplevel),
X					&rwin,&child,&rx,&ry,&cx,&cy,&but);
X    x = rx-w/2;
X    if (x < 0)
X	x = 0;
X    else if (x > WidthOfScreen(XtScreen(toplevel))-w)
X	x = WidthOfScreen(XtScreen(toplevel))-w;
X    y = ry-h/2;
X    if (y < 0)
X	y = 0;
X    else if (y > HeightOfScreen(XtScreen(toplevel))-h)
X	y = WidthOfScreen(XtScreen(toplevel))-h;
X    XtSetArg(args[0],XtNx,x);
X    XtSetArg(args[1],XtNy,y);
X    XtSetValues(popup,args,TWO);
X
X    XBell(XtDisplay(toplevel),0);
X    alertDone = False;
X    XtPopup(popup,XtGrabExclusive);
X    while (!alertDone) {
X	XtAppNextEvent(XtWidgetToApplicationContext(toplevel),&event);
X	XtDispatchEvent(&event);
X    }
X    XtPopdown(popup);
X}
X
Xvoid
XalertOk(w,event,params,num_params)
XWidget w;
XXEvent *event;
XString *params;
XCardinal *num_params;
X{
X    alertDone = True;
X}
END_OF_FILE
if test 2685 -ne `wc -c <'alert.c'`; then
    echo shar: \"'alert.c'\" unpacked with wrong size!
fi
# end of 'alert.c'
fi
if test -f 'alert.h' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'alert.h'\"
else
echo shar: Extracting \"'alert.h'\" \(268 characters\)
sed "s/^X//" >'alert.h' <<'END_OF_FILE'
X/*
X *	alert.h : A popup click-to-remove message box.
X *
X *	George Ferguson, ferguson@cs.rochester.edu, 17 July 1990.
X *
X *	$Id: alert.h,v 1.1 91/02/28 11:21:02 ferguson Exp $
X */
X
Xextern void alert(/* fmt,args */);
Xextern void alertOk(/* w,event,params,numparams */);
END_OF_FILE
if test 268 -ne `wc -c <'alert.h'`; then
    echo shar: \"'alert.h'\" unpacked with wrong size!
fi
# end of 'alert.h'
fi
if test -f 'app-resources.h' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'app-resources.h'\"
else
echo shar: Extracting \"'app-resources.h'\" \(2920 characters\)
sed "s/^X//" >'app-resources.h' <<'END_OF_FILE'
X/*
X *	app-resources.h : External definitions for access to the application
X *		      resources.
X *
X *	George Ferguson, ferguson@cs.rochester.edu,  27 Oct 1990.
X *	Version 1.1 - 27 Feb 1991.
X *
X *	$Id: app-resources.h,v 2.2 91/03/13 13:31:02 ferguson Exp $
X *
X */
X#ifndef APP_RESOURCES_H
X#define APP_RESOURCES_H
X
X#include <X11/Intrinsic.h>
X
Xtypedef struct {
X    String systemAppoints;		/* file for non-editable appoints */
X    String personalAppoints;		/* file for editable appoints */
X    String backupExtension;		/* suffix for backup appoints file */
X    String outputFormat;		/* how to write out appoints */
X    Boolean daySlashMonth;		/* dd/mm rather than mm/dd */
X    String date;			/* override "current" date */
X    int numMonths;			/* display 1, 3, or 12 months */
X    Boolean bothShown;			/* put day and month in same frame */
X    Boolean useTitlebar;		/* put date on titlebar */
X    Boolean listOnly;			/* non-graphic mode */
X    Boolean silent;			/* no output (just return value) */
X    Boolean exitUsesLevels;		/* return level sum or number */
X    Boolean version;			/* print version number and quit */
X    Boolean opaqueDates;		/* draw dates opaquely on calendar */
X    int checkpointInterval;		/* seconds between automatic updates */
X    Boolean dowLabels;			/* put dow at top of columns */
X    String longDowStrings;		/* full names of dows */
X    String shortDowStrings;		/* abbreviated names of dows */
X    String longMonthStrings;		/* full names of months */
X    String shortMonthStrings;		/* abbreviated names of months */
X    int dowOffset;			/* offset to first dow (0=Sun, 1=Mon) */
X    String appsStartTime;		/* time of first appointment slot */
X    String appsEndTime;			/* time of last appointment slot */
X    String appsIncrement;		/* time between them */
X    Boolean appsUseAmPm;		/* display using am/pm or 24hr */
X    int numNotes;			/* how many notes slots */
X    String notesLabel;			/* and the labels for them */
X    String noonStr;			/* name of 12:00 */
X    String midnightStr;			/* name of 0:00 */
X    Boolean rearrangeSilently;		/* don't say when appoints moved */
X    String levelDelim;			/* chars to delimit level in file */
X    int maxLevel;			/* number of levels for appoints */
X    int defaultLevel;			/* default level for new appoints */
X    /* fonts for date in calendar */
X    Font dateFont1,dateFont2,dateFont3,dateFont12;
X    /* offset in square */
X    String datePosition1,datePosition2,datePosition3,datePosition12;
X    /* width of square */
X    int dateWidth1,dateWidth2,dateWidth3,dateWidth12;
X    /* height of square */
X    int dateHeight1,dateHeight2,dateHeight3,dateHeight12;
X    String noDayShade;			/* pattern for non-days */
X    String shades;			/* patterns for days w/ appoints */
X    String colors;			/* colors for days w/ appoints */
X    String revision;			/* version of app-defaults */
X} AppResources;
Xextern AppResources appResources;
X
X#endif /* APP_RESOURCES_H */
END_OF_FILE
if test 2920 -ne `wc -c <'app-resources.h'`; then
    echo shar: \"'app-resources.h'\" unpacked with wrong size!
fi
# end of 'app-resources.h'
fi
if test -f 'date-strings.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'date-strings.c'\"
else
echo shar: Extracting \"'date-strings.c'\" \(1245 characters\)
sed "s/^X//" >'date-strings.c' <<'END_OF_FILE'
X/*
X *	date-strings.c : Strings used everywhere, parsed from
X *		the app-resources into arrays.
X *
X *	George Ferguson, ferguson@cs.rochester.edu,  27 Feb 1991.
X *
X *	$Id: date-strings.c,v 2.1 91/02/28 11:21:07 ferguson Exp $
X */
X#include <stdio.h>
X#include <ctype.h>
X#include <X11/Intrinsic.h>
X#include "app-resources.h"
Xextern char *program;
X
X/*
X * Functions defined here:
X */
Xvoid initDateStrings();
Xstatic void parseStrings();
X
X/*
X * Data defined here:
X */
Xchar *longDowStr[7], *shortDowStr[7], *longMonthStr[12], *shortMonthStr[12];
X
X/*	-	-	-	-	-	-	-	-	*/
X
Xvoid
XinitDateStrings()
X{
X    parseStrings(appResources.longDowStrings,longDowStr,7);
X    parseStrings(appResources.shortDowStrings,shortDowStr,7);
X    parseStrings(appResources.longMonthStrings,longMonthStr,12);
X    parseStrings(appResources.shortMonthStrings,shortMonthStr,12);
X}
X
Xstatic void
XparseStrings(s,array,num)
Xchar *s;
Xchar *array[];
Xint num;
X{
X    char buf[64];
X    int i,n;
X
X    for (i = 0; i < num; i++) {
X	while (isspace(*s))
X	    s += 1;
X	n = 0;
X	while (*s && !isspace(*s) && n < 63)
X	    buf[n++] = *s++;
X	buf[n] = '\0';
X	if (n == 63 && *s && !isspace(*s))
X	    fprintf(stderr,"%s: date-string too long: \"%s...\"\n",program,buf);
X	array[i] = XtNewString(buf);
X    }
X}
END_OF_FILE
if test 1245 -ne `wc -c <'date-strings.c'`; then
    echo shar: \"'date-strings.c'\" unpacked with wrong size!
fi
# end of 'date-strings.c'
fi
if test -f 'date-strings.h' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'date-strings.h'\"
else
echo shar: Extracting \"'date-strings.h'\" \(394 characters\)
sed "s/^X//" >'date-strings.h' <<'END_OF_FILE'
X/*
X *	date-strings.h: Definitions of global string constants
X *
X *	George Ferguson, ferguson@cs.rochester.edu, 27 Feb 1991.
X *
X *	$Id: date-strings.h,v 2.1 91/02/28 11:21:09 ferguson Exp $
X */
X#ifndef DATE_STRINGS_H
X#define DATE_STRINGS_H
X
Xextern char *shortDowStr[7],*longDowStr[7];
Xextern char *shortMonthStr[12],*longMonthStr[12];
Xextern void initDateStrings();
X
X#endif /* DATE_STRINGS_H */
END_OF_FILE
if test 394 -ne `wc -c <'date-strings.h'`; then
    echo shar: \"'date-strings.h'\" unpacked with wrong size!
fi
# end of 'date-strings.h'
fi
if test -f 'dysize.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'dysize.c'\"
else
echo shar: Extracting \"'dysize.c'\" \(264 characters\)
sed "s/^X//" >'dysize.c' <<'END_OF_FILE'
X/*
X *	dysize(year): Return the number of days in the given year.
X *
X *	George Ferguson, ferguson@cs.rochester.edu, 15 Nov 1990.
X */
X
Xint
Xdysize(year)
Xint year;
X{
X    if (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0))
X	return(366);
X    else
X	return(365);
X}
END_OF_FILE
if test 264 -ne `wc -c <'dysize.c'`; then
    echo shar: \"'dysize.c'\" unpacked with wrong size!
fi
# end of 'dysize.c'
fi
echo shar: End of archive 1 \(of 5\).
cp /dev/null ark1isdone
MISSING=""
for I in 1 2 3 4 5 ; do
    if test ! -f ark${I}isdone ; then
	MISSING="${MISSING} ${I}"
    fi
done
if test "${MISSING}" = "" ; then
    echo You have unpacked all 5 archives.
    rm -f ark[1-9]isdone
else
    echo You still need to unpack the following archives:
    echo "        " ${MISSING}
fi
##  End of shell archive.
exit 0

-- 
George Ferguson			ARPA: ferguson@cs.rochester.edu
University of Rochester		UUCP: {decvax,rutgers}!rochester!ferguson
Rochester  NY  14627-0226	VOX:  (716) 275-2527