| Message ID | 20260214021317.816170-1-sjg@u-boot.org |
|---|---|
| Headers |
Return-Path: <concept-bounces+u-boot-concept=u-boot.org@u-boot.org> X-Original-To: u-boot-concept@u-boot.org Delivered-To: u-boot-concept@u-boot.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=u-boot.org; s=default; t=1771035214; bh=BrV2X0U+h8mPouUwCxm3/yakyh6brybmaQQ0Xft32rE=; h=From:To:Date:CC:Subject:List-Id:List-Archive:List-Help:List-Owner: List-Post:List-Subscribe:List-Unsubscribe:From; b=G9LTyWt78OxmO59j785+SNkIhPG8Tu8CV9IE7LsoWfx714EzRb+5PLFk75+Yim/2y JrZuiau9+oosmePr+bAJr9NyDhRaFhrt2XfA7GGtxZwo2MvjOKuN208b6nj0QlGiyw wysGcf7bX4yNFNhfRsDQ2nTz2f3DLKmFIw6yEnb/S9QGCenMpGMNbwiwhvcjcvf7+Z qF3VN00KiBaKUvblW3fXWq0z5eFMQtUApCRhHi4L/LDauk2ArwcLc/WpMC2NpJt6W3 ztQWUB5xT0TYOJMse/m3137YvbqnmWTuyt8kI/6zru6WIAR2gJIu55Kr+4QskUie6E vaGrOCyovh9BQ== Received: from localhost (localhost [127.0.0.1]) by mail.u-boot.org (Postfix) with ESMTP id 519CF69B58 for <u-boot-concept@u-boot.org>; Fri, 13 Feb 2026 19:13:34 -0700 (MST) X-Virus-Scanned: Debian amavis at Received: from mail.u-boot.org ([127.0.0.1]) by localhost (mail.u-boot.org [127.0.0.1]) (amavis, port 10024) with ESMTP id ar73LAmt2AVS for <u-boot-concept@u-boot.org>; Fri, 13 Feb 2026 19:13:34 -0700 (MST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=u-boot.org; s=default; t=1771035214; bh=BrV2X0U+h8mPouUwCxm3/yakyh6brybmaQQ0Xft32rE=; h=From:To:Date:CC:Subject:List-Id:List-Archive:List-Help:List-Owner: List-Post:List-Subscribe:List-Unsubscribe:From; b=G9LTyWt78OxmO59j785+SNkIhPG8Tu8CV9IE7LsoWfx714EzRb+5PLFk75+Yim/2y JrZuiau9+oosmePr+bAJr9NyDhRaFhrt2XfA7GGtxZwo2MvjOKuN208b6nj0QlGiyw wysGcf7bX4yNFNhfRsDQ2nTz2f3DLKmFIw6yEnb/S9QGCenMpGMNbwiwhvcjcvf7+Z qF3VN00KiBaKUvblW3fXWq0z5eFMQtUApCRhHi4L/LDauk2ArwcLc/WpMC2NpJt6W3 ztQWUB5xT0TYOJMse/m3137YvbqnmWTuyt8kI/6zru6WIAR2gJIu55Kr+4QskUie6E vaGrOCyovh9BQ== Received: from mail.u-boot.org (localhost [127.0.0.1]) by mail.u-boot.org (Postfix) with ESMTP id 3EE8069A69 for <u-boot-concept@u-boot.org>; Fri, 13 Feb 2026 19:13:34 -0700 (MST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=u-boot.org; s=default; t=1771035211; bh=msNPyw8JUBw2coHgGpShakLV2eMjC7AnJpCfgFu4rPU=; h=From:To:Cc:Subject:Date:From; b=flTxOP87Bs2ilbONhogXzuCV6XkKHtR1T19UA0hGKhe5fjhnYvevgDo3Vt/FPBKdz pr9C7ddxXcOv+kl9j0bjewhu+TmJkOX//VxUWdcgnWHqsRQcGfyZ65KuVjPKILxQoO hRjUddFxEkr2Y9hL0PjAVaQfx/pyk98eeBDhFvtubE2leDrh1H3ZM/Um45asANhle7 Hnkl5kpq5dD7CXXIHPWgjlORyFq9bsewPz0QvGwW0uBCRnymA3mgDnP7/8Vf8dsyQs njzXXJhUO+JYXwn25wPLXhRiGIHrDy0xTquSFma83gGJT6KlzIv0KvVhxF1qr3FSYA Tg3+CKwcbDgPg== Received: from localhost (localhost [127.0.0.1]) by mail.u-boot.org (Postfix) with ESMTP id 99B0A69B54; Fri, 13 Feb 2026 19:13:31 -0700 (MST) X-Virus-Scanned: Debian amavis at Received: from mail.u-boot.org ([127.0.0.1]) by localhost (mail.u-boot.org [127.0.0.1]) (amavis, port 10026) with ESMTP id gcWzLPYyTK86; Fri, 13 Feb 2026 19:13:31 -0700 (MST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=u-boot.org; s=default; t=1771035207; bh=SAmAQDN69pcj2YFDP8qbJJnR3wz/KYauoRizoy8vRcE=; h=From:To:Cc:Subject:Date:From; b=TjUlql9Sdxng5k2nViOGZEJ/UkRck/Zpxw0bMwhVeoHC15bG8yoIci7OrvIjsawem epzHAb72a8zUa63O9KLIYwsb6ytSuXlzeb+Oc/cchYc1QcbzKZK3432M8c5gnGqQEf Gk+BJHqfw/Q6fIhkg+BJzrLCib29mTFSOLEZzSxaQlbk1wbQAikLCrBv0LbKxBE3Wf bfBF7q5jcOfciETC1qFH7qS0XHikS9ue0azmgLlVc0UE2Pq2fyeAod2lUDArKfTusO 7zhOKIX5KiNYTblKkmIeEa7J51T1e1/FkRpqK2ddwPZvxwUWCo8oKKD6ZlZ0qPvRIm qIQ2UpSDpq95Q== Received: from u-boot.org (unknown [73.34.74.121]) by mail.u-boot.org (Postfix) with ESMTPSA id 775F369A69; Fri, 13 Feb 2026 19:13:27 -0700 (MST) From: Simon Glass <sjg@u-boot.org> To: U-Boot Concept <concept@u-boot.org> Date: Fri, 13 Feb 2026 19:12:54 -0700 Message-ID: <20260214021317.816170-1-sjg@u-boot.org> X-Mailer: git-send-email 2.43.0 MIME-Version: 1.0 Message-ID-Hash: RJCP4ZUWOJRMLKJZMRCBZ2S5STBBIO7T X-Message-ID-Hash: RJCP4ZUWOJRMLKJZMRCBZ2S5STBBIO7T X-MailFrom: sjg@u-boot.org X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header CC: Simon Glass <simon.glass@canonical.com> X-Mailman-Version: 3.3.10 Precedence: list Subject: [Concept] [PATCH 00/13] ulib: Support building examples for x86 List-Id: Discussion and patches related to U-Boot Concept <concept.u-boot.org> Archived-At: <https://lists.u-boot.org/archives/list/concept@u-boot.org/message/RJCP4ZUWOJRMLKJZMRCBZ2S5STBBIO7T/> List-Archive: <https://lists.u-boot.org/archives/list/concept@u-boot.org/> List-Help: <mailto:concept-request@u-boot.org?subject=help> List-Owner: <mailto:concept-owner@u-boot.org> List-Post: <mailto:concept@u-boot.org> List-Subscribe: <mailto:concept-join@u-boot.org> List-Unsubscribe: <mailto:concept-leave@u-boot.org> Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit |
| Series |
ulib: Support building examples for x86
|
|
Message
Simon Glass
Feb. 14, 2026, 2:12 a.m. UTC
From: Simon Glass <simon.glass@canonical.com>
This series extends ulib so that examples can be built and run on x86,
not just sandbox. It refactors the demo to support both environments,
extracts common binman ROM entries into a reusable template, adds build
infrastructure for x86 examples, and includes a QEMU-based pytest for
the resulting demo.rom image.
Simon Glass (13):
ulib: Add MAINTAINERS entry
ulib: Use cross-toolchain objcopy for symbol redefinition
examples: ulib: Support both sandbox and linked-in demo
ulib: Make shared-lib deps conditional on ULIB_SHARED_LIB
examples: ulib: Build shared-linked binaries only when .so is
available
efi: Allow runtime relocation in library mode
ulib: Replace CONFIG_ULIB_JUMP_TO_MAIN with runtime ulib_has_main()
Makefile: Extract u-boot-link helper for reuse
x86: binman: Extract common ROM entries into a template
x86: ulib: Add build infrastructure for example/
x86: ulib: Add demo.rom and enable examples for qemu-x86
Makefile: Only run standalone ulib examples for sandbox
x86: ulib: Add pytest for demo.rom under QEMU
Kconfig | 9 ----
MAINTAINERS | 11 +++++
Makefile | 28 ++++++++----
arch/x86/Makefile | 32 +++++++++++++
arch/x86/dts/u-boot.dtsi | 82 +++++++++++++++++++++------------
common/board_f.c | 2 +-
common/board_r.c | 18 +++++++-
configs/qemu-x86_defconfig | 1 +
examples/Makefile | 4 ++
examples/ulib/Kbuild | 6 +++
examples/ulib/demo.c | 87 +++++++++++++++++++++---------------
examples/ulib/demo_helper.c | 5 +++
examples/ulib/rules.mk | 9 ++--
include/init.h | 11 +++++
lib/efi_loader/efi_runtime.c | 4 --
scripts/build_api.py | 18 +++++---
test/py/tests/test_ulib.py | 40 +++++++++++++++--
17 files changed, 266 insertions(+), 101 deletions(-)
create mode 100644 examples/ulib/Kbuild