[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2] build: Make FILE symbol paths consistent
- To: <xen-devel@xxxxxxxxxxxxxxxxxxxx>
- From: Ross Lagerwall <ross.lagerwall@xxxxxxxxxx>
- Date: Mon, 13 Feb 2023 16:55:39 +0000
- Authentication-results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
- Cc: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, George Dunlap <george.dunlap@xxxxxxxxxx>, Jan Beulich <jbeulich@xxxxxxxx>, Julien Grall <julien@xxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Wei Liu <wl@xxxxxxx>, Anthony PERARD <anthony.perard@xxxxxxxxxx>, Ross Lagerwall <ross.lagerwall@xxxxxxxxxx>
- Delivery-date: Mon, 13 Feb 2023 16:56:29 +0000
- Ironport-data: A9a23:d+14/avRwO/DMT9SuSqvZjkvHOfnVGleMUV32f8akzHdYApBsoF/q tZmKTiObq7bNjOgfIsnbdnn9U5Vvp7Vz95hT1E9+3o0EHwQ+JbJXdiXEBz9bniYRiHhoOCLz O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVKiffHg3HVQ+IMsYoUoLs/YjhYJ1isSODQqIu Nfjy+XSI1bg0DNvWo4uw/vrRChH4bKj51v0gnRkPaoQ5AWHzCFPZH4iDfrZw0XQE9E88tGSH 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG fMwJS02cDDevvuPz7udc8hHvNwcPeXSI9ZK0p1g5Wmx4fcORJnCR+PB5MNC3Sd2jcdLdRrcT 5NHM3w1Nk2GOkARfA5NU/rSn8/x7pX7Wydfs0nToaM47nLMxQh1+LPsLMDUapqBQsA9ckOw9 z+Yrj2hWkly2Nq32H3e4iOrxfDzrybWW4cDT7iG9OxXnwjGroAUIEJPDgbqyRWjsWahX/pPJ kpS/TAhxYAw/kG2Stj2XzWjvWWJ+BUbXrJ4A+A8rQ2A1KfQywKYHXQfCC5MbsQ8s807TiBs0 UWG9/vrGDhuvbu9WX+bsLCOoluaIjMJJGUPYSsFSwot4NT5pow3yBXVQb5e/LWd14OvX2uqm nbT8XZ43u9I5SIW60ml1V3auCyM+6HQdwE8wDz2dVi90RJVXZHwMuRE9mPnxfpHKY+YSHyIs 34Fh9WS4YgyMH2dqMCeaL5TRe/0vp5pJBWZ2AcyRMd5q1xB7lb5JehtDCdCyFCF2yruURvge wfttAxY//e/11P6PPYsM+pd5ynHpJUM9OgJtNiONLKigbArLmdrGR2CgmbOt10BaGB2zckC1 W6zKK5A90oyB6V91yaRTOwAy7ItzS1W7TqNGs6hlUr4juDOPiL9pVI53LymNL1R0U95iF+Nr 4Y32zWilX2zr9ESkgGIqNVOfDjm3FAwBIzsqtw/SwJwClMOJY3VMNeImelJU9U8z8xoehLgo inVtrlwlACu2hUq6GyiNhheVV8Ydcwu8yNqY3R8YwjANrpKSd/H0ZrzvqAfJdEPnNGPB9YvJ xXZU61s2shydwk=
- Ironport-hdrordr: A9a23:own0Bq981zAuqfRirZluk+DeI+orL9Y04lQ7vn2ZLiYlFPBw9v re+8jzsCWetN9/Yh8dcLy7WZVoI0mslqKdkLNhWItKNTOO0AeVxa5ZgrcKqAeQeREWmNQ86U 8pG5IVNDW7ZWIWsS5xijPId+od/A==
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
The FILE symbols in out-of-tree builds may be either a relative path to
the object dir or an absolute path depending on how the build is
invoked. Fix the paths for C files so that they are consistent with
in-tree builds - the path is relative to the "xen" directory (e.g.
common/irq.c).
This fixes livepatch builds when the original Xen build was out-of-tree
since livepatch-build always does in-tree builds. Note that this doesn't
fix the behaviour for Clang < 6 which always embeds full paths.
Fixes: 7115fa562fe7 ("build: adding out-of-tree support to the xen build")
Signed-off-by: Ross Lagerwall <ross.lagerwall@xxxxxxxxxx>
---
In v2:
* Adjust commit description.
* Rename rel_path.
xen/Rules.mk | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/xen/Rules.mk b/xen/Rules.mk
index 70b7489ea8..d6b7cec0a8 100644
--- a/xen/Rules.mk
+++ b/xen/Rules.mk
@@ -228,8 +228,9 @@ quiet_cmd_cc_o_c = CC $@
ifeq ($(CONFIG_ENFORCE_UNIQUE_SYMBOLS),y)
cmd_cc_o_c = $(CC) $(c_flags) -c $< -o $(dot-target).tmp -MQ $@
ifneq ($(CONFIG_CC_IS_CLANG)$(call clang-ifversion,-lt,600,y),yy)
+ rel-path = $(patsubst $(abs_srctree)/%,%,$(call realpath,$(1)))
cmd_objcopy_fix_sym = \
- $(OBJCOPY) --redefine-sym $(<F)=$< $(dot-target).tmp $@ && rm -f
$(dot-target).tmp
+ $(OBJCOPY) --redefine-sym $(<F)=$(call rel-path,$<)
$(dot-target).tmp $@ && rm -f $(dot-target).tmp
else
cmd_objcopy_fix_sym = mv -f $(dot-target).tmp $@
endif
--
2.31.1
|