Files
RedBear-OS/local/recipes/wayland/libwayland/source/doc/publican/sources/meson.build
T
vasilito f31522130f fix: comprehensive boot warnings and exceptions — fixable silenced, unfixable diagnosed
Build system (5 gaps hardened):
- COOKBOOK_OFFLINE defaults to true (fork-mode)
- normalize_patch handles diff -ruN format
- New 'repo validate-patches' command (25/25 relibc patches)
- 14 patched Qt/Wayland/display recipes added to protected list
- relibc archive regenerated with current patch chain

Boot fixes (fixable):
- Full ISO EFI partition: 16 MiB → 1 MiB (matches mini, BIOS hardcoded 2 MiB offset)
- D-Bus system bus: absolute /usr/bin/dbus-daemon path (was skipped)
- redbear-sessiond: absolute /usr/bin/redbear-sessiond path (was skipped)
- daemon framework: silenced spurious INIT_NOTIFY warnings for oneshot_async services (P0-daemon-silence-init-notify.patch)
- udev-shim: demoted INIT_NOTIFY warning to INFO (expected for oneshot_async)
- relibc: comprehensive named semaphores (sem_open/close/unlink) replacing upstream todo!() stubs
- greeterd: Wayland socket timeout 15s → 30s (compositor DRM wait)
- greeter-ui: built and linked (header guard unification, sem_compat stubs removed)
- mc: un-ignored in both configs, fixed glib/libiconv/pcre2 transitive deps
- greeter config: removed stale keymapd dependency from display/greeter services
- prefix toolchain: relibc headers synced, _RELIBC_STDLIB_H guard unified

Unfixable (diagnosed, upstream):
- i2c-hidd: abort on no-I2C-hardware (QEMU) — process::exit → relibc abort
- kded6/greeter-ui: page fault 0x8 — Qt library null deref
- Thread panics fd != -1 — Rust std library on Redox
- DHCP timeout / eth0 MAC — QEMU user-mode networking
- hwrngd/thermald — no hardware RNG/thermal in VM
- live preload allocation — BIOS memory fragmentation, continues on demand
2026-05-05 20:20:37 +01:00

114 lines
2.6 KiB
Meson

ProtocolSpec_xml = custom_target(
'ProtocolSpec.xml',
command: [ xsltproc, '-o', '@OUTPUT@', files('../protocol-to-docbook.xsl'), '@INPUT@' ],
input: wayland_protocol_xml,
output: 'ProtocolSpec.xml'
)
ProtocolInterfaces_xml = custom_target(
'ProtocolInterfaces.xml',
command: [ xsltproc, '-o', '@OUTPUT@', files('../protocol-interfaces-to-docbook.xsl'), '@INPUT@' ],
input: wayland_protocol_xml,
output: 'ProtocolInterfaces.xml'
)
ClientAPI_combined = custom_target(
'ClientAPI-combined',
command: [ xsltproc, '-o', '@OUTPUT@', '@INPUT@' ],
input: [ doxygen_Client_combine_xslt, doxygen_Client_index_xml ],
output: 'ClientAPI-combined.xml'
)
to_publican_xsl = files('../doxygen-to-publican.xsl')
ClientAPI_xml = custom_target(
'ClientAPI.xml',
command: [ xsltproc, '-o', '@OUTPUT@', '--stringparam', 'which', 'Client', to_publican_xsl, '@INPUT@' ],
input: ClientAPI_combined,
output: 'ClientAPI.xml'
)
ServerAPI_combined = custom_target(
'ServerAPI-combined',
command: [ xsltproc, '-o', '@OUTPUT@', '@INPUT@' ],
input: [ doxygen_Server_combine_xslt, doxygen_Server_index_xml ],
output: 'ServerAPI-combined.xml'
)
ServerAPI_xml = custom_target(
'ServerAPI.xml',
command: [ xsltproc, '-o', '@OUTPUT@', '--stringparam', 'which', 'Server', to_publican_xsl, '@INPUT@' ],
input: ServerAPI_combined,
output: 'ServerAPI.xml'
)
publican_sources = [
'Wayland.ent',
# 'Wayland.xml', # handled specially
'Book_Info.xml',
'Author_Group.xml',
'Foreword.xml',
'Preface.xml',
'Revision_History.xml',
'Protocol.xml',
'Xwayland.xml',
'Compositors.xml',
'Client.xml',
'Server.xml'
]
publican_processed_main = configure_file(
input: 'Wayland.xml',
output: 'Wayland.xml',
copy: true
)
publican_copied_sources = []
foreach src: publican_sources
publican_copied_sources += configure_file(
input: src,
output: src,
copy: true
)
endforeach
publican_processed_sources = [
'Architecture.xml',
'Introduction.xml'
]
publican_processed_targets = []
foreach src: publican_processed_sources
publican_processed_targets += custom_target(
src,
command: [ xsltproc, '-o', '@OUTPUT@', '--stringparam', 'basedir', '.', merge_mapcoords_xsl, '@INPUT@' ],
input: src,
output: src
)
endforeach
publican_css_sources = files([
'css/brand.css',
'css/common.css',
'css/default.css',
'css/epub.css',
'css/print.css'
])
install_data(
publican_css_sources,
install_dir: join_paths(publican_install_prefix, publican_html_dir, 'css')
)
publican_img_sources = files([
'images/icon.svg',
'images/wayland.png',
'images/xwayland-architecture.png'
])
install_data(
publican_img_sources,
install_dir: join_paths(publican_install_prefix, publican_html_dir, 'images')
)