diff options
author | Francis Dupont <fdupont@isc.org> | 2015-02-28 01:05:45 +0100 |
---|---|---|
committer | Francis Dupont <fdupont@isc.org> | 2015-02-28 01:05:45 +0100 |
commit | bef0198b3b1630a96b0620ff008aaa225031fbf2 (patch) | |
tree | 44d4954e61e3a8f78ae1a19809e755c9de81777f /tools | |
parent | [3516] Added sectioning in both python and c++ system messages tools (diff) | |
download | kea-bef0198b3b1630a96b0620ff008aaa225031fbf2.tar.xz kea-bef0198b3b1630a96b0620ff008aaa225031fbf2.zip |
[3516] get rid of root (vs file list) and boost libs
Diffstat (limited to 'tools')
-rw-r--r-- | tools/system_messages.cc | 27 | ||||
-rw-r--r-- | tools/system_messages.py | 14 |
2 files changed, 28 insertions, 13 deletions
diff --git a/tools/system_messages.cc b/tools/system_messages.cc index 3eccb7de24..bb708486b0 100644 --- a/tools/system_messages.cc +++ b/tools/system_messages.cc @@ -14,15 +14,14 @@ // Produce System Messages Manual // -// This tool reads all the .mes files in the directory tree whose root is given -// on the command line and interprets them as message files. It pulls -// all the messages and description out, sorts them by message ID, and writes -// them out as a single (formatted) file. +// This tool reads all the message files given on the command line. +// It pulls all the messages and description out, sorts them by +// message ID, and writes them out as a single (formatted) file. // // Invocation: // The code is invoked using the command line: // -// kt_system_messages.py [-o <output-file>] [<top-source-directory>|<files>] +// system_messages [-o <output-file>] <files> // // If no output file is specified, output is written to stdout. @@ -36,7 +35,9 @@ #include <stdlib.h> #include <string.h> +#ifdef USE_BOOST_FILESYSTEM #include <boost/filesystem.hpp> +#endif #include <boost/lexical_cast.hpp> typedef std::vector<std::string> lines_type; @@ -522,6 +523,7 @@ void processFile(const std::string& filename) /// /// Parameters: /// root Directory that is the root of the source tree +#ifdef USE_BOOST_FILESYSTEM void processAllFiles(const boost::filesystem::path& root) { boost::filesystem::directory_iterator endd; @@ -540,12 +542,17 @@ void processAllFiles(const boost::filesystem::path& root) } } } - +#endif void usage(char* progname) { +#ifdef USE_BOOST_FILESYSTEM + std::cerr << "Usage: " << progname << + " [--help | options] root|files\n"; +#else std::cerr << "Usage: " << progname << - " [--help | options] [root|files]\n"; + " [--help | options] files\n"; +#endif std::cerr << " options: --output file: " << "output file name (default to stdout)\n"; } @@ -581,6 +588,7 @@ int main(int argc, char* argv[]) usage(progname); exit(-1); } +#ifdef USE_BOOST_FILESYSTEM if (argc > 1) { for (int i = 0; i < argc; ++i) { processFile(argv[i]); @@ -593,6 +601,11 @@ int main(int argc, char* argv[]) processFile(argv[0]); } } +#else + for (int i = 0; i < argc; ++i) { + processFile(argv[i]); + } +#endif // Now just print out everything we've read (in alphabetical order). bool first = true; diff --git a/tools/system_messages.py b/tools/system_messages.py index a682429d91..20190c79d9 100644 --- a/tools/system_messages.py +++ b/tools/system_messages.py @@ -22,7 +22,7 @@ # Invocation: # The code is invoked using the command line: # -# python system_messages.py [-o <output-file>] <top-source-directory> +# python system_messages.py [-o <output-file>] <top-source-directory>|<files> # # If no output file is specified, output is written to stdout. @@ -402,23 +402,25 @@ def processAllFiles(root): # Main program if __name__ == "__main__": - parser = OptionParser(usage="Usage: %prog [--help | options] root") + parser = OptionParser(usage="Usage: %prog [--help | options] root|files") parser.add_option("-o", "--output", dest="output", default=None, metavar="FILE", help="output file name (default to stdout)") (options, args) = parser.parse_args() if len(args) == 0: - parser.error("Must supply directory at which to begin search") - elif len(args) > 1: - parser.error("Only a single root directory can be given") + parser.error("Must supply directory at which to begin search or files") # Redirect output if specified (errors are written to stderr) if options.output is not None: sys.stdout = open(options.output, 'w') # Read the files and load the data - processAllFiles(args[0]) + if (len(args) > 1) or (not os.path.isdir(args[0])): + for file in args: + processFile(file) + else: + processAllFiles(args[0]) # Now just print out everything we've read (in alphabetical order). sname = "" |