On Mon, Sep 24, 2018 at 12:15:53PM +0200, Caspar Schutijser wrote:
> The diff below includes git-subtree(1) in the OpenBSD git port. It can
> be used to "Merge subtrees together and split repository into subtrees"
> (from the manpage). A number of operating systems such as FreeBSD,
> Debian, and Arch Linux ship with git-subtree(1) in their
> git packages [1] [2] [3].
>
> One disadvantage is that it adds more dependencies to the build (they
> are necessary to prepare git-subtree.1), not sure whether that is
> considered to be a problem.
>
> As you'll observe when you read the patch, I slightly tweaked
> MAKE_FLAGS. I prepended TRUEPREFIX to gitexecdir because otherwise
> git-subtree installs into
> /usr/ports/pobj/git-2.19.0/fake-amd64libexec/git which is not right.
> As far as I know, other parts of this port are not adversely affected
> by this change.
>
> I'd like to know whether you like the proposal to start shipping with
> git-subtree(1).
>
> Thanks,
> Caspar Schutijser
>
> [1]
> https://svnweb.freebsd.org/ports/head/devel/git/pkg-plist?revision=HEAD&view=co
> [2] https://packages.debian.org/sid/amd64/git/filelist
> [3] https://www.archlinux.org/packages/extra/x86_64/git/files/
Below is a diff rebased on top of what is currently in CVS.
Thanks,
Caspar Schutijser
Index: Makefile
===
RCS file: /cvs/ports/devel/git/Makefile,v
retrieving revision 1.196
diff -u -p -r1.196 Makefile
--- Makefile16 Dec 2018 13:53:22 - 1.196
+++ Makefile20 Jan 2019 16:24:51 -
@@ -10,6 +10,7 @@ PKGNAME-main =${DISTNAME}
PKGNAME-svn = git-svn-${V}
PKGNAME-x11 = git-x11-${V}
CATEGORIES = devel
+REVISION-main =0
HOMEPAGE = https://git-scm.com/
@@ -35,7 +36,9 @@ MODPY_ADJ_FILES = contrib/hooks/multimai
contrib/hooks/multimail/post-receive.example
BUILD_DEPENDS =devel/gettext-tools \
- devel/p5-Error
+ devel/p5-Error \
+ textproc/asciidoc \
+ textproc/xmlto
MULTI_PACKAGES = -main -svn -x11
@@ -65,7 +68,7 @@ PKG_ARCH-x11 =*
UPDATE_PLIST_ARGS += -i MODPY_VERSION
MAKE_FLAGS = V=1 \
- gitexecdir=libexec/git \
+ gitexecdir=${TRUEPREFIX}/libexec/git \
TCLTK_PATH=${MODTK_BIN} \
TCL_PATH=${MODTCL_BIN}
MAKE_ENV = TEST_TAR=${LOCALBASE}/bin/gtar
@@ -112,6 +115,8 @@ post-install:
${INSTALL_DATA} ${WRKBUILD}/contrib/hooks/setgitperms.perl \
${PREFIX}/share/git-core/templates/hooks/setgitperms.perl
chown -R ${BINOWN}:${BINGRP} ${PREFIX}/libexec/git
+ ${MAKE_ENV} ${MAKE_PROGRAM} -C ${WRKBUILD}/contrib/subtree \
+ ${MAKE_FLAGS} install install-man
${MAKE_ENV} ${MAKE_PROGRAM} -C ${WRKBUILD}/gitweb \
gitwebdir=${TRUEPREFIX}/share/gitweb install
perl -pi -e "s|${WRKINST}||g" ${PREFIX}/share/gitweb/gitweb.cgi
Index: pkg/PLIST-main
===
RCS file: /cvs/ports/devel/git/pkg/PLIST-main,v
retrieving revision 1.86
diff -u -p -r1.86 PLIST-main
--- pkg/PLIST-main 16 Dec 2018 13:53:22 - 1.86
+++ pkg/PLIST-main 20 Jan 2019 16:24:51 -
@@ -162,6 +162,7 @@ libexec/git/git-stash
@bin libexec/git/git-stripspace
libexec/git/git-submodule
@bin libexec/git/git-submodule--helper
+libexec/git/git-subtree
@bin libexec/git/git-symbolic-ref
@bin libexec/git/git-tag
@bin libexec/git/git-unpack-file
@@ -336,6 +337,7 @@ libexec/git/mergetools/xxdiff
@man man/man1/git-status.1
@man man/man1/git-stripspace.1
@man man/man1/git-submodule.1
+@man man/man1/git-subtree.1
@man man/man1/git-symbolic-ref.1
@man man/man1/git-tag.1
@man man/man1/git-unpack-file.1