make UI tips context-dependent
[cycon.git] / Makefile
blobec23f6908ff24d82d220cb99043dc318f2467813
1 .SUFFIXES:
2 .SUFFIXES: .o .c
4 CFLAGS ?=
5 LDFLAGS ?=
6 PKG_CONFIG ?= pkg-config
8 PREFIX ?= /usr
9 BINDIR ?= $(PREFIX)/bin
10 SHAREDIR ?= $(PREFIX)/share
11 MANDIR ?= $(SHAREDIR)/man
13 CFLAGS += -std=c99 -D_POSIX_C_SOURCE=200809L -D_DEFAULT_SOURCE -D_XOPEN_SOURCE
15 # libcurl (only for scraping some session-id over HTTPS; meh.)
16 CFLAGS += $(shell $(PKG_CONFIG) --cflags libcurl)
17 LDFLAGS += $(shell $(PKG_CONFIG) --libs libcurl)
19 # libwebsockets
20 CFLAGS += $(shell $(PKG_CONFIG) --cflags libwebsockets)
21 LDFLAGS += $(shell $(PKG_CONFIG) --libs libwebsockets)
23 # pthreads
24 CFLAGS += -lpthread
25 LDFLAGS += -lpthread
27 # termkey
28 CFLAGS += $(shell $(PKG_CONFIG) --cflags termkey)
29 LDFLAGS += $(shell $(PKG_CONFIG) --libs termkey)
31 # unibilium
32 CFLAGS += $(shell $(PKG_CONFIG) --cflags unibilium)
33 LDFLAGS += $(shell $(PKG_CONFIG) --libs unibilium)
35 # yajl
36 CFLAGS += $(shell $(PKG_CONFIG) --cflags yajl)
37 LDFLAGS += $(shell $(PKG_CONFIG) --libs yajl)
39 # Debug
40 # CFLAGS += -g -O0 -pedantic -Wall -Wextra -Werror -DWRITE_LOGS=1
42 default: all
43 all: cycon
45 %.o: %.c cycon.h macros.h
46 $(CC) $(CFLAGS) -c -o $@ $<
48 cycon: main.o cytube.o launch.o state.o ui.o util.o
49 $(CC) -o $@ $^ $(LDFLAGS)
51 .PHONY: clean
52 clean:
53 find -name '*.o' -delete
54 rm -f cycon
56 .PHONY: install
57 install: all
58 mkdir -p $(DESTDIR)$(BINDIR)
59 cp -f cycon $(DESTDIR)$(BINDIR)/
60 mkdir -p $(DESTDIR)$(MANDIR)/man1
61 cp -f cycon.1 $(DESTDIR)$(MANDIR)/man1/
63 .PHONY: uninstall
64 uninstall:
65 cd $(DESTDIR)$(BINDIR) && rm -f cycon
66 cd $(DESTDIR)$(MANDIR) && rm -f man1/cycon.1