From 868aec96aca7e05c0e9920aa2e5184c2fdcf3d16 Mon Sep 17 00:00:00 2001 From: Mark Johnston Date: Tue, 6 Aug 2019 14:38:44 +0000 Subject: [PATCH] MFC r350432: Merge r3778 and r3779 from ELFToolchain. --- contrib/elftoolchain/elfcopy/main.c | 6 ++++++ contrib/elftoolchain/elfcopy/strip.1 | 17 +++++++++++++---- 2 files changed, 19 insertions(+), 4 deletions(-) diff --git a/contrib/elftoolchain/elfcopy/main.c b/contrib/elftoolchain/elfcopy/main.c index d3ee0a8be26..bc7c6fc4052 100644 --- a/contrib/elftoolchain/elfcopy/main.c +++ b/contrib/elftoolchain/elfcopy/main.c @@ -1187,6 +1187,12 @@ strip_main(struct elfcopy *ecp, int argc, char **argv) ecp->strip = STRIP_ALL; if (optind == argc) strip_usage(); + /* + * Only accept a single input file if an output file had been + * specified. + */ + if (outfile != NULL && argc != (optind + 1)) + strip_usage(); for (i = optind; i < argc; i++) create_file(ecp, argv[i], outfile); diff --git a/contrib/elftoolchain/elfcopy/strip.1 b/contrib/elftoolchain/elfcopy/strip.1 index b1633a51693..1e56466a29e 100644 --- a/contrib/elftoolchain/elfcopy/strip.1 +++ b/contrib/elftoolchain/elfcopy/strip.1 @@ -23,7 +23,7 @@ .\" .\" $Id: strip.1 3642 2018-10-14 14:24:28Z jkoshy $ .\" -.Dd September 17, 2011 +.Dd July 27, 2019 .Dt STRIP 1 .Os .Sh NAME @@ -51,7 +51,15 @@ .Sh DESCRIPTION The .Nm -utility is used to discard information from ELF objects. +utility is used to discard information from the ELF objects +specified by the arguments +.Ar . +.Pp +If an explicit output file name is not specified using the +.Fl o +option, the +.Nm +utility will modify its input arguments in-place. .Pp The .Nm @@ -65,8 +73,9 @@ Print a help message and exit. Remove all content except that which would be used for debugging. .It Fl o Ar outputfile | Fl -output-file= Ns Ar outputfile Write the stripped object to file -.Ar outputfile . -The default behaviour is to modify objects in place. +.Ar outputfile +instead of modifying the input in-place. +Only a single input object should be specified if this option is used. .It Fl p | Fl -preserve-dates Preserve the object's access and modification times. .It Fl s | Fl -strip-all -- 2.45.0