]> git.ipfire.org Git - thirdparty/git.git/blame - perl/Makefile
GIT-VERSION-GEN: support non-standard $GIT_DIR path
[thirdparty/git.git] / perl / Makefile
CommitLineData
f848718a
AR
1#
2# Makefile for perl support modules and routine
3#
4makfile:=perl.mak
1fd8f97f 5modules =
f848718a
AR
6
7PERL_PATH_SQ = $(subst ','\'',$(PERL_PATH))
8prefix_SQ = $(subst ','\'',$(prefix))
5e9637c6 9localedir_SQ = $(subst ','\'',$(localedir))
f848718a 10
2314c947 11ifndef V
74f2b2a8
SP
12 QUIET = @
13endif
14
f848718a 15all install instlibdir: $(makfile)
74f2b2a8 16 $(QUIET)$(MAKE) -f $(makfile) $@
f848718a
AR
17
18clean:
74f2b2a8 19 $(QUIET)test -f $(makfile) && $(MAKE) -f $(makfile) $@ || exit 0
f848718a
AR
20 $(RM) ppport.h
21 $(RM) $(makfile)
22 $(RM) $(makfile).old
ee9be067
JH
23 $(RM) PM.stamp
24
25$(makfile): PM.stamp
f848718a
AR
26
27ifdef NO_PERL_MAKEMAKER
28instdir_SQ = $(subst ','\'',$(prefix)/lib)
1fd8f97f
JN
29
30modules += Git
31modules += Git/I18N
10c2aa59 32modules += Git/IndexInfo
29499c0b 33modules += Git/SVN
1fd8f97f
JN
34modules += Git/SVN/Memoize/YAML
35modules += Git/SVN/Fetcher
36modules += Git/SVN/Editor
3d9be15f 37modules += Git/SVN/GlobSpec
b74fda1c 38modules += Git/SVN/Log
b772cb99 39modules += Git/SVN/Migration
1fd8f97f
JN
40modules += Git/SVN/Prompt
41modules += Git/SVN/Ra
c2768fa1 42modules += Git/SVN/Utils
1fd8f97f 43
f848718a 44$(makfile): ../GIT-CFLAGS Makefile
5eb660ec 45 echo all: private-Error.pm Git.pm Git/I18N.pm > $@
1fd8f97f
JN
46 set -e; \
47 for i in $(modules); \
48 do \
73abda3b
JN
49 if test $$i = $${i%/*}; \
50 then \
51 subdir=; \
52 else \
53 subdir=/$${i%/*}; \
54 fi; \
1fd8f97f 55 echo ' $(RM) blib/lib/'$$i'.pm' >> $@; \
73abda3b 56 echo ' mkdir -p blib/lib'$$subdir >> $@; \
1fd8f97f
JN
57 echo ' cp '$$i'.pm blib/lib/'$$i'.pm' >> $@; \
58 done
058fb414
BC
59 echo ' $(RM) blib/lib/Error.pm' >> $@
60 '$(PERL_PATH_SQ)' -MError -e 'exit($$Error::VERSION < 0.15009)' || \
61 echo ' cp private-Error.pm blib/lib/Error.pm' >> $@
f848718a 62 echo install: >> $@
1fd8f97f
JN
63 set -e; \
64 for i in $(modules); \
65 do \
73abda3b
JN
66 if test $$i = $${i%/*}; \
67 then \
68 subdir=; \
69 else \
70 subdir=/$${i%/*}; \
71 fi; \
1fd8f97f 72 echo ' $(RM) "$$(DESTDIR)$(instdir_SQ)/'$$i'.pm"' >> $@; \
01a1a4bc 73 echo ' mkdir -p "$$(DESTDIR)$(instdir_SQ)'$$subdir'"' >> $@; \
1fd8f97f
JN
74 echo ' cp '$$i'.pm "$$(DESTDIR)$(instdir_SQ)/'$$i'.pm"' >> $@; \
75 done
3696c4ce 76 echo ' $(RM) "$$(DESTDIR)$(instdir_SQ)/Error.pm"' >> $@
058fb414 77 '$(PERL_PATH_SQ)' -MError -e 'exit($$Error::VERSION < 0.15009)' || \
3696c4ce 78 echo ' cp private-Error.pm "$$(DESTDIR)$(instdir_SQ)/Error.pm"' >> $@
f848718a
AR
79 echo instlibdir: >> $@
80 echo ' echo $(instdir_SQ)' >> $@
81else
82$(makfile): Makefile.PL ../GIT-CFLAGS
5e9637c6 83 $(PERL_PATH) $< PREFIX='$(prefix_SQ)' INSTALL_BASE='' --localedir='$(localedir_SQ)'
f848718a
AR
84endif
85
86# this is just added comfort for calling make directly in perl dir
87# (even though GIT-CFLAGS aren't used yet. If ever)
88../GIT-CFLAGS:
89 $(MAKE) -C .. GIT-CFLAGS