perl / Makefileon commit Extract some utilities from git-svn to allow extracting Git::SVN. (c2768fa)
   1#
   2# Makefile for perl support modules and routine
   3#
   4makfile:=perl.mak
   5modules =
   6
   7PERL_PATH_SQ = $(subst ','\'',$(PERL_PATH))
   8prefix_SQ = $(subst ','\'',$(prefix))
   9localedir_SQ = $(subst ','\'',$(localedir))
  10
  11ifndef V
  12        QUIET = @
  13endif
  14
  15all install instlibdir: $(makfile)
  16        $(QUIET)$(MAKE) -f $(makfile) $@
  17
  18clean:
  19        $(QUIET)test -f $(makfile) && $(MAKE) -f $(makfile) $@ || exit 0
  20        $(RM) ppport.h
  21        $(RM) $(makfile)
  22        $(RM) $(makfile).old
  23        $(RM) PM.stamp
  24
  25$(makfile): PM.stamp
  26
  27ifdef NO_PERL_MAKEMAKER
  28instdir_SQ = $(subst ','\'',$(prefix)/lib)
  29
  30modules += Git
  31modules += Git/I18N
  32modules += Git/SVN/Memoize/YAML
  33modules += Git/SVN/Fetcher
  34modules += Git/SVN/Editor
  35modules += Git/SVN/Prompt
  36modules += Git/SVN/Ra
  37modules += Git/SVN/Utils
  38
  39$(makfile): ../GIT-CFLAGS Makefile
  40        echo all: private-Error.pm Git.pm Git/I18N.pm > $@
  41        set -e; \
  42        for i in $(modules); \
  43        do \
  44                if test $$i = $${i%/*}; \
  45                then \
  46                        subdir=; \
  47                else \
  48                        subdir=/$${i%/*}; \
  49                fi; \
  50                echo '  $(RM) blib/lib/'$$i'.pm' >> $@; \
  51                echo '  mkdir -p blib/lib'$$subdir >> $@; \
  52                echo '  cp '$$i'.pm blib/lib/'$$i'.pm' >> $@; \
  53        done
  54        echo '  $(RM) blib/lib/Error.pm' >> $@
  55        '$(PERL_PATH_SQ)' -MError -e 'exit($$Error::VERSION < 0.15009)' || \
  56        echo '  cp private-Error.pm blib/lib/Error.pm' >> $@
  57        echo install: >> $@
  58        set -e; \
  59        for i in $(modules); \
  60        do \
  61                if test $$i = $${i%/*}; \
  62                then \
  63                        subdir=; \
  64                else \
  65                        subdir=/$${i%/*}; \
  66                fi; \
  67                echo '  $(RM) "$$(DESTDIR)$(instdir_SQ)/'$$i'.pm"' >> $@; \
  68                echo '  mkdir -p "$$(DESTDIR)$(instdir_SQ)'$$subdir'"' >> $@; \
  69                echo '  cp '$$i'.pm "$$(DESTDIR)$(instdir_SQ)/'$$i'.pm"' >> $@; \
  70        done
  71        echo '  $(RM) "$$(DESTDIR)$(instdir_SQ)/Error.pm"' >> $@
  72        '$(PERL_PATH_SQ)' -MError -e 'exit($$Error::VERSION < 0.15009)' || \
  73        echo '  cp private-Error.pm "$$(DESTDIR)$(instdir_SQ)/Error.pm"' >> $@
  74        echo instlibdir: >> $@
  75        echo '  echo $(instdir_SQ)' >> $@
  76else
  77$(makfile): Makefile.PL ../GIT-CFLAGS
  78        $(PERL_PATH) $< PREFIX='$(prefix_SQ)' INSTALL_BASE='' --localedir='$(localedir_SQ)'
  79endif
  80
  81# this is just added comfort for calling make directly in perl dir
  82# (even though GIT-CFLAGS aren't used yet. If ever)
  83../GIT-CFLAGS:
  84        $(MAKE) -C .. GIT-CFLAGS