Skip to content

Commit 488c3f6

Browse files
author
Kjell Ahlstedt
committed
Split Makefile.am
* Makefile.am: Move most of the contents to the new files. It makes libxml++ more like other mm packages. * docs/Makefile.am: * libxml++/filelist.am: * libxml++/Makefile.am: * MSVC_Net2010/filelist.am: New files. * configure.ac: Add the new Makefiles to AC_CONFIG_FILES(). * docs/reference/Doxyfile.in: Remove docs/ from relative paths.
1 parent f014f5e commit 488c3f6

File tree

7 files changed

+221
-213
lines changed

7 files changed

+221
-213
lines changed

MSVC_Net2010/filelist.am

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
## This file is part of libxml++.
2+
3+
msvc_net2010_data = \
4+
libxml++.sln \
5+
README \
6+
gendef/gendef.cc \
7+
gendef/gendef.vcxproj \
8+
gendef/gendef.vcxproj.filters \
9+
libxml++/libxml++.rc \
10+
libxml++/libxml++.vcxproj \
11+
libxml++/libxml++.vcxproj.filters \
12+
libxml++/libxml++config.h \
13+
examples/dom_build/dom_build.vcxproj \
14+
examples/dom_build/dom_build.vcxproj.filters \
15+
examples/dom_parse_entities/dom_parse_entities.vcxproj \
16+
examples/dom_parse_entities/dom_parse_entities.vcxproj.filters \
17+
examples/dom_parser/dom_parser.vcxproj \
18+
examples/dom_parser/dom_parser.vcxproj.filters \
19+
examples/dom_parser_raw/dom_parser_raw.vcxproj \
20+
examples/dom_parser_raw/dom_parser_raw.vcxproj.filters \
21+
examples/dom_read_write/dom_read_write.vcxproj \
22+
examples/dom_read_write/dom_read_write.vcxproj.filters \
23+
examples/dom_xpath/dom_xpath.vcxproj \
24+
examples/dom_xpath/dom_xpath.vcxproj.filters \
25+
examples/dtdvalidation/dtdvalidation.vcxproj \
26+
examples/dtdvalidation/dtdvalidation.vcxproj.filters \
27+
examples/import_node/import_node.vcxproj \
28+
examples/import_node/import_node.vcxproj.filters \
29+
examples/sax_exception/sax_exception.vcxproj \
30+
examples/sax_exception/sax_exception.vcxproj.filters \
31+
examples/sax_parser/sax_parser.vcxproj \
32+
examples/sax_parser/sax_parser.vcxproj.filters \
33+
examples/sax_parser_build_dom/sax_parser_build_dom.vcxproj \
34+
examples/sax_parser_build_dom/sax_parser_build_dom.vcxproj.filters \
35+
examples/sax_parser_entities/sax_parser_entities.vcxproj \
36+
examples/sax_parser_entities/sax_parser_entities.vcxproj.filters \
37+
examples/schemavalidation/schemavalidation.vcxproj \
38+
examples/schemavalidation/schemavalidation.vcxproj.filters \
39+
examples/textreader/textreader.vcxproj \
40+
examples/textreader/textreader.vcxproj.filters

Makefile.am

Lines changed: 14 additions & 210 deletions
Original file line numberDiff line numberDiff line change
@@ -1,224 +1,28 @@
1-
SUBDIRS = . examples tests
1+
## This file is part of libxml++.
22

33
ACLOCAL_AMFLAGS = -I macros ${ACLOCAL_FLAGS}
44
DISTCHECK_CONFIGURE_FLAGS = --enable-warnings=fatal
55

6-
library_configdir = $(libdir)/libxml++-@LIBXMLXX_API_VERSION@/include
7-
library_config_DATA = libxml++config.h
8-
9-
pkgconfigdir = $(libdir)/pkgconfig
10-
nodist_pkgconfig_DATA = libxml++-@LIBXMLXX_API_VERSION@.pc
11-
12-
lib_LTLIBRARIES = libxml++/libxml++-@LIBXMLXX_API_VERSION@.la
13-
libxml___libxml___@LIBXMLXX_API_VERSION@_la_LDFLAGS = \
14-
-version-info $(LIBXMLXX_SO_VERSION) -no-undefined
15-
libxml___libxml___@LIBXMLXX_API_VERSION@_la_LIBADD = $(LIBXMLXX_LIBS)
16-
libxml___libxml___@LIBXMLXX_API_VERSION@_la_SOURCES = $(cc_sources) $(h_sources_public)
17-
18-
AM_CPPFLAGS = -I$(top_builddir) -I$(top_srcdir) -I. $(LIBXMLXX_CFLAGS)
19-
AM_CXXFLAGS = $(LIBXMLXX_WXXFLAGS)
20-
DEFS = @DEFS@ -DLIBXMLPP_BUILD
21-
22-
h_root_sources_public = libxml++/libxml++.h \
23-
libxml++/attribute.h \
24-
libxml++/attributedeclaration.h \
25-
libxml++/attributenode.h \
26-
libxml++/document.h \
27-
libxml++/dtd.h \
28-
libxml++/keepblanks.h \
29-
libxml++/noncopyable.h \
30-
libxml++/relaxngschema.h \
31-
libxml++/schema.h \
32-
libxml++/schemabase.h \
33-
libxml++/xsdschema.h
34-
h_exceptions_sources_public = libxml++/exceptions/exception.h \
35-
libxml++/exceptions/parse_error.h \
36-
libxml++/exceptions/validity_error.h \
37-
libxml++/exceptions/internal_error.h \
38-
libxml++/exceptions/wrapped_exception.h
39-
h_io_sources_public = libxml++/io/istreamparserinputbuffer.h \
40-
libxml++/io/outputbuffer.h \
41-
libxml++/io/ostreamoutputbuffer.h \
42-
libxml++/io/parserinputbuffer.h
43-
h_nodes_sources_public = libxml++/nodes/cdatanode.h \
44-
libxml++/nodes/commentnode.h \
45-
libxml++/nodes/contentnode.h \
46-
libxml++/nodes/element.h \
47-
libxml++/nodes/entitydeclaration.h \
48-
libxml++/nodes/entityreference.h \
49-
libxml++/nodes/node.h \
50-
libxml++/nodes/processinginstructionnode.h \
51-
libxml++/nodes/textnode.h \
52-
libxml++/nodes/xincludeend.h \
53-
libxml++/nodes/xincludestart.h
54-
h_parsers_sources_public = libxml++/parsers/parser.h \
55-
libxml++/parsers/saxparser.h \
56-
libxml++/parsers/domparser.h \
57-
libxml++/parsers/textreader.h
58-
h_validators_sources_public = libxml++/validators/dtdvalidator.h \
59-
libxml++/validators/relaxngvalidator.h \
60-
libxml++/validators/schemavalidator.h \
61-
libxml++/validators/schemavalidatorbase.h \
62-
libxml++/validators/validator.h \
63-
libxml++/validators/xsdvalidator.h
64-
h_sources_public = $(h_root_sources_public) \
65-
$(h_exceptions_sources_public) \
66-
$(h_io_sources_public) \
67-
$(h_nodes_sources_public) \
68-
$(h_parsers_sources_public) \
69-
$(h_validators_sources_public)
70-
71-
cc_sources = libxml++/attribute.cc \
72-
libxml++/attributedeclaration.cc \
73-
libxml++/attributenode.cc \
74-
libxml++/document.cc \
75-
libxml++/dtd.cc \
76-
libxml++/keepblanks.cc \
77-
libxml++/noncopyable.cc \
78-
libxml++/relaxngschema.cc \
79-
libxml++/schema.cc \
80-
libxml++/schemabase.cc \
81-
libxml++/xsdschema.cc \
82-
libxml++/exceptions/exception.cc \
83-
libxml++/exceptions/parse_error.cc \
84-
libxml++/exceptions/validity_error.cc \
85-
libxml++/exceptions/internal_error.cc \
86-
libxml++/exceptions/wrapped_exception.cc \
87-
libxml++/io/istreamparserinputbuffer.cc \
88-
libxml++/io/outputbuffer.cc \
89-
libxml++/io/ostreamoutputbuffer.cc \
90-
libxml++/io/parserinputbuffer.cc \
91-
libxml++/nodes/cdatanode.cc \
92-
libxml++/nodes/commentnode.cc \
93-
libxml++/nodes/contentnode.cc \
94-
libxml++/nodes/entitydeclaration.cc \
95-
libxml++/nodes/entityreference.cc \
96-
libxml++/nodes/element.cc \
97-
libxml++/nodes/node.cc \
98-
libxml++/nodes/processinginstructionnode.cc \
99-
libxml++/nodes/textnode.cc \
100-
libxml++/nodes/xincludeend.cc \
101-
libxml++/nodes/xincludestart.cc \
102-
libxml++/parsers/parser.cc \
103-
libxml++/parsers/saxparser.cc \
104-
libxml++/parsers/domparser.cc \
105-
libxml++/parsers/textreader.cc \
106-
libxml++/validators/dtdvalidator.cc \
107-
libxml++/validators/relaxngvalidator.cc \
108-
libxml++/validators/schemavalidator.cc \
109-
libxml++/validators/schemavalidatorbase.cc \
110-
libxml++/validators/validator.cc \
111-
libxml++/validators/xsdvalidator.cc
112-
113-
library_includedir = $(includedir)/libxml++-$(LIBXMLXX_API_VERSION)/libxml++
114-
library_exceptions_includedir = $(library_includedir)/exceptions
115-
library_io_includedir = $(library_includedir)/io
116-
library_nodes_includedir = $(library_includedir)/nodes
117-
library_parsers_includedir = $(library_includedir)/parsers
118-
library_validators_includedir = $(library_includedir)/validators
119-
120-
library_include_HEADERS = $(h_root_sources_public)
121-
library_exceptions_include_HEADERS = $(h_exceptions_sources_public)
122-
library_io_include_HEADERS = $(h_io_sources_public)
123-
library_nodes_include_HEADERS = $(h_nodes_sources_public)
124-
library_parsers_include_HEADERS = $(h_parsers_sources_public)
125-
library_validators_include_HEADERS = $(h_validators_sources_public)
126-
127-
docs/manual/libxml++.xml: docs/manual/libxml++_without_code.xml docs/manual/insert_example_code.pl
128-
$(AM_V_GEN)$(PERL) -- docs/manual/insert_example_code.pl examples $< >$@
129-
1306
if ENABLE_DOCUMENTATION
131-
book_name = $(LIBXMLXX_MODULE_NAME)
132-
doc_input = $(h_sources_public)
133-
doc_outdir = docs/reference
134-
# Sets dist_noinst_DATA, DISTCLEANFILES and MAINTAINERCLEANFILES
135-
include $(top_srcdir)/macros/doc-reference.am
136-
137-
manualdir = $(docdir)/manual
138-
manual_htmldir = $(manualdir)/html
139-
manual_html_files = $(wildcard docs/manual/html/*.html)
140-
141-
docs/manual/html/index.html: docs/manual/libxml++.xml docs/manual/docbook-customisation.xsl
142-
$(AM_V_at)rm -fr doc/manual/html
143-
$(AM_V_at)$(MKDIR_P) docs/manual/html
144-
$(AM_V_GEN)$(XSLTPROC) -o docs/manual/html/ --xinclude --catalogs \
145-
$(top_srcdir)/docs/manual/docbook-customisation.xsl $<
146-
147-
docs/manual/libxml++.pdf: docs/manual/libxml++.xml
148-
$(AM_V_GEN)$(DB2LATEX) -o $@ -O docs/manual -tpdf $<
7+
doc_subdirs = docs
8+
else
9+
doc_subdirs =
10+
endif
11+
SUBDIRS = libxml++ examples tests $(doc_subdirs)
14912

150-
validate_original_manual: docs/manual/libxml++_without_code.xml
151-
$(XMLLINT) --xinclude --postvalid --noout $<
13+
library_configdir = $(libdir)/$(LIBXMLXX_MODULE_NAME)/include
14+
nodist_library_config_HEADERS = libxml++config.h
15215

153-
validate_manual: docs/manual/libxml++.xml
154-
$(XMLLINT) --xinclude --postvalid --noout $<
155-
156-
all-local: docs/manual/html/index.html
157-
else # !ENABLE_DOCUMENTATION
158-
dist_noinst_DATA =
159-
DISTCLEANFILES =
160-
MAINTAINERCLEANFILES =
161-
endif # ENABLE_DOCUMENTATION
162-
163-
dist_noinst_DATA += libxml++config.h.in \
164-
libxml++-$(LIBXMLXX_API_VERSION).pc.in \
165-
docs/manual/docbook-customisation.xsl \
166-
$(manual_html_files) \
167-
docs/manual/libxml++.xml \
168-
docs/manual/libxml++_without_code.xml \
169-
MSVC_Net2010/libxml++.sln \
170-
MSVC_Net2010/README \
171-
MSVC_Net2010/gendef/gendef.cc \
172-
MSVC_Net2010/gendef/gendef.vcxproj \
173-
MSVC_Net2010/gendef/gendef.vcxproj.filters \
174-
MSVC_Net2010/libxml++/libxml++.rc \
175-
MSVC_Net2010/libxml++/libxml++.vcxproj \
176-
MSVC_Net2010/libxml++/libxml++.vcxproj.filters \
177-
MSVC_Net2010/libxml++/libxml++config.h \
178-
MSVC_Net2010/examples/dom_build/dom_build.vcxproj \
179-
MSVC_Net2010/examples/dom_build/dom_build.vcxproj.filters \
180-
MSVC_Net2010/examples/dom_parse_entities/dom_parse_entities.vcxproj \
181-
MSVC_Net2010/examples/dom_parse_entities/dom_parse_entities.vcxproj.filters \
182-
MSVC_Net2010/examples/dom_parser/dom_parser.vcxproj \
183-
MSVC_Net2010/examples/dom_parser/dom_parser.vcxproj.filters \
184-
MSVC_Net2010/examples/dom_parser_raw/dom_parser_raw.vcxproj \
185-
MSVC_Net2010/examples/dom_parser_raw/dom_parser_raw.vcxproj.filters \
186-
MSVC_Net2010/examples/dom_read_write/dom_read_write.vcxproj \
187-
MSVC_Net2010/examples/dom_read_write/dom_read_write.vcxproj.filters \
188-
MSVC_Net2010/examples/dom_xpath/dom_xpath.vcxproj \
189-
MSVC_Net2010/examples/dom_xpath/dom_xpath.vcxproj.filters \
190-
MSVC_Net2010/examples/dtdvalidation/dtdvalidation.vcxproj \
191-
MSVC_Net2010/examples/dtdvalidation/dtdvalidation.vcxproj.filters \
192-
MSVC_Net2010/examples/import_node/import_node.vcxproj \
193-
MSVC_Net2010/examples/import_node/import_node.vcxproj.filters \
194-
MSVC_Net2010/examples/sax_exception/sax_exception.vcxproj \
195-
MSVC_Net2010/examples/sax_exception/sax_exception.vcxproj.filters \
196-
MSVC_Net2010/examples/sax_parser/sax_parser.vcxproj \
197-
MSVC_Net2010/examples/sax_parser/sax_parser.vcxproj.filters \
198-
MSVC_Net2010/examples/sax_parser_build_dom/sax_parser_build_dom.vcxproj \
199-
MSVC_Net2010/examples/sax_parser_build_dom/sax_parser_build_dom.vcxproj.filters \
200-
MSVC_Net2010/examples/sax_parser_entities/sax_parser_entities.vcxproj \
201-
MSVC_Net2010/examples/sax_parser_entities/sax_parser_entities.vcxproj.filters \
202-
MSVC_Net2010/examples/schemavalidation/schemavalidation.vcxproj \
203-
MSVC_Net2010/examples/schemavalidation/schemavalidation.vcxproj.filters \
204-
MSVC_Net2010/examples/textreader/textreader.vcxproj \
205-
MSVC_Net2010/examples/textreader/textreader.vcxproj.filters
206-
207-
dist_noinst_SCRIPTS = autogen.sh \
208-
docs/manual/insert_example_code.pl
16+
pkgconfigdir = $(libdir)/pkgconfig
17+
nodist_pkgconfig_DATA = $(LIBXMLXX_MODULE_NAME).pc
20918

210-
DISTCLEANFILES += MSVC_Net2010/libxml++/libxml++config.h
19+
include $(srcdir)/MSVC_Net2010/filelist.am
21120

212-
MAINTAINERCLEANFILES += docs/manual/html/*.html
21+
dist_noinst_DATA = $(addprefix MSVC_Net2010/,$(msvc_net2010_data))
21322

214-
# Make it easy to upload to the sourceforge web site.
215-
# The manual and API reference are hosted on library.gnome.org via tarball releases.
216-
web_path_project = /home/groups/l/li/libxmlplusplus/htdocs/
217-
rsync_args = -vz --rsh ssh --recursive --cvs-exclude --exclude="**1.0**" --exclude=".cvsignore" --exclude="Makefile" --exclude="Makefile.in" --exclude=".deps" --exclude=".libs"
23+
dist_noinst_SCRIPTS = autogen.sh
21824

219-
post-html: docs/index.html
220-
rsync $(rsync_args) -r docs/index.html $$USER,libxmlplusplus@web.sourceforge.net:$(web_path_project)
221-
rsync $(rsync_args) -r examples $$USER,libxmlplusplus@web.sourceforge.net:$(web_path_project)
25+
DISTCLEANFILES = MSVC_Net2010/libxml++/libxml++config.h
22226

22327
# Optional: auto-generate the ChangeLog file from the git log on make dist
22428
include $(top_srcdir)/macros/dist-changelog.am

configure.ac

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,8 +60,10 @@ MM_CHECK_PERL()
6060
AC_DEFINE([LIBXMLCPP_EXCEPTIONS_ENABLED],[1], [This is always set. This is only for backwards compatibility.])
6161

6262
AC_CONFIG_FILES([Makefile
63+
libxml++/Makefile
6364
examples/Makefile
6465
tests/Makefile
66+
docs/Makefile
6567
docs/reference/Doxyfile
6668
MSVC_Net2010/libxml++/libxml++.rc
6769
libxml++-2.6.pc])

docs/Makefile.am

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
## Copyright (C) 2015 The libxml++ development team
2+
##
3+
## This library is free software; you can redistribute it and/or
4+
## modify it under the terms of the GNU Lesser General Public
5+
## License as published by the Free Software Foundation; either
6+
## version 2.1 of the License, or (at your option) any later version.
7+
##
8+
## This library is distributed in the hope that it will be useful,
9+
## but WITHOUT ANY WARRANTY; without even the implied warranty of
10+
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11+
## Lesser General Public License for more details.
12+
##
13+
## You should have received a copy of the GNU Lesser General Public License
14+
## along with this library. If not, see <http://www.gnu.org/licenses/>.
15+
16+
include $(top_srcdir)/libxml++/filelist.am
17+
18+
book_name = $(LIBXMLXX_MODULE_NAME)
19+
doc_input = $(addprefix $(top_srcdir)/libxml++/,$(h_sources_public))
20+
21+
# Sets dist_noinst_DATA, DISTCLEANFILES and MAINTAINERCLEANFILES
22+
include $(top_srcdir)/macros/doc-reference.am
23+
24+
manual/libxml++.xml: manual/libxml++_without_code.xml manual/insert_example_code.pl
25+
$(AM_V_GEN)$(PERL) -- manual/insert_example_code.pl examples $< >$@
26+
27+
manualdir = $(docdir)/manual
28+
manual_htmldir = $(manualdir)/html
29+
manual_html_files = $(wildcard manual/html/*.html)
30+
31+
manual/html/index.html: manual/libxml++.xml manual/docbook-customisation.xsl
32+
$(AM_V_at)rm -fr manual/html
33+
$(AM_V_at)$(MKDIR_P) manual/html
34+
$(AM_V_GEN)$(XSLTPROC) -o manual/html/ --xinclude --catalogs \
35+
$(top_srcdir)/docs/manual/docbook-customisation.xsl $<
36+
37+
manual/libxml++.pdf: manual/libxml++.xml
38+
$(AM_V_GEN)$(DB2LATEX) -o $@ -O manual -tpdf $<
39+
40+
validate_original_manual: manual/libxml++_without_code.xml
41+
$(XMLLINT) --xinclude --postvalid --noout $<
42+
43+
validate_manual: manual/libxml++.xml
44+
$(XMLLINT) --xinclude --postvalid --noout $<
45+
46+
all-local: manual/html/index.html
47+
48+
dist_noinst_DATA += \
49+
manual/docbook-customisation.xsl \
50+
$(manual_html_files) \
51+
manual/libxml++.xml \
52+
manual/libxml++_without_code.xml
53+
54+
dist_noinst_SCRIPTS = \
55+
manual/insert_example_code.pl
56+
57+
MAINTAINERCLEANFILES += manual/html/*.html
58+
59+
# Make it easy to upload to the sourceforge web site.
60+
# The manual and API reference are hosted on developer.gnome.org via tarball releases.
61+
web_path_project = /home/groups/l/li/libxmlplusplus/htdocs/
62+
rsync_args = -vz --rsh ssh --recursive --cvs-exclude --exclude="**1.0**" --exclude=".gitignore" --exclude="Makefile" --exclude="Makefile.in" --exclude=".deps" --exclude=".libs"
63+
64+
post-html: index.html
65+
rsync $(rsync_args) -r index.html $$USER,libxmlplusplus@web.sourceforge.net:$(web_path_project)
66+
rsync $(rsync_args) -r ../examples $$USER,libxmlplusplus@web.sourceforge.net:$(web_path_project)

docs/reference/Doxyfile.in

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ PROJECT_NAME = @PACKAGE_NAME@
99
PROJECT_NUMBER = @PACKAGE_VERSION@
1010
PROJECT_BRIEF =
1111
PROJECT_LOGO =
12-
OUTPUT_DIRECTORY = docs/reference
12+
OUTPUT_DIRECTORY = reference
1313
CREATE_SUBDIRS = NO
1414
ALLOW_UNICODE_NAMES = NO
1515
OUTPUT_LANGUAGE = English
@@ -101,7 +101,7 @@ WARN_IF_UNDOCUMENTED = YES
101101
WARN_IF_DOC_ERROR = YES
102102
WARN_NO_PARAMDOC = NO
103103
WARN_FORMAT = "$file:$line: $text"
104-
WARN_LOGFILE = docs/reference/doxygen.log
104+
WARN_LOGFILE = reference/doxygen.log
105105
#---------------------------------------------------------------------------
106106
# Configuration options related to the input files
107107
#---------------------------------------------------------------------------
@@ -304,7 +304,7 @@ SKIP_FUNCTION_MACROS = YES
304304
# Configuration options related to external references
305305
#---------------------------------------------------------------------------
306306
TAGFILES = @DOXYGEN_TAGFILES@
307-
GENERATE_TAGFILE = "docs/reference/@LIBXMLXX_MODULE_NAME@.tag"
307+
GENERATE_TAGFILE = "reference/@LIBXMLXX_MODULE_NAME@.tag"
308308
ALLEXTERNALS = NO
309309
EXTERNAL_GROUPS = NO
310310
EXTERNAL_PAGES = YES

0 commit comments

Comments
 (0)