summaryrefslogtreecommitdiff
path: root/devel/scmgit-base
diff options
context:
space:
mode:
authorbjs <bjs>2007-12-12 04:22:20 +0000
committerbjs <bjs>2007-12-12 04:22:20 +0000
commit9f173eb1346316e949ce198e1f5e92c1bb32cb34 (patch)
tree0874ec10bd0dd12432f3db42b4dc269fbedcddd7 /devel/scmgit-base
parente148ec38d554ba94e229b8746e79b78aa71c18dd (diff)
downloadpkgsrc-9f173eb1346316e949ce198e1f5e92c1bb32cb34.tar.gz
Switch GIT to use a meta-pkg hierarchy like, for example, devel/subversion.
Also, update to 1.5.3.7. Fixes since v1.5.3.6 -------------------- * git-send-email added 8-bit contents to the payload without marking it as 8-bit in a CTE header. * "git-bundle create a.bndl HEAD" dereferenced the symref and did not record the ref as 'HEAD'; this prevented a bundle from being used as a normal source of git-clone. * The code to reject nonsense command line of the form "git-commit -a paths..." and "git-commit --interactive paths..." were broken. * Adding a signature that is not ASCII-only to an original commit that is ASCII-only would make the result non-ASCII. "git-format-patch -s" did not mark such a message correctly with MIME encoding header. * git-add sometimes did not mark the resulting index entry stat-clean. This affected only cases when adding the contents with the same length as the previously staged contents, and the previous staging made the index entry "racily clean". * git-commit did not honor GIT_INDEX_FILE the user had in the environment. * When checking out a revision, git-checkout did not report where the updated HEAD is if you happened to have a file called HEAD in the work tree. * "git-rev-list --objects" mishandled a tree that points at a submodule. * "git cvsimport" was not ready for packed refs that "git gc" can produce and gave incorrect results. * Many scripted Porcelains were confused when you happened to have a file called "HEAD" in your work tree. * Miscellaneous updates to the user manual and documentation.
Diffstat (limited to 'devel/scmgit-base')
-rw-r--r--devel/scmgit-base/DESCR9
-rw-r--r--devel/scmgit-base/Makefile57
-rw-r--r--devel/scmgit-base/PLIST192
-rw-r--r--devel/scmgit-base/distinfo12
-rw-r--r--devel/scmgit-base/patches/patch-aa91
-rw-r--r--devel/scmgit-base/patches/patch-ab22
-rw-r--r--devel/scmgit-base/patches/patch-ae16
-rw-r--r--devel/scmgit-base/patches/patch-af29
-rw-r--r--devel/scmgit-base/patches/patch-ag12
-rw-r--r--devel/scmgit-base/patches/patch-ah34
-rw-r--r--devel/scmgit-base/patches/patch-ai17
11 files changed, 491 insertions, 0 deletions
diff --git a/devel/scmgit-base/DESCR b/devel/scmgit-base/DESCR
new file mode 100644
index 00000000000..424e54fcb40
--- /dev/null
+++ b/devel/scmgit-base/DESCR
@@ -0,0 +1,9 @@
+GIT is a "directory content manager" designed to handle absolutely massive
+projects with speed and efficiency, and the release of the 2.6.12 (and later)
+versions of the Linux kernel as well as more and more other projects switching
+to it would indicate that it does this task well.
+
+GIT falls in the category of distributed version control software, similar
+to e.g. GNU Arch or Monotone (or, in the commercial world, BitKeeper). Every
+GIT working directory is a full-fledged repository with full revision tracking
+capabilities, not dependent on network access to a central server.
diff --git a/devel/scmgit-base/Makefile b/devel/scmgit-base/Makefile
new file mode 100644
index 00000000000..e8ab5be7e9d
--- /dev/null
+++ b/devel/scmgit-base/Makefile
@@ -0,0 +1,57 @@
+# $NetBSD: Makefile,v 1.1.1.1 2007/12/12 04:22:20 bjs Exp $
+#
+
+.include "${.CURDIR}/../scmgit/Makefile.common"
+
+PKGNAME= scmgit-base-${GIT_VERSION}
+COMMENT= GIT Tree History Storage Tool (base package)
+
+PKG_DESTDIR_SUPPORT= user-destdir
+
+CONFLICTS+= git-[0-9]* # misc/git
+
+USE_LANGUAGES= c99
+USE_TOOLS+= perl:run sh:run wish:run
+
+MAKE_ENV+= CURLDIR=${BUILDLINK_PREFIX.curl:Q}
+MAKE_ENV+= PYTHON_PATH=${PYTHONBIN:Q}
+
+BUILD_TARGET= all
+INSTALL_TARGET= install
+
+PERL5_PACKLIST= auto/Git/.packlist
+PERL5_CONFIGURE_DIRS= ${WRKSRC}/perl
+
+.include "../../mk/bsd.fast.prefs.mk"
+.include "../../lang/python/application.mk"
+
+NEEDS_SUBPROCESS_PY!= \
+ if ok=`${PYTHONBIN} -c 'import subprocess; print "OK"' 2>/dev/null` \
+ && ${TEST} "$$ok" = "OK"; then echo "no"; else echo "yes"; fi
+.if ${NEEDS_SUBPROCESS_PY} == "yes"
+PLIST_SUBST+= IF_NEEDS_SUBPROCESS_PY=""
+.else
+PLIST_SUBST+= IF_NEEDS_SUBPROCESS_PY="@comment "
+.endif
+
+#.include "../../mk/emacs.mk" # XXX TODO (see patch-ad)
+
+## XXX Do all the BSDs fit this category?
+#
+.if ${OPSYS} == "NetBSD"
+CHECK_BUILTIN.iconv:=yes
+. include "../../converters/libiconv/builtin.mk"
+CHECK_BUILTIN.iconv:=no
+. if ${ICONV_TYPE} == "native"
+CFLAGS+= -DOLD_ICONV
+. endif
+.endif
+
+.include "../../lang/perl5/module.mk"
+.include "../../converters/libiconv/buildlink3.mk"
+.include "../../devel/zlib/buildlink3.mk"
+.include "../../security/openssl/buildlink3.mk"
+.include "../../textproc/expat/buildlink3.mk"
+.include "../../www/curl/buildlink3.mk"
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/devel/scmgit-base/PLIST b/devel/scmgit-base/PLIST
new file mode 100644
index 00000000000..752af8b20a9
--- /dev/null
+++ b/devel/scmgit-base/PLIST
@@ -0,0 +1,192 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2007/12/12 04:22:20 bjs Exp $
+bin/git
+bin/git-add
+bin/git-add--interactive
+bin/git-am
+bin/git-annotate
+bin/git-apply
+bin/git-archimport
+bin/git-archive
+bin/git-bisect
+bin/git-blame
+bin/git-branch
+bin/git-bundle
+bin/git-cat-file
+bin/git-check-attr
+bin/git-check-ref-format
+bin/git-checkout
+bin/git-checkout-index
+bin/git-cherry
+bin/git-cherry-pick
+bin/git-citool
+bin/git-clean
+bin/git-clone
+bin/git-commit
+bin/git-commit-tree
+bin/git-config
+bin/git-convert-objects
+bin/git-count-objects
+bin/git-cvsexportcommit
+bin/git-cvsimport
+bin/git-cvsserver
+bin/git-daemon
+bin/git-describe
+bin/git-diff
+bin/git-diff-files
+bin/git-diff-index
+bin/git-diff-tree
+bin/git-fast-import
+bin/git-fetch
+bin/git-fetch--tool
+bin/git-fetch-pack
+bin/git-filter-branch
+bin/git-fmt-merge-msg
+bin/git-for-each-ref
+bin/git-format-patch
+bin/git-fsck
+bin/git-fsck-objects
+bin/git-gc
+bin/git-get-tar-commit-id
+bin/git-grep
+bin/git-gui
+bin/git-hash-object
+bin/git-http-fetch
+bin/git-http-push
+bin/git-imap-send
+bin/git-index-pack
+bin/git-init
+bin/git-init-db
+bin/git-instaweb
+bin/git-local-fetch
+bin/git-log
+bin/git-lost-found
+bin/git-ls-files
+bin/git-ls-remote
+bin/git-ls-tree
+bin/git-mailinfo
+bin/git-mailsplit
+bin/git-merge
+bin/git-merge-base
+bin/git-merge-file
+bin/git-merge-index
+bin/git-merge-octopus
+bin/git-merge-one-file
+bin/git-merge-ours
+bin/git-merge-recursive
+bin/git-merge-resolve
+bin/git-merge-stupid
+bin/git-merge-subtree
+bin/git-merge-tree
+bin/git-mergetool
+bin/git-mktag
+bin/git-mktree
+bin/git-mv
+bin/git-name-rev
+bin/git-pack-objects
+bin/git-pack-redundant
+bin/git-pack-refs
+bin/git-parse-remote
+bin/git-patch-id
+bin/git-peek-remote
+bin/git-prune
+bin/git-prune-packed
+bin/git-pull
+bin/git-push
+bin/git-quiltimport
+bin/git-read-tree
+bin/git-rebase
+bin/git-rebase--interactive
+bin/git-receive-pack
+bin/git-reflog
+bin/git-relink
+bin/git-remote
+bin/git-repack
+bin/git-repo-config
+bin/git-request-pull
+bin/git-rerere
+bin/git-reset
+bin/git-rev-list
+bin/git-rev-parse
+bin/git-revert
+bin/git-rm
+bin/git-runstatus
+bin/git-send-email
+bin/git-send-pack
+bin/git-sh-setup
+bin/git-shell
+bin/git-shortlog
+bin/git-show
+bin/git-show-branch
+bin/git-show-index
+bin/git-show-ref
+bin/git-ssh-fetch
+bin/git-ssh-pull
+bin/git-ssh-push
+bin/git-ssh-upload
+bin/git-stash
+bin/git-status
+bin/git-stripspace
+bin/git-submodule
+bin/git-svn
+bin/git-svnimport
+bin/git-symbolic-ref
+bin/git-tag
+bin/git-tar-tree
+bin/git-unpack-file
+bin/git-unpack-objects
+bin/git-update-index
+bin/git-update-ref
+bin/git-update-server-info
+bin/git-upload-archive
+bin/git-upload-pack
+bin/git-var
+bin/git-verify-pack
+bin/git-verify-tag
+bin/git-whatchanged
+bin/git-write-tree
+bin/gitk
+share/git-core/templates/description
+share/git-core/templates/hooks/applypatch-msg
+share/git-core/templates/hooks/commit-msg
+share/git-core/templates/hooks/post-commit
+share/git-core/templates/hooks/post-receive
+share/git-core/templates/hooks/post-update
+share/git-core/templates/hooks/pre-applypatch
+share/git-core/templates/hooks/pre-commit
+share/git-core/templates/hooks/pre-rebase
+share/git-core/templates/hooks/update
+share/git-core/templates/info/exclude
+share/git-gui/lib/blame.tcl
+share/git-gui/lib/branch.tcl
+share/git-gui/lib/branch_checkout.tcl
+share/git-gui/lib/branch_create.tcl
+share/git-gui/lib/branch_delete.tcl
+share/git-gui/lib/branch_rename.tcl
+share/git-gui/lib/browser.tcl
+share/git-gui/lib/checkout_op.tcl
+share/git-gui/lib/choose_font.tcl
+share/git-gui/lib/choose_rev.tcl
+share/git-gui/lib/class.tcl
+share/git-gui/lib/commit.tcl
+share/git-gui/lib/console.tcl
+share/git-gui/lib/database.tcl
+share/git-gui/lib/diff.tcl
+share/git-gui/lib/encoding.tcl
+share/git-gui/lib/error.tcl
+share/git-gui/lib/index.tcl
+share/git-gui/lib/merge.tcl
+share/git-gui/lib/option.tcl
+share/git-gui/lib/remote.tcl
+share/git-gui/lib/remote_branch_delete.tcl
+share/git-gui/lib/shortcut.tcl
+share/git-gui/lib/status_bar.tcl
+share/git-gui/lib/tclIndex
+share/git-gui/lib/transport.tcl
+@dirrm share/git-gui/lib
+@dirrm share/git-gui
+@dirrm share/git-core/templates/info
+@dirrm share/git-core/templates/hooks
+@exec ${MKDIR} %D/share/git-core/templates/branches
+@dirrm share/git-core/templates/branches
+@dirrm share/git-core/templates
+@dirrm share/git-core
diff --git a/devel/scmgit-base/distinfo b/devel/scmgit-base/distinfo
new file mode 100644
index 00000000000..5106d418f41
--- /dev/null
+++ b/devel/scmgit-base/distinfo
@@ -0,0 +1,12 @@
+$NetBSD: distinfo,v 1.1.1.1 2007/12/12 04:22:20 bjs Exp $
+
+SHA1 (git-1.5.3.7.tar.gz) = 8a6b7f130f39765e8de8f32bb23d4799747ee190
+RMD160 (git-1.5.3.7.tar.gz) = 52ac1fb55341140abd18a226e8dd34654c79be61
+Size (git-1.5.3.7.tar.gz) = 1612748 bytes
+SHA1 (patch-aa) = 77ab1eaf9206534d2103e5481bcdc278ffb351d9
+SHA1 (patch-ab) = 6d9b08b20b3bbee931c8aa5842b03953e7cd2a7d
+SHA1 (patch-ae) = 44f30c796c922b028773668e80d71c0a48606f5c
+SHA1 (patch-af) = d2b6fff88913d89f37bf5453babc65027a6a5a54
+SHA1 (patch-ag) = feb17b439e0e4e89c25985f2e14e300d698c8dcf
+SHA1 (patch-ah) = 4cf802facbc3dd9f78e923427c4b5f455f954722
+SHA1 (patch-ai) = 569ca315a6ed73f8d06fa265945af3e2d920556a
diff --git a/devel/scmgit-base/patches/patch-aa b/devel/scmgit-base/patches/patch-aa
new file mode 100644
index 00000000000..8f0e2cb6be3
--- /dev/null
+++ b/devel/scmgit-base/patches/patch-aa
@@ -0,0 +1,91 @@
+$NetBSD: patch-aa,v 1.1.1.1 2007/12/12 04:22:20 bjs Exp $
+
+NetBSD 3.0 needs -liconv, too.
+
+AR, CC, CFLAGS, LDFLAGS and LIBS should be taken from the environment.
+
+--- Makefile.orig 2007-12-01 16:21:12.000000000 -0500
++++ Makefile
+@@ -139,8 +139,6 @@ uname_P := $(shell sh -c 'uname -p 2>/de
+
+ # CFLAGS and LDFLAGS are for the users to override from the command line.
+
+-CFLAGS = -g -O2 -Wall
+-LDFLAGS =
+ ALL_CFLAGS = $(CFLAGS)
+ ALL_LDFLAGS = $(LDFLAGS)
+ STRIP ?= strip
+@@ -177,12 +175,8 @@ GITWEB_SITE_FOOTER =
+
+ export prefix bindir gitexecdir sharedir template_dir sysconfdir
+
+-CC = gcc
+-AR = ar
+ RM = rm -f
+-TAR = tar
+ FIND = find
+-INSTALL = install
+ RPMBUILD = rpmbuild
+ TCL_PATH = tclsh
+ TCLTK_PATH = wish
+@@ -402,9 +396,10 @@ ifeq ($(uname_S),Darwin)
+ NO_STRLCPY = YesPlease
+ endif
+ ifeq ($(uname_S),SunOS)
++ NEEDS_LIBICONV = YesPlease
+ NEEDS_SOCKET = YesPlease
+ NEEDS_NSL = YesPlease
+- SHELL_PATH = /bin/bash
++ SHELL_PATH = ${BASH}
+ NO_STRCASESTR = YesPlease
+ NO_HSTRERROR = YesPlease
+ ifeq ($(uname_R),5.8)
+@@ -420,8 +415,6 @@ ifeq ($(uname_S),SunOS)
+ NO_C99_FORMAT = YesPlease
+ NO_STRTOUMAX = YesPlease
+ endif
+- INSTALL = ginstall
+- TAR = gtar
+ BASIC_CFLAGS += -D__EXTENSIONS__
+ endif
+ ifeq ($(uname_O),Cygwin)
+@@ -451,9 +444,7 @@ ifeq ($(uname_S),OpenBSD)
+ BASIC_LDFLAGS += -L/usr/local/lib
+ endif
+ ifeq ($(uname_S),NetBSD)
+- ifeq ($(shell expr "$(uname_R)" : '[01]\.'),2)
+- NEEDS_LIBICONV = YesPlease
+- endif
++ NEEDS_LIBICONV = YesPlease
+ BASIC_CFLAGS += -I/usr/pkg/include
+ BASIC_LDFLAGS += -L/usr/pkg/lib
+ ALL_LDFLAGS += -Wl,-rpath,/usr/pkg/lib
+@@ -718,7 +709,7 @@ SHELL_PATH_SQ = $(subst ','\'',$(SHELL_P
+ PERL_PATH_SQ = $(subst ','\'',$(PERL_PATH))
+ TCLTK_PATH_SQ = $(subst ','\'',$(TCLTK_PATH))
+
+-LIBS = $(GITLIBS) $(EXTLIBS)
++LIBS += $(GITLIBS) $(EXTLIBS)
+
+ BASIC_CFLAGS += -DSHA1_HEADER='$(SHA1_HEADER_SQ)' \
+ -DETC_GITCONFIG='"$(ETC_GITCONFIG_SQ)"' $(COMPAT_CFLAGS)
+@@ -991,14 +982,14 @@ remove-dashes:
+ ### Installation rules
+
+ install: all
+- $(INSTALL) -d -m755 '$(DESTDIR_SQ)$(bindir_SQ)'
+- $(INSTALL) -d -m755 '$(DESTDIR_SQ)$(gitexecdir_SQ)'
+- $(INSTALL) $(ALL_PROGRAMS) '$(DESTDIR_SQ)$(gitexecdir_SQ)'
+- $(INSTALL) git$X '$(DESTDIR_SQ)$(bindir_SQ)'
++ $(BSD_INSTALL_PROGRAM_DIR) '$(DESTDIR_SQ)$(bindir_SQ)'
++ $(BSD_INSTALL_PROGRAM_DIR) '$(DESTDIR_SQ)$(gitexecdir_SQ)'
++ $(BSD_INSTALL_SCRIPT) $(ALL_PROGRAMS) '$(DESTDIR_SQ)$(gitexecdir_SQ)'
++ $(BSD_INSTALL_SCRIPT) git$X '$(DESTDIR_SQ)$(bindir_SQ)'
+ $(MAKE) -C templates DESTDIR='$(DESTDIR_SQ)' install
+ $(MAKE) -C perl prefix='$(prefix_SQ)' install
+ ifndef NO_TCLTK
+- $(INSTALL) gitk-wish '$(DESTDIR_SQ)$(bindir_SQ)'/gitk
++ $(BSD_INSTALL_SCRIPT) gitk-wish '$(DESTDIR_SQ)$(bindir_SQ)'/gitk
+ $(MAKE) -C git-gui install
+ endif
+ if test 'z$(bindir_SQ)' != 'z$(gitexecdir_SQ)'; \
diff --git a/devel/scmgit-base/patches/patch-ab b/devel/scmgit-base/patches/patch-ab
new file mode 100644
index 00000000000..8d8c3594943
--- /dev/null
+++ b/devel/scmgit-base/patches/patch-ab
@@ -0,0 +1,22 @@
+$NetBSD: patch-ab,v 1.1.1.1 2007/12/12 04:22:20 bjs Exp $
+
+--- git-compat-util.h.orig 2007-10-31 21:04:37.000000000 +0100
++++ git-compat-util.h 2007-11-29 16:24:57.810134000 +0100
+@@ -6,6 +6,8 @@
+ #ifndef FLEX_ARRAY
+ #if defined(__GNUC__) && (__GNUC__ < 3)
+ #define FLEX_ARRAY 0
++#elif defined(__SUNPRO_C)
++#define FLEX_ARRAY 1
+ #else
+ #define FLEX_ARRAY /* empty */
+ #endif
+@@ -24,7 +26,7 @@
+ /* Approximation of the length of the decimal representation of this type. */
+ #define decimal_length(x) ((int)(sizeof(x) * 2.56 + 0.5) + 1)
+
+-#if !defined(__APPLE__) && !defined(__FreeBSD__)
++#if !defined(__APPLE__) && !defined(__FreeBSD__) && !defined(__sun)
+ #define _XOPEN_SOURCE 600 /* glibc2 and AIX 5.3L need 500, OpenBSD needs 600 for S_ISLNK() */
+ #define _XOPEN_SOURCE_EXTENDED 1 /* AIX 5.3L needs this */
+ #endif
diff --git a/devel/scmgit-base/patches/patch-ae b/devel/scmgit-base/patches/patch-ae
new file mode 100644
index 00000000000..62e875da05f
--- /dev/null
+++ b/devel/scmgit-base/patches/patch-ae
@@ -0,0 +1,16 @@
+$NetBSD: patch-ae,v 1.1.1.1 2007/12/12 04:22:20 bjs Exp $
+
+In pkgsrc, all Perl modules are installed into vendor_perl, not
+site_perl.
+
+--- perl/Makefile.orig 2007-09-02 01:57:44.000000000 -0400
++++ perl/Makefile
+@@ -11,7 +11,7 @@ ifndef V
+ endif
+
+ all install instlibdir: $(makfile)
+- $(QUIET)$(MAKE) -f $(makfile) $@
++ $(QUIET)$(MAKE) -f $(makfile) INSTALLDIRS=vendor $@
+
+ clean:
+ $(QUIET)test -f $(makfile) && $(MAKE) -f $(makfile) $@ || exit 0
diff --git a/devel/scmgit-base/patches/patch-af b/devel/scmgit-base/patches/patch-af
new file mode 100644
index 00000000000..0daf103be28
--- /dev/null
+++ b/devel/scmgit-base/patches/patch-af
@@ -0,0 +1,29 @@
+$NetBSD: patch-af,v 1.1.1.1 2007/12/12 04:22:20 bjs Exp $
+
+--- Documentation/Makefile.orig 2007-09-02 01:57:44.000000000 -0400
++++ Documentation/Makefile
+@@ -75,16 +75,16 @@ man7: $(DOC_MAN7)
+ info: git.info
+
+ install: man
+- $(INSTALL) -d -m755 $(DESTDIR)$(man1dir)
+- $(INSTALL) -d -m755 $(DESTDIR)$(man5dir)
+- $(INSTALL) -d -m755 $(DESTDIR)$(man7dir)
+- $(INSTALL) -m644 $(DOC_MAN1) $(DESTDIR)$(man1dir)
+- $(INSTALL) -m644 $(DOC_MAN5) $(DESTDIR)$(man5dir)
+- $(INSTALL) -m644 $(DOC_MAN7) $(DESTDIR)$(man7dir)
++ $(BSD_INSTALL_MAN_DIR) $(DESTDIR)$(man1dir)
++ $(BSD_INSTALL_MAN_DIR) $(DESTDIR)$(man5dir)
++ $(BSD_INSTALL_MAN_DIR) $(DESTDIR)$(man7dir)
++ $(BSD_INSTALL_MAN) $(DOC_MAN1) $(DESTDIR)$(man1dir)
++ $(BSD_INSTALL_MAN) $(DOC_MAN5) $(DESTDIR)$(man5dir)
++ $(BSD_INSTALL_MAN) $(DOC_MAN7) $(DESTDIR)$(man7dir)
+
+ install-info: info
+- $(INSTALL) -d -m755 $(DESTDIR)$(infodir)
+- $(INSTALL) -m644 git.info $(DESTDIR)$(infodir)
++ $(BSD_INSTALL_DATA_DIR) $(DESTDIR)$(infodir)
++ $(BSD_INSTALL_DATA) git.info $(DESTDIR)$(infodir)
+ if test -r $(DESTDIR)$(infodir)/dir; then \
+ $(INSTALL_INFO) --info-dir=$(DESTDIR)$(infodir) git.info ;\
+ else \
diff --git a/devel/scmgit-base/patches/patch-ag b/devel/scmgit-base/patches/patch-ag
new file mode 100644
index 00000000000..aa860e7be61
--- /dev/null
+++ b/devel/scmgit-base/patches/patch-ag
@@ -0,0 +1,12 @@
+$NetBSD: patch-ag,v 1.1.1.1 2007/12/12 04:22:20 bjs Exp $
+
+--- templates/Makefile.orig 2007-09-19 14:02:17.000000000 -0400
++++ templates/Makefile
+@@ -46,6 +46,6 @@ clean:
+ $(RM) -r blt boilerplates.made
+
+ install: all
+- $(INSTALL) -d -m755 '$(DESTDIR_SQ)$(template_dir_SQ)'
++ $(BSD_INSTALL_DATA_DIR) '$(DESTDIR_SQ)$(template_dir_SQ)'
+ (cd blt && $(TAR) cf - .) | \
+ (cd '$(DESTDIR_SQ)$(template_dir_SQ)' && $(TAR) xf -)
diff --git a/devel/scmgit-base/patches/patch-ah b/devel/scmgit-base/patches/patch-ah
new file mode 100644
index 00000000000..9f5b5d15fc3
--- /dev/null
+++ b/devel/scmgit-base/patches/patch-ah
@@ -0,0 +1,34 @@
+$NetBSD: patch-ah,v 1.1.1.1 2007/12/12 04:22:20 bjs Exp $
+
+--- git-gui/Makefile.orig 2007-09-19 14:02:17.000000000 -0400
++++ git-gui/Makefile
+@@ -34,11 +34,11 @@ endif
+ RM_F ?= rm -f
+ RMDIR ?= rmdir
+
+-INSTALL_D0 = $(INSTALL) -d -m755 # space is required here
++INSTALL_D0 = ${BSD_INSTALL_DATA_DIR} # space is required here
+ INSTALL_D1 =
+-INSTALL_R0 = $(INSTALL) -m644 # space is required here
++INSTALL_R0 = ${BSD_INSTALL_DATA} # space is required here
+ INSTALL_R1 =
+-INSTALL_X0 = $(INSTALL) -m755 # space is required here
++INSTALL_X0 = ${BSD_INSTALL_SCRIPT} # space is required here
+ INSTALL_X1 =
+ INSTALL_L0 = rm -f # space is required here
+ INSTALL_L1 = && ln # space is required here
+@@ -59,11 +59,11 @@ ifndef V
+ QUIET_2DEVNULL = 2>/dev/null
+
+ INSTALL_D0 = dir=
+- INSTALL_D1 = && echo ' ' DEST $$dir && $(INSTALL) -d -m755 "$$dir"
++ INSTALL_D1 = && echo ' ' DEST $$dir && $(BSD_INSTALL_DATA_DIR) "$$dir"
+ INSTALL_R0 = src=
+- INSTALL_R1 = && echo ' ' INSTALL 644 `basename $$src` && $(INSTALL) -m644 $$src
++ INSTALL_R1 = && echo ' ' INSTALL 644 `basename $$src` && $(BSD_INSTALL_DATA) $$src
+ INSTALL_X0 = src=
+- INSTALL_X1 = && echo ' ' INSTALL 755 `basename $$src` && $(INSTALL) -m755 $$src
++ INSTALL_X1 = && echo ' ' INSTALL 755 `basename $$src` && $(BSD_INSTALL_SCRIPT) $$src
+
+ INSTALL_L0 = dst=
+ INSTALL_L1 = && src=
diff --git a/devel/scmgit-base/patches/patch-ai b/devel/scmgit-base/patches/patch-ai
new file mode 100644
index 00000000000..553ada8ef7f
--- /dev/null
+++ b/devel/scmgit-base/patches/patch-ai
@@ -0,0 +1,17 @@
+$NetBSD: patch-ai,v 1.1.1.1 2007/12/12 04:22:20 bjs Exp $
+
+Beginnings of emacs support, not enabled yet. We must use mk/emacs.mk.
+
+--- contrib/emacs/Makefile.orig 2007-09-19 14:02:17.000000000 -0400
++++ contrib/emacs/Makefile
+@@ -12,8 +12,8 @@ RM ?= rm -f
+ all: $(ELC)
+
+ install: all
+- $(INSTALL) -d $(DESTDIR)$(emacsdir)
+- $(INSTALL_ELC) $(ELC:.elc=.el) $(ELC) $(DESTDIR)$(emacsdir)
++ ${BSD_INSTALL_DATA_DIR} $(DESTDIR)$(emacsdir)
++ ${BSD_INSTALL_DATA} $(ELC:.elc=.el) $(ELC) $(DESTDIR)$(emacsdir)
+
+ %.elc: %.el
+ $(EMACS) -batch -f batch-byte-compile $<