From patchwork Sat Apr 17 03:45:24 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mark Weiman X-Patchwork-Id: 1908 Return-Path: Delivered-To: patchwork@archlinux.org Received: from mail.archlinux.org [95.216.189.61] by patchwork.archlinux.org with IMAP (fetchmail-6.4.18) for (single-drop); Sat, 17 Apr 2021 03:46:18 +0000 (UTC) Received: from mail.archlinux.org by mail.archlinux.org with LMTP id QK4BKQlaemDdEgQAK+/4rw (envelope-from ) for ; Sat, 17 Apr 2021 03:46:17 +0000 Received: from luna.archlinux.org (luna.archlinux.org [5.9.250.164]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-384) server-signature RSA-PSS (4096 bits)) (No client certificate requested) by mail.archlinux.org (Postfix) with ESMTPS id 443F5502E43; Sat, 17 Apr 2021 03:46:17 +0000 (UTC) Received: from luna.archlinux.org (luna.archlinux.org [127.0.0.1]) by luna.archlinux.org (Postfix) with ESMTP id 7E47A2C711; Sat, 17 Apr 2021 03:46:01 +0000 (UTC) Received: from luna.archlinux.org (luna.archlinux.org [127.0.0.1]) by luna.archlinux.org (Postfix) with ESMTP id E6E242C5FE for ; Sat, 17 Apr 2021 03:45:55 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.5 (2021-03-20) on luna.archlinux.org X-Spam-Level: X-Spam-Status: No, score=-2.3 required=5.0 tests=RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H4=0.001,RCVD_IN_MSPIKE_WL=0.001, T_DMARC_TESTS_FAIL=0.01 autolearn=failed autolearn_force=no version=3.4.5 X-Spam-BL-Results: [127.0.9.2] [127.0.0.19] Received: from mail.archlinux.org (mail.archlinux.org [95.216.189.61]) by luna.archlinux.org (Postfix) with ESMTPS for ; Sat, 17 Apr 2021 03:45:55 +0000 (UTC) Received: from mail.markzz.net (duna.markzz.net [209.50.56.197]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-384) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mail.archlinux.org (Postfix) with ESMTPS id 9FB3E502E09 for ; Sat, 17 Apr 2021 03:45:53 +0000 (UTC) Received: from localhost.localdomain (unknown [IPv6:2601:410:81:a4a0:3489:7d93:11:f11e]) by mail.markzz.net (Postfix) with ESMTPSA id 64A8E4109AC1 for ; Fri, 16 Apr 2021 23:45:49 -0400 (EDT) From: Mark Weiman To: pacman-dev@archlinux.org Date: Fri, 16 Apr 2021 23:45:24 -0400 Message-Id: <20210417034524.204755-6-mark.weiman@markzz.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210417034524.204755-1-mark.weiman@markzz.com> References: <20210416194209.191245-1-mark.weiman@markzz.com> <20210417034524.204755-1-mark.weiman@markzz.com> MIME-Version: 1.0 Subject: [pacman-dev] [PATCH 5/5] meson-make-symlink.sh: Make compatible with non-GNU ln X-BeenThere: pacman-dev@lists.archlinux.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Discussion list for pacman development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Discussion list for pacman development Errors-To: pacman-dev-bounces@lists.archlinux.org Sender: "pacman-dev" Authentication-Results: mail.archlinux.org; dkim=none; dmarc=none; spf=pass (mail.archlinux.org: domain of pacman-dev-bounces@lists.archlinux.org designates 5.9.250.164 as permitted sender) smtp.mailfrom=pacman-dev-bounces@lists.archlinux.org X-Rspamd-Queue-Id: 443F5502E43 X-Spamd-Result: default: False [4.49 / 15.00]; ARC_NA(0.00)[]; HAS_REPLYTO(0.00)[pacman-dev@lists.archlinux.org]; RCVD_COUNT_FIVE(0.00)[6]; RCVD_VIA_SMTP_AUTH(0.00)[]; FROM_HAS_DN(0.00)[]; NEURAL_SPAM(0.00)[0.874]; R_SPF_ALLOW(-0.20)[+ip4:5.9.250.164:c]; R_MISSING_CHARSET(2.50)[]; MIME_GOOD(-0.10)[text/plain]; REPLYTO_DOM_NEQ_FROM_DOM(0.00)[]; BROKEN_CONTENT_TYPE(1.50)[]; HAS_LIST_UNSUB(-0.01)[]; RCPT_COUNT_ONE(0.00)[1]; TO_DN_NONE(0.00)[]; GREYLIST(0.00)[pass,meta]; MID_CONTAINS_FROM(1.00)[]; MAILLIST(-0.20)[mailman]; RCVD_TLS_LAST(0.00)[]; DMARC_NA(0.00)[markzz.com]; R_DKIM_NA(0.00)[]; MIME_TRACE(0.00)[0:+]; ASN(0.00)[asn:24940, ipnet:5.9.0.0/16, country:DE]; FROM_NEQ_ENVFROM(0.00)[mark.weiman@markzz.com,pacman-dev-bounces@lists.archlinux.org]; FORGED_SENDER_MAILLIST(0.00)[] X-Rspamd-Server: mail.archlinux.org The "-T" flag is something available with GNU ln, but on other implementations of ln, "-T" is not an option. So, to make this script more portable, a strings check of ln for "GNU coreutils" is done to determine if "-T" should be used. Signed-off-by: Mark Weiman --- build-aux/meson-make-symlink.sh | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/build-aux/meson-make-symlink.sh b/build-aux/meson-make-symlink.sh index 501cd43d..24a0dd2c 100644 --- a/build-aux/meson-make-symlink.sh +++ b/build-aux/meson-make-symlink.sh @@ -4,9 +4,13 @@ set -eu # this is needed mostly because $DESTDIR is provided as a variable, # and we need to create the target directory... +# test if ln is GNU or not +LN_FLAG="-T" +strings /bin/ln | grep -q 'GNU coreutils' || LN_FLAG="" + mkdir -vp "$(dirname "${DESTDIR:-}$2")" if [ "$(dirname $1)" = . ]; then - ln -vfs -T "$1" "${DESTDIR:-}$2" + ln -vfs ${LN_FLAG} "$1" "${DESTDIR:-}$2" else - ln -vfs -T --relative "${DESTDIR:-}$1" "${DESTDIR:-}$2" + ln -vfs ${LN_FLAG} --relative "${DESTDIR:-}$1" "${DESTDIR:-}$2" fi