Merge branch 'maint'
[git] / contrib / svn-fe / Makefile
1 all:: svn-fe$X
2
3 CC = gcc
4 RM = rm -f
5 MV = mv
6
7 CFLAGS = -g -O2 -Wall
8 LDFLAGS =
9 ALL_CFLAGS = $(CFLAGS)
10 ALL_LDFLAGS = $(LDFLAGS)
11 EXTLIBS =
12
13 GIT_LIB = ../../libgit.a
14 VCSSVN_LIB = ../../vcs-svn/lib.a
15 LIBS = $(VCSSVN_LIB) $(GIT_LIB) $(EXTLIBS)
16
17 QUIET_SUBDIR0 = +$(MAKE) -C # space to separate -C and subdir
18 QUIET_SUBDIR1 =
19
20 ifneq ($(findstring $(MAKEFLAGS),w),w)
21 PRINT_DIR = --no-print-directory
22 else # "make -w"
23 NO_SUBDIR = :
24 endif
25
26 ifneq ($(findstring $(MAKEFLAGS),s),s)
27 ifndef V
28         QUIET_CC      = @echo '   ' CC $@;
29         QUIET_LINK    = @echo '   ' LINK $@;
30         QUIET_SUBDIR0 = +@subdir=
31         QUIET_SUBDIR1 = ;$(NO_SUBDIR) echo '   ' SUBDIR $$subdir; \
32                         $(MAKE) $(PRINT_DIR) -C $$subdir
33 endif
34 endif
35
36 svn-fe$X: svn-fe.o $(VCSSVN_LIB) $(GIT_LIB)
37         $(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ svn-fe.o \
38                 $(ALL_LDFLAGS) $(LIBS)
39
40 svn-fe.o: svn-fe.c ../../vcs-svn/svndump.h
41         $(QUIET_CC)$(CC) -I../../vcs-svn -o $*.o -c $(ALL_CFLAGS) $<
42
43 svn-fe.html: svn-fe.txt
44         $(QUIET_SUBDIR0)../../Documentation $(QUIET_SUBDIR1) \
45                 MAN_TXT=../contrib/svn-fe/svn-fe.txt \
46                 ../contrib/svn-fe/$@
47
48 svn-fe.1: svn-fe.txt
49         $(QUIET_SUBDIR0)../../Documentation $(QUIET_SUBDIR1) \
50                 MAN_TXT=../contrib/svn-fe/svn-fe.txt \
51                 ../contrib/svn-fe/$@
52         $(MV) ../../Documentation/svn-fe.1 .
53
54 ../../vcs-svn/lib.a: FORCE
55         $(QUIET_SUBDIR0)../.. $(QUIET_SUBDIR1) vcs-svn/lib.a
56
57 ../../libgit.a: FORCE
58         $(QUIET_SUBDIR0)../.. $(QUIET_SUBDIR1) libgit.a
59
60 clean:
61         $(RM) svn-fe$X svn-fe.o svn-fe.html svn-fe.xml svn-fe.1
62
63 .PHONY: all clean FORCE