From patchwork Sun Nov 10 23:51:35 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Yann E. MORIN" X-Patchwork-Id: 290107 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from silver.osuosl.org (silver.osuosl.org [140.211.166.136]) by ozlabs.org (Postfix) with ESMTP id 6FE192C00AC for ; Mon, 11 Nov 2013 10:51:52 +1100 (EST) Received: from localhost (localhost [127.0.0.1]) by silver.osuosl.org (Postfix) with ESMTP id 719E332FD7; Sun, 10 Nov 2013 23:51:51 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from silver.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id pU7qxaqQlr59; Sun, 10 Nov 2013 23:51:46 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by silver.osuosl.org (Postfix) with ESMTP id 3892E32FFC; Sun, 10 Nov 2013 23:51:45 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from whitealder.osuosl.org (whitealder.osuosl.org [140.211.166.138]) by ash.osuosl.org (Postfix) with ESMTP id 49A4C1BF840 for ; Sun, 10 Nov 2013 23:51:43 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 3C56E8D15F for ; Sun, 10 Nov 2013 23:51:43 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id VAPd9Hb1mSwc for ; Sun, 10 Nov 2013 23:51:42 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-we0-f176.google.com (mail-we0-f176.google.com [74.125.82.176]) by whitealder.osuosl.org (Postfix) with ESMTPS id 2E1248CF31 for ; Sun, 10 Nov 2013 23:51:42 +0000 (UTC) Received: by mail-we0-f176.google.com with SMTP id w62so3892281wes.21 for ; Sun, 10 Nov 2013 15:51:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=ElfAK1mfDoOI+kSLqa6m2zXSbIGt+JtxnGuRXnbRMsI=; b=0uVNc+3fTbaPwnFMDBgnNdMaxh9agsrsTCaBnXbfrhbDkrpUVsSvMJt3qtEcpYS1WL /NyncZ7MhdZD1li3v+ZHO1ZFLEFoGu+wCF5UDrvXyibaqq2pMkuX5In5cS8MwRPcf7e3 oVhn3GDoMznmiSTdNGn1yagpDQHgbEvZWBmV2cSXPjA6EmveNWbCvPWvaj/j4rtEb/6t H8WcqMvQq7Qj5KbY0UVgVCdY3SVl6gWGxKjJ5M40S7sknChXG658LzZq0mVeNz1WWMSN JqzvUj6CHbohyjMtWGEcWrd1iMUiekWzQKTcZkfq6Sq1pRUqWQ3H4FuEac5KYuKGG0M/ f1wQ== X-Received: by 10.180.92.10 with SMTP id ci10mr10108303wib.41.1384127500676; Sun, 10 Nov 2013 15:51:40 -0800 (PST) Received: from gourin.bzh.lan (ks3095497.kimsufi.com. [94.23.60.27]) by mx.google.com with ESMTPSA id dj8sm28761662wid.2.2013.11.10.15.51.39 for (version=TLSv1.1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Sun, 10 Nov 2013 15:51:40 -0800 (PST) From: "Yann E. MORIN" To: buildroot@busybox.net Date: Mon, 11 Nov 2013 00:51:35 +0100 Message-Id: X-Mailer: git-send-email 1.8.1.2 In-Reply-To: References: Cc: Peter Korsgaard , "Yann E. MORIN" Subject: [Buildroot] [PATCH 1/4] post-{build, images} hooks: export BUILD_DIR too X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.14 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: buildroot-bounces@busybox.net Sender: buildroot-bounces@busybox.net From: "Yann E. MORIN" Also export BUILD_DIR for post-{build,images} hooks, so they do have a place to store generated files. Note: this will be more einteresting for the instrumentation of steps, to come in a later patch. Signed-off-by: "Yann E. MORIN" --- Makefile | 4 ++-- docs/manual/customize-rootfs.txt | 5 +++-- package/Makefile.in | 6 ++++++ 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/Makefile b/Makefile index 2f7db59..634151c 100644 --- a/Makefile +++ b/Makefile @@ -513,7 +513,7 @@ endif @$(foreach s, $(call qstrip,$(BR2_ROOTFS_POST_BUILD_SCRIPT)), \ $(call MESSAGE,"Executing post-build script $(s)"); \ - $(s) $(TARGET_DIR) $(call qstrip,$(BR2_ROOTFS_POST_SCRIPT_ARGS))$(sep)) + $(USER_HOOKS_EXTRA_ENV) $(s) $(TARGET_DIR) $(call qstrip,$(BR2_ROOTFS_POST_SCRIPT_ARGS))$(sep)) ifeq ($(BR2_ENABLE_LOCALE_PURGE),y) LOCALE_WHITELIST=$(BUILD_DIR)/locales.nopurge @@ -559,7 +559,7 @@ endif target-post-image: @$(foreach s, $(call qstrip,$(BR2_ROOTFS_POST_IMAGE_SCRIPT)), \ $(call MESSAGE,"Executing post-image script $(s)"); \ - $(s) $(BINARIES_DIR) $(call qstrip,$(BR2_ROOTFS_POST_SCRIPT_ARGS))$(sep)) + $(USER_HOOKS_EXTRA_ENV) $(s) $(BINARIES_DIR) $(call qstrip,$(BR2_ROOTFS_POST_SCRIPT_ARGS))$(sep)) toolchain-eclipse-register: ./support/scripts/eclipse-register-toolchain `readlink -f $(O)` $(notdir $(TARGET_CROSS)) $(BR2_ARCH) diff --git a/docs/manual/customize-rootfs.txt b/docs/manual/customize-rootfs.txt index 49a6b4b..450b3d5 100644 --- a/docs/manual/customize-rootfs.txt +++ b/docs/manual/customize-rootfs.txt @@ -41,6 +41,7 @@ there are a few ways to customize the resulting target filesystem. - +BUILDROOT_CONFIG+: the path to the Buildroot .config file - +HOST_DIR+, +STAGING_DIR+, +TARGET_DIR+: see xref:generic-package-reference[] + - +BUILD_DIR+: the directory where packages are extracted and built - +BINARIES_DIR+: the place where all binary files (aka images) are stored - +BASE_DIR+: the base output directory @@ -78,8 +79,8 @@ in one of these _post-image scripts_ will require special handling Just like for the _post-build scripts_ mentioned above, you also have access to the following environment variables from your _post-image -scripts_: +BUILDROOT_CONFIG+, +HOST_DIR+, +STAGING_DIR+, +TARGET_DIR+, -+BINARIES_DIR+ and +BASE_DIR+. +scripts_: +BUILDROOT_CONFIG+, +BUILD_DIR+, +HOST_DIR+, +STAGING_DIR+, ++TARGET_DIR+, +BINARIES_DIR+ and +BASE_DIR+. Additionally, each of the +BR2_ROOTFS_POST_BUILD_SCRIPT+ and +BR2_ROOTFS_POST_IMAGE_SCRIPT+ scripts will be passed the arguments diff --git a/package/Makefile.in b/package/Makefile.in index 612f3c7..b4a51fa 100644 --- a/package/Makefile.in +++ b/package/Makefile.in @@ -275,6 +275,12 @@ HOST_MAKE_ENV=PATH=$(HOST_PATH) \ PKG_CONFIG_LIBDIR="$(HOST_DIR)/usr/lib/pkgconfig" \ PERLLIB="$(HOST_DIR)/usr/lib/perl" +# This extra environment we can not export ourselves (eg. because some +# packages use that variable internally, eg. uboot), so we have to +# expicitly pass it to user-supplied external hooks (eg. post-build, +# post-images) +USER_HOOKS_EXTRA_ENV=\ + BUILD_DIR=$(BUILD_DIR) ################################################################################ # settings we need to pass to configure