]> git.sur5r.net Git - i3/i3status/blob - Makefile
Support for (Debian) GNU/kFreeBSD
[i3/i3status] / Makefile
1 CFLAGS+=-Wall -Wshadow -Wpointer-arith -Wcast-qual -Wsign-compare
2 CFLAGS+=-g
3 CFLAGS+=-std=gnu99
4 CFLAGS+=-pedantic
5 CFLAGS+=-DPREFIX=\"\"
6 CFLAGS+=-I.
7
8 VERSION=$(shell git describe --tags --abbrev=0)
9
10 ifeq ($(shell uname),Linux)
11 CFLAGS+=-DLINUX
12 CFLAGS+=-D_GNU_SOURCE
13 endif
14
15 ifeq ($(shell uname),GNU/kFreeBSD)
16 CFLAGS+=-lbsd
17 endif
18
19 # Define this if you want i3status to spit out dzen2-compatible output on stdout
20 #CFLAGS+=-DDZEN
21 CFLAGS+=$(EXTRA_CFLAGS)
22
23 src/%.o: src/%.c
24         @$(CC) $(CFLAGS) -c -o $@ $<
25         @echo " CC $<"
26
27 %.o: %.c %.h
28         @$(CC) $(CFLAGS) -c -o $@ $<
29         @echo " CC $<"
30
31 i3status: src/general.o src/config.o src/get_load.o src/output.o src/get_cpu_temperature.o src/process_runs.o src/get_eth_info.o src/get_ip_addr.o src/get_wireless_info.o src/get_battery_info.o src/get_ipv6_addr.o i3status.o
32         @$(CC) $(LDFLAGS) -o $@ src/*.o *.o
33         @echo " LD $@"
34
35 clean:
36         rm -f *.o src/*.o
37
38 distclean: clean
39         rm -f i3status
40
41 install:
42         install -m 755 -d $(DESTDIR)/usr/bin
43         install -m 755 -d $(DESTDIR)/etc
44         install -m 755 -d $(DESTDIR)/usr/share/man/man1
45         install -m 755 i3status $(DESTDIR)/usr/bin/i3status
46         install -m 644 i3status.conf $(DESTDIR)/etc/i3status.conf
47         install -m 644 i3status.1 $(DESTDIR)/usr/share/man/man1
48
49 release:
50         [ -f i3status-${VERSION} ] || rm -rf i3status-${VERSION}
51         mkdir i3status-${VERSION}
52         find . -maxdepth 1 -type f \( -regex ".*\.\(c\|conf\|1\|h\)" -or -name "Makefile" \) -exec cp '{}' i3status-${VERSION} \;
53         tar cjf i3status-${VERSION}.tar.bz2 i3status-${VERSION}
54         rm -rf i3status-${VERSION}
55
56 all: i3status