Skip to content
This repository was archived by the owner on Jan 26, 2026. It is now read-only.

Commit ee026e1

Browse files
committed
doc: Update CMake and meson instructions
1 parent 4135cee commit ee026e1

1 file changed

Lines changed: 16 additions & 27 deletions

File tree

README.md

Lines changed: 16 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,7 @@ This code is released under the MIT License, see the Copyright file.
2323

2424
## Build instructions
2525

26-
libxml2 can be built with GNU Autotools, CMake, meson or several other
27-
build systems in platform-specific subdirectories.
26+
libxml2 can be built with GNU Autotools, CMake or meson.
2827

2928
### Autotools (for POSIX systems like Linux, BSD, macOS)
3029

@@ -101,12 +100,13 @@ update your list of installed shared libs.
101100

102101
### CMake (mainly for Windows)
103102

104-
Another option for compiling libxml is using CMake:
103+
Example commands:
105104

106-
cmake -E tar xf libxml2-xxx.tar.gz
107-
cmake -S libxml2-xxx -B libxml2-xxx-build [possible options]
108-
cmake --build libxml2-xxx-build
109-
cmake --install libxml2-xxx-build
105+
cmake -E tar xf libxml2-xxx.tar.xz
106+
cmake -S libxml2-xxx -B builddir [options]
107+
cmake --build builddir
108+
ctest --test-dir builddir
109+
cmake --install builddir
110110

111111
Common CMake options include:
112112

@@ -122,31 +122,20 @@ directly in various IDEs such as CLion, QtCreator, or Visual Studio.
122122

123123
### Meson
124124

125-
Still somewhat experimental, see
126-
[issue 743](https://gitlab.gnome.org/GNOME/libxml2/-/issues/743).
125+
Example commands:
127126

128-
Libxml can also be built with meson. Without option, simply call
129-
130-
meson setup builddir
127+
meson setup [options] builddir
131128
ninja -C builddir
132-
133-
To add options, see the meson_options.txt file. For example:
134-
135-
meson setup \
136-
-Dprefix=$prefix \
137-
-Dhistory=enabled \
138-
-Dhttp=enabled \
139-
-Dschematron=disabled \
140-
-Dzlib=enabled \
141-
builddir
142-
143-
To install libxml:
144-
129+
meson test -C builddir
145130
ninja -C builddir install
146131

147-
To launch tests:
132+
See the `meson_options.txt` file for options. For example:
148133

149-
meson test -C builddir
134+
-Dprefix=$prefix
135+
-Dhistory=enabled
136+
-Dhttp=enabled
137+
-Dschematron=disabled
138+
-Dzlib=enabled
150139

151140
## Dependencies
152141

0 commit comments

Comments
 (0)