• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

config/H04-Dec-2020-201183

doc/H04-Dec-2020-14,25110,981

src/H04-Dec-2020-17,72210,045

.bzrignoreH A D04-Dec-2020621 4342

AUTHORSH A D04-Dec-2020286 105

COPYINGH A D04-Dec-20201.5 KiB2822

ChangeLogH A D04-Dec-20201 KiB2919

INSTALLH A D04-Dec-202015.4 KiB371289

KNOWN_ISSUESH A D04-Dec-20201 KiB3219

LICENSEH A D04-Dec-20201.5 KiB2822

Makefile.amH A D04-Dec-20201 KiB4516

NEWSH A D04-Dec-20200

READMEH A D04-Dec-2020178 53

README.mdH A D04-Dec-20203.4 KiB10483

TODOH A D04-Dec-2020228 85

autogen.shH A D04-Dec-20201.1 KiB4718

configure.acH A D04-Dec-20206 KiB260212

quickcheck.shH A D04-Dec-20202 KiB8038

version.infoH A D04-Dec-202014 31

wipeout.shH A D04-Dec-20201.9 KiB6533

README

1You will find the documentation you are looking for in the README.md file.
2
3Please keep this README file as it is. It is required for compatibility with
4the Autotools (for now).
5

README.md

1XMLF90 README
2=============
3
4xmlf90 is a suite of libraries to handle XML in Fortran. It has two
5major components:
6
7- A XML parsing library. The parser was designed to be a useful
8  tool in the extraction and analysis of data in the context of
9  scientific computing, and thus the priorities were efficiency and the
10  ability to deal with very large XML files while maintaining a small
11  memory footprint. The most complete programming interface is
12  based on the very successful SAX (Simple API for XML) model,
13  although a partial DOM interface and a very experimental XPATH interface
14  are also present.
15- A library (xmlf90-wxml) that facilitates the writing of well-formed
16  XML, including such features as automatic start-tag completion,
17  attribute pretty-printing, and element indentation. There are also
18  helper routines to handle the output of numerical arrays.
19
20NOTE: The FoX project, started by Toby White and now maintained by
21Andrew Walker, has produced a more robust and feature-rich package
22starting from xmlf90, although not as fast and trim in some areas.  It
23can be found in: http://www1.gly.bris.ac.uk/~walker/FoX/
24
25
26INSTALLATION
27------------
28
29To install the library, just use the standard procedure:
30
31    ./configure --prefix=/path/to/install/directory
32    make
33    make check
34    make install
35
36You can go into the subdirectories 'doc/Examples' and explore, and go
37into 'doc/Tutorial' and try the exercises in the User Guide.
38
39
40COMPILING USER PROGRAMS
41-----------------------
42
43After installation, the appropriate modules and library files should
44already be in \$PREFIX/include and \$PREFIX/lib, respectively, where
45\$PREFIX is the installation directory specified in the --prefix option
46above.
47
48To compile user programs, it is suggested that the user create a
49separate directory to hold the program files and prepare a Makefile
50following this example (FC, FFLAGS, and LDFLAGS need to be set appropriately
51for the Fortran compiler used):
52
53    #---------------------------------------------------------------
54    #
55    default: example
56    #
57    #---------------------------
58    XMLF90_ROOT=/path/to/installation
59    #
60    XMLF90_LIBS=-L$(XMLF90_ROOT)/lib -lxmlf90
61    XMLF90_INCFLAGS=-I$(XMLF90_ROOT)/include
62    #
63    INCFLAGS := $(XMLF90_INCFLAGS) $(INCFLAGS)
64    LIBS:= $(XMLF90_LIBS) $(LIBS)
65    #---------------------------
66    #
67    OBJS= m_handlers.o example.o
68
69    example:  $(OBJS)
70            $(FC) $(LDFLAGS) -o $@ $(OBJS)  $(LIBS)
71    #
72    clean:
73            rm -f *.o example *.mod
74    #
75    # Building rules
76    #
77    .F.o:
78            $(FC) -c $(FFLAGS) $(INCFLAGS)  $(FPPFLAGS) $<
79    .f.o:
80            $(FC) -c $(FFLAGS) $(INCFLAGS)   $<
81    .F90.o:
82            $(FC) -c $(FFLAGS) $(INCFLAGS)  $(FPPFLAGS) $<
83    .f90.o:
84            $(FC) -c $(FFLAGS) $(INCFLAGS)   $<
85    #
86    #---------------------------------------------------------------
87
88Here it is assumed that the user has two source files,
89'example.f90' and 'm_handlers.f90'. Simply typing
90'make' will compile 'example', pulling in all the needed
91modules and library objects.
92
93Alternatively, the two lines defining explicitly the XMLF90_LIBS
94and XMLF90_INCFLAGS variables can be replaced by the line:
95
96include \$(XMLF90_ROOT)/share/org.siesta-project/xmlf90.mk
97
98which will perform that function abstracting the details from the user.
99
100As of version 1.5.3 of xmlf90, the xmlf90.mk will force the use of
101static libraries, so that no other symbols but XMLF90_ROOT need to be
102exported for programs to work.
103
104