diff -Naur --exclude Makefile --exclude info wfdb-10.4.3/app/Makefile.tpl wfdb-10.4.4/app/Makefile.tpl
--- wfdb-10.4.3/app/Makefile.tpl	2006-05-10 15:13:57.000000000 -0400
+++ wfdb-10.4.4/app/Makefile.tpl	2006-05-11 15:06:03.000000000 -0400
@@ -1,5 +1,5 @@
 # file: Makefile.tpl		G. Moody	  23 May 2000
-#				Last revised:	   5 May 2006
+#				Last revised:	  11 May 2006
 # This section of the Makefile should not need to be changed.
 
 CFILES = ann2rr.c bxb.c calsig.c ecgeval.c epicmp.c fir.c ihr.c mfilt.c \
@@ -38,6 +38,11 @@
 	cp $(PSFILES) $(PSPDIR)
 	cd $(PSPDIR); $(SETPERMISSIONS) $(PSFILES)
 
+# 'make collect': retrieve the installed applications
+collect:
+	../conf/collect.sh $(BINDIR) $(XFILES) $(SCRIPTS)
+	../conf/collect.sh $(PSPDIR) $(PSFILES)
+
 # `make scripts': install customized scripts for setting WFDB path
 scripts:
 	sed s+/usr/local/database+$(DBDIR)+g <setwfdb >$(BINDIR)/setwfdb
diff -Naur --exclude Makefile --exclude info wfdb-10.4.3/conf/collect.sh wfdb-10.4.4/conf/collect.sh
--- wfdb-10.4.3/conf/collect.sh	1969-12-31 19:00:00.000000000 -0500
+++ wfdb-10.4.4/conf/collect.sh	2006-05-11 14:52:11.000000000 -0400
@@ -0,0 +1,27 @@
+#!/bin/sh
+
+# file: collect.sh	G. Moody	11 May 2006
+#
+# This script collects the specified files from the specified source
+# directory and places copies of them in a like-named directory under
+# /tmp/wfdb, creating that directory if it does not exist already.
+# The copies have the same creation dates and permissions as the originals.
+
+if [ $# -lt 2 ]
+then
+ echo usage: $0 SRCDIR FILE ...; exit 1
+fi
+
+SRC=$1
+DST=/tmp/wfdb/$1
+
+[ -d $DST ] || mkdir -p $DST
+
+shift
+for FILE in $*
+do
+  cp -p $SRC/$FILE $DST/$FILE
+done
+
+exit 0
+
diff -Naur --exclude Makefile --exclude info wfdb-10.4.3/conf/version.def wfdb-10.4.4/conf/version.def
--- wfdb-10.4.3/conf/version.def	2006-05-08 13:10:45.000000000 -0400
+++ wfdb-10.4.4/conf/version.def	2006-05-11 12:35:56.000000000 -0400
@@ -1,10 +1,10 @@
 # file: version.def		G. Moody	24 May 2000
-#				Last revised:	 8 May 2006
+#				Last revised:	11 May 2006
 # Each release of the WFDB Software Package is identified by a three-part
 # version number, defined here:
 MAJOR = 10
 MINOR = 4
-RELEASE = 3
+RELEASE = 4
 VERSION = $(MAJOR).$(MINOR).$(RELEASE)
 
 # RPMRELEASE can be incremented if changes are made between official
diff -Naur --exclude Makefile --exclude info wfdb-10.4.3/convert/Makefile.tpl wfdb-10.4.4/convert/Makefile.tpl
--- wfdb-10.4.3/convert/Makefile.tpl	2006-05-10 15:19:20.000000000 -0400
+++ wfdb-10.4.4/convert/Makefile.tpl	2006-05-11 13:25:57.000000000 -0400
@@ -1,12 +1,12 @@
-# file: Makefile.tpl		G. Moody	  24 May 2000
-#				Last revised:	12 February 2003
+# file: Makefile.tpl		G. Moody	24 May 2000
+#				Last revised:	11 May 2006
 # This section of the Makefile should not need to be changed.
 
 CFILES = a2m.c ad2m.c m2a.c md2a.c readid.c makeid.c edf2mit.c mit2edf.c \
  wav2mit.c mit2wav.c revise.c
 XFILES = a2m ad2m m2a md2a readid makeid edf2mit mit2edf wav2mit mit2wav revise
 SCRIPTS = ahaconvert
-MFILES = Makefile Makefile.dos
+MFILES = Makefile
 
 # General rule for compiling C sources into executable files.  This is
 # redundant for most versions of `make', but at least one System V version
@@ -23,6 +23,10 @@
 	$(SETXPERMISSIONS) $(XFILES) $(SCRIPTS)
 	../install.sh $(BINDIR) $(XFILES) $(SCRIPTS)
 
+# 'make collect': retrieve the installed applications
+collect:
+	../conf/collect.sh $(BINDIR) $(XFILES) $(SCRIPTS)
+
 uninstall:
 	../uninstall.sh $(BINDIR) $(XFILES) $(SCRIPTS)
 
diff -Naur --exclude Makefile --exclude info wfdb-10.4.3/data/Makefile.tpl wfdb-10.4.4/data/Makefile.tpl
--- wfdb-10.4.3/data/Makefile.tpl	2003-02-23 14:08:15.000000000 -0500
+++ wfdb-10.4.4/data/Makefile.tpl	2006-05-11 13:30:59.000000000 -0400
@@ -16,6 +16,12 @@
 	-cd $(DBDIR)/pipe; $(SETPERMISSIONS) *
 	-cd $(DBDIR)/tape; $(SETPERMISSIONS) *
 
+# 'make collect': retrieve the installed files
+collect:
+	../conf/collect.sh $(DBDIR) $(DBFILES) wfdbcal dbcal
+	cd pipe; ../../conf/collect.sh $(DBDIR)/pipe *
+	cd tape; ../../conf/collect.sh $(DBDIR)/tape *
+	
 uninstall:
 	../uninstall.sh $(DBDIR) $(DBFILES) dbcal
 
diff -Naur --exclude Makefile --exclude info wfdb-10.4.3/doc/Makefile.tpl wfdb-10.4.4/doc/Makefile.tpl
--- wfdb-10.4.3/doc/Makefile.tpl	2006-05-04 17:42:37.000000000 -0400
+++ wfdb-10.4.4/doc/Makefile.tpl	2006-05-11 15:05:00.000000000 -0400
@@ -1,5 +1,5 @@
 # file: Makefile.tpl		G. Moody	 24 May 2000
-#				Last revised:     4 May 2006
+#				Last revised:    11 May 2006
 # Change the settings below as appropriate for your setup.
 
 # Set COLORS to 'color' if you have a color printer and would like to print
@@ -108,6 +108,9 @@
 install:
 	cd wag-src; $(MAKE) wag.man
 
+collect:
+	cd wag-src; $(MAKE) collect
+
 uninstall:
 	cd wag-src; $(MAKE) uninstall
 
diff -Naur --exclude Makefile --exclude info wfdb-10.4.3/doc/wag-src/Makefile.tpl wfdb-10.4.4/doc/wag-src/Makefile.tpl
--- wfdb-10.4.3/doc/wag-src/Makefile.tpl	2006-02-27 00:19:07.000000000 -0500
+++ wfdb-10.4.4/doc/wag-src/Makefile.tpl	2006-05-11 15:04:53.000000000 -0400
@@ -1,5 +1,5 @@
-# file: Makefile.tpl		G. Moody	  24 May 2000
-#				Last revised:	27 February 2006
+# file: Makefile.tpl		G. Moody	24 May 2000
+#				Last revised:	11 May 2006
 # Change the settings below as appropriate for your setup.
 
 # D2PARGS is a list of options for dvips.  Uncomment one of these to set the
@@ -94,6 +94,9 @@
 
 install:	wag.man
 
+collect:
+	$(MAKE) MANDIR=/tmp/wfdb/$(MANDIR) install
+
 uninstall:
 	../../uninstall.sh $(MAN1) *.1 ad2m.1 ann2rr.1 m2a.1 md2a.1 hrlomb.1 \
 	 hrmem.1 hrplot.1 plot3d.1 cshsetwfdb.1 rr2ann.1
diff -Naur --exclude Makefile --exclude info wfdb-10.4.3/doc/wpg-src/wpg0.tex wfdb-10.4.4/doc/wpg-src/wpg0.tex
--- wfdb-10.4.3/doc/wpg-src/wpg0.tex	2006-05-04 11:27:18.000000000 -0400
+++ wfdb-10.4.4/doc/wpg-src/wpg0.tex	2006-05-12 00:54:21.000000000 -0400
@@ -474,7 +474,7 @@
 
 @end display
 
-@iftex
+@ifnotinfo
 @cindex Emacs Info
 @cindex GNU emacs
 @cindex Info (GNU emacs)
@@ -485,19 +485,20 @@
 instructions are included in the WFDB Software Package; type @kbd{C-h i}
 within GNU @code{emacs} to start up @code{info} (@pxref{Sources}, for
 information about obtaining GNU @code{emacs}).
-@end iftex
+@end ifnotinfo
 
+@ifnothtml
 An HTML version of this guide, suitable for viewing using any web browser,
 is included with the WFDB Software Package.  The latest version may always be
 viewed at @uref{http://@-www.@-physio@-net.@-org/@-physio@-tools/@-wpg/} using your web
 browser.
+@end ifnothtml
 
-@ifinfo
 You can format and print copies of this guide using TeX if you have it (see
 @file{makefile} in the @file{doc} directory of the library distribution for
 instructions on doing so).  You may obtain preformatted versions in PDF and
 PostScript formats from @uref{http://www.physionet.org/}.
-@end ifinfo
+
 
 @node     Recent changes, Usage, Overview, Top
 @comment  node-name,  next,  previous,  up
@@ -1092,12 +1093,15 @@
 
 @noindent
 just above @code{exit(0);}
-@iftex
+@ifhtml
 (@pxref{wfdbquit, , @code{wfdbquit}}).
-@end iftex
+@end ifhtml
 @ifinfo
 (@pxref{wfdbquit}).
 @end ifinfo
+@iftex
+(@pxref{wfdbquit, , @code{wfdbquit}}).
+@end iftex
 
 @node     compiling, other languages, print samples, Usage
 @comment  node-name,  next,  previous,  up
@@ -1764,22 +1768,28 @@
 success or failure.  The tables that follow the function prototypes
 list the possible returns and their meanings.  By convention, a
 return code of
-@iftex
-@minus{}1
-@end iftex
+@ifhtml
+-1
+@end ifhtml
 @ifinfo
 -1
 @end ifinfo
+@iftex
+@minus{}1
+@end iftex
 indicates end-of-file on input files, and no
 error message is printed.  Other negative return codes signify other
 types of errors, and are usually accompanied by descriptive messages on
 the standard error output (but
-@iftex
+@ifhtml
 @pxref{wfdbquiet and wfdbverbose, , @code{wfdbquiet} and @code{wfdbverbose}}).
-@end iftex
+@end ifhtml
 @ifinfo
 @pxref{wfdbquiet and wfdbverbose}).
 @end ifinfo
+@iftex
+@pxref{wfdbquiet and wfdbverbose, , @code{wfdbquiet} and @code{wfdbverbose}}).
+@end iftex
 Zero may indicate success or failure, depending on context (see the
 descriptions of the individual functions below).  Positive codes
 (returned by only a few functions) always indicate success.
@@ -1853,9 +1863,9 @@
 @code{annopen} closes any previously opened annotation files, and takes
 all of @var{record} as the record name.  @var{aiarray} is a pointer to
 an array of @code{WFDB_Anninfo} structures
-@iftex
+@ifnotinfo
 (@pxref{WFDB_Anninfo structures, , Annotator Information Structures}),
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{WFDB_Anninfo structures}),
 @end ifinfo
@@ -1885,9 +1895,9 @@
 Annotator @file{a} becomes input annotator 0, @file{b} becomes output
 annotator 0, and @file{c} becomes input annotator 1.  Thus
 @code{getann(1, &annot)}
-@iftex
+@ifnotinfo
 (@pxref{getann, , @code{getann}})
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{getann})
 @end ifinfo
@@ -1941,9 +1951,9 @@
 @code{isigopen} reads the standard input rather than a @file{hea}
 file.  @var{Siarray} is a pointer to an array of @code{WFDB_Siginfo}
 structures
-@iftex
+@ifnotinfo
 (@pxref{WFDB_Siginfo structures, , Signal Information Structures}),
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{WFDB_Siginfo structures}),
 @end ifinfo
@@ -2018,9 +2028,9 @@
 total number of signals in such cases.)  If necessary, the caller can
 inspect the file names and signal descriptions in @var{siarray} to
 determine which signals were opened; 
-@iftex
+@ifnotinfo
 @pxref{WFDB_Siginfo structures, , Signal Information Structures}.
-@end iftex
+@end ifnotinfo
 @ifinfo
 @pxref{WFDB_Siginfo structures}.
 @end ifinfo
@@ -2029,9 +2039,9 @@
 5}.
 
 If @var{nsig} is less than 0, @code{isigopen} fills in up to
-@iftex
+@ifnotinfo
 @minus{}@var{nsig}
-@end iftex
+@end ifnotinfo
 @ifinfo
 -@var{nsig}
 @end ifinfo
@@ -2143,9 +2153,9 @@
 file as in @code{osigopen}.  Any previously open output signals are
 closed by @code{osigfopen}.  @var{siarray} is a pointer to an array of
 @code{WFDB_Siginfo} structures
-@iftex
+@ifnotinfo
 (@pxref{WFDB_Siginfo structures, , Signal Information Structures}),
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{WFDB_Siginfo structures}),
 @end ifinfo
@@ -2196,9 +2206,9 @@
 Failure: unable to open output annotation file
 @item @t{-5}
 Failure: illegal @code{stat} (in @var{aiarray}) specified for annotation file
-@iftex
+@ifnotinfo
 (@pxref{WFDB_Anninfo structures, , Annotator Information Structures})
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{WFDB_Anninfo structures})
 @end ifinfo
@@ -2224,9 +2234,9 @@
 
 @noindent
 @xref{Example 9}, for an illustration of the use of @code{wfdbinit}.
-@iftex
+@ifnotinfo
 @xref{osigopen, , @code{osigopen}}, and @pxref{osigfopen, , @code{osigfopen}},
-@end iftex
+@end ifnotinfo
 @ifinfo
 @xref{osigopen}, and @pxref{osigfopen},
 @end ifinfo
@@ -2558,9 +2568,9 @@
 @var{vector} must be determined by summing the values of the @code{spf}
 (samples per frame) fields in the @code{WFDB_Siginfo} structures associated
 with the input signals
-@iftex
+@ifnotinfo
 (@pxref{isigopen, , @code{isigopen}}).
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{isigopen}).
 @end ifinfo
@@ -2596,9 +2606,9 @@
 output signals, as given to @code{osigfopen} or @code{osigopen}.)  On entry,
 @var{vector[i]} contains the next sample from signal @var{i}.  For example,
 this modified version of the previous example
-@iftex
+@ifnotinfo
 (@pxref{getvec, , @code{getvec}})
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{getvec})
 @end ifinfo
@@ -2636,9 +2646,9 @@
 
 All programs that write signals or annotations @emph{must} invoke
 @code{wfdbquit} to close the output files properly
-@iftex
+@ifnotinfo
 (@pxref{wfdbquit, , @code{wfdbquit}}).
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{wfdbquit}).
 @end ifinfo
@@ -2676,9 +2686,9 @@
 @noindent
 This function reads the next annotation from the input annotator
 specified by @var{an} into the annotation structure
-@iftex
+@ifnotinfo
 (@pxref{WFDB_Annotation structures, , Annotation Structures})
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{WFDB_Annotation structures})
 @end ifinfo
@@ -2709,18 +2719,18 @@
 (See @uref{http://www.physionet.org/physiotools/wfdb/examples/exgetann.c}
 for a copy of this program.)
 
-@iftex
+@ifnotinfo
 @xref{WFDB_Anninfo structures, , Annotator Information Structures},
-@end iftex
+@end ifnotinfo
 @ifinfo
 @xref{WFDB_Anninfo structures},
 @end ifinfo
 for information on the contents of the @code{WFDB_Anninfo} structure,
 and
-@iftex
+@ifnotinfo
 @pxref{timstr and strtim, , @code{mstimstr}}, and
 @pxref{annstr and strann, , @code{annstr}},
-@end iftex
+@end ifnotinfo
 @ifinfo
 @pxref{timstr and strtim}, and @pxref{annstr and strann},
 @end ifinfo
@@ -2790,9 +2800,9 @@
 canonical order, and return an error code of @t{-3} if an out-of-order
 annotation is supplied.  All programs that write signals or annotations
 @emph{must} invoke @code{wfdbquit} to close the output files properly
-@iftex
+@ifnotinfo
 (@pxref{wfdbquit, , @code{wfdbquit}}).
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{wfdbquit}).
 @end ifinfo
@@ -2842,9 +2852,9 @@
 |@var{t}|.  Only the magnitude of @var{t} is significant, not its sign;
 hence values returned by @code{strtim} can always be used safely as
 arguments to @code{isigsettime}
-@iftex
+@ifnotinfo
 (@pxref{timstr and strtim, , @code{timstr} and @code{strtim}}).
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{timstr and strtim}).
 @end ifinfo
@@ -2906,9 +2916,9 @@
 Only the magnitude of @var{t} is significant, not its sign; hence values
 returned by @code{strtim} can always be used safely as arguments to
 @code{iannsettime}
-@iftex
+@ifnotinfo
 (@pxref{timstr and strtim, , @code{timstr} and @code{strtim}}).
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{timstr and strtim}).
 @end ifinfo
@@ -3025,9 +3035,9 @@
 in such cases.  The strings returned by @code{annstr} are mnemonics
 (usually only one character), which may be modified either by @code{setannstr}
 or by the presence of @dfn{modification labels} in an input annotation file
-@iftex
+@ifnotinfo
 (@pxref{annstr and strann, , @code{setannstr}}).
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{annstr and strann}).
 @end ifinfo
@@ -3155,9 +3165,9 @@
 
 By passing a negative value as @var{code} to @code{setannstr} or
 @code{setanndesc}, the translation for
-@iftex
+@ifnotinfo
 @minus{}@var{code}
-@end iftex
+@end ifnotinfo
 @ifinfo
 -@var{code}
 @end ifinfo
@@ -3177,9 +3187,9 @@
 <!-- link: strtim.htm -->
 @end html
 
-@iftex
+@ifnotinfo
 @sp 2
-@end iftex
+@end ifnotinfo
 
 The next three functions convert between ``standard time format''
 strings and times in units of sample intervals.  Normally they should be
@@ -3222,9 +3232,9 @@
 time from the beginning of the record, and it is converted to a time of
 day using the base time for the record as indicated by the @file{hea}
 file or the caller
-@iftex
+@ifnotinfo
 (@pxref{setbasetime, , @code{setbasetime}});
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{setbasetime});
 @end ifinfo
@@ -3298,9 +3308,9 @@
 If the argument is bracketed (as in the second, third, and fourth examples), it
 is taken as a time of day, and @code{strtim} uses the base time defined
 by the header file or by the caller
-@iftex
+@ifnotinfo
 (@pxref{setbasetime, , @code{setbasetime}});
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{setbasetime});
 @end ifinfo
@@ -3316,9 +3326,9 @@
 example above) is provided to allow ``conversion'' of time intervals
 already expressed in sample intervals.  The similar @samp{c}-format
 converts counter values
-@iftex
+@ifnotinfo
 (@pxref{counter conversion, , @code{getcfreq}})
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{counter conversion})
 @end ifinfo
@@ -3409,9 +3419,9 @@
 specified input signal is not currently open, a gain of @code{WFDB_DEFGAIN}
 (defined in @file{<wfdb/wfdb.h>}) ADC units per millivolt, and a baseline
 of zero, are assumed.  If the physical units
-@iftex
+@ifnotinfo
 (@pxref{WFDB_Siginfo structures, , Signal Information Structures})
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{WFDB_Siginfo structures})
 @end ifinfo
@@ -3591,9 +3601,9 @@
 This function attempts to find calibration data for signals of type
 @var{desc}, having physical units as given by @var{units}.  If
 successful, it fills in the contents of the @code{WFDB_Calinfo} structure
-@iftex
+@ifnotinfo
 (@pxref{WFDB_Calinfo structures, , Calibration Information Structures})
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{WFDB_Calinfo structures})
 @end ifinfo
@@ -3751,9 +3761,9 @@
 lower or upper case, digits, and underscores (@samp{_}); they may not
 include any other characters.  If @var{record} does not conform to these
 requirements, @code{newheader} will return
-@iftex
+@ifnotinfo
 @minus{}1;
-@end iftex
+@end ifnotinfo
 @ifinfo
 -1;
 @end ifinfo
@@ -3818,9 +3828,9 @@
 information as that for record @file{old}, except that the @code{gain}
 for signal 0 will have been changed as shown.  Any ``info'' strings in
 the @file{hea} file for record @file{old} must be copied explicitly;
-@iftex
+@ifnotinfo
 @pxref{getinfo, , @code{getinfo}}, and @pxref{putinfo, , @code{putinfo}}.
-@end iftex
+@end ifnotinfo
 @ifinfo
 @pxref{getinfo}, and @pxref{putinfo}.
 @end ifinfo
@@ -3896,26 +3906,26 @@
 the factors used for converting between samples, seconds, and counter
 values (reset to 1), the base time (reset to 0, i.e., midnight), and the
 base counter value (reset to 0);
-@iftex
+@ifnotinfo
 @pxref{timstr and strtim, , @code{timstr} and @code{strtim}}
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{timstr and strtim})
 @end ifinfo
 @item
 the parameters used for converting between adus and physical units (reset to
 @code{WFDB_DEFGAIN} adu/mV, a quantity defined in @file{<wfdb/wfdb.h>});
-@iftex
+@ifnotinfo
 @pxref{aduphys and physadu, , @code{aduphys} and @code{physadu}}
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{aduphys and physadu})
 @end ifinfo
 @item
 internal variables used to determine output signal specifications;
-@iftex
+@ifnotinfo
 @pxref{newheader, , @code{newheader}}.
-@end iftex
+@end ifnotinfo
 @ifinfo
 @pxref{newheader}.
 @end ifinfo
@@ -4071,9 +4081,9 @@
 specified by its argument.  If its argument is NULL, @code{sampfreq}
 returns the currently defined sampling frequency, if any.  It also sets
 the internal variables used by the time-conversion functions
-@iftex
+@ifnotinfo
 (@pxref{timstr and strtim, , @code{timstr} and @code{strtim}})
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{timstr and strtim})
 @end ifinfo
@@ -4081,9 +4091,9 @@
 for an illustration of the use of @code{sampfreq}.  Note that the value
 returned by @code{sampfreq} for a multifrequency record depends on the
 current @code{getvec} mode
-@iftex
+@ifnotinfo
 (@pxref{setgvmode, , @code{setgvmode}}).
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{setgvmode}).
 @end ifinfo
@@ -4112,16 +4122,16 @@
 @noindent
 This function sets the sampling frequency used by the time-conversion
 functions
-@iftex
+@ifnotinfo
 (@pxref{timstr and strtim, , @code{timstr} and @code{strtim}}).
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{timstr and strtim}).
 @end ifinfo
 Use @code{setsampfreq} before creating a new @file{hea} file
-@iftex
+@ifnotinfo
 (@pxref{newheader, , @code{newheader}}).
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{newheader}).
 @end ifinfo
@@ -4157,9 +4167,9 @@
 @var{string} is empty or @code{NULL}, the current date and time are read
 from the system clock.  Use @code{setbasetime} after defining the sampling
 frequency and before creating a header file
-@iftex
+@ifnotinfo
 (@pxref{newheader, , @code{newheader}}).
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{newheader}).
 @end ifinfo
@@ -4224,9 +4234,9 @@
 @noindent
 This function sets the counter frequency.  Use @code{setcfreq}
 before creating a @file{hea} file
-@iftex
+@ifnotinfo
 (@pxref{newheader, , @code{newheader}}).
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{newheader}).
 @end ifinfo
@@ -4266,9 +4276,9 @@
 @noindent
 This function sets the base counter value.  Use @code{setbasecount}
 before creating a header file
-@iftex
+@ifnotinfo
 (@pxref{newheader, , @code{newheader}}).
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{newheader}).
 @end ifinfo
@@ -4324,12 +4334,12 @@
 an input file (e.g., using @code{annopen} or @code{isigopen}).  (The
 features described in this paragraph were first introduced in WFDB library
 version 8.0.)
-@iftex
-@xref{getwfdb, , @code{getwfdb}},
-@end iftex
 @ifinfo
-@xref{getwfdb},
+@xref{getwfdb}
 @end ifinfo
+@ifnotinfo
+@xref{getwfdb, , @code{getwfdb}}
+@end ifnotinfo
 for an example of the use of @code{setwfdb}.
 
 @c @group
@@ -4528,9 +4538,9 @@
 the default buffer size has no effect on reading signals for which
 an explicit buffer size is given in the header file, i.e.,
 those for which the @code{bsize} field of the @code{WFDB_Siginfo} structure
-@iftex
+@ifnotinfo
 (@pxref{WFDB_Siginfo structures, , Signal Information Structures})
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{WFDB_Siginfo structures})
 @end ifinfo
@@ -4571,9 +4581,9 @@
 signals for which an explicit buffer size is given in the @file{hea}
 file read by @code{osigopen}, or in the @code{bsize} field of the
 @code{WFDB_Siginfo} structure
-@iftex
+@ifnotinfo
 (@pxref{WFDB_Siginfo structures, , Signal Information Structures})
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{WFDB_Siginfo structures})
 @end ifinfo
@@ -5087,9 +5097,9 @@
 @code{putann} also start at 0; note that input annotator 0 and output
 annotator 0 are distinct.  Annotator numbers are supplied to
 @code{getann} and @code{putann} in their first arguments.
-@iftex
+@ifnotinfo
 @xref{annopen, , @code{annopen}},
-@end iftex
+@end ifnotinfo
 @ifinfo
 @xref{annopen},
 @end ifinfo
@@ -5132,9 +5142,9 @@
 @cindex user-defined fields in annotation
 @cindex signal (associating annotation with)
 numbers between
-@iftex
+@ifnotinfo
 @minus{}128
-@end iftex
+@end ifnotinfo
 @ifinfo
 -128
 @end ifinfo
@@ -5160,9 +5170,9 @@
 MIT DB @file{atr} files, the @code{aux} field is used with rhythm
 change annotations to specify the new rhythm, and with comment
 annotations to store the text of the comment
-@iftex
+@ifnotinfo
 (@pxref{Annotation Codes}).
-@end iftex
+@end ifnotinfo
 The string can contain arbitrary binary
 data, including embedded nulls.  It is unwise to store anything but ASCII
 strings, however, if the annotation file may be transported to a system with
@@ -5497,9 +5507,9 @@
 with all of your records.  Calibration files are text files, with lines
 terminated by ASCII carriage-return/line-feed pairs, created by
 @code{newcal}, from which @code{calopen} reads the calibration list
-@iftex
+@ifnotinfo
 (@pxref{WFDB_Calinfo structures, , Calibration Information Structures}).
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{WFDB_Calinfo structures}).
 @end ifinfo
@@ -5606,9 +5616,9 @@
 @code{spf} field of the @code{WFDB_Siginfo} structure for the signal.
 
 A frame can be read as it was written
-@iftex
+@ifnotinfo
 (@pxref{getframe, , @code{getframe}})
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{getframe})
 @end ifinfo
@@ -5736,9 +5746,9 @@
 If the sampling frequencies or lengths of the records do not match, a warning
 message will be produced (unless @code{wfdbquiet} was invoked).  The
 time-conversion functions
-@iftex
+@ifnotinfo
 (@pxref{timstr and strtim, , @code{timstr} and @code{strtim}})
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{timstr and strtim})
 @end ifinfo
@@ -6667,9 +6677,9 @@
 if the record can't be opened, the program exits.  See the previous example
 for details on how @code{isigopen} is used. If the user provides an absolute
 start time
-@iftex
+@ifnotinfo
 (@pxref{timstr and strtim, , @code{timstr} and @code{strtim}}),
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{timstr and strtim}),
 @end ifinfo
@@ -7495,9 +7505,9 @@
 @item Calibration list
 @cindex calibration list (defined)
 A memory-resident linked list of @code{WFDB_Calinfo} objects
-@iftex
+@ifnotinfo
 (@pxref{WFDB_Calinfo structures, , Calibration Information Structures}).
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{WFDB_Calinfo structures}).
 @end ifinfo
@@ -7852,9 +7862,9 @@
 A set of signals that are multiplexed together and stored in the same
 file.  It is possible to reset input pointers for all signals in a
 given signal group
-@iftex
+@ifnotinfo
 (@pxref{isgsettime, , @code{isgsettime}}),
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{isgsettime}),
 @end ifinfo
@@ -7893,9 +7903,9 @@
 @item Standard time format
 @cindex standard time format (defined)
 Any string format legal as an argument for @code{strtim}
-@iftex
+@ifnotinfo
 (@pxref{timstr and strtim, , @code{timstr} and @code{strtim}}).
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{timstr and strtim}).
 @end ifinfo
@@ -8059,9 +8069,9 @@
 shown as @var{from} and @var{to} below) use @code{strtim} to convert these
 strings into sample intervals; hence they accept any of the varieties of
 standard time format described earlier
-@iftex
+@ifnotinfo
 (@pxref{timstr and strtim, , @code{timstr} and @code{strtim}}).
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{timstr and strtim}).
 @end ifinfo
@@ -8372,9 +8382,9 @@
 
 The cleanest mechanism for adding additional fields to @file{hea} files is
 to include them in `info' strings
-@iftex
+@ifnotinfo
 (@pxref{getinfo, , @code{getinfo}}),
-@end iftex
+@end ifnotinfo
 @ifinfo
 (@pxref{getinfo}),
 @end ifinfo
diff -Naur --exclude Makefile --exclude info wfdb-10.4.3/fortran/Makefile.tpl wfdb-10.4.4/fortran/Makefile.tpl
--- wfdb-10.4.3/fortran/Makefile.tpl	2006-02-24 23:09:28.000000000 -0500
+++ wfdb-10.4.4/fortran/Makefile.tpl	2006-05-11 13:39:00.000000000 -0400
@@ -18,6 +18,9 @@
 	../install.sh $(INCDIR)/wfdb wfdbf.c
 	$(SETPERMISSIONS) $(INCDIR)/wfdb/wfdbf.c
 
+collect:
+	../conf/collect.sh $(INCDIR)/wfdb wfdbf.c
+
 uninstall:
 	../uninstall.sh $(INCDIR)/wfdb wfdbf.c
 
diff -Naur --exclude Makefile --exclude info wfdb-10.4.3/lib/Makefile.tpl wfdb-10.4.4/lib/Makefile.tpl
--- wfdb-10.4.3/lib/Makefile.tpl	2006-05-10 16:35:52.000000000 -0400
+++ wfdb-10.4.4/lib/Makefile.tpl	2006-05-11 13:24:30.000000000 -0400
@@ -1,5 +1,5 @@
 # file: Makefile.tpl		G. Moody	  24 May 2000
-#				Last revised:      5 May 2006
+#				Last revised:     11 May 2006
 # This section of the Makefile should not need to be changed.
 
 INCLUDES = $(INCDIR)/wfdb/wfdb.h $(INCDIR)/wfdb/ecgcodes.h \
@@ -22,6 +22,12 @@
 	$(MAKE) lib-post-install
 	../install.sh $(BINDIR) wfdb-config
 
+# 'make collect':  retrieve the installed WFDB library and headers
+collect:
+	../conf/collect.sh $(INCDIR)/wfdb wfdb.h ecgcodes.h ecgmap.h
+	../conf/collect.sh $(LIBDIR) $(WFDBLIB)
+	../conf/collect.sh $(BINDIR) wfdb-config
+
 uninstall:
 	../uninstall.sh $(BINDIR) wfdb-config
 	../uninstall.sh $(BINDIR)
diff -Naur --exclude Makefile --exclude info wfdb-10.4.3/lib/wfdb.h0 wfdb-10.4.4/lib/wfdb.h0
--- wfdb-10.4.3/lib/wfdb.h0	2006-05-08 13:10:43.000000000 -0400
+++ wfdb-10.4.4/lib/wfdb.h0	2006-05-11 12:36:49.000000000 -0400
@@ -1,5 +1,5 @@
 /* file: wfdb.h		G. Moody	13 June 1983
-			Last revised:    8 May 2006	wfdblib 10.4.3
+			Last revised:   11 May 2006	wfdblib 10.4.4
 WFDB library type, constant, structure, and function interface definitions
 
 _______________________________________________________________________________
@@ -33,7 +33,7 @@
 /* WFDB library version. */
 #define WFDB_MAJOR   10
 #define WFDB_MINOR   4
-#define WFDB_RELEASE 3
+#define WFDB_RELEASE 4
 #define WFDB_NETFILES 1	/* if 1, library includes code for HTTP, FTP clients */
 #define WFDB_NETFILES_LIBCURL 1
 
diff -Naur --exclude Makefile --exclude info wfdb-10.4.3/Makefile.tpl wfdb-10.4.4/Makefile.tpl
--- wfdb-10.4.3/Makefile.tpl	2006-05-04 14:09:46.000000000 -0400
+++ wfdb-10.4.4/Makefile.tpl	2006-05-11 15:43:25.000000000 -0400
@@ -1,5 +1,5 @@
 # file: Makefile.tpl		G. Moody	 24 May 2000
-#				Last revised:     4 May 2006
+#				Last revised:    11 May 2006
 # This section of the Makefile should not need to be changed.
 
 # 'make' or 'make all': compile the WFDB applications without installing them
@@ -18,6 +18,18 @@
 	cd waverc;   $(MAKE) install
 	test -d doc && ( cd doc; $(MAKE) install )
 
+# 'make collect': collect the installed files into /tmp/wfdb/
+collect:
+	cd lib;	     $(MAKE) collect
+	cd app;      $(MAKE) collect
+	cd convert;  $(MAKE) collect
+	cd data;     $(MAKE) collect
+	cd fortran;  $(MAKE) collect
+	cd psd;      $(MAKE) collect
+	-( cd wave;  $(MAKE) collect )
+	cd waverc;   $(MAKE) collect
+	test -d doc && ( cd doc; $(MAKE) collect )
+
 uninstall:	config.cache
 	cd app;      $(MAKE) uninstall
 	cd convert;  $(MAKE) uninstall
@@ -115,11 +127,14 @@
 
 # 'make bin-tarball': make a gzipped tar archive of the WFDB software package
 # binaries and other installed files
-bin-tarball:	test-install
+bin-tarball:	install collect
 	cp conf/archname /tmp; chmod +x /tmp/archname
-	cd $(HOME); mv wfdb-test $(PACKAGE)-`/tmp/archname`
-	cd $(HOME); tar cfvz $(PACKAGE)-`/tmp/archname`.tar.gz \
+	rm -rf /tmp/$(PACKAGE)-`/tmp/archname`
+	mv /tmp/wfdb /tmp/$(PACKAGE)-`/tmp/archname`
+	cd /tmp; tar cfvz $(PACKAGE)-`/tmp/archname`.tar.gz \
 	 $(PACKAGE)-`/tmp/archname`
+	mv /tmp/$(PACKAGE)-`/tmp/archname`.tar.gz ..
+	rm -rf /tmp/$(PACKAGE)-`/tmp/archname`
 	rm -f /tmp/archname
 
 # 'make doc-tarball': make a gzipped tar archive of formatted documents
diff -Naur --exclude Makefile --exclude info wfdb-10.4.3/MANIFEST wfdb-10.4.4/MANIFEST
--- wfdb-10.4.3/MANIFEST	2006-05-04 17:43:33.000000000 -0400
+++ wfdb-10.4.4/MANIFEST	2006-05-11 15:18:15.000000000 -0400
@@ -122,6 +122,7 @@
 checkpkg/mitdb/
 conf/
 conf/archname
+conf/collect.sh
 conf/cygwin.def
 conf/cygwin-slib.def
 conf/darwin.def
diff -Naur --exclude Makefile --exclude info wfdb-10.4.3/NEWS wfdb-10.4.4/NEWS
--- wfdb-10.4.3/NEWS	2006-05-10 17:56:01.000000000 -0400
+++ wfdb-10.4.4/NEWS	2006-05-12 00:11:58.000000000 -0400
@@ -1,3 +1,7 @@
+10.4.4: Added 'collect.sh' script to 'conf', and 'collect' target to
+        'make' template files (Makefile.tpl) to simplify creation of
+        binary tarballs and RPMs.
+
 10.4.3: Updated wfdb.spec (used to generate WFDB RPMs) to account for
 	applications with compiled-in paths.
 
diff -Naur --exclude Makefile --exclude info wfdb-10.4.3/psd/Makefile.tpl wfdb-10.4.4/psd/Makefile.tpl
--- wfdb-10.4.3/psd/Makefile.tpl	2006-05-10 15:18:23.000000000 -0400
+++ wfdb-10.4.4/psd/Makefile.tpl	2006-05-11 13:39:00.000000000 -0400
@@ -1,5 +1,5 @@
 # file: Makefile.tpl		G. Moody	  24 May 2000
-#				Last revised:	   4 May 2006
+#				Last revised:	  11 May 2006
 # This section of the Makefile should not need to be changed.
 
 # Programs to be compiled.
@@ -17,6 +17,10 @@
 	$(SETXPERMISSIONS) $(XFILES)
 	../install.sh $(BINDIR) $(XFILES)
 
+# 'make collect': retrieve the installed applications
+collect:
+	../conf/collect.sh $(BINDIR) $(XFILES) $(SCRIPTS)
+
 # `make scripts': customize and install scripts
 scripts:
 	sed s+BINDIR+$(BINDIR)+g <hrfft >$(BINDIR)/hrfft
diff -Naur --exclude Makefile --exclude info wfdb-10.4.3/wave/Makefile.tpl wfdb-10.4.4/wave/Makefile.tpl
--- wfdb-10.4.3/wave/Makefile.tpl	2006-05-10 16:16:22.000000000 -0400
+++ wfdb-10.4.4/wave/Makefile.tpl	2006-05-11 13:38:59.000000000 -0400
@@ -1,5 +1,5 @@
 # file: Makefile.tpl		G. Moody	31 May 2000
-#				Last revised:    8 May 2006
+#				Last revised:   11 May 2006
 # Change the settings below as appropriate for your setup.
 
 # Choose directories in which to install WAVE and its ancillary files by
@@ -54,6 +54,13 @@
 	 $(SETPERMISSIONS) $(MENUDIR)/wavemenu.def
 	-cp Wave.res $(RESDIR)/Wave && $(SETPERMISSIONS) $(RESDIR)/Wave
 
+# 'make collect': retrieve the installed applications
+collect:
+	../conf/collect.sh $(BINDIR) wave
+	../conf/collect.sh $(HELPDIR)/wave $(HELPFILES) wave.info demo.txt
+	../conf/collect.sh $(MENUDIR) wavemenu.def
+	../conf/collect.sh $(RESDIR) Wave
+
 uninstall:
 	../uninstall.sh $(BINDIR) wave
 	../uninstall.sh $(HELPDIR)/wave $(HELPFILES) wave.hlp wave.info \
diff -Naur --exclude Makefile --exclude info wfdb-10.4.3/wave/nomake wfdb-10.4.4/wave/nomake
--- wfdb-10.4.3/wave/nomake	2002-12-18 14:22:34.000000000 -0500
+++ wfdb-10.4.4/wave/nomake	2006-05-11 22:22:36.000000000 -0400
@@ -1,5 +1,5 @@
 # file: nomake		G. Moody	30 January 2000
-#			Last revised:  18 December 2002
+#			Last revised:	11 May 2006
 # If renamed as 'Makefile', this file prevents WAVE from being compiled
 # on systems that don't have XView installed.
 
@@ -12,6 +12,9 @@
 install:
 	@echo "Skipping installation of WAVE (XView required)."
 
+collect:
+	@echo "Skipping collection of WAVE (XView required)."
+
 uninstall:
 	@echo "Nothing to uninstall from wave"
 
diff -Naur --exclude Makefile --exclude info wfdb-10.4.3/wave/xvwave.c wfdb-10.4.4/wave/xvwave.c
--- wfdb-10.4.3/wave/xvwave.c	2005-08-30 12:22:52.000000000 -0400
+++ wfdb-10.4.4/wave/xvwave.c	2006-05-12 11:08:20.000000000 -0400
@@ -1,5 +1,5 @@
 /* file: xvwave.c	G. Moody	27 April 1990
-			Last revised:	30 August 2005
+			Last revised:	 12 May 2006
 XView support functions for WAVE
 
 -------------------------------------------------------------------------------
@@ -291,6 +291,7 @@
     char buf[80], new_annotator[30], new_time[30], new_record[70],
 	new_siglist[70];
     FILE *sfile;
+    extern void wfdb_addtopath();
 
     sfile = fopen(sentinel, "r");
     new_annotator[0] = new_time[0] = new_record[0] = new_siglist[0] = '\0';
@@ -307,6 +308,9 @@
 	      strncpy(new_time, buf+3, sizeof(new_time)-1);
 	      new_time[strlen(new_time)-1] = '\0';
 	      break;
+	  case 'p':	/* add path to WFDB path variable */
+	      wfdb_addtopath(buf+3);
+	      break;
 	  case 'r':	/* (re)open record */
 	      new_record[sizeof(new_record)-1] = '\0';
 	      strncpy(new_record, buf+3, sizeof(new_record)-1);
diff -Naur --exclude Makefile --exclude info wfdb-10.4.3/waverc/Makefile.tpl wfdb-10.4.4/waverc/Makefile.tpl
--- wfdb-10.4.3/waverc/Makefile.tpl	2006-05-05 13:02:56.000000000 -0400
+++ wfdb-10.4.4/waverc/Makefile.tpl	2006-05-11 13:36:49.000000000 -0400
@@ -1,5 +1,5 @@
 # file: Makefile.tpl		G. Moody		24 May 2000
-#				Last revised:		 5 May 2006
+#				Last revised:		11 May 2006
 # Change the settings below as appropriate for your setup.
 
 # `make all' creates wavescript and wave-remote without installing them.
@@ -15,6 +15,10 @@
 	$(SETXPERMISSIONS) url_view wavescript wave-remote
 	../install.sh $(BINDIR) url_view wavescript wave-remote
 
+# 'make collect': retrieve the installed applications
+collect:
+	../conf/collect.sh $(BINDIR) url_view wavescript wave-remote
+
 uninstall:
 	../uninstall.sh $(BINDIR) url_view wavescript wave-remote
 
diff -Naur --exclude Makefile --exclude info wfdb-10.4.3/wfdb.spec wfdb-10.4.4/wfdb.spec
--- wfdb-10.4.3/wfdb.spec	2006-05-10 17:19:06.000000000 -0400
+++ wfdb-10.4.4/wfdb.spec	2006-05-11 15:26:30.000000000 -0400
@@ -15,6 +15,9 @@
 BuildRoot: /var/tmp/%{name}-root
 
 %changelog
+* Wed May 11 2006 George B Moody <george@mit.edu>
+- better solution for problems with compiled-in paths
+
 * Wed May 10 2006 George B Moody <george@mit.edu>
 - rewrote install section to solve problems with compiled-in paths
 
@@ -52,39 +55,9 @@
 
 %install
 rm -rf $RPM_BUILD_ROOT
-mkdir -p $RPM_BUILD_ROOT/usr/bin $RPM_BUILD_ROOT/usr/help
-mkdir -p $RPM_BUILD_ROOT/usr/lib/ps $RPM_BUILD_ROOT/usr/include/wfdb
-mkdir -p $RPM_BUILD_ROOT/usr/lib/X11/app-defaults
 make install
-cd lib
- cp -p libwfdb.so* $RPM_BUILD_ROOT/usr/lib
- cp -p wfdb.h ecgcodes.h ecgmap.h wfdblib.h $RPM_BUILD_ROOT/usr/include/wfdb
- cp -p wfdb-config $RPM_BUILD_ROOT/usr/bin
-cd ../wave
- cp -p wave $RPM_BUILD_ROOT/usr/bin
- cp -p *.hlp wave.info demo.txt $RPM_BUILD_ROOT/usr/help
- cp -p wavemenu.def $RPM_BUILD_ROOT/usr/lib
- cp -p Wave.res $RPM_BUILD_ROOT/usr/lib/X11/app-defaults/Wave
-cd ../waverc;
- cp -p wavescript wave-remote url_view $RPM_BUILD_ROOT/usr/bin
-cd ../app;
- cp -p ann2rr bxb calsig ecgeval epicmp fir ihr mfilt \
-  mrgann mxm nguess nst plotstm pscgen pschart psfd rdann \
-  rdsamp rr2ann rxr sampfreq sigamp sigavg skewedit \
-  snip sortann sqrs sqrs125 sumann sumstats tach time2sec \
-  wabp wfdbcat wfdbcollate wfdbdesc wfdbwhich wqrs \
-  wrann wrsamp xform $RPM_BUILD_ROOT/usr/bin
- make scripts; cp -p /usr/bin/setwfdb /usr/bin/cshsetwfdb $RPM_BUILD_ROOT/usr/bin
- cp -p *.pro $RPM_BUILD_ROOT/usr/lib/ps
-cd ../psd;
- cp -p coherence fft log10 lomb memse $RPM_BUILD_ROOT/usr/bin
- make scripts; cp -p /usr/bin/hrfft /usr/bin/hrlomb /usr/bin/hrmem \
-  /usr/bin/hrplot /usr/bin/plot2d /usr/bin/plot3d $RPM_BUILD_ROOT/usr/bin
-cd ../convert;
- cp -p a2m ad2m m2a md2a readid makeid edf2mit mit2edf wav2mit mit2wav \
-  revise ahaconvert $RPM_BUILD_ROOT/usr/bin
-cd ../data; make WFDBROOT=$RPM_BUILD_ROOT/usr install
-cd ../doc; make WFDBROOT=$RPM_BUILD_ROOT/usr install
+make collect
+cd /tmp/wfdb; cp -pr . $RPM_BUILD_ROOT
 
 %clean
 rm -rf $RPM_BUILD_ROOT
