aboutsummaryrefslogtreecommitdiff
path: root/Makefile
blob: 3d78e6735fcc38cb609a097debb9b0b97653da63 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# Temporary development value, real default will be /usr/local
export PREFIX           ?= $(shell pwd)/ftag_prefix
# Temporary development value, real default will be $HOME/.cache/ftag
export FTAG_CACHE_DIR   ?= $(shell pwd)/ftag_cache
# Temporary development value, real default will be $HOME/.config/ftag
export FTAG_CONFIG_DIR  ?= $(shell pwd)/ftag_config

export PROG             ?= ftag
export CFLAGS           ?= -O0 -g3
export LDFLAGS          ?=
export LIBS             ?=



export FTAG_VERSION := 0.1
FTAG_ARCHIVE_DIR    := ftag-$(FTAG_VERSION)
FTAG_ARCHIVE        := ftag-$(FTAG_VERSION).tar.gz

export __CFLAGS := -std=c99 -Wall \
                   -DFTAG_PREFIX=\"$(PREFIX)\" \
                   -DFTAG_CACHE_DIR=\"$(FTAG_CACHE_DIR)\" \
                   -DFTAG_CONFIG_DIR=\"$(FTAG_CONFIG_DIR)\" \
                   -DFTAG_VERSION=\"$(FTAG_VERSION)\" \
                   -D_POSIX_C_SOURCE=200809L \
                   $(shell pkg-config --cflags sqlite3)
export __LIBS   := $(shell pkg-config --libs sqlite3)

all: $(PROG)

$(PROG):
	make -C src
	mv src/$(PROG) ./

# Create cache and config directories at compile time since they will be used by
# the user who compiled ftag
# TODO: create this directories from "ftag init"
	mkdir -p $(FTAG_CACHE_DIR)
	mkdir -p $(FTAG_CONFIG_DIR)

install: $(PROG)
	mkdir -p $(PREFIX)/bin
	install --mode=0755 $(PROG) $(PREFIX)/bin/

	mkdir -p $(PREFIX)/share/ftag/sql
	install --mode=0644 sql/init.sql $(PREFIX)/share/ftag/sql/

clean:
	make -C src clean
	rm -rf $(PROG) ftag-$(FTAG_VERSION) ftag-$(FTAG_VERSION)

dist:
	mkdir -p $(FTAG_ARCHIVE_DIR) \
                 $(FTAG_ARCHIVE_DIR)/src \
                 $(FTAG_ARCHIVE_DIR)/sql
	cp README.org COPYING Makefile $(FTAG_ARCHIVE_DIR)/
	cp src/main.c src/Makefile $(FTAG_ARCHIVE_DIR)/src/
	cp sql/init.sql $(FTAG_ARCHIVE_DIR)/sql/
	tar -czf $(FTAG_ARCHIVE) $(FTAG_ARCHIVE_DIR)

.PHONY: all clean install dist