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

Re: [XEN PATCH 53/57] stubdom: introduce xenlibs.mk



Anthony PERARD, le lun. 06 déc. 2021 17:02:36 +0000, a ecrit:
> This new makefile will be used to build libraries that provides
> "Makefile.common".
> 
> At some point, we will be converting Makefile in tools/ to "subdirmk"
> and stubdom build will not be able to use those new makefiles, so we
> will put the necessary information for stubdom to build the xen
> libraries into a new Makefile.common and xenlibs.mk will use it.
> We only need to build static libraries and don't need anything else.
> 
> The check for the presence of "Makefile.common" will go aways once
> there is one for all libraries used by stubdom build.
> 
> Also remove DESTDIR= from "clean" targets, we don't do installation in
> this recipe so the value of DESTDIR doesn't matter.
> 
> Signed-off-by: Anthony PERARD <anthony.perard@xxxxxxxxxx>

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

> ---
>  stubdom/xenlibs.mk | 13 +++++++++++++
>  stubdom/Makefile   |  9 +++++++--
>  2 files changed, 20 insertions(+), 2 deletions(-)
>  create mode 100644 stubdom/xenlibs.mk
> 
> diff --git a/stubdom/xenlibs.mk b/stubdom/xenlibs.mk
> new file mode 100644
> index 0000000000..5c8742ccf9
> --- /dev/null
> +++ b/stubdom/xenlibs.mk
> @@ -0,0 +1,13 @@
> +include $(XEN_ROOT)/tools/Rules.mk
> +
> +include Makefile.common
> +
> +LIBNAME := $(notdir $(CURDIR))
> +FILENAME_$(LIBNAME) ?= xen$(LIBNAME)
> +LIB_FILE_NAME = $(FILENAME_$(LIBNAME))
> +
> +lib$(LIB_FILE_NAME).a: $(OBJS-y)
> +     $(AR) rc $@ $^
> +
> +clean::
> +     rm -f $(OBJS-y) lib$(LIB_FILE_NAME).a
> diff --git a/stubdom/Makefile b/stubdom/Makefile
> index 5fb5dbc341..fba4c977ef 100644
> --- a/stubdom/Makefile
> +++ b/stubdom/Makefile
> @@ -346,6 +346,7 @@ define do_links
>    cd $(dir $@); \
>    ln -sf $(dir $<)include/*.h include/; \
>    ln -sf $(dir $<)*.[ch] .; \
> +  [ -e $(dir $<)Makefile.common ] && ln -sf $(dir $<)Makefile.common . ||:; \
>    ln -sf $(dir $<)Makefile .
>    touch $@
>  endef
> @@ -355,10 +356,14 @@ define BUILD_lib
>   libxen$(1): libs-$$(XEN_TARGET_ARCH)/$(1)/libxen$(1).a
>   libs-$$(XEN_TARGET_ARCH)/$(1)/libxen$(1).a: $$(LIBDEPS_$(1)) $$(LIBDEP_$(1))
>   libs-$$(XEN_TARGET_ARCH)/$(1)/libxen$(1).a: mk-headers-$$(XEN_TARGET_ARCH) 
> $$(NEWLIB_STAMPFILE) .phony
> -     CPPFLAGS="$$(TARGET_CPPFLAGS)" CFLAGS="$$(TARGET_CFLAGS)" $$(MAKE) 
> CONFIG_LIBXC_MINIOS=y -C $$(@D) $$(@F)
> +     CPPFLAGS="$$(TARGET_CPPFLAGS)" CFLAGS="$$(TARGET_CFLAGS)" $$(MAKE) 
> CONFIG_LIBXC_MINIOS=y $$(if $$(wildcard $$(@D)/Makefile.common),-f 
> $(CURDIR)/xenlibs.mk) -C $$(@D) $$(@F)
>  
>   clean-libxen$(1):
> -     [ ! -e libs-$$(XEN_TARGET_ARCH)/$(1)/Makefile ] || $$(MAKE) DESTDIR= -C 
> libs-$$(XEN_TARGET_ARCH)/$(1) clean
> +     if [ -e libs-$$(XEN_TARGET_ARCH)/$(1)/Makefile.common ]; then \
> +         $$(MAKE) -f $(CURDIR)/xenlibs.mk -C libs-$$(XEN_TARGET_ARCH)/$(1) 
> clean; \
> +     elif [ -e libs-$$(XEN_TARGET_ARCH)/$(1)/Makefile ]; then \
> +         $$(MAKE) -C libs-$$(XEN_TARGET_ARCH)/$(1) clean; \
> +     fi
>  
>   libs-$$(XEN_TARGET_ARCH)/$(1)/stamp: $$(XEN_ROOT)/tools/libs/$(1)/Makefile
>       $$(do_links)
> -- 
> Anthony PERARD
> 

-- 
Samuel
<y> update-menus: relocation error: update-menus: symbol 
_ZNSt9basic_iosIcSt11char_traitsIcEE4initEPSt15basic_streambufIcS1_E, version 
GLIBCPP_3.2 not defined in file libstdc++.so.5 with link time reference
<y> quoi que ça peut bien vouloir dire ?
<D> N a eu la meme merde
<y> c ça que ça veut dire ? wow, c'est bien crypté :)
 -+- #ens-mim s'entraide -+-



 


Rackspace

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