mirror of
https://github.com/mesonbuild/meson.git
synced 2026-08-09 17:18:25 +00:00
OHOS behaves like Android: applications are shared libraries and shared libraries are not versioned. But it uses musl instead of Bionic. Model it as an Android subsystem rather than a separate system: machine files set system = 'android' and subsystem = 'ohos', so is_android() applies and all Android handling (unversioned libfoo.so, the zlib include exception, PIE, android_exe_type) is inherited automatically. Add a MachineInfo.is_ohos() predicate (is_android() and subsystem == 'ohos') and use it to set CMAKE_SYSTEM_NAME = OHOS for CMake subprojects, since CMake has a dedicated OHOS system name.
Meson Documentation
Build dependencies
Meson uses itself and hotdoc for generating documentation.
Minimum required version of hotdoc is 0.8.9.
Instructions on how to install hotdoc are here.
Our custom hotdoc extensions require:
Building the documentation
From the Meson repository root dir:
$ cd docs/
$ meson setup built_docs/
$ ninja -C built_docs/
Now you should be able to open the documentation locally
built_docs/Meson documentation-doc/html/index.html
Upload
Meson uses the git-upload hotdoc plugin which basically removes the html pages and replaces with the new content.
You can simply run:
$ ninja -C built_docs/ upload