From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id SIF+MFve6mfFfSEAWB0awg (envelope-from ) for ; Mon, 31 Mar 2025 14:26:35 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=simark.ca; s=mail; t=1743445595; bh=1bORdk8vKjBtHZf4Ij/Q0EdYXDtCBdn56OVolx5Q79A=; h=Date:Subject:To:References:From:In-Reply-To:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From; b=A9MFw1iFljGHrCdtlwmb/0sEGYTSYp8SbYTNG3wbSoeVA53kwG/ZYk+CxUuuejfE3 Ju9Hz176NrwR0OATotMz9R6IB1YPYfazdgYr83O79TwvlIvUNyDXjldjg08Ycu8EBB 7nka0uZg8SAYZCBzgXWh+txqPh4HCFmLJ0t5DBZs= Received: by simark.ca (Postfix, from userid 112) id C292A1E0C3; Mon, 31 Mar 2025 14:26:35 -0400 (EDT) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-25) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-5.4 required=5.0 tests=ARC_SIGNED,ARC_VALID,BAYES_00, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED autolearn=unavailable autolearn_force=no version=4.0.1 Authentication-Results: simark.ca; dkim=pass (1024-bit key; unprotected) header.d=simark.ca header.i=@simark.ca header.a=rsa-sha256 header.s=mail header.b=fuog+plM; dkim=pass (1024-bit key) header.d=simark.ca header.i=@simark.ca header.a=rsa-sha256 header.s=mail header.b=uAbxxnj6; dkim-atps=neutral Received: from server2.sourceware.org (server2.sourceware.org [8.43.85.97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by simark.ca (Postfix) with ESMTPS id 5EBF61E0C0 for ; Mon, 31 Mar 2025 14:26:35 -0400 (EDT) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id F1916385695B for ; Mon, 31 Mar 2025 18:26:34 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org F1916385695B Authentication-Results: sourceware.org; dkim=pass (1024-bit key, unprotected) header.d=simark.ca header.i=@simark.ca header.a=rsa-sha256 header.s=mail header.b=fuog+plM; dkim=pass (1024-bit key) header.d=simark.ca header.i=@simark.ca header.a=rsa-sha256 header.s=mail header.b=uAbxxnj6 Received: from simark.ca (simark.ca [158.69.221.121]) by sourceware.org (Postfix) with ESMTPS id 672F2385695B for ; Mon, 31 Mar 2025 18:26:04 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 672F2385695B Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=simark.ca Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=simark.ca ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 672F2385695B Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=158.69.221.121 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1743445564; cv=none; b=r3/P5VxMm2l+hyqmsnhN9K5vze7eAmy+kqMFUn/IscXZ71qByS/xMZTBf7pA02iY3kEjUjMJEYKIevSlQz5POwA4UGXHdAzkLMJ/iZxqzuZFUacbAV7mH9BSrICRNXOCTgFrJc5RYUyZntqQfEGZBuUYSCB3DF02lQiGOLVDT0A= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1743445564; c=relaxed/simple; bh=1bORdk8vKjBtHZf4Ij/Q0EdYXDtCBdn56OVolx5Q79A=; h=DKIM-Signature:DKIM-Signature:Message-ID:Date:MIME-Version: Subject:To:From; b=sfxh3tE+90Cvz7UAbBYI21ia2RbXQmcI4cjzasdjA0VEaZs4WwCIzEYL1WRrfcPbwYzsm6lYJt5NCZFxFklX+hc11xjwKcC/jrJ2KxbiJhqeeVvsUz07/kNlEhMXklp2ahCOjkOeeavEAknhb1eR4QTHIlu8+Do+EootY6sVi+M= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 672F2385695B DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=simark.ca; s=mail; t=1743445564; bh=1bORdk8vKjBtHZf4Ij/Q0EdYXDtCBdn56OVolx5Q79A=; h=Date:Subject:To:References:From:In-Reply-To:From; b=fuog+plMZ6zDnXqOH0r+cyV36iuw8aNkCsoYt0G3kGpHfema8sJZAuaciY3Lnyg7u 6LTojj6sWG5TgMgGfM1w6zOJ2aytOiCfeVNd5F5VPXYDXtGZuzYfI+ZgTf/h00xy/s PIURRqu2Ax3IhJM7s2aP2ercaAAb1FLpMFPoHibE= Received: by simark.ca (Postfix, from userid 112) id 223971E100; Mon, 31 Mar 2025 14:26:04 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=simark.ca; s=mail; t=1743445562; bh=1bORdk8vKjBtHZf4Ij/Q0EdYXDtCBdn56OVolx5Q79A=; h=Date:Subject:To:References:From:In-Reply-To:From; b=uAbxxnj6mt4yqLNg2eORhVR58oYGAkju8VLLxFZEQ3QPPml1u3dYuMktSXu2zhGGs rm9gPVV1X4197KoHOCnxnvEOPzwoVldXCxJXBta194sK2nxZ+tZEeQ38tNoiQ7MkbK 6kTdkLhLk4AV/9NlRQV7cQ+b+uTu9qaBRUi41G2g= Received: from [172.16.0.192] (96-127-217-162.qc.cable.ebox.net [96.127.217.162]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by simark.ca (Postfix) with ESMTPSA id 6768F1E0C0; Mon, 31 Mar 2025 14:26:02 -0400 (EDT) Message-ID: Date: Mon, 31 Mar 2025 14:26:01 -0400 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 1/2] gcore: improve shell use To: Keith Seitz , Sam James , gdb-patches@sourceware.org References: <6be92d7ddcd426fd79a3fb9f44c49abea6e16aef.1743188332.git.sam@gentoo.org> <944054f1-6a59-4115-8340-95d399b931e2@redhat.com> Content-Language: fr From: Simon Marchi In-Reply-To: <944054f1-6a59-4115-8340-95d399b931e2@redhat.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gdb-patches-bounces~public-inbox=simark.ca@sourceware.org On 3/29/25 7:42 PM, Keith Seitz wrote: > Hi, > > On 3/28/25 11:58 AM, Sam James wrote: >> * Use bash tests, i.e. '[[' and ']]', instead of POSIX '[' and ']' or >> 'test' which have their own pitfalls, given gcore has a bash shebang already. >> >> * Use $() subshell syntax rather than `backticks`. > > Nice. I didn't actually know that '[['/']]' was preferred. I'll have > to remember that. > >> --- >> gdb/gcore-1.in | 22 +++++++++++----------- >> 1 file changed, 11 insertions(+), 11 deletions(-) >> >> diff --git a/gdb/gcore-1.in b/gdb/gcore-1.in >> index c0979a51db3..edd807b86dc 100644 >> --- a/gdb/gcore-1.in >> +++ b/gdb/gcore-1.in >> @@ -139,14 +139,14 @@ if test "x$binary_path" = x. ; then >> # The gcore script was not found in ".", which means the script >> # was called from somewhere else in $PATH by "sh gcore". >> # Extract the correct path now. >> - binary_path_from_env=`which "$0"` >> - binary_path=`dirname "$binary_path_from_env"` >> + binary_path_from_env=$(which "$0") >> + binary_path=$(dirname "$binary_path_from_env") > > This uses 'which', and we've (downstream distros) run into issues > with this and package dependencies. Since this strictly bash, > can we use "command -v" here instead? Can you clarify what kind of issues? Do you mean that `which` may not be available? shellcheck points out this: In gcore line 69: OPTARG="${OPTARG#'$OPT'}" ^----^ SC2016 (info): Expressions don't expand in single quotes, use double quotes for that. I actually can't figure out what this "if" does: if [[ "$OPT" = "-" ]]; then OPT="${OPTARG%%=*}" OPTARG="${OPTARG#'$OPT'}" OPTARG="${OPTARG#=}" fi Any idea? Simon