libgit-thin: Better name for show-commit program
[git/libgit-gsoc.git] / libgit-thin / Makefile
blob460c5239de0ef5b3d36c30ad9cf48c32b41c546e
1 CC = gcc
2 GIT_SRC_DIR = ..
3 GIT_LIB = $(GIT_SRC_DIR)/libgit.a
4 GIT_XDIFF_LIB = $(GIT_SRC_DIR)/xdiff/lib.a
5 EXT_LIBS = -lz -lcrypto -lcheck
6 CFLAGS = -O0 -Wall -W -Wmissing-declarations -Wmissing-prototypes \
7 -Wredundant-decls -Wshadow -Wbad-function-cast -Wcast-qual
8 GIT_TEST_REPO := $(shell mktemp -dq /tmp/git-test-repo.XXXXXXXXXX)
9 GIT_ADD_HEADERS = -DSHA1_HEADER=\<openssl/sha.h\>
10 DOXYGEN_CONFIG = doxygen.conf
11 DOXYGEN_DIR = Documentation
13 BIN_PROGS = libgit-thin-check dump-log
15 all: libgit-thin-check
17 libgit-thin.a: libgit-thin.c libgit-thin.h
18 $(CC) $(CFLAGS) -c $< -I$(GIT_SRC_DIR) $(GIT_ADD_HEADERS)
19 ar cr $@ libgit-thin.o
21 libgit-thin-check: libgit-thin-check.c libgit-thin.a
22 $(CC) -o $@ $+ -I$(GIT_SRC_DIR) $(GIT_LIB) $(GIT_XDIFF_LIB) $(EXT_LIBS)
24 dump-log: dump-log.c libgit-thin.a
25 $(CC) -o $@ $+ -I$(GIT_SRC_DIR) $(GIT_LIB) $(GIT_XDIFF_LIB) $(EXT_LIBS)
27 check: libgit-thin-check
28 @./create-test-repo $(GIT_TEST_REPO) 1> /dev/null
29 @./$< $(GIT_TEST_REPO)
30 @rm -rf $(GIT_TEST_REPO)
32 .PHONY: doc git clean
34 doc:
35 @doxygen $(DOXYGEN_CONFIG)
37 git:
38 make -C $(GIT_SRC_DIR)
40 clean:
41 rm -rf $(DOXYGEN_DIR)
42 rm -f $(BIN_PROGS) *.o *~ *.a core.*