diff options
| -rw-r--r-- | Makefile | 15 | ||||
| -rw-r--r-- | config.c | 2 | ||||
| -rw-r--r-- | wmiistatus.c | 16 | 
3 files changed, 26 insertions, 7 deletions
| @@ -1,7 +1,14 @@ -wmiistatus: wmiistatus.c wmiistatus.h config.h config.c Makefile -	gcc -Wall -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wshadow -Wpointer-arith -Wcast-qual -Wsign-compare -g -c -o wmiistatus.o wmiistatus.c -	gcc -Wall -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wshadow -Wpointer-arith -Wcast-qual -Wsign-compare -g -c -o config.o config.c -	gcc -Wall -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wshadow -Wpointer-arith -Wcast-qual -Wsign-compare -g -o wmiistatus *.o +CFLAGS+=-Wall -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wshadow -Wpointer-arith -Wcast-qual -Wsign-compare +CFLAGS+=-g +CFLAGS+=-DPREFIX=\"\" + +wmiistatus: wmiistatus.o wmiistatus.h config.h config.o + +clean: +	rm *.o + +distclean: clean +	rm wmiistatus  install:  	install -m 755 -d $(DESTDIR)/usr/bin @@ -179,7 +179,7 @@ int load_configuration(const char *configfile) {  	fclose(handle);  	if (wmii_path == NULL) -		die("No wmii_path specified in configuration file"); +		exit(-4);  	return result;  } diff --git a/wmiistatus.c b/wmiistatus.c index 714da1a..1dd551e 100644 --- a/wmiistatus.c +++ b/wmiistatus.c @@ -49,6 +49,7 @@  #include <arpa/inet.h>  #include <glob.h>  #include <dirent.h> +#include <getopt.h>  #define _IS_WMIISTATUS_C  #include "wmiistatus.h" @@ -323,13 +324,24 @@ static bool process_runs(const char *path) {  	return (stat(procbuf, &statbuf) >= 0);  } -int main(void) { +int main(int argc, char *argv[]) {  	char part[512],  	     pathbuf[512],  	     *end;  	unsigned int i; -	load_configuration("/etc/wmiistatus.conf"); +	char *configfile = PREFIX "/etc/wmiistatus.conf"; +	int o, option_index = 0; +	struct option long_options[] = { +		{"config", required_argument, 0, 'c'}, +		{0, 0, 0, 0} +	}; + +	while ((o = getopt_long(argc, argv, "c:", long_options, &option_index)) != -1) +		if ((char)o == 'c') +			configfile = optarg; + +	load_configuration(configfile);  	cleanup_rbar_dir();  	if (wlan_interface)  		create_file(concat(order[ORDER_WLAN],"wlan")); | 
