|  | @@ -2,6 +2,12 @@
 | 
	
		
			
				|  |  |     file Copyright.txt or https://cmake.org/licensing for details.  */
 | 
	
		
			
				|  |  |  #include "cmConfigureFileCommand.h"
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +#include <set>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +#include <cm/string_view>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +#include "cm_static_string_view.hxx"
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  #include "cmExecutionStatus.h"
 | 
	
		
			
				|  |  |  #include "cmMakefile.h"
 | 
	
		
			
				|  |  |  #include "cmMessageType.h"
 | 
	
	
		
			
				|  | @@ -56,6 +62,18 @@ bool cmConfigureFileCommand(std::vector<std::string> const& args,
 | 
	
		
			
				|  |  |    bool copyOnly = false;
 | 
	
		
			
				|  |  |    bool escapeQuotes = false;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +  static std::set<cm::string_view> noopOptions = {
 | 
	
		
			
				|  |  | +    /* Legacy.  */
 | 
	
		
			
				|  |  | +    "IMMEDIATE"_s,
 | 
	
		
			
				|  |  | +    /* Handled by NewLineStyle member.  */
 | 
	
		
			
				|  |  | +    "NEWLINE_STYLE"_s,
 | 
	
		
			
				|  |  | +    "LF"_s,
 | 
	
		
			
				|  |  | +    "UNIX"_s,
 | 
	
		
			
				|  |  | +    "CRLF"_s,
 | 
	
		
			
				|  |  | +    "WIN32"_s,
 | 
	
		
			
				|  |  | +    "DOS"_s,
 | 
	
		
			
				|  |  | +  };
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |    std::string unknown_args;
 | 
	
		
			
				|  |  |    bool atOnly = false;
 | 
	
		
			
				|  |  |    for (unsigned int i = 2; i < args.size(); ++i) {
 | 
	
	
		
			
				|  | @@ -70,12 +88,8 @@ bool cmConfigureFileCommand(std::vector<std::string> const& args,
 | 
	
		
			
				|  |  |        escapeQuotes = true;
 | 
	
		
			
				|  |  |      } else if (args[i] == "@ONLY") {
 | 
	
		
			
				|  |  |        atOnly = true;
 | 
	
		
			
				|  |  | -    } else if (args[i] == "IMMEDIATE") {
 | 
	
		
			
				|  |  | -      /* Ignore legacy option.  */
 | 
	
		
			
				|  |  | -    } else if (args[i] == "NEWLINE_STYLE" || args[i] == "LF" ||
 | 
	
		
			
				|  |  | -               args[i] == "UNIX" || args[i] == "CRLF" || args[i] == "WIN32" ||
 | 
	
		
			
				|  |  | -               args[i] == "DOS") {
 | 
	
		
			
				|  |  | -      /* Options handled by NewLineStyle member above.  */
 | 
	
		
			
				|  |  | +    } else if (noopOptions.find(args[i]) != noopOptions.end()) {
 | 
	
		
			
				|  |  | +      /* Ignore no-op options.  */
 | 
	
		
			
				|  |  |      } else {
 | 
	
		
			
				|  |  |        unknown_args += " ";
 | 
	
		
			
				|  |  |        unknown_args += args[i];
 |