Doxygen files.
[gedcom-parse.git] / README
diff --git a/README b/README
index a6ad5895fba6dcc1c434e65e85453a2d67870685..84a7d7bc5e0d2a3076275067ef5b901d967b001a 100644 (file)
--- a/README
+++ b/README
@@ -1,11 +1,17 @@
 The Gedcom parser library (release @VERSION@)
 -------------------------
 The Gedcom parser library is a C library that provides an API to applications
-to parse and process arbitrary genealogy files in the standard gedcom format.
+to parse, process and write arbitrary genealogy files in the standard gedcom
+format.
 
 Its main features are:
 
- - strict callback-based parser written in C (using lex/yacc)
+ - portable to any POSIX systems (libiconv is needed on systems that lack
+   glibc 2.2, see below)
+
+ - strict callback-based parser written in C (using lex/yacc), a C object
+   model is also available (compare to the difference between SAX and DOM
+   in XML).
 
  - supports the Gedcom 5.5 standard fully
 
@@ -18,14 +24,24 @@ Its main features are:
  - internationalization of the error and warning messages
 
  - specific parsing of date values to a calendar-neutral date system (Julian
-   days aka serial day numbers); the date parser can be called separately
+   days aka serial day numbers); the date parser can be called separately and
+   dates can be manipulated
 
  - specific parsing and checking of cross-references
 
+ - specific parsing of age values
+
+ - support for writing Gedcom files (both in line-by-line format, or via the
+   Gedcom object model)
+
  - "compatibility-mode" parsing, to allow for not-exactly-standard syntaxes
-   used by other genealogy programs; currently, compatibility is added for:
+   used by other genealogy programs; currently, compatibility is added for
+   (not necessarily complete):
      - ftree
-     - Lifelines 3.0.2 (not complete)
+     - Lifelines 3.0.2
+     - Personal Ancestral File (PAF), version 2, 4 and 5
+     - Family Origins
+     - EasyTree
 
 NOTE:
  - NO BACKWARD COMPATIBILITY is guaranteed for 0.x releases !
@@ -34,6 +50,8 @@ To do list:
  - specific parsing of other special values
  - compatibility with other genealogy programs
  - older/newer Gedcom standards ?
+ - writing GEDML files
+ - C++ object model
  - ...
 
 For more information, refer to the documentation in the doc subdirectory,
@@ -49,18 +67,27 @@ spin-off, and which uses this library:
 
 Requirements:
 ------------
- - glibc 2.2 or higher
+For using the library:
+ - either glibc 2.2 or higher, or libiconv
+
+Note:
+
+  The official libiconv package doesn't have ANSEL support, and is not
+  extensible except by modifying its source code.
 
-To build from sources, you'll also need:
+  There is a modified libiconv package available on the SourceForge project
+  page, which is called 'libiconv-gedcom-1.8.x', based on libiconv 1.8.
+  Install this if you need ANSEL support and you don't have glibc 2.2.
+
+To compile the package, you'll need:
  - gcc
+
+To compile from the CVS sources, you'll need in addition:
  - autoconf
  - automake
  - flex
  - bison (won't work with plain yacc)
-
-It is possible that it also runs on other platforms than Linux (and that the
-glibc version requirement can be loosened), however, I can only support Linux
-because that is the only platform I have...
+ - perl
 
 
 Installation:
@@ -71,6 +98,11 @@ This is simply:
   make
   make install
 
+If libiconv is not automatically found, you can give its path to configure,
+for example, if the library lives in /home/mydir/lib:
+
+  ./configure --with-libiconv-prefix=/home/mydir
+
 You can also run some tests via:
   make check