]> git.sur5r.net Git - i3/i3/commitdiff
Add version-option
authorAxel Wagner <mail@merovius.de>
Sat, 7 Aug 2010 01:50:22 +0000 (03:50 +0200)
committerAxel Wagner <mail@merovius.de>
Sat, 7 Aug 2010 01:50:22 +0000 (03:50 +0200)
i3bar/Makefile
i3bar/common.mk
i3bar/src/main.c

index 172a442d9999881d5cacfd0f7654d4cea5101e14..57af15e1b95c415463a09c91dc89f39569056fef 100644 (file)
@@ -14,5 +14,12 @@ src/%.o: src/%.c ${HEADERS}
        echo "CC $<"
        $(CC) $(CFLAGS) -c -o $@ $<
 
+install: all
+       echo "INSTALL"
+       $(INSTALL) -d -m 0755 $(DESTDIR)$(PREFIX)/bin
+       $(INSTALL) -m 0755 i3bar $(DESTDIR)$(PREFIX)/bin
+
 clean:
        rm src/*.o
+
+.PHONY: install clean
index e2be3aab4c93093ceff64e1a08f58b403568b748..655883144a66e7132cb38ee1af4ad0ca5ce3cbac 100644 (file)
@@ -1,9 +1,28 @@
+INSTALL=install
+DEBUG=1
+PREFIX=/usr
+
+# The escaping is absurd, but we need to escape for shell, sed, make, define
+GIT_VERSION:="$(shell git describe --tags --always) ($(shell git log --pretty=format:%cd --date=short -n1), branch $(shell [ -f .git/HEAD ] && sed 's/ref: refs\/heads\/\(.*\)/\\\\\\"\1\\\\\\"/g' .git/HEAD || echo 'unknown'))"
+
 CFLAGS += -Wall
 CFLAGS += -pipe
 CFLAGS += -Iinclude
 CFLAGS += -g
+CFLAGS += -DI3BAR_VERSION=\"${GIT_VERSION}\"
+
 LDFLAGS += -lev
 LDFLAGS += -lyajl
 LDFLAGS += -lxcb
 LDFLAGS += -lxcb-atom
+LDFLAGS += -L/usr/local/lib
+
+ifeq ($(DEBUG),1)
+CFLAGS += -g3
+else
+CFLAGS += -O2
+endif
+
 .SILENT:
+
+.PHONY: install clean
index 4cb2fcb226c137563d67c93ff508b40e5755e737..909106b3f5cf34b1923b652a8756c790b6e9e98d 100644 (file)
@@ -39,10 +39,11 @@ int main(int argc, char **argv) {
         { "command", required_argument, 0, 'c' },
         { "font",    required_argument, 0, 'f' },
         { "help",    no_argument,       0, 'h' },
+        { "version", no_argument,       0, 'v' },
         { NULL,      0,                 0, 0}
     };
 
-    while ((opt = getopt_long(argc, argv, "s:c:f:h", long_opt, &option_index)) != -1) {
+    while ((opt = getopt_long(argc, argv, "s:c:f:hv", long_opt, &option_index)) != -1) {
         switch (opt) {
             case 's':
                 socket_path = expand_path(optarg);
@@ -53,6 +54,9 @@ int main(int argc, char **argv) {
             case 'f':
                 fontname = strdup(optarg);
                 break;
+            case 'v':
+                printf("i3bar version " I3BAR_VERSION " © 2010 Axel Wagner and contributors\n");
+                exit(EXIT_SUCCESS);
             default:
                 printf("Usage: %s [-s socket_path] [-c command] [-f font] [-h]\n", argv[0]);
                 printf("-s <socket_path>: Connect to i3 via <socket_path>\n");