18870SrgrimesNew in 3.0.3: 250476Speter 38870Srgrimes* The generated C code is compatible with gcc-4.3.x in c99 or gnu99 mode. 42116Sjkh 52116SjkhNew in 3.0.2: 68870Srgrimes 72116Sjkh* Compiles with g++-4.0.x. 82116Sjkh* Added option --length-table-name. 98870Srgrimes* Added declaration %define length-table-name. 102116Sjkh* Fixed #line directives for filenames containing backslashes. 112116Sjkh 128870SrgrimesNew in 3.0.1: 138870Srgrimes 142116Sjkh* Bug fix. 152116Sjkh 162116SjkhNew in 3.0: 172116Sjkh 188870Srgrimes* Added option --output that allows to specify the output file name. 198870Srgrimes* Some options have been renamed: 2087804Sphantom --hash-fn-name=NAME --> --hash-function-name=NAME 212116Sjkh --lookup-fn-name=NAME --> --lookup-function-name=NAME 222116Sjkh --compare-strlen --> --compare-lengths 232116Sjkh --global --> --global-table 242116Sjkh The older variants are still supported for backward compatibility. 252116Sjkh* The following options can now be specified inside the input file: 268870Srgrimes %delimiters=DELIMITER-LIST 272116Sjkh %struct-type 282116Sjkh %ignore-case 292116Sjkh %language=LANGUAGE-NAME 302116Sjkh %define slot-name NAME 318870Srgrimes %define initializer-suffix INITIALIZERS 322116Sjkh %define hash-function-name NAME 332116Sjkh %define lookup-function-name NAME 348870Srgrimes %define class-name NAME 352116Sjkh %7bit 362116Sjkh %compare-lengths 378870Srgrimes %compare-strncmp 382116Sjkh %readonly-tables 392116Sjkh %enum 408870Srgrimes %includes 412116Sjkh %global-table 428870Srgrimes %pic 432116Sjkh %define string-pool-name NAME 4433662Sjb %null-strings 4533662Sjb %define word-array-name NAME 4633662Sjb %switch=COUNT 4733662Sjb %omit-struct-type 4833662Sjb* When the option -k is not given, the default key positions are now 4933662Sjb computed depending on the set of keywords. 5042044Sdfr* If the input file is given by name, the output file will now contain 5142044Sdfr #line directives referring to the input file. 5233662Sjb* Some keyword sets containing permutations, like { "xy", "yx", "xz", "zx" } 5322808Sbde or { "abc", "acb", "bca", "cab" }, are now handled by gperf without 542116Sjkh requiring the option -D. 552116Sjkh* The generated table is usually much smaller than it was with earlier 5622731Sbde versions of gperf. 572116Sjkh* Added option -m/--multiple-iterations that allows to further reduce the 58117917Sbde size of the generated table. 59117917Sbde* When the search for a good hash function is not immediately successful, 6033662Sjb the table's size will grow as needed. Earlier versions of gperf bailed 612116Sjkh out with an "Internal error, duplicate hash code value". 6293211Sbde* The options -f/--fast and -o/--occurrence-sort have no effect any more. 632116Sjkh* Added options -P/--pic and --null-strings that optimize the generated code 642116Sjkh for use in shared libraries. -P/--pic does a perfect optimization but may 652116Sjkh require some small code changes (see the documentation for details), whereas 66117909Speter --null-strings does only a half-hearted optimization but works without 672116Sjkh needing any change to surrounding code. 682116Sjkh* Added option --ignore-case that produces a case independent lookup function. 6993211Sbde* Bug fixes. 7093211Sbde 712116SjkhNew in 2.7.2: 722116Sjkh 732116Sjkh* Keywords may now be enclosed in double quotes; this permits the use of 742116Sjkh '#', ',', space or NUL inside keywords. 752116Sjkh* Bug fixes. 762116Sjkh 772116SjkhNew in 2.7.1: 782116Sjkh 792116Sjkh* Added option "-F" for gcc. 802116Sjkh 812116SjkhNew in 2.7: 822116Sjkh 8391514Sobrien* gperf is now a stand-alone package, untied from libg++. 842116Sjkh* Autoconfiguring. 852116Sjkh* Removed the "-a" and "-g" options, extended the "-L" option instead. 862116Sjkh* Removed the "-p" option, it is the default. 872116Sjkh* Added long options ("--help", "--version" etc.). 882116Sjkh* 8-bit cleanliness is now the default; use "-7" to get the old behaviour. 892116Sjkh* Compiles with any C++ compiler. 902116Sjkh* Numerous small improvements. 912116Sjkh 922116Sjkh