Skip to content

Commit

Permalink
Importing libconfig. Our inclusion is in compliance with the LGPL.
Browse files Browse the repository at this point in the history
--HG--
branch : week-of-code
  • Loading branch information
matthewturk committed Jan 31, 2011
1 parent 479c3ff commit 62f8cca
Show file tree
Hide file tree
Showing 17 changed files with 7,930 additions and 0 deletions.
5 changes: 5 additions & 0 deletions src/enzo/libconfig/AUTHORS
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@

Mark Lindner - Lead developer & maintainer.
Daniel Marjamäki - Enhancements & bugfixes.
Andrew Tytula - Windows port.
Glenn Herteg - Enhancements, bugfixes, documentation corrections.
510 changes: 510 additions & 0 deletions src/enzo/libconfig/COPYING.LIB

Large diffs are not rendered by default.

58 changes: 58 additions & 0 deletions src/enzo/libconfig/README
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@

To produce a PDF manual, issue the command "make pdf" after running
`./configure'.

-*-

If you do not wish to build the C++ components, use:

./configure --disable-cxx

-*-

The `examples' subdirectory contains some examples of using libconfig
from C and C++.

-*-

The config file syntax changed between versions 0.8 and 0.9. In order
to implement all of the feature/enhancement requests in an elegant and
self-consistent way, the configuration grammar had to be changed in a
non-backward-compatible way. In particular, groups are now values, so
the old syntax:

group
{
...
}

must now be written as:

group =
{
...
};

Note that the trailing semicolon, which was previously optional, is
now required. Also note that a colon (':') can be used in place of the
equals sign.

-*-

Flex and Bison are not required in order to build this
package. However, if you modify the .l or .y files, you must have Flex
(2.5.31 or better) and Bison (2.1 or better), respectively.

-*-

To successfully compile using MinGW (with gcc 4.4.0 or later), it may
be necessary to modify the file "mingw32\4.4.0\libstdc++.la", changing line 11
from:

library_names='libstdc++.dll.a'

to:

library_names='libstdc++.a'

(See http://trac.osgeo.org/geos/ticket/282 for more information).
23 changes: 23 additions & 0 deletions src/enzo/libconfig/README.enzo
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
This is the package libconfig-1.4.6, included here for convenience. This
library's homepage is available at http://www.hyperrealm.com/libconfig/ .

libconfig is released under the LGPL, detailed in COPYING.LIB. For more
information about libconfig, see the README, COPYING.LIB and AUTHORS files.
For details of license compliance, please see COPYING.LIB and consult the
website of the Free Software Foundation.

We have modified the source tree in a very minor way. We have applied this
patch to scanner.l (modified version included):

89,90c89,90
< integer [-+]?[0-9]+
< integer64 [-+]?[0-9]+L(L)?
---
>
> integer64 [-+]?[0-9]+(L(L)?)?
165d164
< {integer} { yylval->ival = atoi(yytext); return(TOK_INTEGER); }

This removed the integer as a potential parse-target, and forces everything to
64-bit integers. As such we have not provided a purely-libconfig experience.
After this patch was applied, scanner.c was re-generated using lex.
Loading

0 comments on commit 62f8cca

Please sign in to comment.