From c5a14e551cc8dc9389c78dc351195847559b306b Mon Sep 17 00:00:00 2001 From: "Eric S. Raymond" Date: Wed, 22 Dec 2010 15:03:53 -0500 Subject: Dcumentation and news update. --- NEWS | 4 ++++ deheader.xml | 18 ++++++++++-------- 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/NEWS b/NEWS index 8b13e3b..3f93219 100644 --- a/NEWS +++ b/NEWS @@ -1,5 +1,9 @@ deheader project news +0.5 @ 2010-12-22 + Source is now checked against all SuS portability requrements. + There is an option to exclude files by pattern. + 0.4 @ 2010-12-20 Script now removes generated objects. Duplicate inclusions are now detected. diff --git a/deheader.xml b/deheader.xml index cd6375c..98be963 100644 --- a/deheader.xml +++ b/deheader.xml @@ -33,9 +33,10 @@ DESCRIPTION This tool takes a list of C or C++ sourcefiles and generates a -report on which #includes can be omitted from them. The test, for each -foo.c or foo.cc or foo.cpp, is simply whether 'rm foo.o; make foo.o' -returns a zero status (but the build command may be +report on which #includes can be omitted from them; also, what +standard inclusions may be required for portability. The test, for +each foo.c or foo.cc or foo.cpp, is simply whether 'rm foo.o; make +foo.o' returns a zero status (but the build command may be overridden). Optionally, with the switch, the unneeded headers are removed from the sourcefiles. @@ -147,11 +148,12 @@ files and continue. program may not port correctly to other Unix variants after being deheadered. This is normally not a problem with the portion of the API specified by POSIX and ANSI C, but may be for headers that are not -stndardized or only weakly standardized. The sockets API (sys/select.h, -sys/sockets.h, and friends such as sys/types.h and sys.stat.h) is -perhaps the most serious trouble spot. deheader has -an internal table of rules that heads off the most common problems, -but your mileage may vary. +stndardized or only weakly standardized. The sockets API +(sys/select.h, sys/sockets.h, and friends such as sys/types.h and +sys.stat.h) is perhaps the most serious trouble +spot. deheader has an internal table of rules that +heads off the most common problems by, suppressing deletion of headers +that are required for portability, but your mileage may vary. Sufficiently perverse C++ can silently invalidate the simple algorithm this tool uses. Example: if an overloaded function has -- cgit v1.2.3-70-g09d2