DESTDIR=/ CC=cc MYCFLAGS=-DHARDCODED_DNS=`(host ipv6.sijanec.eu || echo no_host_program_on_build_host) | tail -n1 | rev | cut -d\ -f1 | rev` -O0 -Wall -Wextra -Wformat -pedantic -g -Isrc -Itmp -Itiny-AES-c # -fsanitize=address MYLDFLAGS=-lresolv -lmd default: travnik metainfo.o metainfo utils tmp: mkdir -p tmp travnik: src/main.c src/dht.c src/tcp.c src/bencoding.c $(CC) $(MYCFLAGS) $(CFLAGS) $< -o$@ $(MYLDFLAGS) $(LDFLAGS) metainfo: src/metainfo.c src/metainfo.h $(CC) $(MYCFLAGS) $(CFLAGS) $< -o$@ $(MYLDFLAGS) $(LDFLAGS) metainfo.o: src/metainfo.c src/metainfo.h $(CC) -fPIC $(MYCFLAGS) $(CFLAGS) $< -o$@ $(MYLDFLAGS) $(LDFLAGS) utils: tmp/midpoint tmp/bencoding tmp/dns tmp/info tmp/%: utils/%.c src/dht.c src/tcp.c tmp $(CC) $(MYCFLAGS) $(CFLAGS) $< -o$@ $(MYLDFLAGS) $(LDFLAGS) install: mkdir -p $(DESTDIR)/usr/bin/ cp travnik $(DESTDIR)/usr/bin/ distclean: clean clean: rm -rf travnik tmp test-eval prepare: sudo apt install libmicrohttpd-dev build-essential default-libmysqlclient-dev -y valgrind: valgrind --error-exitcode=59 --leak-check=full --show-leak-kinds=all --track-origins=yes --verbose --log-file=valgrind-out.txt $(CMD) .PHONY: default install distclean clean prepare valgrind utils