document that we don't launch mpv as perhaps expected
[cycon.git] / Makefile
blobbb5ca002a8215dea9ed675ef847733068e1c0c15
1 .SUFFIXES:
2 .SUFFIXES: .o .c
4 CFLAGS ?=
5 LDFLAGS ?=
7 PREFIX ?= /usr
8 BINDIR ?= $(PREFIX)/bin
9 SHAREDIR ?= $(PREFIX)/share
10 MANDIR ?= $(SHAREDIR)/man
12 CFLAGS += -std=c99 -D_POSIX_C_SOURCE=200809L -D_DEFAULT_SOURCE -D_XOPEN_SOURCE
14 # libcurl (only for scraping some session-id over HTTPS; meh.)
15 CFLAGS += $(shell pkg-config --cflags libcurl)
16 LDFLAGS += $(shell pkg-config --libs libcurl)
18 # libwebsockets
19 CFLAGS += $(shell pkg-config --cflags libwebsockets)
20 LDFLAGS += $(shell pkg-config --libs libwebsockets)
22 # pthreads
23 CFLAGS += -lpthread
24 LDFLAGS += -lpthread
26 # termkey
27 CFLAGS += $(shell pkg-config --cflags termkey)
28 LDFLAGS += $(shell pkg-config --libs termkey)
30 # unibilium
31 CFLAGS += $(shell pkg-config --cflags unibilium)
32 LDFLAGS += $(shell pkg-config --libs unibilium)
34 # yajl
35 CFLAGS += $(shell pkg-config --cflags yajl)
36 LDFLAGS += $(shell pkg-config --libs yajl)
38 # Debug
39 CFLAGS += -g -O0 -pedantic -Wall -Wextra -Werror -DWRITE_LOGS=1
41 default: all
42 all: cycon
44 %.o: %.c cycon.h macros.h
45 $(CC) $(CFLAGS) -c -o $@ $<
47 cycon: main.o cytube.o launch.o state.o ui.o util.o
48 $(CC) -o $@ $^ $(LDFLAGS)
50 .PHONY: clean
51 clean:
52 find -name '*.o' -delete
53 rm -f cycon
55 .PHONY: install
56 install: all
57 mkdir -p $(DESTDIR)$(BINDIR)
58 cp -f cycon $(DESTDIR)$(BINDIR)/
59 mkdir -p $(DESTDIR)$(MANDIR)/man1
60 cp -f cycon.1 $(DESTDIR)$(MANDIR)/man1/
62 .PHONY: uninstall
63 uninstall:
64 cd $(DESTDIR)$(BINDIR) && rm -f cycon
65 cd $(DESTDIR)$(MANDIR) && rm -f man1/cycon.1