Received: by 2002:a05:6a11:4021:0:0:0:0 with SMTP id ky33csp253704pxb; Mon, 13 Sep 2021 18:28:09 -0700 (PDT) X-Google-Smtp-Source: ABdhPJw+GTo4BC15hsSsJj/oStgzDRYEROw6sx1P23KTMUBNTtQies8tacFA9eOzRQ9vUpmt4n7M X-Received: by 2002:a92:c70a:: with SMTP id a10mr9437021ilp.109.1631582888890; Mon, 13 Sep 2021 18:28:08 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1631582888; cv=none; d=google.com; s=arc-20160816; b=Knd0AMJ8M9aE2gfBHCWp/kNuzo59yzGLYrKliG8iLX6/x45TrkB0XqGXnPTTUZOco+ R9bgWepI/e0rmqpJeAmOlPN5OqG/JrYmeQZVzGVic7UQZTI/gUH+CMmoSR/70RDXM6b7 5KQLwnpkGQSkiYuykUZY2sObbX5neCjbUHztJ6rU9QhwQ+Y3h6Rc/f0Qdw6m3bn2vgV/ ZqiSL6/bduxwGDwEYYWFCCcPH6BIL4g8joekg76rT241McyhZ0uQsYUyO93Bc0yQy1kl e1jjPAnqjSFSnLrW/OaxrF23SJvTGiibcE2R0GzZM5GhaeraMPCbrydcExAVB0vyK/fI CdOA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:from:subject:mime-version:message-id:date :dkim-signature; bh=p2PhjhfGHPzRMVxAEYNgD/aavMWF7FNo4YbH8kVjAfs=; b=Sp7ShCLDQ8S+ecq5u4tVChDdYnGPUGmsjwm3ZJWCi5veohCGoBl+1q321sNBf+d00v TFTmKaaiTyXPDQDjBi5DCYQ00qxme30QBCzPP5mQTC8/E+oXFccNKT2daY1dTViBOKAL CKSJEeCIZ7ihP+8djB4RW+yyKo1/hQyoHAouw00oaevxbmZP9Tu65XH1WyjgtSEAZI5m FzBfwXWTAUkE1a4OzH02lltiOAgqFtM0b6l+WFJhKy9K24ZakxpE1izu+ymT+ADFcVJb 8DuIdDysZYf55gl8Hga6Zw7ueNu2OiTovrcD+9b7Btw4UH+71LB+XzKv0ffz2bjAw9x5 +1NA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=a3xaUwu2; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id b9si8837234ion.34.2021.09.13.18.27.58; Mon, 13 Sep 2021 18:28:08 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=a3xaUwu2; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235969AbhIMXgC (ORCPT + 99 others); Mon, 13 Sep 2021 19:36:02 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58826 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235007AbhIMXf7 (ORCPT ); Mon, 13 Sep 2021 19:35:59 -0400 Received: from mail-yb1-xb4a.google.com (mail-yb1-xb4a.google.com [IPv6:2607:f8b0:4864:20::b4a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 5744CC061574 for ; Mon, 13 Sep 2021 16:34:43 -0700 (PDT) Received: by mail-yb1-xb4a.google.com with SMTP id q17-20020a25b591000000b005a07d27bbdaso15064076ybj.3 for ; Mon, 13 Sep 2021 16:34:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=date:message-id:mime-version:subject:from:to:cc; bh=p2PhjhfGHPzRMVxAEYNgD/aavMWF7FNo4YbH8kVjAfs=; b=a3xaUwu2+vU/jm2XnXWRIje3mB6RH0kDujiREtfR7BZYAjcbrrdLzL/gpgriXOlXH8 kENATyILFr904Ps620RkMdlNQ6LHIKA9wS5UEjc+p9xt7MX5zSpdmg5wdbEaZ1SWPoQZ BvX0G4TaDrNljvn+oW+RcGcmwegOLqQVjIPle3sybqZmwOnIXBiV7P+mq0lZP8VdasaP OrgCQtZJxlonFb0M9iE1jWIo/dXGPUVdoVdDRZWeLggd2rIpjHY55O1xWCOPxpiBBfU5 9hnervHnmMX242Ap3M94WkOEfk4J4MGNBUUYqac2ce+CUx4mthn68WH0RpbUqny8aKAW ndyQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:date:message-id:mime-version:subject:from:to:cc; bh=p2PhjhfGHPzRMVxAEYNgD/aavMWF7FNo4YbH8kVjAfs=; b=txIpCzKhA7Z24flUjAlcD9Svz1my7/H/OWTm9bZafsshHcsfjnIogIXIJxBLQl/krO 7KA81vxre+QqE/kwBQUhnY3+vXZHOCEQQaW+WZA9PsjG5QvCyghsGYoEzUlwnEVD3Q7V NjIZS12F63sFDTLMND12k+ZRMD+jxuMajOyX1Phc34T5Wc3I6CjrB1poBR9mLMZCeMal LoJSdl5mqN/bQfaOGF//hzmpzjaSTmZay8Awa5GjTNC3zEX8fwZZbz/ckrScHfGyPrs4 WFiAlqeiy812rRWy1rngaSDIoKJYPHfsocO41ha05SrGtz82SKuCGeEUjALwYu0AKHkx Fj1A== X-Gm-Message-State: AOAM531iielYMIlga5qqx0BjoHl9C+gB4dztF9L5kEF3n03LgY7nrk7D 7DWaiXFfydYNF3BrLc81vdEBrWs= X-Received: from pcc-desktop.svl.corp.google.com ([2620:15c:2ce:200:f533:d5d5:c2b4:c981]) (user=pcc job=sendgmr) by 2002:a25:bc91:: with SMTP id e17mr18515191ybk.218.1631576082609; Mon, 13 Sep 2021 16:34:42 -0700 (PDT) Date: Mon, 13 Sep 2021 16:34:35 -0700 Message-Id: <20210913233435.24585-1-pcc@google.com> Mime-Version: 1.0 X-Mailer: git-send-email 2.33.0.309.g3052b89438-goog Subject: [PATCH] get_maintainer.pl: support running from non-top-level dir From: Peter Collingbourne To: Joe Perches Cc: Peter Collingbourne , linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org My workflow usually involves running scripts from a subdirectory of the kernel source tree. This fails with get_maintainer.pl because it assumes that it runs from the top level. Fix this assumption by setting $lk_path appropriately based on a check of $0 similar to what is in checkpatch.pl. This also requires fixing the VCS available checks to also check $lk_path. Signed-off-by: Peter Collingbourne Link: https://linux-review.googlesource.com/id/I1ceda4106b3f90d8608fc7911079d2eda1c1a0c6 --- scripts/get_maintainer.pl | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/scripts/get_maintainer.pl b/scripts/get_maintainer.pl index 2075db0c08b8..47474cb85ea7 100755 --- a/scripts/get_maintainer.pl +++ b/scripts/get_maintainer.pl @@ -114,7 +114,7 @@ my %VCS_cmds; my %VCS_cmds_git = ( "execute_cmd" => \&git_execute_cmd, - "available" => '(which("git") ne "") && (-e ".git")', + "available" => '(which("git") ne "") && (-e "${lk_path}.git")', "find_signers_cmd" => "git log --no-color --follow --since=\$email_git_since " . '--numstat --no-merges ' . @@ -154,7 +154,7 @@ my %VCS_cmds_git = ( my %VCS_cmds_hg = ( "execute_cmd" => \&hg_execute_cmd, - "available" => '(which("hg") ne "") && (-d ".hg")', + "available" => '(which("hg") ne "") && (-d "${lk_path}.hg")', "find_signers_cmd" => "hg log --date=\$email_hg_since " . "--template='HgCommit: {node}\\n" . @@ -333,6 +333,10 @@ if ($email && die "$P: Please select at least 1 email option\n"; } +if ($0 =~ m@(.*)/scripts/[^/]*$@ && top_of_kernel_tree($1)) { + $lk_path = "$1/"; +} + if ($tree && !top_of_kernel_tree($lk_path)) { die "$P: The current directory does not appear to be " . "a linux kernel source tree.\n"; -- 2.33.0.309.g3052b89438-goog