From patchwork Tue Jun 10 08:52:47 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fabio Porcedda X-Patchwork-Id: 357792 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from whitealder.osuosl.org (whitealder.osuosl.org [140.211.166.138]) by ozlabs.org (Postfix) with ESMTP id A5F281400A8 for ; Tue, 10 Jun 2014 18:52:56 +1000 (EST) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 6B66E8BE2E; Tue, 10 Jun 2014 08:52:55 +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 h62Cy3HPec7Q; Tue, 10 Jun 2014 08:52:54 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by whitealder.osuosl.org (Postfix) with ESMTP id E2C188B531; Tue, 10 Jun 2014 08:52:53 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from fraxinus.osuosl.org (fraxinus.osuosl.org [140.211.166.137]) by ash.osuosl.org (Postfix) with ESMTP id AF31B1BF9D0 for ; Tue, 10 Jun 2014 08:52:52 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by fraxinus.osuosl.org (Postfix) with ESMTP id AC0498B535 for ; Tue, 10 Jun 2014 08:52:52 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from fraxinus.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id YYp_wLLz948d for ; Tue, 10 Jun 2014 08:52:52 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-wi0-f178.google.com (mail-wi0-f178.google.com [209.85.212.178]) by fraxinus.osuosl.org (Postfix) with ESMTPS id E03AC8B606 for ; Tue, 10 Jun 2014 08:52:51 +0000 (UTC) Received: by mail-wi0-f178.google.com with SMTP id n15so2620258wiw.11 for ; Tue, 10 Jun 2014 01:52:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id; bh=X0YvCcrk3o8Aj5/z8XB4k58fsxNkv3QuRNY9D53nGfI=; b=aZowRIOvz60vy+iC1i2q6B4vdHdKJ5n+0af7eQEnlw2PwEqUwXQFCecopcfzCQynkk xaPcOGwtH1fQq2rDcp2xuiwj5ncmgCBVQl0wt9Wygvo36XgTcF/JF/UkCZNMtyY79D2c rpXDTNX6cMJgqCNEtHqt5E2FX/neYgYhIQMVMXiHzX8sZJlDZW6jvK/wzHgNqHsdkOgC I4UQBVrtWNHUIlswZp2F3zgTcQIVNhtrQhKDty9pg5ccYtI01Gx2XfeW9OvJqRb7Z1wu C4+bVHapeJipeeqchOu3Mkby8wWtbUdLhefkTwLgrDPmNNzWGsZts8/U3Hpk0DkPzX6g JqAw== X-Received: by 10.180.14.132 with SMTP id p4mr17989096wic.55.1402390370219; Tue, 10 Jun 2014 01:52:50 -0700 (PDT) Received: from ld2077.tmt.telital.com ([213.205.6.118]) by mx.google.com with ESMTPSA id f6sm19445234wiy.19.2014.06.10.01.52.48 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Tue, 10 Jun 2014 01:52:49 -0700 (PDT) From: Fabio Porcedda To: buildroot@uclibc.org Date: Tue, 10 Jun 2014 10:52:47 +0200 Message-Id: <1402390367-25418-1-git-send-email-fabio.porcedda@gmail.com> X-Mailer: git-send-email 1.9.1 Cc: Thomas De Schampheleire Subject: [Buildroot] [PATCH] system: move system.mk recipes inside the "target-finalize" rule 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 Move system.mk recipes inside the "target-finalize" rule in order to: - Ensure an ordering even if top-level parallel make is being used. - Execute system.mk commands after the "target-finalize" initial message is printed so they can be clearly distinguished from packages building. Signed-off-by: Fabio Porcedda --- Makefile | 6 +++++ system/system.mk | 74 ++++++++++++++++++++++++++++---------------------------- 2 files changed, 43 insertions(+), 37 deletions(-) diff --git a/Makefile b/Makefile index dc86060..dba2083 100644 --- a/Makefile +++ b/Makefile @@ -531,6 +531,12 @@ $(TARGETS_ROOTFS): target-finalize target-finalize: $(TARGETS) @$(call MESSAGE,"Finalizing target directory") + $(TARGET_FINALIZE_GENERIC_SECURETTY) + $(TARGET_FINALIZE_GENERIC_HOSTNAME) + $(TARGET_FINALIZE_GENERIC_ISSUE) + $(TARGET_FINALIZE_ROOT_PASSWD) + $(TARGET_FINALIZE_GENERIC_GETTY) + $(TARGET_FINALIZE_GENERIC_REMOUNT_RW) $(TARGET_PURGE_LOCALES) rm -rf $(TARGET_DIR)/usr/include $(TARGET_DIR)/usr/share/aclocal \ $(TARGET_DIR)/usr/lib/pkgconfig $(TARGET_DIR)/usr/share/pkgconfig \ diff --git a/system/system.mk b/system/system.mk index 01a6c3a..756d3de 100644 --- a/system/system.mk +++ b/system/system.mk @@ -7,68 +7,68 @@ TARGET_GENERIC_GETTY_BAUDRATE = $(call qstrip,$(BR2_TARGET_GENERIC_GETTY_BAUDRAT TARGET_GENERIC_GETTY_TERM = $(call qstrip,$(BR2_TARGET_GENERIC_GETTY_TERM)) TARGET_GENERIC_GETTY_OPTIONS = $(call qstrip,$(BR2_TARGET_GENERIC_GETTY_OPTIONS)) -target-generic-securetty: +ifeq ($(BR2_TARGET_GENERIC_GETTY),y) +define TARGET_FINALIZE_GENERIC_SECURETTY grep -q '^$(TARGET_GENERIC_GETTY_PORT)$$' $(TARGET_DIR)/etc/securetty || \ echo '$(TARGET_GENERIC_GETTY_PORT)' >> $(TARGET_DIR)/etc/securetty +endef +endif -target-generic-hostname: +ifneq ($(TARGET_GENERIC_HOSTNAME),) +define TARGET_FINALIZE_GENERIC_HOSTNAME mkdir -p $(TARGET_DIR)/etc echo "$(TARGET_GENERIC_HOSTNAME)" > $(TARGET_DIR)/etc/hostname $(SED) '$$a \127.0.1.1\t$(TARGET_GENERIC_HOSTNAME)' \ -e '/^127.0.1.1/d' $(TARGET_DIR)/etc/hosts +endef +endif -target-generic-issue: +ifneq ($(TARGET_GENERIC_ISSUE),) +define TARGET_FINALIZE_GENERIC_ISSUE mkdir -p $(TARGET_DIR)/etc echo "$(TARGET_GENERIC_ISSUE)" > $(TARGET_DIR)/etc/issue +endef +endif ifneq ($(TARGET_GENERIC_ROOT_PASSWD),) -target-root-passwd: host-mkpasswd +TARGETS += host-mkpasswd endif -target-root-passwd: + +ifeq ($(BR2_ROOTFS_SKELETON_DEFAULT),y) + +define TARGET_FINALIZE_ROOT_PASSWD [ -n "$(TARGET_GENERIC_ROOT_PASSWD)" ] && \ TARGET_GENERIC_ROOT_PASSWD_HASH=$$($(MKPASSWD) -m "$(TARGET_GENERIC_PASSWD_METHOD)" "$(TARGET_GENERIC_ROOT_PASSWD)"); \ $(SED) "s,^root:[^:]*:,root:$$TARGET_GENERIC_ROOT_PASSWD_HASH:," $(TARGET_DIR)/etc/shadow +endef -target-generic-getty-busybox: - $(SED) '/# GENERIC_SERIAL$$/s~^.*#~$(TARGET_GENERIC_GETTY_PORT)::respawn:/sbin/getty -L $(TARGET_GENERIC_GETTY_OPTIONS) $(TARGET_GENERIC_GETTY_PORT) $(TARGET_GENERIC_GETTY_BAUDRATE) $(TARGET_GENERIC_GETTY_TERM) #~' \ - $(TARGET_DIR)/etc/inittab - +ifeq ($(BR2_TARGET_GENERIC_GETTY),y) +ifeq ($(BR2_PACKAGE_SYSVINIT),y) # In sysvinit inittab, the "id" must not be longer than 4 bytes, so we # skip the "tty" part and keep only the remaining. -target-generic-getty-sysvinit: +define TARGET_FINALIZE_GENERIC_GETTY $(SED) '/# GENERIC_SERIAL$$/s~^.*#~$(shell echo $(TARGET_GENERIC_GETTY_PORT) | tail -c+4)::respawn:/sbin/getty -L $(TARGET_GENERIC_GETTY_OPTIONS) $(TARGET_GENERIC_GETTY_PORT) $(TARGET_GENERIC_GETTY_BAUDRATE) $(TARGET_GENERIC_GETTY_TERM) #~' \ $(TARGET_DIR)/etc/inittab +endef +else +# Add getty to busybox inittab +define TARGET_FINALIZE_GENERIC_GETTY + $(SED) '/# GENERIC_SERIAL$$/s~^.*#~$(TARGET_GENERIC_GETTY_PORT)::respawn:/sbin/getty -L $(TARGET_GENERIC_GETTY_OPTIONS) $(TARGET_GENERIC_GETTY_PORT) $(TARGET_GENERIC_GETTY_BAUDRATE) $(TARGET_GENERIC_GETTY_TERM) #~' \ + $(TARGET_DIR)/etc/inittab +endef +endif +endif +ifeq ($(BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW),y) # Find commented line, if any, and remove leading '#'s -target-generic-do-remount-rw: +define TARGET_FINALIZE_GENERIC_REMOUNT_RW $(SED) '/^#.*# REMOUNT_ROOTFS_RW$$/s~^#\+~~' $(TARGET_DIR)/etc/inittab - +endef +else # Find uncommented line, if any, and add a leading '#' -target-generic-dont-remount-rw: +define TARGET_FINALIZE_GENERIC_REMOUNT_RW $(SED) '/^[^#].*# REMOUNT_ROOTFS_RW$$/s~^~#~' $(TARGET_DIR)/etc/inittab - -ifeq ($(BR2_TARGET_GENERIC_GETTY),y) -TARGETS += target-generic-securetty -endif - -ifneq ($(TARGET_GENERIC_HOSTNAME),) -TARGETS += target-generic-hostname -endif - -ifneq ($(TARGET_GENERIC_ISSUE),) -TARGETS += target-generic-issue +endef endif -ifeq ($(BR2_ROOTFS_SKELETON_DEFAULT),y) -TARGETS += target-root-passwd - -ifeq ($(BR2_TARGET_GENERIC_GETTY),y) -TARGETS += target-generic-getty-$(if $(BR2_PACKAGE_SYSVINIT),sysvinit,busybox) -endif - -ifeq ($(BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW),y) -TARGETS += target-generic-do-remount-rw -else -TARGETS += target-generic-dont-remount-rw -endif -endif +endif # BR2_ROOTFS_SKELETON_DEFAULT