From patchwork Sat Dec 7 18:18:12 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andrew Cooper X-Patchwork-Id: 11277727 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 3887F13B6 for ; Sat, 7 Dec 2019 18:20:03 +0000 (UTC) Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 139F324670 for ; Sat, 7 Dec 2019 18:20:02 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=citrix.com header.i=@citrix.com header.b="UXgiI1Ot" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 139F324670 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=citrix.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1ideex-00083R-17; Sat, 07 Dec 2019 18:18:27 +0000 Received: from us1-rack-iad1.inumbo.com ([172.99.69.81]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1ideew-00083M-3y for xen-devel@lists.xenproject.org; Sat, 07 Dec 2019 18:18:26 +0000 X-Inumbo-ID: f1f0d8d6-191d-11ea-88e7-bc764e2007e4 Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS id f1f0d8d6-191d-11ea-88e7-bc764e2007e4; Sat, 07 Dec 2019 18:18:19 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1575742699; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version; bh=XlUQvWE3vE1jIDqriJtcbUN+LOYEupLYEpdkKyvokek=; b=UXgiI1OttBe28v6sxJttDOOo7WO2EusVUu3m/61kpD3tb0roy5i3tBke nEka7bMiAXrVY+IFatkw4tWd98cO0PYJltAE1w4VRD/+YmEHsF2SHwLPq bKAjD2M3aMHS+4MVOyii8YxfmlLyrrYAgd34Wa1j6i+iDrLAh0wMaOsnE I=; Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none; spf=None smtp.pra=andrew.cooper3@citrix.com; spf=Pass smtp.mailfrom=Andrew.Cooper3@citrix.com; spf=None smtp.helo=postmaster@mail.citrix.com Received-SPF: None (esa5.hc3370-68.iphmx.com: no sender authenticity information available from domain of andrew.cooper3@citrix.com) identity=pra; client-ip=162.221.158.21; receiver=esa5.hc3370-68.iphmx.com; envelope-from="Andrew.Cooper3@citrix.com"; x-sender="andrew.cooper3@citrix.com"; x-conformance=sidf_compatible Received-SPF: Pass (esa5.hc3370-68.iphmx.com: domain of Andrew.Cooper3@citrix.com designates 162.221.158.21 as permitted sender) identity=mailfrom; client-ip=162.221.158.21; receiver=esa5.hc3370-68.iphmx.com; envelope-from="Andrew.Cooper3@citrix.com"; x-sender="Andrew.Cooper3@citrix.com"; x-conformance=sidf_compatible; x-record-type="v=spf1"; x-record-text="v=spf1 ip4:209.167.231.154 ip4:178.63.86.133 ip4:195.66.111.40/30 ip4:85.115.9.32/28 ip4:199.102.83.4 ip4:192.28.146.160 ip4:192.28.146.107 ip4:216.52.6.88 ip4:216.52.6.188 ip4:162.221.158.21 ip4:162.221.156.83 ip4:168.245.78.127 ~all" Received-SPF: None (esa5.hc3370-68.iphmx.com: no sender authenticity information available from domain of postmaster@mail.citrix.com) identity=helo; client-ip=162.221.158.21; receiver=esa5.hc3370-68.iphmx.com; envelope-from="Andrew.Cooper3@citrix.com"; x-sender="postmaster@mail.citrix.com"; x-conformance=sidf_compatible IronPort-SDR: NyOsnJ7IflihsN/aJ5YxAqdAefA2y9paSYd0mInEqik9pyjrJNq3N8T+6ZZt7358GQ0RzFWXwo jgtAeFpSNNkpLYF+oI7eYexz+anjmDtXGxAEz8noM2CSOfLHXmnJpKPVX0aSui1FovZbKq/GuY inzAcZhRmY6gBVk2L1YegIKAR3dDzYeHhCbAMuyZfOMbZoYinpUEN3jMiskOywU3avfPb/EEOD fvtZhNZ6YuoW9atcIB3+teTom4If5vvBqHsTeznTIo3xO/uozhuXfx3RgQ3t7uU/IGyt2AKSpW 1PM= X-SBRS: 2.7 X-MesageID: 9705752 X-Ironport-Server: esa5.hc3370-68.iphmx.com X-Remote-IP: 162.221.158.21 X-Policy: $RELAYED X-IronPort-AV: E=Sophos;i="5.69,289,1571716800"; d="scan'208";a="9705752" From: Andrew Cooper To: Xen-devel Date: Sat, 7 Dec 2019 18:18:12 +0000 Message-ID: <20191207181813.30176-3-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.11.0 In-Reply-To: <20191207181813.30176-1-andrew.cooper3@citrix.com> References: <20191207181813.30176-1-andrew.cooper3@citrix.com> MIME-Version: 1.0 Subject: [Xen-devel] [PATCH v2 2/3] xen/banner: Drop the fig-to-oct.py script X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Cc: Juergen Gross , Stefano Stabellini , Julien Grall , Wei Liu , Konrad Rzeszutek Wilk , George Dunlap , Andrew Cooper , Jan Beulich , Ian Jackson Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" The script is 664 rather than 775, so the banner conversion doesn't actually work if $(PYTHON) is empty: /bin/sh: tools/fig-to-oct.py: Permission denied make[3]: *** [include/xen/compile.h] Error 126 make[3]: Leaving directory `/builds/xen-project/people/andyhhp/xen/xen' Fixing this is easy, but using python here is wasteful. compile.h doesn't need XEN_BANNER rendering in octal, and text is much more simple to handle. Replace fig-to-oct.py with a sed oneliner. While changing this logic, take the opportunity to optimise the banner space (and time on the serial port) by dropping trailing whitespace, which is 84 characters for current staging. Signed-off-by: Andrew Cooper --- CC: George Dunlap CC: Ian Jackson CC: Jan Beulich CC: Konrad Rzeszutek Wilk CC: Stefano Stabellini CC: Wei Liu CC: Julien Grall CC: Juergen Gross v2: * New Spotted by Gitlab CI, caused by `which` not being present in some of the CentOS containers. While this is more of a container bug than anything else, it does highlight that the build ought to cope. --- xen/Makefile | 5 ++++- xen/tools/fig-to-oct.py | 18 ------------------ 2 files changed, 4 insertions(+), 19 deletions(-) delete mode 100644 xen/tools/fig-to-oct.py diff --git a/xen/Makefile b/xen/Makefile index 99701e3165..13ae1b6011 100644 --- a/xen/Makefile +++ b/xen/Makefile @@ -163,6 +163,9 @@ delete-unfresh-files: @mv -f $@.tmp $@ # compile.h contains dynamic build info. Rebuilt on every 'make' invocation. +# +# For .banner sed-ary, strip trailing whitespace, escape backslashes, and wrap +# each line in '"...\n" \' to become a valid C string include/xen/compile.h: include/xen/compile.h.in .banner @sed -e 's/@@date@@/$(XEN_BUILD_DATE)/g' \ -e 's/@@time@@/$(XEN_BUILD_TIME)/g' \ @@ -176,7 +179,7 @@ include/xen/compile.h: include/xen/compile.h.in .banner -e 's!@@changeset@@!$(shell tools/scmversion $(XEN_ROOT) || echo "unavailable")!g' \ < include/xen/compile.h.in > $@.new @cat .banner - @$(PYTHON) tools/fig-to-oct.py < .banner >> $@.new + @sed -e 's_[ ]*$$__' -e 's_\\_\\\\_g' -e 's_\(.*\)_"\1\\n" \\_' < .banner >> $@.new @mv -f $@.new $@ include/asm-$(TARGET_ARCH)/asm-offsets.h: arch/$(TARGET_ARCH)/asm-offsets.s diff --git a/xen/tools/fig-to-oct.py b/xen/tools/fig-to-oct.py deleted file mode 100644 index db4fd32159..0000000000 --- a/xen/tools/fig-to-oct.py +++ /dev/null @@ -1,18 +0,0 @@ -#!/usr/bin/env python -import sys - -chars_per_line = 18 -chars_so_far = 0 - -sys.stdout.write('"') - -for char in sys.stdin.read(): - - sys.stdout.write("\\%03o" % ord(char)) - chars_so_far = chars_so_far + 1 - - if chars_so_far == chars_per_line: - chars_so_far = 0 - sys.stdout.write('" \\\n"') - -sys.stdout.write('"\n')