| 
    
 [Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH v2 6/7] xen/libfdt: Put all libfdt in init
 Libfdt is used for:
    - Unflatten the Flatten Device-Tree (FDT) blob
    - Create Device-Tree for the Hardware-Domain
Both use are done during the initialization of Xen. So move all the
libfdt to init.
Note that the runes was borrowed from libelf Makefile.
Signed-off-by: Julien Grall <julien.grall@xxxxxxx>
Reviewed-by: Stefano Stabellini <sstabellini@xxxxxxxxxx>
---
    Changes in v2:
        - Add Stefano's reviewed-by
---
 xen/common/libfdt/Makefile | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/xen/common/libfdt/Makefile b/xen/common/libfdt/Makefile
index 7578fe9c50..d81f54b6b8 100644
--- a/xen/common/libfdt/Makefile
+++ b/xen/common/libfdt/Makefile
@@ -1,5 +1,13 @@
 include Makefile.libfdt
 
-obj-y += $(LIBFDT_OBJS)
+SECTIONS := text data $(SPECIAL_DATA_SECTIONS)
+
+obj-y += libfdt.o
 
 CFLAGS += -I$(BASEDIR)/include/xen/libfdt/
+
+libfdt.o: libfdt-temp.o Makefile
+       $(OBJCOPY) $(foreach s,$(SECTIONS),--rename-section .$(s)=.init.$(s)) 
$< $@
+
+libfdt-temp.o: $(LIBFDT_OBJS)
+       $(LD) $(LDFLAGS) -r -o $@ $^
-- 
2.11.0
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel
 
  | 
  
![]()  | 
            
         Lists.xenproject.org is hosted with RackSpace, monitoring our  |