From patchwork Wed Jan 10 21:36:15 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jerzy Grzegorek X-Patchwork-Id: 858577 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=busybox.net (client-ip=140.211.166.137; helo=fraxinus.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="iVlkzfB9"; dkim-atps=neutral Received: from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3zH2QB56qbz9sQm for ; Thu, 11 Jan 2018 08:36:34 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by fraxinus.osuosl.org (Postfix) with ESMTP id 29438886A2; Wed, 10 Jan 2018 21:36:32 +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 0yHTmKChY4V6; Wed, 10 Jan 2018 21:36:29 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by fraxinus.osuosl.org (Postfix) with ESMTP id BC45A87D00; Wed, 10 Jan 2018 21:36:29 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) by ash.osuosl.org (Postfix) with ESMTP id 618101C0AEA for ; Wed, 10 Jan 2018 21:36:28 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 5E0E789016 for ; Wed, 10 Jan 2018 21:36:28 +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 fCDbWIH0a+9b for ; Wed, 10 Jan 2018 21:36:27 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-lf0-f66.google.com (mail-lf0-f66.google.com [209.85.215.66]) by whitealder.osuosl.org (Postfix) with ESMTPS id 80EEC88F88 for ; Wed, 10 Jan 2018 21:36:27 +0000 (UTC) Received: by mail-lf0-f66.google.com with SMTP id j143so479192lfg.0 for ; Wed, 10 Jan 2018 13:36:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=8N6bNFfVVBAZeVguKSdufjgvyJ0lnE9yQCGuNONx2bY=; b=iVlkzfB9uSBJL/lXhFH0UPuWzfRK7eI5OAM92Zli9A+m3NC8i+Bnni5RTvExAGNrLP 2Hxxq1zAcOAZYvyKbmt/nGForeczaxXKhbixieWGhLSvIBeEBkjx2YihDBtjH5HhrkPM 86xXdKy3zcHUFPpQWPiR6rO7O42vFo5O3mkwvG+ozC4eD7z73oa0tnB4RR7p7Mb8Ita5 yifz2Gd27aQSPxIw76KI+kG2Ze2jHgHs+dqCPwJXKuVGgMNHoBMF8iZW4xOLO7S/hzIz vb/5xQ5E24gTbfb49IiA3RCvSm7fO4WgNpFoMYQDvBnRyRMC4LLBao/iluu1oZ2spamo RpHA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=8N6bNFfVVBAZeVguKSdufjgvyJ0lnE9yQCGuNONx2bY=; b=Orkxj9YfFud95e8RfPSScmtWUiz+Vke+K2hUOHVv8odqmu8HtPSIvmT2Z6curOS96I TrZezcSYUAnHudkMawvmC8O8tvJBOkyo/swrGpHhZAipP8xbIIJQxwtiSqwuVM/U5oIk CUOk55jS85cshqBtQ6pOZaE/y3ogsGUqBgcgp8ZB04t5mVa0QJcQ71ng0LCYNRZwox9d MhFxgF6ZV2EsMCu2JdrV9hrRlfuyWGrL+nzY4s1tD1eXllQ+5b+XSdsOQgXydJ5J4XmY m3DcpvypGoTp/uFEQqo7hoI0EYVARksbAucjT+JDKgV+2zM9a/q+VLDR1hUnlX6kMPVf 1oBQ== X-Gm-Message-State: AKGB3mKrB9U5HvXQXTGlVYMHE1Xwn/rsarqI2OHUCo45SpuGdxutzjTD Ax30dhiGO0Em6pZ/OzLM4rbLag== X-Google-Smtp-Source: ACJfBosta/bp6VTSq8KUuylOOaxeyF+F3UEjKuBAxAMOwMvzwvPznpDsvxR2sVdwyT9WsQ23OyUhfw== X-Received: by 10.46.20.25 with SMTP id u25mr12336743ljd.39.1515620185464; Wed, 10 Jan 2018 13:36:25 -0800 (PST) Received: from localhost.localdomain (93-181-142-99.internetia.net.pl. [93.181.142.99]) by smtp.gmail.com with ESMTPSA id g8sm3587191lji.90.2018.01.10.13.36.23 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Wed, 10 Jan 2018 13:36:24 -0800 (PST) From: Jerzy Grzegorek To: buildroot@buildroot.org Date: Wed, 10 Jan 2018 22:36:15 +0100 Message-Id: <1515620175-11260-1-git-send-email-jerzy.m.grzegorek@gmail.com> X-Mailer: git-send-email 1.9.1 Subject: [Buildroot] [PATCHv2 1/1] utils/checkpackagelib: add function to check of the default package source variable X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.24 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Thomas Petazzoni , Jerzy Grzegorek , Ricardo Martincoski MIME-Version: 1.0 Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" Signed-off-by: Jerzy Grzegorek Cc: Ricardo Martincoski Cc: Thomas Petazzoni --- Changes v1 -> v2 - remove unused variable (Ricardo Martincoski) - change warning url (Ricardo Martincoski) - add whitelist of packages (Ricardo Martincoski) utils/checkpackagelib/lib_mk.py | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/utils/checkpackagelib/lib_mk.py b/utils/checkpackagelib/lib_mk.py index 817e809..a0ed1ae 100644 --- a/utils/checkpackagelib/lib_mk.py +++ b/utils/checkpackagelib/lib_mk.py @@ -99,6 +99,33 @@ class PackageHeader(_CheckFunction): text] +class RemoveDefaultPackageSourceVariable(_CheckFunction): + packages_that_may_contain_default_source = ["binutils","gcc","gdb"] + PACKAGE_NAME = re.compile("/([^/]+)\.mk") + + def before(self): + package = self.PACKAGE_NAME.search(self.filename).group(1) + package_upper = package.replace("-", "_").upper() + self.package = package + self.FIND_SOURCE = re.compile( + "^{}_SOURCE\s*=\s*{}-\$\({}_VERSION\)\.tar\.gz" + .format(package_upper, package, package_upper)) + + def check_line(self, lineno, text): + if self.FIND_SOURCE.search(text): + + if self.package in self.packages_that_may_contain_default_source: + return ["{}:{}: this package may contain default value of " + "_SOURCE variable to remove ({}#generic-package-reference)" + .format(self.filename, lineno, self.url_to_manual), + text] + + return ["{}:{}: remove default value of _SOURCE variable " + "({}#generic-package-reference)" + .format(self.filename, lineno, self.url_to_manual), + text] + + class SpaceBeforeBackslash(_CheckFunction): TAB_OR_MULTIPLE_SPACES_BEFORE_BACKSLASH = re.compile(r"^.*( |\t)\\$")