commit:     416dae40d938b83ecdc44de5e76f04721d5cf066
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat Dec  8 18:50:01 2018 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Dec  8 18:54:43 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=416dae40

dev-lang/nasm: backport default filename fix, bug #670944

Pulled upstream fix for input==output for single-argument
invocation from https://bugzilla.nasm.us/show_bug.cgi?id=3392529

Reported-by: Toralf Förster
Bug: https://bugs.gentoo.org/670944
Package-Manager: Portage-2.3.52, Repoman-2.3.12
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>

 .../files/nasm-2.14-default-path-BR-3392529.patch  | 41 ++++++++++++++++++++++
 .../nasm/{nasm-2.14.ebuild => nasm-2.14-r1.ebuild} |  1 +
 2 files changed, 42 insertions(+)

diff --git a/dev-lang/nasm/files/nasm-2.14-default-path-BR-3392529.patch 
b/dev-lang/nasm/files/nasm-2.14-default-path-BR-3392529.patch
new file mode 100644
index 00000000000..57cbb741505
--- /dev/null
+++ b/dev-lang/nasm/files/nasm-2.14-default-path-BR-3392529.patch
@@ -0,0 +1,41 @@
+https://bugzilla.nasm.us/show_bug.cgi?id=3392529
+https://bugs.gentoo.org/670944
+
+From 7b6371b9d35705ee3800082ca245f8dd289bb216 Mon Sep 17 00:00:00 2001
+From: "H. Peter Anvin (Intel)" <h...@zytor.com>
+Date: Tue, 20 Nov 2018 10:56:57 -0800
+Subject: [PATCH] BR 3392529: if the default output name is the same as input
+ -> nasm.out
+
+If no output filename is specified, then a default filename is used
+based on the input filename. If that ends up the *same* as the input
+filename, change the output filename to "nasm.out".
+
+Signed-off-by: H. Peter Anvin (Intel) <h...@zytor.com>
+---
+ asm/nasm.c | 11 ++++++++---
+ 1 file changed, 8 insertions(+), 3 deletions(-)
+
+--- a/asm/nasm.c
++++ b/asm/nasm.c
+@@ -514,9 +514,14 @@ int main(int argc, char **argv)
+      * is a preprocess mode, we're perfectly
+      * fine to output into stdout.
+      */
+-    if (!outname) {
+-        if (!(operating_mode & OP_PREPROCESS))
+-            outname = filename_set_extension(inname, ofmt->extension);
++    if (!outname && !(operating_mode & OP_PREPROCESS)) {
++        outname = filename_set_extension(inname, ofmt->extension);
++        if (!strcmp(outname, inname)) {
++            outname = "nasm.out";
++            nasm_error(ERR_WARNING,
++                       "default output file same as input, using `%s' for 
output\n",
++                       inname, outname);
++        }
+     }
+ 
+     depend_ptr = (depend_file || (operating_mode & OP_DEPEND))
+-- 
+2.19.2
+

diff --git a/dev-lang/nasm/nasm-2.14.ebuild b/dev-lang/nasm/nasm-2.14-r1.ebuild
similarity index 95%
rename from dev-lang/nasm/nasm-2.14.ebuild
rename to dev-lang/nasm/nasm-2.14-r1.ebuild
index 46c8d440a40..7a17a31be97 100644
--- a/dev-lang/nasm/nasm-2.14.ebuild
+++ b/dev-lang/nasm/nasm-2.14-r1.ebuild
@@ -34,6 +34,7 @@ S=${WORKDIR}/${P/_}
 
 PATCHES=(
        "${FILESDIR}"/${PN}-2.13.03-bsd-cp-doc.patch
+       "${FILESDIR}"/${P}-default-path-BR-3392529.patch
 )
 
 src_configure() {

Reply via email to