f31522130f
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
114 lines
2.6 KiB
Meson
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')
|
|
)
|