summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile40
1 files changed, 27 insertions, 13 deletions
diff --git a/Makefile b/Makefile
index c8366ca..706b742 100644
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,5 @@
1# $Id$ 1# $Id$
2 2
3CC?=gcc
4
5# Linux flavour 3# Linux flavour
6# PREFIX?=/opt/diet 4# PREFIX?=/opt/diet
7# LIBOWFAT_HEADERS=$(PREFIX)/include 5# LIBOWFAT_HEADERS=$(PREFIX)/include
@@ -18,16 +16,26 @@ LIBOWFAT_HEADERS=$(PREFIX)/libowfat
18LIBOWFAT_LIBRARY=$(PREFIX)/libowfat 16LIBOWFAT_LIBRARY=$(PREFIX)/libowfat
19 17
20BINDIR?=$(PREFIX)/bin 18BINDIR?=$(PREFIX)/bin
19STRIP?=strip
21 20
22#FEATURES+=-DWANT_V6 21#FEATURES+=-DWANT_V4_ONLY
23
24#FEATURES+=-DWANT_ACCESSLIST_BLACK 22#FEATURES+=-DWANT_ACCESSLIST_BLACK
25#FEATURES+=-DWANT_ACCESSLIST_WHITE 23#FEATURES+=-DWANT_ACCESSLIST_WHITE
24#FEATURES+=-DWANT_DYNAMIC_ACCESSLIST
26 25
27#FEATURES+=-DWANT_SYNC_LIVE 26#FEATURES+=-DWANT_SYNC_LIVE
28#FEATURES+=-DWANT_IP_FROM_QUERY_STRING 27#FEATURES+=-DWANT_IP_FROM_QUERY_STRING
29#FEATURES+=-DWANT_COMPRESSION_GZIP 28
30#FEATURES+=-DWANT_COMPRESSION_GZIP_ALWAYS 29# If you want gzip support to be compiled in, uncomment the next include.
30# You can further modify the behaviour by setting DWANT_COMPRESSION_GZIP_ALWAYS
31# in Makefile.gzip
32include Makefile.gzip
33
34# If you want zstd support to be compiled in, uncomment the next include.
35# You can further modify the behaviour by setting DWANT_COMPRESSION_ZSTD_ALWAYS
36# in Makefile.zstd
37#include Makefile.zstd
38
31#FEATURES+=-DWANT_LOG_NETWORKS 39#FEATURES+=-DWANT_LOG_NETWORKS
32#FEATURES+=-DWANT_RESTRICT_STATS 40#FEATURES+=-DWANT_RESTRICT_STATS
33#FEATURES+=-DWANT_IP_FROM_PROXY 41#FEATURES+=-DWANT_IP_FROM_PROXY
@@ -39,18 +47,24 @@ BINDIR?=$(PREFIX)/bin
39#FEATURES+=-DWANT_DEV_RANDOM 47#FEATURES+=-DWANT_DEV_RANDOM
40FEATURES+=-DWANT_FULLSCRAPE 48FEATURES+=-DWANT_FULLSCRAPE
41 49
50# You need libowfat version 0.34 to allow for automatic release of chunks during
51# full scrape transfer, if you rely on an older versions, enable this flag
52#FEATURES+=-DWANT_NO_AUTO_FREE
53
42# Is enabled on BSD systems by default in trackerlogic.h 54# Is enabled on BSD systems by default in trackerlogic.h
43# on Linux systems you will need -lbds 55# on Linux systems the include Makefile adds -lbsd
44#FEATURES+=-DWANT_ARC4RANDOM 56#include Makefile.arc4random
45 57
46#FEATURES+=-D_DEBUG_HTTPERROR 58#FEATURES+=-D_DEBUG_HTTPERROR
59#FEATURES+=-D_DEBUG_RANDOMTORRENTS
60
61GIT_VERSION=$(shell sh -c 'command -v git >/dev/null && test -d .git && git rev-parse HEAD || echo _git_or_commit_not_found_')
47 62
48OPTS_debug=-D_DEBUG -g -ggdb # -pg -fprofile-arcs -ftest-coverage 63OPTS_debug=-D_DEBUG -g -ggdb # -pg -fprofile-arcs -ftest-coverage
49OPTS_production=-O3 64OPTS_production=-O3
50 65
51CFLAGS+=-I$(LIBOWFAT_HEADERS) -Wall -pipe -Wextra #-ansi -pedantic 66CFLAGS+=-I$(LIBOWFAT_HEADERS) -DGIT_VERSION=$(GIT_VERSION) -Wall -pipe -pthread -Wextra #-ansi -pedantic
52LDFLAGS+=-L$(LIBOWFAT_LIBRARY) -lowfat -pthread -lpthread -lz 67LDFLAGS+=-L$(LIBOWFAT_LIBRARY) -lowfat -pthread
53#LDFLAGS+=-lbsd
54 68
55BINARY =opentracker 69BINARY =opentracker
56HEADERS=trackerlogic.h scan_urlencoded_query.h ot_mutex.h ot_stats.h ot_vector.h ot_clean.h ot_udp.h ot_iovec.h ot_fullscrape.h ot_accesslist.h ot_http.h ot_livesync.h ot_rijndael.h 70HEADERS=trackerlogic.h scan_urlencoded_query.h ot_mutex.h ot_stats.h ot_vector.h ot_clean.h ot_udp.h ot_iovec.h ot_fullscrape.h ot_accesslist.h ot_http.h ot_livesync.h ot_rijndael.h
@@ -71,7 +85,7 @@ CFLAGS_debug = $(CFLAGS) $(OPTS_debug) $(FEATURES)
71 85
72$(BINARY): $(OBJECTS) $(HEADERS) 86$(BINARY): $(OBJECTS) $(HEADERS)
73 $(CC) -o $@ $(OBJECTS) $(LDFLAGS) 87 $(CC) -o $@ $(OBJECTS) $(LDFLAGS)
74 strip $@ 88 $(STRIP) $@
75$(BINARY).debug: $(OBJECTS_debug) $(HEADERS) 89$(BINARY).debug: $(OBJECTS_debug) $(HEADERS)
76 $(CC) -o $@ $(OBJECTS_debug) $(LDFLAGS) 90 $(CC) -o $@ $(OBJECTS_debug) $(LDFLAGS)
77proxy: $(OBJECTS_proxy) $(HEADERS) 91proxy: $(OBJECTS_proxy) $(HEADERS)
@@ -89,4 +103,4 @@ clean:
89 rm -rf opentracker opentracker.debug *.o *~ 103 rm -rf opentracker opentracker.debug *.o *~
90 104
91install: 105install:
92 install -m 755 opentracker $(BINDIR) 106 install -m 755 opentracker $(DESTDIR)$(BINDIR)