[Buildroot] [PATCH] dmalloc: fix static build

Thomas Petazzoni thomas.petazzoni at free-electrons.com
Sat Jul 2 14:04:25 UTC 2016


Hello,

On Mon, 13 Jun 2016 08:07:17 +0200, Waldemar Brodkorb wrote:
> For example coldfire uses FLAT binaries, which are statically
> build. Fixes following autobuild failure:
> http://autobuild.buildroot.net/results/cc4233a4c3f92275a4071c172330c920c35219ca/
> 
> Signed-off-by: Waldemar Brodkorb <wbx at openadk.org>
> ---
>  package/dmalloc/dmalloc.mk | 8 ++++++--
>  1 file changed, 6 insertions(+), 2 deletions(-)
> 
> diff --git a/package/dmalloc/dmalloc.mk b/package/dmalloc/dmalloc.mk
> index 6eb87c6..18a6fa0 100644
> --- a/package/dmalloc/dmalloc.mk
> +++ b/package/dmalloc/dmalloc.mk
> @@ -58,11 +58,15 @@ define DMALLOC_INSTALL_STAGING_CMDS
>  		-C $(@D) install
>  endef
>  
> -define DMALLOC_INSTALL_TARGET_CMDS
>  ifeq ($(BR2_STATIC_LIBS),)
> +define DMALLOC_INSTALL_TARGET_CMDS
>  	cp -dpf $(STAGING_DIR)/usr/lib/libdmalloc*.so $(TARGET_DIR)/usr/lib
> -endif
>  	cp -dpf $(STAGING_DIR)/usr/bin/dmalloc $(TARGET_DIR)/usr/bin/dmalloc
>  endef
> +else
> +define DMALLOC_INSTALL_TARGET_CMDS
> +	cp -dpf $(STAGING_DIR)/usr/bin/dmalloc $(TARGET_DIR)/usr/bin/dmalloc
> +endef
> +endif

Instead of duplicating the code that installs the program, I've created
a temporary variable that does the library installation, and which only
gets defined if BR2_STATIC_LIBS is empty:

ifeq ($(BR2_STATIC_LIBS),)
define DMALLOC_INSTALL_SHARED_LIB
        cp -dpf $(STAGING_DIR)/usr/lib/libdmalloc*.so $(TARGET_DIR)/usr/lib
endef
endif

define DMALLOC_INSTALL_TARGET_CMDS
        $(DMALLOC_INSTALL_SHARED_LIB)
        cp -dpf $(STAGING_DIR)/usr/bin/dmalloc $(TARGET_DIR)/usr/bin/dmalloc
endef

Applied with this modification. Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com


More information about the buildroot mailing list