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
74 lines
1.8 KiB
Plaintext
74 lines
1.8 KiB
Plaintext
#
|
|
# Base qmake configuration for GCC on RTEMS
|
|
#
|
|
#
|
|
#
|
|
MAKEFILE_GENERATOR = UNIX
|
|
|
|
QMAKE_PLATFORM = rtems
|
|
|
|
include(unix.conf)
|
|
include(gcc-base-unix.conf)
|
|
include(g++-unix.conf)
|
|
|
|
rtems_bsp = $$(RTEMS_BSP)
|
|
isEmpty(rtems_bsp) {
|
|
error("This qmakespec requires $RTEMS_BSP to be set")
|
|
}
|
|
|
|
rtems_compiler = $$(RTEMS_COMPILER)
|
|
isEmpty(rtems_compiler) {
|
|
error("This qmakespec requires $RTEMS_COMPILER to be set")
|
|
}
|
|
|
|
isEmpty(RTEMS_CPU_FLAGS) {
|
|
error("The qmakespec is expected to set \$\$RTEMS_CPU_FLAGS")
|
|
}
|
|
|
|
RTEMS_FLAGS = \
|
|
-B$$rtems_bsp \
|
|
-specs bsp_specs \
|
|
-qrtems \
|
|
$$RTEMS_CPU_FLAGS
|
|
|
|
QMAKE_CFLAGS_OPTIMIZE_FULL = $$QMAKE_CFLAGS_OPTIMIZE
|
|
QMAKE_CFLAGS_OPTIMIZE_DEBUG = -O0 -g
|
|
|
|
QMAKE_CFLAGS_DEBUG = $$QMAKE_CFLAGS_OPTIMIZE_DEBUG
|
|
QMAKE_CFLAGS_WARN_ON = -Wall
|
|
QMAKE_CFLAGS_PIC =
|
|
QMAKE_CFLAGS_SHLIB =
|
|
QMAKE_CFLAGS_STATIC_LIB =
|
|
QMAKE_CFLAGS_APP =
|
|
QMAKE_CFLAGS += $$RTEMS_FLAGS
|
|
|
|
QMAKE_CXXFLAGS_DEBUG = $$QMAKE_CFLAGS_DEBUG
|
|
QMAKE_CXXFLAGS_WARN_ON = $$QMAKE_CFLAGS_WARN_ON
|
|
QMAKE_CXXFLAGS_SHLIB =
|
|
QMAKE_CXXFLAGS_STATIC_LIB =
|
|
QMAKE_CXXFLAGS_APP =
|
|
QMAKE_CXXFLAGS += $$RTEMS_FLAGS
|
|
|
|
QMAKE_CXXFLAGS_CXX11 =
|
|
QMAKE_CXXFLAGS_CXX14 =
|
|
QMAKE_CXXFLAGS_CXX1Z =
|
|
|
|
QMAKE_LFLAGS_GCSECTIONS = -Wl,--gc-sections
|
|
QMAKE_LFLAGS += $$RTEMS_FLAGS $$QMAKE_LFLAGS_GCSECTIONS
|
|
|
|
QMAKE_CC = $${rtems_compiler}-gcc
|
|
QMAKE_CXX = $${rtems_compiler}-g++
|
|
QMAKE_AR = $${rtems_compiler}-ar cqs
|
|
QMAKE_OBJCOPY = $${rtems_compiler}-objcopy
|
|
QMAKE_NM = $${rtems_compiler}-nm -P
|
|
QMAKE_RANLIB = $${rtems_compiler}-ranlib
|
|
QMAKE_STRIP = $${rtems_compiler}-strip
|
|
|
|
QMAKE_LINK_C = $$QMAKE_CC
|
|
QMAKE_LINK_C_SHLIB =
|
|
|
|
QMAKE_LINK = $$QMAKE_CXX
|
|
QMAKE_LINK_SHLIB =
|
|
|
|
load(qt_config)
|