From patchwork Mon Apr 17 02:22:26 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Simon Glass X-Patchwork-Id: 751238 X-Patchwork-Delegate: sjg@chromium.org Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 3w5sZD41RSz9s1h for ; Mon, 17 Apr 2017 12:25:56 +1000 (AEST) Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=google.com header.i=@google.com header.b="tAYKWi/B"; dkim-atps=neutral Received: by lists.denx.de (Postfix, from userid 105) id 3B90DC21CBB; Mon, 17 Apr 2017 02:24:39 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 04E6AC21CA4; Mon, 17 Apr 2017 02:23:45 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 6D350C21C9F; Mon, 17 Apr 2017 02:23:23 +0000 (UTC) Received: from mail-oi0-f52.google.com (mail-oi0-f52.google.com [209.85.218.52]) by lists.denx.de (Postfix) with ESMTPS id 2EF2CC21C77 for ; Mon, 17 Apr 2017 02:23:19 +0000 (UTC) Received: by mail-oi0-f52.google.com with SMTP id b187so130696340oif.0 for ; Sun, 16 Apr 2017 19:23:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=dbtfowPg+Hsd6kqW5+7JD3Qy/+78nIFwapg5e/1+WO8=; b=tAYKWi/BzlKxRh+TP4QLjW0Mx7a1ouL4d6lFsswOzZ3Rk1dZugiRD/PUxeSsDcNzd+ ISaU1GfiLZfeNzQK4sdSUmfSkisWdDP0tR37yotOX6qZrYAbS1aIJ3g4SVByKGIF6Zqf MzI1tJp4XW+try7n8Qm8AIpIqQRlP5t7VumLgk7vuniqXFRvuxoVq/Rd/72rfux3Ws90 VCtnTmabQ2GH2+vvDjq6hsiIcvVL4aVgpML1w/DKcLd0PhsLtxEutjUWcQkaKHqXguoX btuarVXTxFYzU6bQR3zzGfMCiB3Fmv5mdMvU7koss5i4Bjz4j7pvEUEG9yjex/FEr/f1 +KlQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=dbtfowPg+Hsd6kqW5+7JD3Qy/+78nIFwapg5e/1+WO8=; b=uh9WarRPs+JMZtw23YEWbCdvzbZCP4PEoKO2iFc1e8q1SGG4dHui8+5hpYc2lrCSeS iQNhm3QSeaSs4+/+4e8GQGBtQhNSbqcIiFagkosbb2Vic8KMJaQRk11nBEnUssaZqmdU +WzxlTMEusGj8mAyoelz6ZD8SPEQnM4/v/nUKx1bo22qi6BTdoWigOMCYrBozZsd0VRf gCMm1Ddq5Brxkve6FtEO01ZrinpH7qmGLdyWD5WH8i3fiE7UiRX6AQrBOgzRvpre3djz /DYNVxkVnwuQ1lYBoTyfeASCAjxle6ay0YKj0GzYNVHR6ZG8oHvboc3/YO+LYxSdzYuu dKXg== X-Gm-Message-State: AN3rC/6GkrAbq8E2CqL1S1CsMU7gxbc8BVroGiW9QkgGvLOACEfEb2So tBKQhAi9MGsGChbTYPTtaQ== X-Received: by 10.202.205.147 with SMTP id d141mr4201131oig.134.1492395797884; Sun, 16 Apr 2017 19:23:17 -0700 (PDT) Received: from kaki.bld.corp.google.com ([100.100.184.96]) by smtp.gmail.com with ESMTPSA id z9sm4105768otd.44.2017.04.16.19.23.15 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 16 Apr 2017 19:23:16 -0700 (PDT) Received: by kaki.bld.corp.google.com (Postfix, from userid 121222) id 1619B40E62; Sun, 16 Apr 2017 20:22:51 -0600 (MDT) From: Simon Glass To: U-Boot Mailing List Date: Sun, 16 Apr 2017 20:22:26 -0600 Message-Id: <20170417022233.28101-13-sjg@chromium.org> X-Mailer: git-send-email 2.12.2.762.g0e3151a226-goog In-Reply-To: <20170417022233.28101-1-sjg@chromium.org> References: <20170417022233.28101-1-sjg@chromium.org> Cc: Tom Rini , Jerry Van Baren Subject: [U-Boot] [PATCH 12/19] fdt: Makefile: Build python libfdt library if needed X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" This is needed by binman and dtoc, so if those are being used, check that the library is present and complain if not. This means that the fallback library (which uses fdtget) will not be used anymore and swig will need to be installed to use binman / dtoc. This affects any board which uses binman (currently sunxi and x86) or dtoc (anything that uses CONFIG_SPL_OF_PLATDATA, currently some rockchip boards). Signed-off-by: Simon Glass Signed-off-by: Simon Glass --- Makefile | 16 ++++++++++++++-- scripts/Makefile.spl | 17 +++++++++++++---- 2 files changed, 27 insertions(+), 6 deletions(-) diff --git a/Makefile b/Makefile index 8d4e6050b3..7bedc0f167 100644 --- a/Makefile +++ b/Makefile @@ -1094,7 +1094,7 @@ cmd_ldr = $(LD) $(LDFLAGS_$(@F)) \ u-boot.rom: u-boot-x86-16bit.bin u-boot.bin \ $(if $(CONFIG_SPL_X86_16BIT_INIT),spl/u-boot-spl.bin) \ - $(if $(CONFIG_HAVE_REFCODE),refcode.bin) FORCE + $(if $(CONFIG_HAVE_REFCODE),refcode.bin) checkbinman FORCE $(call if_changed,binman) OBJCOPYFLAGS_u-boot-x86-16bit.bin := -O binary -j .start16 -j .resetvec @@ -1103,7 +1103,8 @@ u-boot-x86-16bit.bin: u-boot FORCE endif ifneq ($(CONFIG_ARCH_SUNXI),) -u-boot-sunxi-with-spl.bin: spl/sunxi-spl.bin u-boot.img u-boot.dtb FORCE +u-boot-sunxi-with-spl.bin: spl/sunxi-spl.bin u-boot.img u-boot.dtb \ + checkbinman FORCE $(call if_changed,binman) endif @@ -1332,6 +1333,17 @@ $(version_h): include/config/uboot.release FORCE $(timestamp_h): $(srctree)/Makefile FORCE $(call filechk,timestamp.h) +checkbinman: tools + @if ! ( echo 'import libfdt' | ( PYTHONPATH=tools python )); then \ + echo '*** binman needs the Python libfdt library. Either '; \ + echo '*** install it on your system, or try:'; \ + echo '***'; \ + echo '*** sudo apt-get install swig libpython-dev'; \ + echo '***'; \ + echo '*** to have U-Boot build its own version.'; \ + false; \ + fi + # --------------------------------------------------------------------------- quiet_cmd_cpp_lds = LDS $@ cmd_cpp_lds = $(CPP) -Wp,-MD,$(depfile) $(cpp_flags) $(LDPPFLAGS) \ diff --git a/scripts/Makefile.spl b/scripts/Makefile.spl index eb24292fec..92ff2ff831 100644 --- a/scripts/Makefile.spl +++ b/scripts/Makefile.spl @@ -257,14 +257,12 @@ PHONY += dts_dir dts_dir: $(shell [ -d $(obj)/dts ] || mkdir -p $(obj)/dts) -include/generated/dt-structs.h: $(obj)/$(SPL_BIN).dtb dts_dir dtoc +include/generated/dt-structs.h: $(obj)/$(SPL_BIN).dtb dts_dir checkdtoc $(call if_changed,dtoch) -$(obj)/dts/dt-platdata.c: $(obj)/$(SPL_BIN).dtb dts_dir dtoc +$(obj)/dts/dt-platdata.c: $(obj)/$(SPL_BIN).dtb dts_dir checkdtoc $(call if_changed,dtocc) -dtoc: #$(objtree)/tools/_libfdt.so - ifdef CONFIG_SAMSUNG ifdef CONFIG_VAR_SIZE_SPL VAR_SIZE_PARAM = --vs @@ -356,6 +354,17 @@ ifneq ($(cmd_files),) include $(cmd_files) endif +checkdtoc: tools + @if ! ( echo 'import libfdt' | ( PYTHONPATH=tools python )); then \ + echo '*** dtoc needs the Python libfdt library. Either '; \ + echo '*** install it on your system, or try:'; \ + echo '***'; \ + echo '*** sudo apt-get install swig libpython-dev'; \ + echo '***'; \ + echo '*** to have U-Boot build its own version.'; \ + false; \ + fi + PHONY += FORCE FORCE: