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

Re: [Xen-devel] [PATCH] minios: make mini-os_app.o depend on included xen libraries



Juergen Gross, on Tue 27 Sep 2016 14:06:24 +0200, wrote:
> When building Mini-OS with an app which is using xen libraries like
> libxenguest.a let mini-os_app.o depend on the library binaries as it
> is statically linked with them.
> 
> While at it add "-T" before app.lds for linking mini-os_app.o to avoid
> a linker warning.
> 
> Signed-off-by: Juergen Gross <jgross@xxxxxxxx>

Acked-by: Samuel Thibault <samuel.thibault@xxxxxxxxxxxx>

> ---
>  Makefile | 11 +++++++++--
>  1 file changed, 9 insertions(+), 2 deletions(-)
> 
> diff --git a/Makefile b/Makefile
> index 81b936f..1d2324c 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -125,11 +125,18 @@ OBJS := $(filter-out $(OBJ_DIR)/lwip%.o $(LWO), $(OBJS))
>  ifeq ($(libc),y)
>  ifeq ($(CONFIG_XC),y)
>  APP_LDLIBS += -L$(XEN_ROOT)/stubdom/libs-$(MINIOS_TARGET_ARCH)/toollog 
> -whole-archive -lxentoollog -no-whole-archive
> +LIBS += 
> $(XEN_ROOT)/stubdom/libs-$(MINIOS_TARGET_ARCH)/toollog/libxentoollog.a
>  APP_LDLIBS += -L$(XEN_ROOT)/stubdom/libs-$(MINIOS_TARGET_ARCH)/evtchn 
> -whole-archive -lxenevtchn -no-whole-archive
> +LIBS += $(XEN_ROOT)/stubdom/libs-$(MINIOS_TARGET_ARCH)/evtchn/libxenevtchn.a
>  APP_LDLIBS += -L$(XEN_ROOT)/stubdom/libs-$(MINIOS_TARGET_ARCH)/gnttab 
> -whole-archive -lxengnttab -no-whole-archive
> +LIBS += $(XEN_ROOT)/stubdom/libs-$(MINIOS_TARGET_ARCH)/gnttab/libxengnttab.a
>  APP_LDLIBS += -L$(XEN_ROOT)/stubdom/libs-$(MINIOS_TARGET_ARCH)/call 
> -whole-archive -lxencall -no-whole-archive
> +LIBS += $(XEN_ROOT)/stubdom/libs-$(MINIOS_TARGET_ARCH)/call/libxencall.a
>  APP_LDLIBS += -L$(XEN_ROOT)/stubdom/libs-$(MINIOS_TARGET_ARCH)/foreignmemory 
> -whole-archive -lxenforeignmemory -no-whole-archive
> +LIBS += 
> $(XEN_ROOT)/stubdom/libs-$(MINIOS_TARGET_ARCH)/foreignmemory/libxenforeignmemory.a
>  APP_LDLIBS += -L$(XEN_ROOT)/stubdom/libxc-$(MINIOS_TARGET_ARCH) 
> -whole-archive -lxenguest -lxenctrl -no-whole-archive
> +LIBS += $(XEN_ROOT)/stubdom/libxc-$(MINIOS_TARGET_ARCH)/libxenctrl.a
> +LIBS += $(XEN_ROOT)/stubdom/libxc-$(MINIOS_TARGET_ARCH)/libxenguest.a
>  endif
>  APP_LDLIBS += -lpci
>  APP_LDLIBS += -lz
> @@ -141,8 +148,8 @@ ifneq ($(APP_OBJS)-$(lwip),-y)
>  OBJS := $(filter-out $(OBJ_DIR)/daytime.o, $(OBJS))
>  endif
>  
> -$(OBJ_DIR)/$(TARGET)_app.o: $(APP_OBJS) app.lds
> -     $(LD) -r -d $(LDFLAGS) -\( $^ -\) $(APP_LDLIBS) --undefined main -o $@
> +$(OBJ_DIR)/$(TARGET)_app.o: $(APP_OBJS) app.lds $(LIBS)
> +     $(LD) -r -d $(LDFLAGS) -\( $(APP_OBJS) -T app.lds -\) $(APP_LDLIBS) 
> --undefined main -o $@
>  
>  ifneq ($(APP_OBJS),)
>  APP_O=$(OBJ_DIR)/$(TARGET)_app.o 
> -- 
> 2.6.6
> 

-- 
Samuel
#ifndef I_WISH_WORLD_WERE_PERFECT
/* It is not :-( All the routers (except for Linux) return only
...
 -+- linux/net/ipv4/ipip.c -+-

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

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