[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[XEN PATCH v8 43/47] WIP, no-VPATH: build object from generated assembly source file


  • To: <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • From: Anthony PERARD <anthony.perard@xxxxxxxxxx>
  • Date: Thu, 25 Nov 2021 13:40:02 +0000
  • Authentication-results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
  • Cc: Anthony PERARD <anthony.perard@xxxxxxxxxx>, Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, George Dunlap <george.dunlap@xxxxxxxxxx>, "Ian Jackson" <iwj@xxxxxxxxxxxxxx>, Jan Beulich <jbeulich@xxxxxxxx>, Julien Grall <julien@xxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Wei Liu <wl@xxxxxxx>
  • Delivery-date: Thu, 25 Nov 2021 13:48:20 +0000
  • Ironport-data: A9a23:yTl/Xa6GhV+/DuOF8XzF1gxRtMXAchMFZxGqfqrLsTDasY5as4F+v jQfUD3Xbq3bYTH1L9wjaY6/pxtQvJbXmoRmHgJr/ykyHi5G8cbLO4+Ufxz6V8+wwmwvb67FA +E2MISowBUcFyeEzvuV3zyIQUBUjclkfJKlYAL/En03FVAMpBsJ00o5wrdg2NMw27BVPivW0 T/Mi5yHULOa82Yc3lI8s8pvfzs24ZweEBtB1rAPTagjUG32zhH5P7pGTU2FFFPqQ5E8IwKPb 72rIIdVXI/u10xF5tuNyt4Xe6CRK1LYFVDmZnF+A8BOjvXez8CbP2lS2Pc0MC9qZzu1c99Zl PddhKe+ZxUQH4bXwOUwXiBKAXlXBPgTkFPHCSDXXc27ykTHdz3nwul0DVFwNoodkgp1KTgQr 7pCcmlLN03dwbLtqF64YrAEasALJc/3PIQZqzd4wCvQF/oOSpHfWaTao9Rf2V/cg+gTTauBO ZVDNVKDajztRkRfJWxKWakBu72GnnykKwdmgQis8P9fD2/7k1UqjemF3MDuUt6XQcRYmG6Iq 2SA+H72ajkBL8CWwzeB9nOqh8fMkDn9VYZUE6e3ntZ1hHWDy2pVDwcZPXOrrP/8hkOgVtZ3L 00P5jFovaU07FasTNT2Q1u/unHslh8DWfJAHusi8gaPx6HIpQGDCQAsTDRMddgnv88eXiEx2 xmCmNaBONB0mOTLEzTHrO7S9G7sf3hORYMfWcMaZVcn8+jYrq8htzPkVY5iPaOMnM+tMAill lhmsxMCr7kUiMcK0YCy8lbGny+gq/D1c+Il2unEdjn7t10kPeZJc6TtsAGGtqgYcO51W3HY5 CBc8/Vy+tziGn1keMalZOwWVI+k6P+eWNE3qQ4+RsJxn9hBFpPKQGyx3N2cDBs2WirnUWWwC KM2he+2zMUOVEZGlYctP+qM5z0ClMAM7+jNWPHOdcZpaZNsbgKB9ywGTRfOhD+yzxl8wfBlZ 8bznSOQ4ZEyU/oP8dZLb71Fje9DKt4WmQs/uqwXPzz4iOHDNRZ5uJ8OMUeUb/BR0U93iF69z jqrDOPTk083eLSnOkH/qNdPRXhXfSlTLc2n8KR/K7/cSjeK7Ul8Upc9N5t6INc790mU/8+Vl kyAtrhwlACi2CaZcFrSMRiOqtrHBP5CkJ7yBgR0VX7A5pTpSdzHAH43e8RlcL852vZkyPIoH fAJd9/ZWqZESyjd+iRbZp749dQweBOujAOIHiykfDlgIMIwG12XoofpLln16S0DLiurrs9i8 beu4RzWHMgYTAN4AceINP/2lwGtvWIQkf5ZVlfTJoUBY13l9YVncnSjjvI+L8wWBw/Ewz+Wi 1SfDRsC/LGfqI4p6tjZw6uDqt7xQed5G0NbGUjd7Kq3anaGrjbyn9cYXb/RLz7HVW7y9KGzX slvzqnxYK8dgVJHk4tgCLI3n6gw0MTi+u1BxQN+EXSVM1nyUuF8ImOL1NVkv7FWwuMLohO/X 0+C94UIObiNP8+5QlcdKBB8M7aG3PAQ3DLT8e40MAPx4youpOiLVkBbPh+tji1BLeQqbNN5k Ll54MNGuRaijhcKM8qdinEG/muBGXUMTqE7u8xIG4TskAcqlglPbJG05vUaO31ThwGg6nUXH wI=
  • Ironport-hdrordr: A9a23:HjttuqPPh/mKFMBcTsejsMiBIKoaSvp037Eqv3ofdfUzSL3+qy nOpoVj6faaslcssR0b9OxofZPwI080lqQFhbX5X43DYOCOggLBR+tfBMnZsljd8kXFh4hgPM xbHZSWZuedMbEDt7eY3DWF
  • Ironport-sdr: NuhfKlMtoiYjL7hI3xnhJJk2ng5kkY1GC7m9UKJeO4kPabWG7I1YbRETyTtAskKQ4MZDvrYky6 Nl6n7cFbwssCn3yCfIKOtiDxXil1ZCM4WBWAnCKWUotJV8KK+yuoyOXjBwcxWJ00qGSDeXQo3I Re4C4Vx8yuzYMgwPJDe/3CxpAwuHKWsEj2P2tMRS+Hvw4Vw4SVTN3rIKjziTwesxPdFkaUo2Yq f23HL+eMlXWaWNmT99Zk3pcRkPrmajvA47S7TcAHuGrhgV3zqXm9ln4MeWCfqqQBs91nzcVVRe 7O7dgnCq6BEMZNNlGNhOuBBy
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

gen-objs-c and gen-objs-S can't have the list of targets.

Alternative, merge both list and use $(filter ).

Signed-off-by: Anthony PERARD <anthony.perard@xxxxxxxxxx>
---
 xen/Rules.mk | 6 ++++++
 xen/build.mk | 7 +++++++
 2 files changed, 13 insertions(+)

diff --git a/xen/Rules.mk b/xen/Rules.mk
index 44af005fd57e..2d8d32f5fd72 100644
--- a/xen/Rules.mk
+++ b/xen/Rules.mk
@@ -26,6 +26,7 @@ lib-y :=
 targets :=
 ## targets made from generated sources
 gen-objs-c :=
+gen-objs-S :=
 subdir-y :=
 CFLAGS-y :=
 AFLAGS-y :=
@@ -99,6 +100,7 @@ lib-y           := $(addprefix $(obj)/,$(lib-y))
 obj-y           := $(addprefix $(obj)/,$(obj-y))
 obj-bin-y       := $(addprefix $(obj)/,$(obj-bin-y))
 gen-objs-c      := $(addprefix $(obj)/,$(gen-objs-c))
+gen-objs-S      := $(addprefix $(obj)/,$(gen-objs-S))
 subdir-y        := $(addprefix $(obj)/,$(subdir-y))
 nocov-y         := $(addprefix $(obj)/,$(nocov-y))
 noubsan-y       := $(addprefix $(obj)/,$(noubsan-y))
@@ -255,6 +257,10 @@ $(obj)/%.o: $(srctree)/$(src)/%.c FORCE
 quiet_cmd_cc_o_S = CC      $@
 cmd_cc_o_S = $(CC) $(a_flags) -c $< -o $@
 
+ifdef building_out_of_srctree
+$(gen-objs-S): $(obj)/%.o: $(obj)/%.S FORCE
+       $(call if_changed_dep,cc_o_S)
+endif
 $(obj)/%.o: $(src)/%.S FORCE
        $(call if_changed_dep,cc_o_S)
 
diff --git a/xen/build.mk b/xen/build.mk
index 7b48b7eb1404..2f2cbbbeabf8 100644
--- a/xen/build.mk
+++ b/xen/build.mk
@@ -83,6 +83,13 @@ prelink.o: $(ALL_OBJS) $(ALL_LIBS) FORCE
        $(call if_changed,ld)
 endif
 
+# Source generated in arch/*/Makefile to build $(TARGET)-syms
+gen-objs-S += .$(TARGET)-syms.0.o
+gen-objs-S += .$(TARGET)-syms.1.o
+# Source generated in arch/*/Makefile to build $(TARGET).efi
+gen-objs-S += .$(TARGET).efi.0r.o .$(TARGET).efi.0s.o
+gen-objs-S += .$(TARGET).efi.1r.o .$(TARGET).efi.1s.o
+
 targets += prelink.o
 
 $(TARGET): prelink.o FORCE
-- 
Anthony PERARD




 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.