From unknown Sat Jun 14 14:25:01 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#31998 <31998@debbugs.gnu.org> To: bug#31998 <31998@debbugs.gnu.org> Subject: Status: Guile 2.2.3 fails to install with BSD sed Reply-To: bug#31998 <31998@debbugs.gnu.org> Date: Sat, 14 Jun 2025 21:25:01 +0000 retitle 31998 Guile 2.2.3 fails to install with BSD sed reassign 31998 guile submitter 31998 Ryan Schmidt severity 31998 normal thanks From debbugs-submit-bounces@debbugs.gnu.org Thu Jun 28 16:26:34 2018 Received: (at submit) by debbugs.gnu.org; 28 Jun 2018 20:26:35 +0000 Received: from localhost ([127.0.0.1]:38912 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fYdUw-0003m9-My for submit@debbugs.gnu.org; Thu, 28 Jun 2018 16:26:34 -0400 Received: from eggs.gnu.org ([208.118.235.92]:49780) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fYdJw-0003Up-1d for submit@debbugs.gnu.org; Thu, 28 Jun 2018 16:15:12 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fYdJp-0006gU-VF for submit@debbugs.gnu.org; Thu, 28 Jun 2018 16:15:06 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:40060) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1fYdJp-0006g8-Qw for submit@debbugs.gnu.org; Thu, 28 Jun 2018 16:15:05 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:40746) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fYdJo-0007QW-NB for bug-guile@gnu.org; Thu, 28 Jun 2018 16:15:05 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fYdJl-0006Yw-He for bug-guile@gnu.org; Thu, 28 Jun 2018 16:15:04 -0400 Received: from smtprelay04.ispgateway.de ([80.67.18.16]:41096) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1fYdJl-0006Um-By for bug-guile@gnu.org; Thu, 28 Jun 2018 16:15:01 -0400 Received: from [67.198.113.253] (helo=untitled-mac.internal.macports.net) by smtprelay04.ispgateway.de with esmtpsa (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.90_1) (envelope-from ) id 1fYdJi-0001y2-92 for bug-guile@gnu.org; Thu, 28 Jun 2018 22:14:58 +0200 From: Ryan Schmidt Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Mime-Version: 1.0 (Mac OS X Mail 10.3 \(3273\)) Subject: Guile 2.2.3 fails to install with BSD sed Message-Id: <14AA3BED-E772-4EAB-B2F8-8531CCF18485@macports.org> Date: Thu, 28 Jun 2018 15:14:56 -0500 To: bug-guile@gnu.org X-Mailer: Apple Mail (2.3273) X-Df-Sender: MzY4ODE4 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: submit X-Mailman-Approved-At: Thu, 28 Jun 2018 16:26:33 -0400 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.0 (------) Guile 2.2.3 fails to install when BSD sed was found by the configure = script. It works fine if GNU sed was found. The error we see is: sed: -i may not be used with stdin This problem was reported to MacPorts here: https://trac.macports.org/ticket/56748 The problem was introduced in this commit: This problem was introduced in = http://git.savannah.gnu.org/cgit/guile.git/commit/libguile/Makefile.am?id=3D= 81d2e352663bc5f80734312fec90f250b1fbe2e4 The problem is happening in libguile/Makefile.am which says: INSTANTIATE =3D = \ $(SED) -e 's,[@]pkgdatadir[@],$(pkgdatadir),g' = \ -e 's,[@]pkglibdir[@],$(pkglibdir),g' = \ -e = 's,[@]GUILE_EFFECTIVE_VERSION[@],$(GUILE_EFFECTIVE_VERSION),g' \ -i This usage of the -i flag (without an argument) is only compatible with = GNU sed. BSD sed requires an argument. Unfortunately I don't know of a way to specify that there should be no = backup file made that is compatible with both GNU and BSD sed. BSD sed = requires a space between the flag and the argument if the argument is = the empty string, like this: "-i ''"; "-i" and "-i''" are considered = errors. Conversely, GNU sed requires "-i" or "-i''"; "-i ''" is an = error. The only solution I know of is to specify a nonempty backup file = suffix, which will cause a backup file to be created, e.g. "-i.bak". If you want to be truly portable, I'm told you have to avoid the -i flag = entirely, because it's not in POSIX.