2010/03/07 18:11:07 fanf2

  runtests.sh               1.14 +1 -1

Forced commit to note change to test suite.
--------------------------------
2010/03/07 17:56:06 fanf2

  tests/outdir.expout       1.2 +16 -14
  tests/outdir.sh           1.2 +1 -1
  tests/outfile.expout      1.2 +16 -14
  tests/outfile.sh          1.2 +1 -1
  tests/overdir.expout      1.2 +16 -14
  tests/overdir.sh          1.2 +1 -1
  tests/overwrite.expout    1.2 +16 -14
  tests/overwrite.sh        1.2 +1 -1

Adjust tests for change in license header.

The extra line at the beginning of if1.c caused the line numbers
in 'diff' output to change.  Rather than playing catch-up, simplify
the relevant tests to keep working if if1.c changes in other ways
in the future.

Submitted by: Jonathan Nieder <jrnieder@gmail.com>
--------------------------------
2010/03/06 14:40:15 fanf2

  release.sh                1.18 +2 -1

Add the COPYING file to the release.
--------------------------------
2010/03/06 14:38:50 fanf2

  index.html.in             1.10 +2 -2

Fix HTML markup snafu.
--------------------------------
2010/03/06 14:37:14 fanf2

  tests/crlf-a.expout       1.2 +1 -1
  tests/crlf-b.expout       1.2 +1 -1
  tests/crlf-c.expout       1.2 +1 -1
  tests/crlf-d.expout       1.2 +1 -1
  tests/crlf.c              1.2 +1 -1
  tests/if1-a.expout        1.2 +2 -1
  tests/if1-k.c             1.2 +2 -1
  tests/if1-k.expout        1.2 +2 -1
  tests/if1-kDU.c           1.2 +2 -1
  tests/if1-kDU.expout      1.2 +2 -1
  tests/if1.c               1.3 +2 -1
  tests/if1.expout          1.3 +2 -1
  tests/if1a.expout         1.2 +2 -1
  tests/if2-a.expout        1.2 +2 -1
  tests/if2-k.c             1.2 +2 -1
  tests/if2-k.expout        1.2 +2 -1
  tests/if2-kDU.c           1.2 +2 -1
  tests/if2-kDU.expout      1.2 +2 -1
  tests/if2.c               1.3 +2 -1
  tests/if2.expout          1.3 +2 -1
  tests/if3-a.expout        1.2 +2 -1
  tests/if3-k.c             1.2 +2 -1
  tests/if3-k.expout        1.2 +2 -1
  tests/if3-kDU.c           1.2 +2 -1
  tests/if3-kDU.expout      1.2 +2 -1
  tests/if3.c               1.3 +2 -1
  tests/if3.expout          1.3 +2 -1
  tests/if4-a.expout        1.2 +2 -1
  tests/if4-k.c             1.2 +2 -1
  tests/if4-k.expout        1.2 +2 -1
  tests/if4-kDU.c           1.2 +2 -1
  tests/if4-kDU.expout      1.2 +2 -1
  tests/if4.c               1.3 +2 -1
  tests/if4.expout          1.3 +2 -1
  tests/if5-a.expout        1.2 +2 -1
  tests/if5-k.c             1.2 +2 -1
  tests/if5-k.expout        1.2 +2 -1
  tests/if5-kDU.c           1.2 +2 -1
  tests/if5-kDU.expout      1.2 +2 -1
  tests/if5.c               1.3 +2 -1
  tests/if5.expout          1.3 +2 -1
  tests/none.c              1.3 +2 -1
  tests/none.expout         1.3 +2 -1
  tests/small1.c            1.3 +2 -1
  tests/small1.expout       1.3 +2 -1
  tests/small2.c            1.3 +2 -1
  tests/small2.expout       1.3 +2 -1
  tests/spaces1.c           1.3 +2 -1
  tests/spaces1.expout      1.3 +2 -1
  tests/spaces2.c           1.3 +2 -1
  tests/spaces2.expout      1.3 +2 -1
  tests/spaces3.c           1.3 +2 -1
  tests/spaces3.expout      1.3 +2 -1
  tests/spaces4.c           1.3 +2 -1
  tests/spaces4.expout      1.3 +2 -1

Put the tests under the two-clause BSD copyright licence for consistency.
--------------------------------
2010/03/06 14:30:26 fanf2

  COPYING                   1.1
  README                    1.7 +4 -4
  index.html.in             1.9 +5 -4
  runtests.sh               1.13 +1 -5

Add a COPYING file to consolidate licence terms in one place.

Remove the public domain declaration from runtests.sh so it is under the
same licence as the other files.

Improve the wording about the licensing of contributions.
--------------------------------
2010/03/05 13:05:38 fanf2

  unifdef.1                 1.66 +3 -3

Adjust man page document title for backwards compatibility.

Reported by: Bob Proulx <bob@proulx.com>
--------------------------------
2010/02/23 12:27:11 fanf2

  release.sh                1.17 +2 -2

Actually, don't drop the 1. from the version number.

Keeping it gives us more flexibility to change the numbering scheme
while ensuring it continues to go up.
--------------------------------
2010/02/22 18:58:50 fanf2

  release.sh                1.16 +2 -2

Drop 1. from the version number
--------------------------------
2010/02/22 18:58:30 fanf2

  unifdef.c                 1.204 +13 -4

Improve output of -S mode (list symbols with depths)
Symbols tested in the same #if are listed on the same line.
--------------------------------
2010/02/21 16:55:04 fanf2

  release.sh                1.15 +2 -2

We don't need to compile unifdef when preparing the release.
--------------------------------
2010/02/21 16:53:20 fanf2

  Makefile                  1.20 +7 -7
  release.sh                1.14 +5 -2

Fix the release build to ensure that junk files are not included.

We were failing to properly clean the tests directory.

Reported-by: Jonathan Nieder <jrnieder@gmail.com>
--------------------------------
2010/02/19 20:43:13 fanf2

  Makefile                  1.19 +2 -2

Use -mdoc macro package when invoking nroff.
--------------------------------
2010/02/19 20:25:50 fanf2

  unifdef.1                 1.65 +15 -8
  unifdef.c                 1.203 +12 -7

Add a -S option for listing the nesting depth of symbols.

Suggested by http://stackoverflow.com/questions/2012496
--------------------------------
2010/02/19 20:08:37 fanf2

  unifdef.c                 1.202 +3 -5

A small tidy-up in process()
--------------------------------
2010/02/19 19:46:41 fanf2

  unifdef.c                 1.201 +2 -6

Expand ACCESSPERMS rather than conditionally #defining it.
--------------------------------
2010/02/19 18:35:26 fanf2

  unifdef.c                 1.200 +5 -1

Define ACCESSPERMS on systems (like Cygwin) that lack it.

Suggested by Mark Rushakoff.
--------------------------------
2010/02/19 17:30:50 fanf2

  README                    1.6 +4 -1
  index.html.in             1.8 +6 -3

Link to freshmeat.net for release announcements.
--------------------------------
2010/02/19 17:15:44 fanf2

  unifdef.c                 1.199 +4 -4

Improve portability to systems with native CRLF newlines.
--------------------------------
2010/02/19 17:11:39 fanf2

  unifdef.1                 1.64 +5 -5

Remove FreeBSD from manual page rubric, and update its date.
--------------------------------
2010/02/19 16:44:02 fanf2

  index.html.in             1.7 +2 -1

List INSTALL file on homepage
--------------------------------
2010/02/19 16:41:15 fanf2

  unifdef.1                 1.63 +8 -6

Fix a long-standing cpp compatibility bug.

The -DFOO argument (without an explicit value) should define FOO to 1
not to the empty string.
--------------------------------
2010/02/19 16:37:05 fanf2

  tests/crlf-a.sh           1.2 +1 -1
  tests/crlf-b.sh           1.2 +1 -1
  tests/crlf-c.sh           1.2 +1 -1
  tests/crlf-d.sh           1.2 +1 -1
  tests/if6a.sh             1.3 +1 -1
  tests/if6b.sh             1.3 +1 -1
  tests/if6c.sh             1.3 +1 -1
  tests/if6d.sh             1.3 +1 -1
  unifdef.c                 1.198 +2 -2

Fix a long-standing cpp compatibility bug.

The -DFOO argument (without an explicit value) should define FOO to 1
not to the empty string.
--------------------------------
2010/02/19 16:31:08 fanf2

  INSTALL                   1.2 +2 -3
  tests/crlf-a.experr       1.1
  tests/crlf-a.expout       1.1
  tests/crlf-a.exprc        1.1
  tests/crlf-a.sh           1.1
  tests/crlf-b.experr       1.1
  tests/crlf-b.expout       1.1
  tests/crlf-b.exprc        1.1
  tests/crlf-b.sh           1.1
  tests/crlf-c.experr       1.1
  tests/crlf-c.expout       1.1
  tests/crlf-c.exprc        1.1
  tests/crlf-c.sh           1.1
  tests/crlf-d.experr       1.1
  tests/crlf-d.expout       1.1
  tests/crlf-d.exprc        1.1
  tests/crlf-d.sh           1.1
  tests/crlf.c              1.1
  unifdef.c                 1.197 +37 -17

Add support for CRLF newlines.

As a side-effect, remove the dependency on strlcpy().

Based on a suggestion from Mark Rushakoff.
--------------------------------
2010/02/19 16:29:59 fanf2

  tests/if6a.sh             1.2 +1 -1
  tests/if6b.sh             1.2 +1 -1
  tests/if6c.sh             1.2 +1 -1
  tests/if6d.sh             1.2 +1 -1

Fix tests to not rely on an uncommitted change.
--------------------------------
2010/02/19 16:03:44 fanf2

  tests/if6.c               1.1
  tests/if6a.experr         1.1
  tests/if6a.expout         1.1
  tests/if6a.exprc          1.1
  tests/if6a.sh             1.1
  tests/if6b.experr         1.1
  tests/if6b.expout         1.1
  tests/if6b.exprc          1.1
  tests/if6b.sh             1.1
  tests/if6c.experr         1.1
  tests/if6c.expout         1.1
  tests/if6c.exprc          1.1
  tests/if6c.sh             1.1
  tests/if6d.experr         1.1
  tests/if6d.expout         1.1
  tests/if6d.exprc          1.1
  tests/if6d.sh             1.1

More tests of keyword edits
--------------------------------
2010/02/19 15:50:26 fanf2

  tests/if1a.experr         1.1
  tests/if1a.expout         1.1
  tests/if1a.exprc          1.1
  tests/if1a.sh             1.1

Test #elif -> #if edit
--------------------------------
2010/01/20 00:48:26 fanf2

  unifdef.c                 1.196 +3 -2

unifdef.c: better diagnostics on write failure
--------------------------------
2010/01/19 20:33:00 fanf2

  unifdef.c                 1.195 +2 -2

unifdef.c: fix portability to 64 bit platforms.

printf("%.*s",i,s) expects an int not a ptrdiff_t
--------------------------------
2010/01/19 18:22:53 fanf2

  unifdef.c                 1.194 +3 -3

Fix English usage in wishlist comment
--------------------------------
2010/01/19 18:03:02 fanf2

  unifdef.c                 1.193 +8 -10

unifdef.c: re-arrange the introductory comment, #include lines, and
embedded copyright strings so that the FreeBSD version of the code
is tidier.
--------------------------------
2010/01/19 17:33:53 fanf2

  unifdef.1                 1.62 +3 -3

Update manual date and copyright.
--------------------------------
2010/01/19 16:23:35 fanf2

  tests/outdir.experr       1.1
  tests/outdir.expout       1.1
  tests/outdir.exprc        1.1
  tests/outdir.sh           1.1
  tests/outfile.experr      1.1
  tests/outfile.expout      1.1
  tests/outfile.exprc       1.1
  tests/outfile.sh          1.1
  tests/overdir.experr      1.1
  tests/overdir.expout      1.1
  tests/overdir.exprc       1.1
  tests/overdir.sh          1.1
  tests/overwrite.experr    1.1
  tests/overwrite.expout    1.1
  tests/overwrite.exprc     1.1
  tests/overwrite.sh        1.1
  unifdef.1                 1.61 +15 -2
  unifdef.c                 1.192 +94 -12

Add -o outfile option, which can be used to specify an output file.  The
file can even be the same as the input file.  Idea from IRIX unifdef(1).
This version also fixes a bug in the NetBSD unifdef which refuses to
write to a -o outfile which does not exist.

Obtained from: Brian Ginsbach <ginsbach@NetBSD.org> via NetBSD
--------------------------------
2010/01/19 16:09:50 fanf2

  unifdefall.sh             1.27 +3 -4

unifdefall: tidy copyright notice to match unifdef.c
--------------------------------
2010/01/19 13:37:00 fanf2

  release.sh                1.13 +2 -1

release.sh: Add INSTALL to list of tarball contents.
--------------------------------
2010/01/19 13:36:22 fanf2

  unifdefall.sh             1.26 +4 -2

Add Jonathan Nieder to unifdefall's copyright declaration.
--------------------------------
2010/01/15 18:37:39 fanf2

  Makefile                  1.18 +14 -13

Clean up the Makefile.
--------------------------------
2010/01/15 18:33:05 fanf2

  INSTALL                   1.1
  Makefile                  1.17 +19 -1
  README                    1.5 +2 -11

Automatic install support.

Add an install target to the Makefile. Using separate ${prefix} and
${DESTDIR} variables opens the door to hardcoding the path to unifdef
in unifdefall if we ever need to.

Move the installation instructions from the README to a new INSTALL
file to make it easier for packagers to omit irrelevant compilation
instructions from the binary package's documentation.

Submitted-by: Jonathan Nieder <jrnieder@gmail.com>
--------------------------------
2010/01/15 17:43:17 fanf2

  Makefile                  1.16 +3 -3

Makefile: do not remove Changelog on clean

Regenerating the Changelog requires access to the unifdef CVS
repository.

Submitted-by: Jonathan Nieder <jrnieder@gmail.com>
--------------------------------
2010/01/15 17:41:21 fanf2

  unifdefall.sh             1.25 +12 -4

unifdefall: look for unifdef in $(dirname $0)

For debugging and for the test suite it is convenient is
unifdefall can be run in place without relying on unifdef being
installed elsewhere.  So change unifdefall to look for unifdef in
the containing directory.

For compatibility, if unifdef is not present in the directory
containing unifdefall, fall back to searching the $PATH for it.
Some one might have installed unifdef and unifdefall to
different directories.

With this change, 'make test' no longer fails in if1-a.sh when
unifdef is not present on the $PATH.  Also, the test suite will
be a little better at catching new regressions if an old version
of unifdef is installed, since the unifdefall tests will no
longer be testing the installed unifdef.

Submitted-by: Jonathan Nieder <jrnieder@gmail.com>
--------------------------------
2009/12/02 15:21:22 fanf2

  unifdef.c                 1.191 +4 -5

Fix ident string -- gcc optimised it away.
--------------------------------
2009/11/27 17:30:39 fanf2

  Makefile                  1.15 +2 -2

Include full CVS log in the Changelog.
--------------------------------
2009/11/27 17:24:25 fanf2

  release.sh                1.12 +3 -2

release.sh: remove tests/CVS from tarball, and upload files faster.
--------------------------------
2009/11/27 17:21:26 fanf2

  unifdef.c                 1.190 +5 -3

fix invalid array access when nesting limit exceeded

If the number of nested #if blocks exceeds 64, nest() increments
the nesting depth and then reports an error.  The message includes
the line number for the start of the current #if block, which is
read from past the end of the relevant array.

Avoid the out-of-bounds read by reporting the error and exiting
before the nesting depth has a chance to increase.

Submitted-by: Jonathan Nieder <jrnieder@gmail.com>
--------------------------------
2009/11/27 17:14:32 fanf2

  runtests.sh               1.12 +2 -2

runtests.sh: portability: . does not search current directory

POSIX.1-2008 dot searches only the $PATH and not the current
directory for pathnames with no / in them.  Accordingly, since
version 4.0-alpha, bash does not search the current directory
when in posix (sh) mode.  The fix is to specify ./ explicitly.

Submitted-by: Jonathan Nieder <jrnieder@gmail.com>
--------------------------------
2009/11/27 15:40:10 fanf2

  unifdef.c                 1.189 +4 -2

Include a link to the web page in a comment in unifdef.c

This is mainly for the benefit of the Linux kernel's stand-alone version.
--------------------------------
2009/11/27 14:35:51 fanf2

  runtests.sh               1.11 +3 -3

Consistent ordering of ${got} and ${exp} in the test script
--------------------------------
2009/11/27 14:34:09 fanf2

  index.html.in             1.6 +3 -1
  release.sh                1.11 +2 -2

Include the tests in the web page
--------------------------------
2009/11/27 14:32:49 fanf2

  index.html.in             1.5 +2 -2

Improve phrasing on web page
--------------------------------
2009/11/27 14:30:02 fanf2

  Makefile                  1.14 +2 -2
  runtests.sh               1.10 +2 -1

Run the tests in the correct directory
--------------------------------
2009/11/27 14:21:36 fanf2

  tests/if1-a.experr        1.1
  tests/if1-a.exprc         1.1
  tests/if1-a.sh            1.1
  tests/if2-a.experr        1.1
  tests/if2-a.exprc         1.1
  tests/if2-a.sh            1.1
  tests/if3-a.experr        1.1
  tests/if3-a.exprc         1.1
  tests/if3-a.sh            1.1
  tests/if4-a.experr        1.1
  tests/if4-a.exprc         1.1
  tests/if4-a.sh            1.1
  tests/if5-a.experr        1.1
  tests/if5-a.exprc         1.1
  tests/if5-a.sh            1.1

Add some unifdefall test cases.
--------------------------------
2009/11/27 14:20:59 fanf2

  runtests.sh               1.9 +2 -1

Ensure we clean up after a successful test.
--------------------------------
2009/11/27 14:08:08 fanf2

  Makefile                  1.13 +2 -3
  runtests.sh               1.8 +24 -43
  tests/args1.sh            1.1
  tests/args2.sh            1.1
  tests/blank0d.args        1.2 +0 -0
  tests/blank0d.sh          1.1
  tests/blank0u.args        1.2 +0 -0
  tests/blank0u.sh          1.1
  tests/blank1d.args        1.2 +0 -0
  tests/blank1d.sh          1.1
  tests/blank1u.args        1.2 +0 -0
  tests/blank1u.sh          1.1
  tests/blank2d.args        1.2 +0 -0
  tests/blank2d.sh          1.1
  tests/blank2u.args        1.2 +0 -0
  tests/blank2u.sh          1.1
  tests/blank3d.args        1.2 +0 -0
  tests/blank3d.sh          1.1
  tests/blank3u.args        1.2 +0 -0
  tests/blank3u.sh          1.1
  tests/blank4d.args        1.2 +0 -0
  tests/blank4d.sh          1.1
  tests/blank4u.args        1.2 +0 -0
  tests/blank4u.sh          1.1
  tests/empty.sh            1.1
  tests/if1-k.args          1.2 +0 -0
  tests/if1-k.sh            1.1
  tests/if1-kDU.args        1.2 +0 -0
  tests/if1-kDU.sh          1.1
  tests/if1.sh              1.1
  tests/if2-k.args          1.2 +0 -0
  tests/if2-k.sh            1.1
  tests/if2-kDU.args        1.2 +0 -0
  tests/if2-kDU.sh          1.1
  tests/if2.sh              1.1
  tests/if3-k.args          1.2 +0 -0
  tests/if3-k.sh            1.1
  tests/if3-kDU.args        1.2 +0 -0
  tests/if3-kDU.sh          1.1
  tests/if3.sh              1.1
  tests/if4-k.args          1.2 +0 -0
  tests/if4-k.sh            1.1
  tests/if4-kDU.args        1.2 +0 -0
  tests/if4-kDU.sh          1.1
  tests/if4.sh              1.1
  tests/if5-k.args          1.2 +0 -0
  tests/if5-k.sh            1.1
  tests/if5-kDU.args        1.2 +0 -0
  tests/if5-kDU.sh          1.1
  tests/if5.sh              1.1
  tests/none.sh             1.1
  tests/small1.sh           1.1
  tests/small2.sh           1.1
  tests/spaces1.sh          1.1
  tests/spaces2.sh          1.1
  tests/spaces3.sh          1.1
  tests/spaces4.sh          1.1

Simplify the test suite so that runtests.sh is not specific to unifdef.
--------------------------------
2009/11/27 13:36:39 fanf2

  Makefile                  1.12 +5 -3
  release.sh                1.10 +4 -3
  runtests.sh               1.7 +9 -8
  tests/args1.c.experr      1.2 +0 -0
  tests/args1.c.expout      1.2 +0 -0
  tests/args1.c.exprc       1.2 +0 -0
  tests/args2.c.experr      1.2 +0 -0
  tests/args2.c.expout      1.2 +0 -0
  tests/args2.c.exprc       1.2 +0 -0
  tests/blank0d.c.experr    1.2 +0 -0
  tests/blank0d.c.expout    1.2 +0 -0
  tests/blank0d.c.exprc     1.2 +0 -0
  tests/blank0u.c.experr    1.2 +0 -0
  tests/blank0u.c.expout    1.2 +0 -0
  tests/blank0u.c.exprc     1.2 +0 -0
  tests/blank1d.c.experr    1.2 +0 -0
  tests/blank1d.c.expout    1.3 +0 -0
  tests/blank1d.c.exprc     1.2 +0 -0
  tests/blank1u.c.experr    1.2 +0 -0
  tests/blank1u.c.expout    1.2 +0 -0
  tests/blank1u.c.exprc     1.2 +0 -0
  tests/blank2d.c.experr    1.2 +0 -0
  tests/blank2d.c.expout    1.3 +0 -0
  tests/blank2d.c.exprc     1.2 +0 -0
  tests/blank2u.c.experr    1.2 +0 -0
  tests/blank2u.c.expout    1.2 +0 -0
  tests/blank2u.c.exprc     1.2 +0 -0
  tests/blank3d.c.experr    1.2 +0 -0
  tests/blank3d.c.expout    1.3 +0 -0
  tests/blank3d.c.exprc     1.2 +0 -0
  tests/blank3u.c.experr    1.2 +0 -0
  tests/blank3u.c.expout    1.2 +0 -0
  tests/blank3u.c.exprc     1.2 +0 -0
  tests/blank4d.c.experr    1.2 +0 -0
  tests/blank4d.c.expout    1.3 +0 -0
  tests/blank4d.c.exprc     1.2 +0 -0
  tests/blank4u.c.experr    1.2 +0 -0
  tests/blank4u.c.expout    1.2 +0 -0
  tests/blank4u.c.exprc     1.2 +0 -0
  tests/empty.c.experr      1.2 +0 -0
  tests/empty.c.expout      1.2 +0 -0
  tests/empty.c.exprc       1.2 +0 -0
  tests/if1-a.c.expout      1.2 +0 -0
  tests/if1-k.c.experr      1.2 +0 -0
  tests/if1-k.c.expout      1.2 +0 -0
  tests/if1-k.c.exprc       1.2 +0 -0
  tests/if1-kDU.c.experr    1.2 +0 -0
  tests/if1-kDU.c.expout    1.2 +0 -0
  tests/if1-kDU.c.exprc     1.2 +0 -0
  tests/if1.c.experr        1.2 +0 -0
  tests/if1.c.expout        1.3 +0 -0
  tests/if1.c.exprc         1.2 +0 -0
  tests/if2-a.c.expout      1.2 +0 -0
  tests/if2-k.c.experr      1.2 +0 -0
  tests/if2-k.c.expout      1.2 +0 -0
  tests/if2-k.c.exprc       1.2 +0 -0
  tests/if2-kDU.c.experr    1.2 +0 -0
  tests/if2-kDU.c.expout    1.2 +0 -0
  tests/if2-kDU.c.exprc     1.2 +0 -0
  tests/if2.c.experr        1.2 +0 -0
  tests/if2.c.expout        1.3 +0 -0
  tests/if2.c.exprc         1.2 +0 -0
  tests/if3-a.c.expout      1.2 +0 -0
  tests/if3-k.c.experr      1.2 +0 -0
  tests/if3-k.c.expout      1.2 +0 -0
  tests/if3-k.c.exprc       1.2 +0 -0
  tests/if3-kDU.c.experr    1.2 +0 -0
  tests/if3-kDU.c.expout    1.2 +0 -0
  tests/if3-kDU.c.exprc     1.2 +0 -0
  tests/if3.c.experr        1.2 +0 -0
  tests/if3.c.expout        1.3 +0 -0
  tests/if3.c.exprc         1.2 +0 -0
  tests/if4-a.c.expout      1.2 +0 -0
  tests/if4-k.c.experr      1.2 +0 -0
  tests/if4-k.c.expout      1.2 +0 -0
  tests/if4-k.c.exprc       1.2 +0 -0
  tests/if4-kDU.c.experr    1.2 +0 -0
  tests/if4-kDU.c.expout    1.2 +0 -0
  tests/if4-kDU.c.exprc     1.2 +0 -0
  tests/if4.c.experr        1.2 +0 -0
  tests/if4.c.expout        1.3 +0 -0
  tests/if4.c.exprc         1.2 +0 -0
  tests/if5-a.c.expout      1.2 +0 -0
  tests/if5-k.c.experr      1.2 +0 -0
  tests/if5-k.c.expout      1.2 +0 -0
  tests/if5-k.c.exprc       1.2 +0 -0
  tests/if5-kDU.c.experr    1.2 +0 -0
  tests/if5-kDU.c.expout    1.2 +0 -0
  tests/if5-kDU.c.exprc     1.2 +0 -0
  tests/if5.c.experr        1.2 +0 -0
  tests/if5.c.expout        1.3 +0 -0
  tests/if5.c.exprc         1.2 +0 -0
  tests/none.c.experr       1.2 +0 -0
  tests/none.c.expout       1.3 +0 -0
  tests/none.c.exprc        1.2 +0 -0
  tests/runtests            1.7 +1 -1
  tests/small1.c.experr     1.2 +0 -0
  tests/small1.c.expout     1.3 +0 -0
  tests/small1.c.exprc      1.2 +0 -0
  tests/small2.c.experr     1.2 +0 -0
  tests/small2.c.expout     1.3 +0 -0
  tests/small2.c.exprc      1.2 +0 -0
  tests/spaces1.c.experr    1.2 +0 -0
  tests/spaces1.c.expout    1.3 +0 -0
  tests/spaces1.c.exprc     1.2 +0 -0
  tests/spaces2.c.experr    1.2 +0 -0
  tests/spaces2.c.expout    1.3 +0 -0
  tests/spaces2.c.exprc     1.2 +0 -0
  tests/spaces3.c.experr    1.2 +0 -0
  tests/spaces3.c.expout    1.3 +0 -0
  tests/spaces3.c.exprc     1.2 +0 -0
  tests/spaces4.c.experr    1.2 +0 -0
  tests/spaces4.c.expout    1.3 +0 -0
  tests/spaces4.c.exprc     1.2 +0 -0

Test suite tweaks.

Move the runtests script into the main source directory.
Remove the redundant .c. from the expected output filenames.
Run the tests in a separate working directory.
Include the tests in the release.
--------------------------------
2009/11/27 13:08:58 fanf2

  runtests.sh               1.6 +5 -1
  tests/if1-a.c.expout      1.1
  tests/if1-a.expout        1.1
  tests/if1-k.args          1.1
  tests/if1-k.c             1.1
  tests/if1-k.c.experr      1.1
  tests/if1-k.c.expout      1.1
  tests/if1-k.c.exprc       1.1
  tests/if1-k.experr        1.1
  tests/if1-k.expout        1.1
  tests/if1-k.exprc         1.1
  tests/if1-kDU.args        1.1
  tests/if1-kDU.c           1.1
  tests/if1-kDU.c.experr    1.1
  tests/if1-kDU.c.expout    1.1
  tests/if1-kDU.c.exprc     1.1
  tests/if1-kDU.experr      1.1
  tests/if1-kDU.expout      1.1
  tests/if1-kDU.exprc       1.1
  tests/if1.c               1.2 +3 -0
  tests/if1.c.expout        1.2 +3 -0
  tests/if1.expout          1.2 +3 -0
  tests/if2-a.c.expout      1.1
  tests/if2-a.expout        1.1
  tests/if2-k.args          1.1
  tests/if2-k.c             1.1
  tests/if2-k.c.experr      1.1
  tests/if2-k.c.expout      1.1
  tests/if2-k.c.exprc       1.1
  tests/if2-k.experr        1.1
  tests/if2-k.expout        1.1
  tests/if2-k.exprc         1.1
  tests/if2-kDU.args        1.1
  tests/if2-kDU.c           1.1
  tests/if2-kDU.c.experr    1.1
  tests/if2-kDU.c.expout    1.1
  tests/if2-kDU.c.exprc     1.1
  tests/if2-kDU.experr      1.1
  tests/if2-kDU.expout      1.1
  tests/if2-kDU.exprc       1.1
  tests/if2.c               1.2 +3 -0
  tests/if2.c.expout        1.2 +3 -0
  tests/if2.expout          1.2 +3 -0
  tests/if3-a.c.expout      1.1
  tests/if3-a.expout        1.1
  tests/if3-k.args          1.1
  tests/if3-k.c             1.1
  tests/if3-k.c.experr      1.1
  tests/if3-k.c.expout      1.1
  tests/if3-k.c.exprc       1.1
  tests/if3-k.experr        1.1
  tests/if3-k.expout        1.1
  tests/if3-k.exprc         1.1
  tests/if3-kDU.args        1.1
  tests/if3-kDU.c           1.1
  tests/if3-kDU.c.experr    1.1
  tests/if3-kDU.c.expout    1.1
  tests/if3-kDU.c.exprc     1.1
  tests/if3-kDU.experr      1.1
  tests/if3-kDU.expout      1.1
  tests/if3-kDU.exprc       1.1
  tests/if3.c               1.2 +3 -0
  tests/if3.c.expout        1.2 +3 -0
  tests/if3.expout          1.2 +3 -0
  tests/if4-a.c.expout      1.1
  tests/if4-a.expout        1.1
  tests/if4-k.args          1.1
  tests/if4-k.c             1.1
  tests/if4-k.c.experr      1.1
  tests/if4-k.c.expout      1.1
  tests/if4-k.c.exprc       1.1
  tests/if4-k.experr        1.1
  tests/if4-k.expout        1.1
  tests/if4-k.exprc         1.1
  tests/if4-kDU.args        1.1
  tests/if4-kDU.c           1.1
  tests/if4-kDU.c.experr    1.1
  tests/if4-kDU.c.expout    1.1
  tests/if4-kDU.c.exprc     1.1
  tests/if4-kDU.experr      1.1
  tests/if4-kDU.expout      1.1
  tests/if4-kDU.exprc       1.1
  tests/if4.c               1.2 +3 -0
  tests/if4.c.expout        1.2 +3 -0
  tests/if4.expout          1.2 +3 -0
  tests/if5-a.c.expout      1.1
  tests/if5-a.expout        1.1
  tests/if5-k.args          1.1
  tests/if5-k.c             1.1
  tests/if5-k.c.experr      1.1
  tests/if5-k.c.expout      1.1
  tests/if5-k.c.exprc       1.1
  tests/if5-k.experr        1.1
  tests/if5-k.expout        1.1
  tests/if5-k.exprc         1.1
  tests/if5-kDU.args        1.1
  tests/if5-kDU.c           1.1
  tests/if5-kDU.c.experr    1.1
  tests/if5-kDU.c.expout    1.1
  tests/if5-kDU.c.exprc     1.1
  tests/if5-kDU.experr      1.1
  tests/if5-kDU.expout      1.1
  tests/if5-kDU.exprc       1.1
  tests/if5.c               1.2 +3 -0
  tests/if5.c.expout        1.2 +3 -0
  tests/if5.expout          1.2 +3 -0
  tests/none.c              1.2 +3 -0
  tests/none.c.expout       1.2 +3 -0
  tests/none.expout         1.2 +3 -0
  tests/runtests            1.6 +5 -1
  tests/small1.c            1.2 +3 -0
  tests/small1.c.expout     1.2 +3 -0
  tests/small1.expout       1.2 +3 -0
  tests/small2.c            1.2 +3 -0
  tests/small2.c.expout     1.2 +3 -0
  tests/small2.expout       1.2 +3 -0
  tests/spaces1.c           1.2 +3 -0
  tests/spaces1.c.expout    1.2 +3 -0
  tests/spaces1.expout      1.2 +3 -0
  tests/spaces2.c           1.2 +3 -0
  tests/spaces2.c.expout    1.2 +3 -0
  tests/spaces2.expout      1.2 +3 -0
  tests/spaces3.c           1.2 +3 -0
  tests/spaces3.c.expout    1.2 +3 -0
  tests/spaces3.expout      1.2 +3 -0
  tests/spaces4.c           1.2 +3 -0
  tests/spaces4.c.expout    1.2 +3 -0
  tests/spaces4.expout      1.2 +3 -0

Additional tests from Bob Proulx <bob@proulx.com>
Add his copyright notice to all the old tests.
--------------------------------
2009/11/27 12:48:13 fanf2

  README                    1.4 +21 -7

List significant contributions in the README
--------------------------------
2009/11/27 12:36:54 fanf2

  index.html.in             1.4 +12 -4

Improve the blurb on the web page, based on the Debian package's
description by Jonathan Nieder <jrnieder@gmail.com>.
--------------------------------
2009/11/26 14:12:30 fanf2

  index.html.in             1.3 +8 -6

Fix web page markup
--------------------------------
2009/11/26 14:01:26 fanf2

  Makefile                  1.11 +2 -2

Makefile: clean index.html generated by release.sh
--------------------------------
2009/11/26 13:56:22 fanf2

  index.html.in             1.2 +2 -2
  release.sh                1.9 +2 -2

Do not edit index.html in place
--------------------------------
2009/11/26 13:54:10 fanf2

  release.sh                1.8 +1 -1

Try again to prevent CVS keyword expansion  in the wrong part of release.sh
--------------------------------
2009/11/26 13:52:09 fanf2

  release.sh                1.7 +2 -2

Do not expand CVS keywords in the wrong part of release.sh
--------------------------------
2009/11/26 13:50:10 fanf2

  release.sh                1.6 +7 -5

Improved release process.

Calculate the version number from the sum of the CVS idents.
Adjust the version number in the web page.
--------------------------------
2009/11/26 13:48:45 fanf2

  README                    1.3 +2 -2
  index.html.in             1.1

Add a web page. Use the same title in the README and index.html.
--------------------------------
2009/11/26 12:54:39 fanf2

  unifdefall.sh             1.24 +16 -8

unifdefall: optimise the loop that builds the unifdef command.

The old code used a shell loop to convert each controlling macro
definition into a command-line argument, reading the macro definitions
file each time. The new code converts the list of controlling macros
into a sed script which can run through the list of macro definitions
in one go.

Add some explanatory comments, since the code is quite meta.

Submitted-by: Jonathan Nieder <jrnieder@gmail.com>
--------------------------------
2009/11/26 02:22:24 fanf2

  unifdefall.sh             1.23 +3 -3

unifdefall: Use {} instead of () for redirecting a group of commands.

Submitted-by: Jonathan Nieder <jrnieder@gmail.com>
--------------------------------
2009/11/26 02:14:47 fanf2

  unifdefall.sh             1.22 +3 -3

unifdefall: remove debugging remnants.
--------------------------------
2009/11/25 19:54:34 fanf2

  unifdefall.sh             1.21 +2 -2

unifdefall: update copyright dates.
--------------------------------
2009/11/25 19:33:51 fanf2

  Makefile                  1.10 +2 -2

Makefile: really clean more.
--------------------------------
2009/11/25 19:32:40 fanf2

  unifdefall.sh             1.20 +8 -9

unifdefall: portability: do not try to use EREs with sed

BSD sed uses -E and GNU sed uses -r to specify that extended
regular expressions should be used instead of BREs.

Some of the sed scripts have been simplified by relying on 'cpp -dM'
to produce lines of the form '#define MACRO value', with a single
space as delimiting whitespace.

While we're modifying the sed scripts, also change the shell
quoting script to correctly capture more characters when they
appear in the right-hand sides of macro definitions (e.g., $).

Submitted-by: Jonathan Nieder <jrnieder@gmail.com>
--------------------------------
2009/11/25 19:24:59 fanf2

  unifdefall.sh             1.19 +2 -2

unifdefall: fix mktemp invocation

Actually remove the -t that should have gone in rev. 1.14
--------------------------------
2009/11/25 19:23:12 fanf2

  unifdefall.sh             1.18 +10 -9

unifdefall: simplify redirections to the temporary script
--------------------------------
2009/11/25 18:05:11 fanf2

  unifdefall.sh             1.17 +3 -1

unifdefall: force the "C" locale to avoid braindamage

Reported-by: Jonathan Nieder <jrnieder@gmail.com>
--------------------------------
2009/11/25 18:02:41 fanf2

  unifdefall.sh             1.16 +2 -3

unifdefall: clean up temporary files on failure

Submitted-by: Jonathan Nieder <jrnieder@gmail.com>
--------------------------------
2009/11/25 18:00:54 fanf2

  unifdefall.sh             1.15 +14 -14

unifdefall: allow spaces in $TMPDIR

Submitted-by: Jonathan Nieder <jrnieder@gmail.com>
--------------------------------
2009/11/25 17:56:10 fanf2

  unifdefall.sh             1.14 +2 -2

unifdefall: portability: avoid mktemp -t

GNU mktemp interprets the argument after -t as the entire template
and errors out if it contains no XXXX substring. BSD systems, on
the other hand, treat the argument as a prefix for the mktemp
template and use it verbatim, resulting in long, ugly filenames
like foo.XXXXX.e30GuhHVzU if the string contains embedded Xs.

So avoid -t and use TMPDIR explicitly.

Submitted-by: Jonathan Nieder <jrnieder@gmail.com>
--------------------------------
2009/11/25 17:54:13 fanf2

  unifdefall.sh             1.13 +3 -3

Use $() instead of `` in unifdefall.
--------------------------------
2009/11/25 00:11:02 fanf2

  tests/blank1d.c.expout    1.2 +1 -0
  tests/blank1d.expout      1.2 +1 -0
  tests/blank2d.c.expout    1.2 +2 -0
  tests/blank2d.expout      1.2 +2 -0
  tests/blank3d.c.expout    1.2 +3 -0
  tests/blank3d.expout      1.2 +3 -0
  tests/blank4d.c.expout    1.2 +4 -0
  tests/blank4d.expout      1.2 +4 -0
  unifdef.1                 1.60 +2 -2
  unifdef.c                 1.188 +11 -6

Improve the behaviour of the -B option.

Submitted-by: Anders H Kaseorg <andersk@mit.edu>
--------------------------------
2009/11/25 00:03:44 fanf2

  tests/blank0d.args        1.1
  tests/blank0d.c           1.1
  tests/blank0d.c.experr    1.1
  tests/blank0d.c.expout    1.1
  tests/blank0d.c.exprc     1.1
  tests/blank0d.experr      1.1
  tests/blank0d.expout      1.1
  tests/blank0d.exprc       1.1
  tests/blank0u.args        1.1
  tests/blank0u.c           1.1
  tests/blank0u.c.experr    1.1
  tests/blank0u.c.expout    1.1
  tests/blank0u.c.exprc     1.1
  tests/blank0u.experr      1.1
  tests/blank0u.expout      1.1
  tests/blank0u.exprc       1.1
  tests/blank1d.args        1.1
  tests/blank1d.c           1.1
  tests/blank1d.c.experr    1.1
  tests/blank1d.c.expout    1.1
  tests/blank1d.c.exprc     1.1
  tests/blank1d.experr      1.1
  tests/blank1d.expout      1.1
  tests/blank1d.exprc       1.1
  tests/blank1u.args        1.1
  tests/blank1u.c           1.1
  tests/blank1u.c.experr    1.1
  tests/blank1u.c.expout    1.1
  tests/blank1u.c.exprc     1.1
  tests/blank1u.experr      1.1
  tests/blank1u.expout      1.1
  tests/blank1u.exprc       1.1
  tests/blank2d.args        1.1
  tests/blank2d.c           1.1
  tests/blank2d.c.experr    1.1
  tests/blank2d.c.expout    1.1
  tests/blank2d.c.exprc     1.1
  tests/blank2d.experr      1.1
  tests/blank2d.expout      1.1
  tests/blank2d.exprc       1.1
  tests/blank2u.args        1.1
  tests/blank2u.c           1.1
  tests/blank2u.c.experr    1.1
  tests/blank2u.c.expout    1.1
  tests/blank2u.c.exprc     1.1
  tests/blank2u.experr      1.1
  tests/blank2u.expout      1.1
  tests/blank2u.exprc       1.1
  tests/blank3d.args        1.1
  tests/blank3d.c           1.1
  tests/blank3d.c.experr    1.1
  tests/blank3d.c.expout    1.1
  tests/blank3d.c.exprc     1.1
  tests/blank3d.experr      1.1
  tests/blank3d.expout      1.1
  tests/blank3d.exprc       1.1
  tests/blank3u.args        1.1
  tests/blank3u.c           1.1
  tests/blank3u.c.experr    1.1
  tests/blank3u.c.expout    1.1
  tests/blank3u.c.exprc     1.1
  tests/blank3u.experr      1.1
  tests/blank3u.expout      1.1
  tests/blank3u.exprc       1.1
  tests/blank4d.args        1.1
  tests/blank4d.c           1.1
  tests/blank4d.c.experr    1.1
  tests/blank4d.c.expout    1.1
  tests/blank4d.c.exprc     1.1
  tests/blank4d.experr      1.1
  tests/blank4d.expout      1.1
  tests/blank4d.exprc       1.1
  tests/blank4u.args        1.1
  tests/blank4u.c           1.1
  tests/blank4u.c.experr    1.1
  tests/blank4u.c.expout    1.1
  tests/blank4u.c.exprc     1.1
  tests/blank4u.experr      1.1
  tests/blank4u.expout      1.1
  tests/blank4u.exprc       1.1

Add some test cases for blank line squashing.
--------------------------------
2009/11/24 23:46:36 fanf2

  runtests.sh               1.5 +12 -15
  tests/runtests            1.5 +12 -15

Further test script clean-ups.
--------------------------------
2009/11/24 22:40:01 fanf2

  tests/args1.c             1.1
  tests/args1.c.experr      1.1
  tests/args1.c.expout      1.1
  tests/args1.c.exprc       1.1
  tests/args1.experr        1.1
  tests/args1.expout        1.1
  tests/args1.exprc         1.1
  tests/args2.c             1.1
  tests/args2.c.experr      1.1
  tests/args2.c.expout      1.1
  tests/args2.c.exprc       1.1
  tests/args2.experr        1.1
  tests/args2.expout        1.1
  tests/args2.exprc         1.1

Add a couple of tests for macro argument handling
--------------------------------
2009/11/24 22:39:36 fanf2

  runtests.sh               1.4 +3 -4
  tests/runtests            1.4 +3 -4

Automatically run newly-added tests.
--------------------------------
2009/11/24 22:32:35 fanf2

  runtests.sh               1.3 +1 -2
  tests/runtests            1.3 +1 -2

Fix detection of missing test output files.
--------------------------------
2009/11/24 22:25:55 fanf2

  Makefile                  1.9 +5 -1
  tests/Makefile            1.4 +0 -0

Move tests/Makefile into the main Makefile.
--------------------------------
2009/11/24 22:20:26 fanf2

  runtests.sh               1.2 +6 -1
  tests/runtests            1.2 +6 -1

Support non-standard test command arguments.
--------------------------------
2009/11/24 22:13:15 fanf2

  runtests.sh               1.1
  tests/Makefile            1.3 +2 -9
  tests/empty.c.exprc       1.1
  tests/empty.exprc         1.1
  tests/if1.c.exprc         1.1
  tests/if1.exprc           1.1
  tests/if2.c.exprc         1.1
  tests/if2.exprc           1.1
  tests/if3.c.exprc         1.1
  tests/if3.exprc           1.1
  tests/if4.c.exprc         1.1
  tests/if4.exprc           1.1
  tests/if5.c.exprc         1.1
  tests/if5.exprc           1.1
  tests/none.c.exprc        1.1
  tests/none.exprc          1.1
  tests/runtests            1.1
  tests/simple1             1.4 +0 -0
  tests/simple2             1.5 +0 -0
  tests/small1.c.exprc      1.1
  tests/small1.exprc        1.1
  tests/small2.c.exprc      1.1
  tests/small2.exprc        1.1
  tests/spaces1.c.exprc     1.1
  tests/spaces1.exprc       1.1
  tests/spaces2.c.exprc     1.1
  tests/spaces2.exprc       1.1
  tests/spaces3.c.exprc     1.1
  tests/spaces3.exprc       1.1
  tests/spaces4.c.exprc     1.1
  tests/spaces4.exprc       1.1

Remove redundancy from the test scripts.
--------------------------------
2009/11/24 21:32:53 fanf2

  tests/Makefile            1.2 +1 -1
  tests/simple2             1.4 +4 -2
  tests/simple3             1.4 +0 -0

Make the simple3 test script redundant.
--------------------------------
2009/11/24 21:27:29 fanf2

  tests/simple1             1.3 +8 -6
  tests/simple2             1.3 +8 -6
  tests/simple3             1.3 +8 -6

Reduce repetition of the test command in the scripts.
--------------------------------
2009/11/24 21:23:30 fanf2

  tests/simple1             1.2 +1 -1
  tests/simple2             1.2 +1 -1
  tests/simple3             1.2 +1 -1

Fix relative path from tests to unifdef executable.
--------------------------------
2009/11/24 21:21:47 fanf2

  tests/Makefile            1.1
  tests/empty.c             1.1
  tests/empty.c.experr      1.1
  tests/empty.c.expout      1.1
  tests/empty.experr        1.1
  tests/empty.expout        1.1
  tests/if1.c               1.1
  tests/if1.c.experr        1.1
  tests/if1.c.expout        1.1
  tests/if1.experr          1.1
  tests/if1.expout          1.1
  tests/if2.c               1.1
  tests/if2.c.experr        1.1
  tests/if2.c.expout        1.1
  tests/if2.experr          1.1
  tests/if2.expout          1.1
  tests/if3.c               1.1
  tests/if3.c.experr        1.1
  tests/if3.c.expout        1.1
  tests/if3.experr          1.1
  tests/if3.expout          1.1
  tests/if4.c               1.1
  tests/if4.c.experr        1.1
  tests/if4.c.expout        1.1
  tests/if4.experr          1.1
  tests/if4.expout          1.1
  tests/if5.c               1.1
  tests/if5.c.experr        1.1
  tests/if5.c.expout        1.1
  tests/if5.experr          1.1
  tests/if5.expout          1.1
  tests/none.c              1.1
  tests/none.c.experr       1.1
  tests/none.c.expout       1.1
  tests/none.experr         1.1
  tests/none.expout         1.1
  tests/simple1             1.1
  tests/simple2             1.1
  tests/simple3             1.1
  tests/small1.c            1.1
  tests/small1.c.experr     1.1
  tests/small1.c.expout     1.1
  tests/small1.experr       1.1
  tests/small1.expout       1.1
  tests/small2.c            1.1
  tests/small2.c.experr     1.1
  tests/small2.c.expout     1.1
  tests/small2.experr       1.1
  tests/small2.expout       1.1
  tests/spaces1.c           1.1
  tests/spaces1.c.experr    1.1
  tests/spaces1.c.expout    1.1
  tests/spaces1.experr      1.1
  tests/spaces1.expout      1.1
  tests/spaces2.c           1.1
  tests/spaces2.c.experr    1.1
  tests/spaces2.c.expout    1.1
  tests/spaces2.experr      1.1
  tests/spaces2.expout      1.1
  tests/spaces3.c           1.1
  tests/spaces3.c.experr    1.1
  tests/spaces3.c.expout    1.1
  tests/spaces3.experr      1.1
  tests/spaces3.expout      1.1
  tests/spaces4.c           1.1
  tests/spaces4.c.experr    1.1
  tests/spaces4.c.expout    1.1
  tests/spaces4.experr      1.1
  tests/spaces4.expout      1.1

Import Bob Proulx's test suite from the Debian package.
--------------------------------
2009/11/24 17:50:35 fanf2

  unifdef.1                 1.59 +2 -2

Less stilted English in the man page.
--------------------------------
2009/11/24 17:49:13 fanf2

  unifdef.1                 1.58 +12 -1
  unifdef.c                 1.187 +30 -2

Handle macros with arguments.

Submitted-by: Anders H Kaseorg <andersk@mit.edu>
--------------------------------
2009/11/24 16:51:38 fanf2

  unifdef.c                 1.186 +2 -2

Use isalnum() instead of isalpha() + isdigit().
--------------------------------
2009/11/24 12:14:37 fanf2

  release.sh                1.5 +2 -2

Run the release script verbosely.
--------------------------------
2009/11/24 12:12:31 fanf2

  README                    1.2 +7 -1

Add a non-portability note to the README.
--------------------------------
2009/11/24 11:58:41 fanf2

  unifdef.c                 1.185 +4 -4

Rename getline() to parseline() to avoid clashing with a glibc function.
--------------------------------
2009/11/23 19:15:42 fanf2

  Makefile                  1.8 +4 -1

Add a realclean target
--------------------------------
2009/11/23 19:14:02 fanf2

  Makefile                  1.7 +2 -2
  README                    1.1
  release.sh                1.4 +2 -1

Add a README file
--------------------------------
2009/11/23 19:07:17 fanf2

  Makefile                  1.6 +8 -8
  release.sh                1.3 +11 -5

Further improvements to the release scripts.

Make the generated filenames more standard.
--------------------------------
2009/11/23 18:54:52 fanf2

  release.sh                1.2 +1 -0

Include the Release script in the release.
--------------------------------
2009/11/23 18:53:35 fanf2

  Makefile                  1.5 +7 -13
  release.sh                1.1

Revamp Makefile and add a separate Release script.
--------------------------------
2009/11/23 18:37:17 fanf2

  unifdef.1                 1.57 +7 -4
  unifdef.c                 1.184 +3 -3

Document -d flag and update copyright notices.
--------------------------------
2009/11/23 18:24:55 fanf2

  unifdef.c                 1.183 +5 -2

Fix regression in ! operator.

Since revision 1.180, unifdef is ignoring negations in the
outermost expression of an #if conditional.  Fix the regression,
and add a debug statement to help if any similar problems ever
need to be tracked down.

Submitted by: Jonathan Nieder <jrnieder@gmail.com>
--------------------------------
2009/11/23 17:59:33 fanf2

  unifdef.1                 1.56 +8 -2

Correct the HISTORY section and add an AUTHORS section.

Obtained from FreeBSD.
--------------------------------
2009/11/23 17:58:27 fanf2

  Makefile                  1.4 +11 -1

Add a "release" target
--------------------------------
2008/03/10 16:15:52 fanf2

  unifdef.1                 1.55 +2 -2

update synopsis
--------------------------------
2008/03/10 16:08:47 fanf2

  unifdef.1                 1.54 +11 -1
  unifdef.c                 1.182 +9 -5

backwards compatibility option
--------------------------------
2008/03/10 15:56:15 fanf2

  unifdef.c                 1.181 +18 -19

Fix the state transition table.
--------------------------------
2008/03/10 15:24:29 fanf2

  unifdef.1                 1.53 +51 -23
  unifdef.c                 1.180 +88 -48

Lenient evaluation of && and || based on an idea from Ben Hutchings at
Solarflare Communications.
--------------------------------
2008/03/10 13:01:40 fanf2

  unifdef.1                 1.52 +18 -10
  unifdef.c                 1.179 +26 -11

Compress blank lines, based on an idea from Ben Hutchings at
Solarflare Communications.
--------------------------------
2008/03/02 22:23:32 fanf2

  unifdef.c                 1.178 +2 -2

Typo in comment spotted by Hasso Tepper at DragonFlyBSD.
--------------------------------
2008/02/29 13:17:37 fanf2

  unifdef.c                 1.177 +12 -9

Ah, I have worked out another way of triggering the abort.
I think this fix covers all the cases.
--------------------------------
2008/02/29 12:44:25 fanf2

  unifdef.c                 1.176 +3 -7

Remove a bit of copyright crap.
--------------------------------
2008/02/29 12:30:36 fanf2

  unifdef.c                 1.175 +2 -2

Sync usage with synopsis in man page
--------------------------------
2008/02/29 12:29:34 fanf2

  Makefile                  1.3 +2 -2

Ensure man page is ASCII.
--------------------------------
2008/02/29 12:26:04 fanf2

  unifdef.c                 1.174 +14 -5

Fix an abort caused by files that have #endif and no newline on the
last line (reported by Joe Karthauser). Also fix a benign uninitialized
variable bug.
--------------------------------
2007/04/30 07:37:17 fanf2

  unifdef.c                 1.173 +11 -9

Fix explanation of copyright history.
--------------------------------
2005/08/12 10:59:21 fanf2

  unifdef.c                 1.172 +9 -5

Allow #if defined SYM as well as #if defined(SYM)
--------------------------------
2005/03/08 12:39:01 fanf2

  unifdef.1                 1.51 +16 -16

sync with upstream
--------------------------------
2005/03/08 12:38:48 fanf2

  unifdef.c                 1.171 +2 -2

copyright dates
--------------------------------
2005/03/08 12:07:27 fanf2

  unifdef.c                 1.170 +44 -15

Update the copyright notice to the FreeBSD standard.
Do not recognize comment markers inside string and character literals.
--------------------------------
2003/08/12 20:51:30 fanf2

  unifdef.c                 1.169 +3 -3

simpler declaration of copyright[]
--------------------------------
2003/08/12 20:33:59 fanf2

  unifdef.c                 1.168 +6 -17

Make the embedded copyright and version information more portable.
Remove NetBSD cvs id because it is no longer relevant. Remove FreeBSD
cvs id because it isn't relevant upstream. Keep Berkeley runes because
they go with the original licence.
--------------------------------
2003/08/12 20:32:39 fanf2

  unifdefall.sh             1.12 +1 -2

FreeBSD cvs id isn't relevant in this file in the upstream version.
--------------------------------
2003/08/12 20:32:12 fanf2

  unifdef.1                 1.50 +2 -2

Current FreeBSD cvs id
--------------------------------
2003/08/12 20:12:24 fanf2

  unifdef.1                 1.49 +9 -2
  unifdef.c                 1.167 +14 -6

optionally add #line directives to the output
--------------------------------
2003/08/12 19:39:53 fanf2

  unifdef.c                 1.166 +13 -3

Add a little sanity checking to the state transition table code.
--------------------------------
2003/08/12 19:35:31 fanf2

  unifdef.c                 1.165 +4 -4

a minor style improvement
--------------------------------
2003/08/12 19:23:12 fanf2

  unifdef.c                 1.164 +7 -8

Allow the user to run unifdef without defining any symbols. This is
useful in conjunction with the -k flag.
Fix a bug in the -s handling code that would have caused out-of-bounds
array accesses.
--------------------------------
2003/08/07 16:01:10 fanf2

  unifdef.1                 1.48 +2 -1

Sync with FreeBSD
--------------------------------
2003/07/31 08:21:00 fanf2

  unifdef.1                 1.47 +2 -2
  unifdef.c                 1.163 +2 -2

All rights reserved
--------------------------------
2003/07/31 08:20:47 fanf2

  unifdefall.sh             1.11 +25 -2

add FreeBSD-style copyright & licence
--------------------------------
2003/07/31 08:10:39 fanf2

  unifdef.1                 1.46 +4 -7

Sync copyright and licence with the code. I've put my copyright line
below Berkeley's since a lot of the old man page still remains.
--------------------------------
2003/07/31 07:59:15 fanf2

  unifdef.c                 1.162 +2 -6

Remove clause three of the licence, as permitted by Berkeley. OpenBSD
have done this globally, but Net- and Free- haven't. I've had two
questions about this recently, and since I don't distribute Berkeley's
licence change statement this is a good way to be clear.
--------------------------------
2003/07/01 15:32:48 fanf2

  unifdef.c                 1.161 +2 -2

FreeBSD ident string
--------------------------------
2003/07/01 15:21:25 fanf2

  unifdef.c                 1.160 +4 -3

style tweak
--------------------------------
2003/07/01 15:13:49 fanf2

  unifdef.c                 1.159 +16 -20

Make the handling of EOF a little more elegant.
--------------------------------
2003/07/01 14:53:50 fanf2

  Makefile                  1.2 +7 -2

clean
--------------------------------
2003/07/01 08:34:43 fanf2

  unifdef.c                 1.158 +2 -1

a comment about line continuations
--------------------------------
2003/07/01 08:19:58 fanf2

  unifdef.c                 1.157 +5 -2

Improve the expression evaluator's debugging output.
--------------------------------
2003/06/30 14:30:54 fanf2

  unifdef.c                 1.156 +7 -5

More improvements to comments regarding global variables.
--------------------------------
2003/06/30 14:26:48 fanf2

  unifdef.c                 1.155 +3 -3

Make a note in a comment about the relationship between getline() and
skipcomment() w.r.t. the linestate.
--------------------------------
2003/06/30 14:22:40 fanf2

  unifdef.c                 1.154 +4 -3

When in text mode, or when ignoring a symbol, skipcomment needs to
adjust the linestate when it hits a newline.
--------------------------------
2003/06/30 14:03:56 fanf2

  unifdef.c                 1.153 +7 -5

Sync with FreeBSD.
--------------------------------
2003/01/20 14:43:55 fanf2

  Makefile                  1.1

makefile for unifdef
--------------------------------
2003/01/20 14:37:08 fanf2

  unifdef.1                 1.45 +6 -8
  unifdef.c                 1.152 +2 -2

Slightly more correct SYNOPSIS
--------------------------------
2003/01/20 14:01:47 fanf2

  unifdef.c                 1.151 +4 -2

add a note about probalems caused by division
--------------------------------
2003/01/20 13:48:06 fanf2

  unifdef.c                 1.150 +2 -2

typo
--------------------------------
2003/01/20 12:46:08 fanf2

  unifdef.1                 1.44 +2 -2
  unifdef.c                 1.149 +2 -2

Sync $FreeBSD$ after downstream commit
--------------------------------
2003/01/20 12:05:41 fanf2

  unifdef.c                 1.148 +3 -3

clean up some -o remnants
--------------------------------
2003/01/20 12:03:48 fanf2

  unifdef.c                 1.147 +2 -2

terminological consistency: s/modify/edit/
--------------------------------
2003/01/20 12:03:10 fanf2

  unifdef.c                 1.146 +6 -9

Compactify the Mfoo functions.
--------------------------------
2003/01/20 11:46:53 fanf2

  unifdef.c                 1.145 +2 -2

more idiomatic strlcpy usage
--------------------------------
2003/01/20 11:45:32 fanf2

  unifdef.c                 1.144 +10 -12

Correct dodgy handling -- line continuations in keywords are always an
error.
--------------------------------
2003/01/20 11:36:12 fanf2

  unifdef.1                 1.43 +20 -20
  unifdef.c                 1.143 +6 -6

Rename -o to -e, i.e. "less errors" instead of "allow obfuscation".
--------------------------------
2003/01/20 11:22:44 fanf2

  unifdef.c                 1.142 +2 -2

remove another spurious space
--------------------------------
2003/01/20 02:58:11 fanf2

  unifdef.1                 1.42 +21 -3
  unifdef.c                 1.141 +102 -40

Improve the handling of multiline preprocessor directives. Don't complain
when they don't affect the output. Add a switch that causes us to fudge
it instead of complaining when it is possible to do so.

Prompted by an error report from Poul-Henning Kamp <phk@FreeBSD.org>
--------------------------------
2003/01/20 02:53:27 fanf2

  unifdef.c                 1.140 +2 -1

replace accidentally zapped #endif
--------------------------------
2003/01/20 02:50:36 fanf2

  unifdef.c                 1.139 +2 -3

Sync $FreeBSD$
--------------------------------
2003/01/20 01:51:11 fanf2

  unifdef.c                 1.138 +5 -5

Deconfuse ingnore[] (which is a per-symbol flag) and ignoring[]
(which is the stack of ignore states).
--------------------------------
2003/01/20 01:32:23 fanf2

  unifdef.c                 1.137 +4 -4

Whitespace fixes from OpenBSD.
--------------------------------
2003/01/20 00:59:36 fanf2

  unifdef.c                 1.136 +4 -3

Be more explicit about the failure mode.

Reported by: Poul-Henning Kamp <phk@FreeBSD.org>
--------------------------------
2003/01/20 00:50:06 fanf2

  unifdef.c                 1.135 +2 -2

typo: maintin -> maintain
--------------------------------
2003/01/20 00:01:49 fanf2

  unifdef.c                 1.134 +19 -7

Purge strcpy() to appease OpenBSD. Consistently use the term "edit"
when talking about changing preprocessor keywords in the output.

Suggested by: Ted Unangst <tedu@stanford.edu>
--------------------------------
2003/01/17 19:19:13 fanf2

  unifdef.1                 1.41 +4 -4

mdoc pedantry from FreeBSD
--------------------------------
2003/01/17 19:04:36 fanf2

  unifdef.c                 1.133 +34 -34

Style fix: brackets around the argument to return. From OpenBSD.
--------------------------------
2003/01/17 19:03:02 fanf2

  unifdef.c                 1.132 +2 -2

Add a necessary cast to an argument of printf. From OpenBSD.
--------------------------------
2003/01/17 19:01:59 fanf2

  unifdef.c                 1.131 +3 -3

Whitespace fixes from OpenBSD.
--------------------------------
2002/12/13 15:26:41 fanf2

  unifdef.c                 1.130 +18 -19

Damnit, it makes sense for flushline() to be near the #if machine,
and the diff is doomed to be vast anyway.
--------------------------------
2002/12/13 15:20:05 fanf2

  unifdef.c                 1.129 +3 -3

make warns-clean in an evil manner
--------------------------------
2002/12/13 13:58:00 fanf2

  unifdef.c                 1.128 +4 -3

factor out an error message
--------------------------------
2002/12/13 11:44:25 fanf2

  unifdef.c                 1.127 +1 -3

remove an XXX that has been addressed
--------------------------------
2002/12/13 11:42:37 fanf2

  unifdef.c                 1.126 +4 -4

sort getopt cases
--------------------------------
2002/12/13 11:40:08 fanf2

  unifdef.c                 1.125 +8 -5

Use ISO/IEC 9899:1999 minimum translation limits
--------------------------------
2002/12/13 11:33:34 fanf2

  unifdef.1                 1.40 +3 -1

expand on unifdef's understanding of C
--------------------------------
2002/12/13 11:24:26 fanf2

  unifdef.1                 1.39 +4 -1

note the appearance of ANSI support
--------------------------------
2002/12/13 11:24:08 fanf2

  unifdef.1                 1.38 +4 -2

describe the limitation on preprocessor lines better
--------------------------------
2002/12/13 11:15:20 fanf2

  unifdef.c                 1.124 +3 -1

spot backslash-newline in a preprocessor keyword
--------------------------------
2002/12/13 11:13:02 fanf2

  unifdef.c                 1.123 +2 -2

fix an error message
--------------------------------
2002/12/13 11:11:11 fanf2

  unifdef.c                 1.122 +5 -5

less obfuscated ifdef/ifndef handling
--------------------------------
2002/12/13 11:04:43 fanf2

  unifdef.c                 1.121 +25 -25

comment the state enums
--------------------------------
2002/12/12 19:53:53 fanf2

  unifdef.c                 1.120 +3 -3

move the forward declaration of struct ops to a better place
--------------------------------
2002/12/12 19:52:26 fanf2

  unifdef.c                 1.119 +19 -19

move flushline() back where it used to be
--------------------------------
2002/12/12 19:50:15 fanf2

  unifdef.c                 1.118 +2 -1

more commentary on strlcmp()
--------------------------------
2002/12/12 19:46:44 fanf2

  unifdef.c                 1.117 +4 -4

comment all globals
--------------------------------
2002/12/12 19:45:29 fanf2

  unifdef.c                 1.116 +2 -2

terminological consistency for pass states
--------------------------------
2002/12/12 19:43:04 fanf2

  unifdef.c                 1.115 +6 -2

fix some comments
--------------------------------
2002/12/12 19:42:23 fanf2

  unifdef.c                 1.114 +25 -25

re-order enums to reduce diffs with FreeBSD
--------------------------------
2002/12/12 19:38:45 fanf2

  unifdef.c                 1.113 +1 -23

remove some c&p garbage
--------------------------------
2002/12/12 19:36:23 fanf2

  unifdef.c                 1.112 +41 -19

move flushline closer to its usage point
--------------------------------
2002/12/12 19:35:17 fanf2

  unifdef.c                 1.111 +5 -5

rename a variable in process() to reduce diffs with FreeBSD
--------------------------------
2002/12/12 19:29:02 fanf2

  unifdef.c                 1.110 +160 -157

move the tables closer to their interpreters
--------------------------------
2002/12/12 19:15:24 fanf2

  unifdef.c                 1.109 +57 -89

reduce the space used by the state transition functions
--------------------------------
2002/12/12 19:04:56 fanf2

  unifdef.1                 1.37 +3 -1

note another diagnostic
--------------------------------
2002/12/12 19:04:56 fanf2

  unifdef.c                 1.108 +175 -153

make everything static, and improve the order of declarations
--------------------------------
2002/12/12 17:59:51 fanf2

  unifdef.c                 1.107 +7 -7

Improve the state table commentary.
--------------------------------
2002/12/12 17:41:39 fanf2

  unifdef.c                 1.106 +12 -12

reduce state transition table line lengths below 80
--------------------------------
2002/12/12 17:30:55 fanf2

  unifdef.c                 1.105 +16 -12

reduce state function line lengths below 80
--------------------------------
2002/12/12 17:24:26 fanf2

  unifdef.c                 1.104 +6 -3

Exit 1 if the output differs from the input.
--------------------------------
2002/12/12 17:21:22 fanf2

  unifdef.c                 1.103 +3 -3

Exit 2 on error.
--------------------------------
2002/12/12 17:21:04 fanf2

  unifdef.1                 1.36 +8 -4

Bring the DIAGNOSTICS in line with reality.
--------------------------------
2002/12/12 17:17:52 fanf2

  unifdef.1                 1.35 +4 -1
  unifdef.c                 1.102 +4 -2

restore the complaint about EOF in comments
--------------------------------
2002/12/12 17:12:57 fanf2

  unifdef.c                 1.101 +2 -2

skipsym doesn't need a separate test for '\0'
--------------------------------
2002/12/12 17:11:28 fanf2

  unifdef.c                 1.100 +7 -7

rename constexpr back to keepthis to reduce diffs
--------------------------------
2002/12/12 17:06:15 fanf2

  unifdef.c                 1.99 +1 -2

stcomline isn't used any more
--------------------------------
2002/12/12 17:05:00 fanf2

  unifdef.c                 1.98 +2 -2

Note that NO_COMMMENT is false, as before.
--------------------------------
2002/12/12 17:03:37 fanf2

  unifdef.c                 1.97 +11 -10

Move the error function back to the end
--------------------------------
2002/12/12 17:02:08 fanf2

  unifdef.c                 1.96 +6 -3

Better error messages outside #if groups
--------------------------------
2002/12/12 17:01:50 fanf2

  unifdef.1                 1.34 +3 -1

Note a new diagnostic for preprocessor lines we can't handle.
--------------------------------
2002/12/12 17:00:04 fanf2

  unifdef.c                 1.95 +17 -13

Instead of quietly ballsing up the output, bitch if we encounter a
preprocessor line we can't handle.
--------------------------------
2002/12/12 16:04:04 fanf2

  unifdef.c                 1.94 +6 -7

Rename checkline() to getline() and move the fgets() inside it.
--------------------------------
2002/12/11 20:46:06 fanf2

  unifdef.c                 1.93 +2 -2

Add a missing unignore()
--------------------------------
2002/12/11 20:42:47 fanf2

  unifdef.c                 1.92 +9 -7

Handle #ifs nested inside a false block correctly.
--------------------------------
2002/12/11 20:15:57 fanf2

  unifdef.c                 1.91 +1 -3

remove nul character comment
--------------------------------
2002/12/11 20:05:52 fanf2

  unifdef.c                 1.90 +205 -247

Overhaul the #if state machine. It's now table-driven rather than hand-
coded, and it doesn't have the old version's bugs. The debugging messages
have also been improved.
--------------------------------
2002/12/11 20:04:40 fanf2

  unifdef.1                 1.33 +8 -1

some more bugs
--------------------------------
2002/12/11 02:28:22 fanf2

  unifdef.c                 1.89 +11 -13

Rename keepthis to constexpr which is easier to think about.
Re-comment and re-arrange some globals.
--------------------------------
2002/12/11 02:22:44 fanf2

  unifdef.1                 1.32 +3 -1

Add a note about trigraphs.
--------------------------------
2002/12/11 02:13:04 fanf2

  unifdef.c                 1.88 +2 -75

Use fgets instead of getline() because the latter gets EOF wrong.
--------------------------------
2002/12/11 02:07:02 fanf2

  unifdef.1                 1.31 +2 -2
  unifdef.c                 1.87 +136 -98

Overhaul the comment and preprocessor line parsers.
--------------------------------
2002/12/11 01:44:04 fanf2

  unifdef.c                 1.86 +17 -3

Add an asymmetric variant of strncmp() called strlcmp().
--------------------------------
2002/12/11 00:00:47 fanf2

  unifdef.c                 1.85 +2 -2

handle end-of-string in skipsym()
--------------------------------
2002/12/10 23:20:14 fanf2

  unifdef.c                 1.84 +4 -10

A neater way of handling #elif
--------------------------------
2002/12/10 23:02:11 fanf2

  unifdef.c                 1.83 +2 -2

Fix findsym()'s comment.
--------------------------------
2002/12/10 23:01:04 fanf2

  unifdef.c                 1.82 +7 -12

Improve findsym().
--------------------------------
2002/12/10 21:11:58 fanf2

  unifdef.c                 1.81 +9 -61

Remove quote handling.
--------------------------------
2002/12/10 21:11:19 fanf2

  unifdef.1                 1.30 +7 -12

Update the spec to relate better to ANSI C. Strings no longer affect
the preprocessor, but line continuations do.
--------------------------------
2002/12/10 17:28:09 fanf2

  unifdef.1                 1.29 +3 -1

Note that string parsing needs to be fixed. Actually it just needs to
be ripped out and replaced with backslash line continuation handling
since strings can't contain newlines any more.
--------------------------------
2002/12/10 17:23:54 fanf2

  unifdef.1                 1.28 +4 -4

Sync with FreeBSD
--------------------------------
2002/12/10 17:12:58 fanf2

  unifdef.c                 1.80 +4 -10

Handle inquote more elegantly
--------------------------------
2002/12/10 17:00:39 fanf2

  unifdef.c                 1.79 +15 -14

Make the symbol table zero-based, and remove an incorrect comment.
--------------------------------
2002/12/10 16:22:12 fanf2

  unifdef.c                 1.78 +3 -3

Terminological consistency: only use the word "ignore" to mean non-C parsing.
--------------------------------
2002/12/10 16:10:51 fanf2

  unifdef.c                 1.77 +2 -3

Ensure that cursym is always set by checkline().
--------------------------------
2002/09/24 19:52:11 fanf2

  unifdef.1                 1.27 +2 -2
  unifdef.c                 1.76 +2 -2
  unifdefall.sh             1.10 +2 -2

update FreeBSD IDs
--------------------------------
2002/09/24 19:44:12 fanf2

  unifdef.1                 1.26 +10 -10

improve language
--------------------------------
2002/09/24 19:43:57 fanf2

  unifdefall.sh             1.9 +2 -2

conform to the spec -- the -k option to unifdef is now needed
--------------------------------
2002/09/24 19:16:29 fanf2

  unifdef.1                 1.25 +23 -3
  unifdef.c                 1.75 +17 -7

Pass through constant #ifs unless invoked with -k.
--------------------------------
2002/05/30 11:50:13 fanf

  unifdef.c                 1.74 +2 -2

add freebsd version string
--------------------------------
2002/05/30 11:47:26 fanf

  unifdef.1                 1.24 +39 -45

Sync with FreeBSD's mdoc markup fixes.
--------------------------------
2002/05/21 17:33:41 fanf

  unifdef.c                 1.73 +5 -5

style(9) whitespace
--------------------------------
2002/05/15 19:37:50 fanf

  unifdef.c                 1.72 +8 -8

consistent spacing in the function declarations
--------------------------------
2002/05/15 19:36:10 fanf

  unifdef.c                 1.71 +2 -2

cast away qualifiers less evilly
--------------------------------
2002/05/15 19:34:40 fanf

  unifdef.c                 1.70 +79 -58

Replace h0h0opt with getopt.
--------------------------------
2002/05/15 18:55:14 fanf

  unifdef.c                 1.69 +3 -3

Don't run off the end of command-line options inside findsym().
--------------------------------
2002/05/15 15:43:14 fanf

  unifdef.c                 1.68 +3 -3

a typo and a formatting fix from dwmalone
--------------------------------
2002/05/15 10:31:20 fanf

  unifdefall.sh             1.8 +2 -1

FreeBSD CVS ID correctness
--------------------------------
2002/05/14 22:15:03 fanf

  unifdef.1                 1.23 +2 -2

be more optimistic about the level of expression support
--------------------------------
2002/05/14 22:13:21 fanf

  unifdef.1                 1.22 +2 -2

the #ifdef and #if on the .Nd line should be .Li but this doesn't seem
to be possible, so write "preprocessor conditionals" instead.
--------------------------------
2002/05/14 21:14:30 fanf

  unifdef.1                 1.21 +1 -1

Correct the ordering and indentation of the CVS IDs according to FreeBSD style.
--------------------------------
2002/05/14 21:11:50 fanf

  unifdef.1                 1.20 +2 -2

add a missing comma to the SEE ALSO list
--------------------------------
2002/05/14 21:11:14 fanf

  unifdef.1                 1.19 +37 -3

Document unifdefall and the -I option.
--------------------------------
2002/05/02 12:38:29 fanf

  unifdef.c                 1.67 +11 -11

Better function names -- doif() -> process() and doif_1() -> doif()
--------------------------------
2002/05/02 12:36:22 fanf

  unifdef.c                 1.66 +48 -21

consistent commenting
--------------------------------
2002/05/02 12:17:31 fanf

  unifdef.c                 1.65 +18 -23

Consistent spacing in declaration of local variables,
and simplified flushline().
--------------------------------
2002/05/02 00:03:41 fanf

  unifdef.c                 1.64 +2 -1

note #line wish
--------------------------------
2002/04/29 16:41:08 fanf

  unifdefall.sh             1.7 +2 -2

Handle symbols that are defined without a value correctly, again.
--------------------------------
2002/04/29 16:17:39 fanf

  unifdefall.sh             1.6 +2 -2

output of cpp needs to be sorted
--------------------------------
2002/04/29 03:08:10 fanf

  unifdefall.sh             1.5 +3 -1

clean up tmp dir
--------------------------------
2002/04/29 03:07:20 fanf

  unifdefall.sh             1.4 +8 -24

tidy up
--------------------------------
2002/04/29 03:00:58 fanf

  unifdefall.sh             1.3 +2 -2

Don't get confused by symbols that are the prefix of other symbols.
--------------------------------
2002/04/29 02:55:15 fanf

  unifdef.1                 1.18 +7 -1

mention support for the comparison operators
--------------------------------
2002/04/29 02:53:58 fanf

  unifdef.c                 1.63 +123 -92

Overhaul the expression evaluator. The integer value of an expression
is now calculated, rather than just the boolen value, and the evaluation
of binary operators is now table-driven. These two things combine to
make it easier to add support for new operators, such as comparisions.
--------------------------------
2002/04/29 00:20:42 fanf

  unifdefall.sh             1.2 +2 -2

Handle symbols that are defined without a value correctly.
--------------------------------
2002/04/29 00:18:06 fanf

  unifdef.c                 1.62 +3 -3

-d -> --debug
--------------------------------
2002/04/29 00:17:11 fanf

  unifdef.c                 1.61 +2 -2

Fix handling of bracketed expressions -- we didn't pass over the )
--------------------------------
2002/04/28 23:42:36 fanf

  unifdefall.sh             1.1

A script for stripping out as many #if's from a file as possible.
--------------------------------
2002/04/28 22:32:30 fanf

  unifdef.c                 1.60 +10 -4

Ignore -Ifoo options so that the same options can be used with cpp -dM
--------------------------------
2002/04/28 22:15:26 fanf

  unifdef.c                 1.59 +4 -2

allow a - on the command line to mean "input from stdin"
--------------------------------
2002/04/28 22:14:07 fanf

  unifdef.c                 1.58 +4 -2

say explicitly that at least one -D or -U is needed
--------------------------------
2002/04/27 17:27:14 fanf

  unifdef.c                 1.57 +2 -2

allow longer lines in the input
--------------------------------
2002/04/27 17:26:53 fanf

  unifdef.c                 1.56 +5 -4

avoid a potential buffer overflow
--------------------------------
2002/04/27 17:23:47 fanf

  unifdef.c                 1.55 +5 -5

spell getlin() with an e
--------------------------------
2002/04/26 20:44:33 fanf

  unifdef.c                 1.54 +3 -12

remove redundant function
--------------------------------
2002/04/26 20:32:23 fanf

  unifdef.c                 1.53 +4 -4

Multiple __RCSID()s is not portable, so use __IDSTRING() instead.
--------------------------------
2002/04/26 20:23:09 fanf

  unifdef.c                 1.52 +2 -2

move a #define to a better place
--------------------------------
2002/04/26 20:18:07 fanf

  unifdef.1                 1.17 +3 -3

add a couple of missing [=val] phrases
--------------------------------
2002/04/26 20:17:35 fanf

  unifdef.1                 1.16 +26 -7

use .Li for #if directives
--------------------------------
2002/04/26 20:09:37 fanf

  unifdef.1                 1.15 +2 -2

change the #if bug into an expression handling bug
--------------------------------
2002/04/26 20:08:45 fanf

  unifdef.1                 1.14 +2 -2

mention the elif diagnostic
--------------------------------
2002/04/26 20:07:49 fanf

  unifdef.1                 1.13 +2 -1

see also cpp(1)
--------------------------------
2002/04/26 20:07:29 fanf

  unifdef.1                 1.12 +3 -4

remove spurious historical note
--------------------------------
2002/04/26 20:05:12 fanf

  unifdef.1                 1.11 +17 -1

explain the -s option
--------------------------------
2002/04/26 20:01:06 fanf

  unifdef.1                 1.10 +13 -15

Improve the explanation of the -D and -U options.
--------------------------------
2002/04/26 19:54:54 fanf

  unifdef.1                 1.9 +6 -4

better introductory paragraph
--------------------------------
2002/04/26 19:51:20 fanf

  unifdef.1                 1.8 +2 -2

remove -compact from the flag list
--------------------------------
2002/04/26 19:50:54 fanf

  unifdef.1                 1.7 +22 -5

expand the introduction to explain the new functionality
--------------------------------
2002/04/26 19:26:10 fanf

  unifdef.1                 1.6 +2 -1

add a paragraph gap between -l and -t
--------------------------------
2002/04/26 19:24:47 fanf

  unifdef.1                 1.5 +6 -6

Add the optional symbol value to the various places -Dsym is mentioned,
and add the -s flag to the synopsis.
--------------------------------
2002/04/26 19:20:34 fanf

  unifdef.1                 1.4 +3 -3

update document date and one-line description
--------------------------------
2002/04/26 19:15:55 fanf

  unifdef.1                 1.3 +1 -0

add $dotat$
--------------------------------
2002/04/26 19:15:14 fanf

  unifdef.1                 1.2 +1 -1

add my name to the copyright section
--------------------------------
2002/04/26 19:14:35 fanf

  unifdef.1                 1.1

add unifdef manual page from FreeBSD
--------------------------------
2002/04/26 19:12:22 fanf

  unifdef.c                 1.51 +13 -3

Add a new option for printing a list of the symbols found in #if expressions.
--------------------------------
2002/04/26 19:03:48 fanf

  unifdef.c                 1.50 +3 -3

option variables in alphabetical order
--------------------------------
2002/04/26 19:02:45 fanf

  unifdef.c                 1.49 +5 -5

parse options in alphabetical order
--------------------------------
2002/04/26 18:56:55 fanf

  unifdef.c                 1.48 +2 -6

fix some h0h0 formatting
--------------------------------
2002/04/26 18:51:19 fanf

  unifdef.c                 1.47 +2 -2

Fix the handling of #elif.
--------------------------------
2002/04/26 18:13:43 fanf

  unifdef.c                 1.46 +2 -2

put my name in the copyright section
--------------------------------
2002/04/26 17:42:31 fanf

  unifdef.c                 1.45 +72 -69

Move all the global stuff to the start of the program in the order
types, variables, function declarations, and ensure that all functions
are declared. The program now compiles cleanly with $FANFCFLAGS.
--------------------------------
2002/04/26 17:33:47 fanf

  unifdef.c                 1.44 +37 -29

use enums where appropriate
--------------------------------
2002/04/26 17:25:50 fanf

  unifdef.c                 1.43 +13 -1

blank lines after functions
--------------------------------
2002/04/26 17:23:57 fanf

  unifdef.c                 1.42 +53 -57

const correctness
--------------------------------
2002/04/26 17:05:23 fanf

  unifdef.c                 1.41 +2 -2

more bool correctness
--------------------------------
2002/04/26 17:02:17 fanf

  unifdef.c                 1.40 +2 -2

Since MAXSYMS is bigger than CHAR_MAX, nsyms has to be an int.
--------------------------------
2002/04/26 17:01:38 fanf

  unifdef.c                 1.39 +19 -43

ANSI function definitions
--------------------------------
2002/04/26 16:56:34 fanf

  unifdef.c                 1.38 +53 -57

Replace the homegrown Bool/YES/NO with stdbool.h things, and ensure
that boolean variables are declared consistently.
--------------------------------
2002/04/26 16:49:11 fanf

  unifdef.c                 1.37 +6 -1

Add __FBSDID and conditionalize the __RCSIDs
--------------------------------
2002/04/26 16:47:53 fanf

  unifdef.c                 1.36 +33 -2

add some debugging code
--------------------------------
2002/04/26 15:47:04 fanf

  unifdef.c                 1.35 +2 -2

fix the line number reporting in the last change
--------------------------------
2002/04/26 15:38:59 fanf

  unifdef.c                 1.34 +13 -3

Improve error reporting -- include the start line of the current #if.
--------------------------------
2002/04/26 15:34:44 fanf

  unifdef.c                 1.33 +7 -5

Remove some slight punning between comment types and booleans.
--------------------------------
2002/04/26 15:06:30 fanf

  unifdef.c                 1.32 +8 -9

Avoid reparsing the line that causes doif() to return to doif_1().
--------------------------------
2002/04/26 13:54:16 fanf

  unifdef.c                 1.31 +2 -2

put the newline on the #endif that replaces #elif lines
--------------------------------
2002/04/26 13:51:41 fanf

  unifdef.c                 1.30 +94 -39

Finish implementation of #elif and nesting.
This version passes some initial tests.
--------------------------------
2002/04/25 23:46:55 fanf

  unifdef.c                 1.29 +130 -86

partial implementation of #elif and properly nesting #ifs.
--------------------------------
2002/04/25 23:27:40 fanf

  unifdef.c                 1.28 +1 -3

remove redundant stline variable
--------------------------------
2002/04/25 23:25:31 fanf

  unifdef.c                 1.27 +10 -11

simplify error line number handling
--------------------------------
2002/04/25 23:02:51 fanf

  unifdef.c                 1.26 +21 -38

simplify error handling
--------------------------------
2002/04/25 21:44:51 fanf

  unifdef.c                 1.25 +2 -2

fix a comment to reflect the previous change
--------------------------------
2002/04/25 21:43:07 fanf

  unifdef.c                 1.24 +9 -12

Change the "unknown symbol" return value from findsym() from -1 to 0.
--------------------------------
2002/04/25 21:19:55 fanf

  unifdef.c                 1.23 +5 -6

remove an unnecessary variable inside doif()
--------------------------------
2002/04/25 20:24:16 fanf

  unifdef.c                 1.22 +9 -10

Remove the inif argument to doif() entirely, since inif == (depth != 0).
--------------------------------
2002/04/25 20:20:05 fanf

  unifdef.c                 1.21 +21 -27

Move the gall to getlin() up to doif() so that it will be able to
examine the same line more than once.
--------------------------------
2002/04/25 19:59:46 fanf

  unifdef.c                 1.20 +7 -12

Simplify doif()'s inif argument to just a boolean, since the IN_ELSE
value isn't very different from IN_IF, and the idea doesn't work well
with #elif.
--------------------------------
2002/04/25 18:45:54 fanf

  unifdef.c                 1.19 +3 -5

purge LT_OTHER since it's a synonym for LT_IF
--------------------------------
2002/04/25 18:17:09 fanf

  unifdef.c                 1.18 +2 -2

Restore the requirement that at least one -D or -U must be present on the
command line, which was broken when #if handling was added.
--------------------------------
2002/04/25 18:15:23 fanf

  unifdef.c                 1.17 +2 -10

use __RCSID for the sccs id and remove redundant #ifndef lint lines
--------------------------------
2002/04/25 18:10:00 fanf

  unifdef.c                 1.16 +145 -10

Initial version of #if handling.
Symbol 0 is used for tracking the state of #if/#else activity.
TODO: #elif, nested #if
--------------------------------
2002/04/25 16:16:26 fanf

  unifdef.c                 1.15 +3 -2

allow whitespace before #
--------------------------------
2002/04/25 16:12:23 fanf

  unifdef.c                 1.14 +2 -2

fix location of a {
--------------------------------
2002/04/25 16:11:54 fanf

  unifdef.c                 1.13 +11 -2

add a function that will evaluate if expressions
--------------------------------
2002/04/25 16:05:30 fanf

  unifdef.c                 1.12 +1 -2

remove spurious fflush()
--------------------------------
2002/04/25 16:04:55 fanf

  unifdef.c                 1.11 +11 -11

style: #include ordering; variable alignment
--------------------------------
2002/04/25 16:03:16 fanf

  unifdef.c                 1.10 +34 -49

use err()
--------------------------------
2002/04/25 15:51:42 fanf

  unifdef.c                 1.9 +7 -10

another formatting improvement
--------------------------------
2002/04/25 15:37:25 fanf

  unifdef.c                 1.8 +66 -82

sensible else if formatting
--------------------------------
2002/04/25 15:31:28 fanf

  unifdef.c                 1.7 +21 -9

deal with -Dsym=value
--------------------------------
2002/04/25 15:02:48 fanf

  unifdef.c                 1.6 +8 -8

move #endif comments to a better place
--------------------------------
2002/04/25 14:59:59 fanf

  unifdef.c                 1.5 +2 -2

allow a reasonable number of symbols
--------------------------------
2002/04/25 14:57:56 fanf

  unifdef.c                 1.4 +19 -20

remove BSS cruft
--------------------------------
2002/04/25 14:55:27 fanf

  unifdef.c                 1.3 +12 -12

remove __P
--------------------------------
2002/04/25 14:52:54 fanf

  unifdef.c                 1.2 +13 -8

revert to the CSRG copyright/sccs rubric and add $dotat$
--------------------------------
2002/04/25 14:50:23 fanf

  unifdef.c                 1.1

import from NetBSD
--------------------------------
