forked from eden-emu/eden
		
	Merge pull request #1691 from linkmauve/improve-sdl-options
SDL2 Frontend: Use argv[0], add a --version, and reorder options
This commit is contained in:
		
						commit
						24bd57b6bf
					
				
					 1 changed files with 20 additions and 9 deletions
				
			
		|  | @ -20,6 +20,7 @@ | ||||||
| #include "common/logging/log.h" | #include "common/logging/log.h" | ||||||
| #include "common/logging/backend.h" | #include "common/logging/backend.h" | ||||||
| #include "common/logging/filter.h" | #include "common/logging/filter.h" | ||||||
|  | #include "common/scm_rev.h" | ||||||
| #include "common/scope_exit.h" | #include "common/scope_exit.h" | ||||||
| 
 | 
 | ||||||
| #include "core/settings.h" | #include "core/settings.h" | ||||||
|  | @ -34,11 +35,17 @@ | ||||||
| #include "video_core/video_core.h" | #include "video_core/video_core.h" | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| static void PrintHelp() | static void PrintHelp(const char *argv0) | ||||||
| { | { | ||||||
|     std::cout << "Usage: citra [options] <filename>" << std::endl; |     std::cout << "Usage: " << argv0 << " [options] <filename>\n" | ||||||
|     std::cout << "--help, -h            Display this information" << std::endl; |                  "-g, --gdbport=NUMBER  Enable gdb stub on port NUMBER\n" | ||||||
|     std::cout << "--gdbport, -g number  Enable gdb stub on port number" << std::endl; |                  "-h, --help            Display this help and exit\n" | ||||||
|  |                  "-v, --version         Output version information and exit\n"; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | static void PrintVersion() | ||||||
|  | { | ||||||
|  |     std::cout << "Citra " << Common::g_scm_branch << " " << Common::g_scm_desc << std::endl; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| /// Application entry point
 | /// Application entry point
 | ||||||
|  | @ -51,18 +58,16 @@ int main(int argc, char **argv) { | ||||||
|     std::string boot_filename; |     std::string boot_filename; | ||||||
| 
 | 
 | ||||||
|     static struct option long_options[] = { |     static struct option long_options[] = { | ||||||
|         { "help", no_argument, 0, 'h' }, |  | ||||||
|         { "gdbport", required_argument, 0, 'g' }, |         { "gdbport", required_argument, 0, 'g' }, | ||||||
|  |         { "help", no_argument, 0, 'h' }, | ||||||
|  |         { "version", no_argument, 0, 'v' }, | ||||||
|         { 0, 0, 0, 0 } |         { 0, 0, 0, 0 } | ||||||
|     }; |     }; | ||||||
| 
 | 
 | ||||||
|     while (optind < argc) { |     while (optind < argc) { | ||||||
|         char arg = getopt_long(argc, argv, ":hg:", long_options, &option_index); |         char arg = getopt_long(argc, argv, "g:hv", long_options, &option_index); | ||||||
|         if (arg != -1) { |         if (arg != -1) { | ||||||
|             switch (arg) { |             switch (arg) { | ||||||
|             case 'h': |  | ||||||
|                 PrintHelp(); |  | ||||||
|                 return 0; |  | ||||||
|             case 'g': |             case 'g': | ||||||
|                 errno = 0; |                 errno = 0; | ||||||
|                 gdb_port = strtoul(optarg, &endarg, 0); |                 gdb_port = strtoul(optarg, &endarg, 0); | ||||||
|  | @ -73,6 +78,12 @@ int main(int argc, char **argv) { | ||||||
|                     exit(1); |                     exit(1); | ||||||
|                 } |                 } | ||||||
|                 break; |                 break; | ||||||
|  |             case 'h': | ||||||
|  |                 PrintHelp(argv[0]); | ||||||
|  |                 return 0; | ||||||
|  |             case 'v': | ||||||
|  |                 PrintVersion(); | ||||||
|  |                 return 0; | ||||||
|             } |             } | ||||||
|         } else { |         } else { | ||||||
|             boot_filename = argv[optind]; |             boot_filename = argv[optind]; | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 bunnei
						bunnei