--- /dev/null
+=========================================
+Libvirt Go Language API (with Go modules)
+=========================================
+
+The `Go <https://golang.org/>`__ package ``libvirt.org/go/libvirt`` provides
+`CGo <https://golang.org/cmd/cgo/>`__ binding from the OS native Libvirt API.
+
+This package replaces the obsolete `libvirt.org/libvirt-go
+<../libvirt-go.html>`__ package in order to switch to using `semver
+<https://semver.org/>`__ and `Go modules <https://golang.org/ref/mod>`__.
+Aside from the changed import path and versioning scheme, the API is fully
+compatible with the legacy package.
+
+In general the Go representation is a direct 1-1 mapping from native API
+concepts to Go, so the native API documentation should serve as a reference
+for most behaviour.
+
+For details of Go specific behaviour consult the
+`Go package documentation <https://pkg.go.dev/libvirt.org/go/libvirt>`__.
--- /dev/null
+============================================
+Libvirt Go XML parsing API (with Go modules)
+============================================
+
+The `Go <https://golang.org/>`__ package ``libvirt.org/go/libvirtxml`` provides
+annotated Go struct definitions for parsing (and formatting) XML documents used
+with libvirt APIs.
+
+This package replaces the obsolete `libvirt.org/libvirt-go-xml
+<../libvirt-go-xml.html>`__ package in order to switch to using `semver
+<https://semver.org/>`__ and `Go modules <https://golang.org/ref/mod>`__.
+Aside from the changed import path and versioning scheme, the API is fully
+compatible with the original package.
+
+For details of Go specific behaviour consult the
+`Go package documentation <https://pkg.go.dev/libvirt.org/go/libvirtxml>`__.
--- /dev/null
+docs_go_files = [
+ 'libvirt',
+ 'libvirtxml',
+]
+
+html_xslt_gen_xslt = subsite_xsl
+html_xslt_gen_install_dir = docs_html_dir / 'go'
+html_xslt_gen = []
+
+foreach name : docs_go_files
+ rst_file = '@0@.rst'.format(name)
+
+ html_xslt_gen += {
+ 'name': name,
+ 'file': docs_rst2html_gen.process(rst_file),
+ 'source': 'docs' / 'go' / rst_file,
+ }
+endforeach
+
+# keep the XSLT processing code block in sync with docs/meson.build
+
+# --- begin of XSLT processing ---
+
+foreach data : html_xslt_gen
+ html_filename = data['name'] + '.html'
+
+ html_file = custom_target(
+ html_filename,
+ input: data.get('file', data['name'] + '.html.in'),
+ output: html_filename,
+ command: [
+ xsltproc_prog,
+ '--stringparam', 'pagesrc', data.get('source', ''),
+ '--stringparam', 'builddir', meson.build_root(),
+ '--stringparam', 'timestamp', docs_timestamp,
+ '--nonet',
+ html_xslt_gen_xslt,
+ '@INPUT@',
+ ],
+ depends: data.get('depends', []),
+ depend_files: [ page_xsl ],
+ capture: true,
+ install: true,
+ install_dir: html_xslt_gen_install_dir,
+ )
+
+ install_web_deps += html_file
+ install_web_files += html_file.full_path() + ':' + html_xslt_gen_install_dir
+endforeach
+
+html_xslt_gen = []
+
+# --- end of XSLT processing ---
-==========================
-Libvirt Go XML parsing API
-==========================
+===================================================
+Obsolete libvirt Go XML parsing API (no Go modules)
+===================================================
-The `Go <https://golang.org/>`__ package ``libvirt.org/libvirt-go-xml`` provides
-annotated Go struct definitions for parsing (and formatting) XML documents used
-with libvirt APIs.
+The obsolete `Go <https://golang.org/>`__ package ``libvirt.org/libvirt-go-xml``
+provided annotated Go struct definitions for parsing (and formatting) XML
+documents used with libvirt APIs.
+
+This package is replaced by the new `libvirt.org/go/libvirtxml
+<go/libvirtxml.html>`__ package in order to switch to using `semver
+<https://semver.org/>`__ and `Go modules <https://golang.org/ref/mod>`__.
+Aside from the changed import path and versioning scheme, the new package API
+is fully compatible with this legacy package.
+
+Software currently using this package will keep working, but no further
+development will take place. libvirt XML scheme elements/attributes introduced
+after 7.4.0 will never be available. Authors are strongly recommended to switch
+imports to point to the new package, to prepare for future Go toolchains
+which will mandate Go module support and semver.
For details of Go specific behaviour consult the
`Go package documentation <https://pkg.go.dev/libvirt.org/libvirt-go-xml>`__.
-=======================
-Libvirt Go Language API
-=======================
+================================================
+Obsolete libvirt Go Language API (no Go modules)
+================================================
-The `Go <https://golang.org/>`__ package ``libvirt.org/libvirt-go`` provides
-`CGo <https://golang.org/cmd/cgo/>`__ binding from the OS native Libvirt API.
+The obsolete `Go <https://golang.org/>`__ package ``libvirt.org/libvirt-go``
+provided `CGo <https://golang.org/cmd/cgo/>`__ binding from the OS native
+Libvirt API.
+
+This package is replaced by the new `libvirt.org/go/libvirt <go/libvirt.html>`__
+package in order to switch to using `semver <https://semver.org/>`__ and
+`Go modules <https://golang.org/ref/mod>`__. Aside from the changed
+import path and versioning scheme, the new package API is fully compatible
+with this legacy package.
+
+Software currently using this package will keep working, but no further
+development will take place. libvirt APIs/constants introduced after
+7.4.0 will never be available. Authors are strongly recommended to switch
+imports to point to the new package, to prepare for future Go toolchains
+which will mandate Go module support and semver.
In general the Go representation is a direct 1-1 mapping from native API
concepts to Go, so the native API documentation should serve as a reference
# --- end of XSLT processing ---
subdir('fonts')
+subdir('go')
subdir('html')
subdir('internals')
subdir('js')