diff options
author | cbdev <cb@cbcdn.com> | 2019-12-11 23:24:23 +0100 |
---|---|---|
committer | cbdev <cb@cbcdn.com> | 2019-12-11 23:24:23 +0100 |
commit | 9624d46436576b415c639ea7390012cdd95c88f7 (patch) | |
tree | fb3aadbaf01fcee5da8ecdb8355ff191341b666d /midimonster.c | |
parent | 48e12201f5c57cda581bc0c713d99da6524c49a8 (diff) | |
parent | f6d6eefe9bb9934f4fa3e665734d746f02471cdb (diff) | |
download | midimonster-9624d46436576b415c639ea7390012cdd95c88f7.tar.gz midimonster-9624d46436576b415c639ea7390012cdd95c88f7.tar.bz2 midimonster-9624d46436576b415c639ea7390012cdd95c88f7.zip |
Merge branch 'master' into rtpmidi
Diffstat (limited to 'midimonster.c')
-rw-r--r-- | midimonster.c | 27 |
1 files changed, 24 insertions, 3 deletions
diff --git a/midimonster.c b/midimonster.c index e6c0842..67614d4 100644 --- a/midimonster.c +++ b/midimonster.c @@ -223,8 +223,12 @@ static void event_free(){ } } +static void version(){ + fprintf(stderr, "MIDIMonster %s\n", MIDIMONSTER_VERSION); +} + static int usage(char* fn){ - fprintf(stderr, "MIDIMonster v0.3\n"); + version(); fprintf(stderr, "Usage:\n"); fprintf(stderr, "\t%s <configfile>\n", fn); return EXIT_FAILURE; @@ -263,6 +267,21 @@ static int platform_initialize(){ return 0; } +static int args_parse(int argc, char** argv, char** cfg_file){ + size_t u; + for(u = 1; u < argc; u++){ + if(!strcmp(argv[u], "-v") || !strcmp(argv[u], "--version")){ + version(); + return 1; + } + + //if nothing else matches, it's probably the configuration file + *cfg_file = argv[u]; + } + + return 0; +} + int main(int argc, char** argv){ fd_set all_fds, read_fds; event_collection* secondary = NULL; @@ -271,8 +290,10 @@ int main(int argc, char** argv){ managed_fd* signaled_fds = NULL; int rv = EXIT_FAILURE, error, maxfd = -1; char* cfg_file = DEFAULT_CFG; - if(argc > 1){ - cfg_file = argv[1]; + + //parse commandline arguments + if(args_parse(argc, argv, &cfg_file)){ + return EXIT_FAILURE; } if(platform_initialize()){ |