Files
xmlada/README
Emmanuel Briot 6d8711c304 Update build instructions (builds are different for GNAT 3.14 and GNAT 3.15)
git-svn-id: svn+ssh://svn.eu.adacore.com/Dev/importfromcvs/trunk@11596 936e1b1b-40f2-da11-902a-00137254ae57
2002-06-11 09:30:26 +00:00

144 lines
4.5 KiB
Plaintext

INSTALLING THIS LIBRARY ON UNIX
===============================
Make sure that you do not have a previous installation of XML/Ada in one
of the directories given in ADA_OBJECTS_PATH, or some files will not be
properly recompiled.
Compiling with GNAT 3.14p
-------------------------
You might need to modify Makefile.module.314 to replace the GNATMAKE=
and CC= lines, in case you are using a compiler other than gnatmake,
or in case the compiler is called gnatgcc (debian systems for instance).
You might also want to change the variable BUILD_SHARED if you want to get
shared libraries. However, on some systems this means you'll also need to
set the line
FPIC=-fPIC
This is for instance the case on HPUX.
Configure and compile with the following commands:
> ./configure --prefix=<PREFIX>
> make -f Makefile.314 install
Compiling with GNAT 3.15a1 or GNAT 3.16w
----------------------------------------
You might need to modify the following lines in the Makefile
GNATMAKE= gnatmake
CC= gcc
if you are using a compiler other than native GNAT. For instance, if
you are using a cross-compiler for powerpc/vxworks, you would set them
to
GNATMAKE= powerpc-wrs-vxworks-gnatmake
CC= powerpc-wrs-vxworks-gcc
You might also want to change the variable BUILD_SHARED if you want to get
shared libraries. However, on some systems this means you'll also need to
set the line
FPIC=-fPIC
This is for instance the case on HPUX.
Configure and compile with the following commands:
> ./configure --prefix=<PREFIX>
> make install
to build and install the library.
Using the library
-----------------
Files will be copied into ${PREFIX}/lib and ${PREFIX}/include/xmlada.
To use this library, add the following arguments to the gnatmake
command line:
-aI${PREFIX}/include/xmlada -largs -L${PREFIX}/lib -lxmlada
Alternatively, a script is provided in ${PREFIX}/bin, that outputs all
the command line arguments. You should compile with:
gnatmake test.adb `xmlada-config`
You can also build a static version of your program by using:
gnatmake test.adb `xmlada-config --static`
To run a command compiled with this library, you might need to edit the
LD_LIBRARY_PATH environment variable so that ${PREFIX}/lib is included.
Note that this library will not compile with GNU make 3.77 on some platforms,
due to a bug in the handling of the wildcard command. It is recommended that
you update to at least 3.78
TESTING THE LIBRARY
===================
You need to download the official OASIS test suite for XML,
from www.xml.org. The name of the current archive is
xmlconf-19990712.tar.Z.
Uncompress it somewhere on your disk, then edit the file dom/test/testsuite to
reflect the location of that testsuite (BASE should point to the directory
containing these official tests)
Execute the file
make test
cd dom/test
./testsuite
This will report the number of errors found.
CONTENTS OF THE LIBRARY
=======================
The sources in this library are split into several subdirectories, each
with its own README, sources, documentation and unit tests.
The list of subdirectories (aka modules) is:
- unicode:
provides a full support for Unicode and Utf8/Utf16/Utf32 encodings. It also
support other encodings like Latin1, Latin2, ...
- input_sources
provides types to read characters from several types of media.
- sax
Provides a common, standard interface for any XML parser, through
callback subprograms. You can extend any of the tagged types defined in these
package and thus parse XML files without having to store a XML tree in
memory.
This package is compatible with SAX 2.0, but doesn't implement the functions
specific to SAX 1.0
- dom
The Document Object Model is a set of standard subprograms to manipulate
XML tree in memory.
Only the Core module is currently implemented.
- docs
This contains the full documentation for this XML library
LICENSING
=========
This library is distributed under the GNAT-Modified GNU Public License.
It has the following addition to the GPL:
"As a special exception, if other files instantiate generics from
this unit, or you link this unit with other files to produce an
executable, this unit does not by itself cause the resulting
executable to be covered by the GNU General Public License. This
exception does not however invalidate any other reasons why the
executable file might be covered by the GNU Public License."
BUG REPORTS
===========
Please send questions and bug reports to report@gnat.com following
the same procedures used to submit reports with the GNAT toolset itself.