Browse Source

devel/git: Split into subpackages

Removed CVS, GUI, PERFORCE and SUBVERSION options and also gui and svn
FLAVORS, and create 4 new subports:

devel/git-cvs
devel/git-gui
devel/git-p4
devel/git-svn

All these packages depend of devel/git and install only additional files
and manpages.  This work is based on initial patch submitted by grembo@i
at review D30238.

PR:		251090
Sponsored by:	Rubicon Communications, LLC ("Netgate")
Differential Revision:	https://reviews.freebsd.org/D32369
main^2
Renato Botelho 1 week ago
parent
commit
ff5ded75bc
  1. 2
      MOVED
  2. 15
      UPDATING
  3. 4
      devel/Makefile
  4. 9
      devel/git-cvs/Makefile
  5. 5
      devel/git-cvs/pkg-descr
  6. 8
      devel/git-cvs/pkg-plist
  7. 9
      devel/git-gui/Makefile
  8. 1
      devel/git-gui/pkg-descr
  9. 78
      devel/git-gui/pkg-plist
  10. 9
      devel/git-p4/Makefile
  11. 3
      devel/git-p4/pkg-descr
  12. 2
      devel/git-p4/pkg-plist
  13. 9
      devel/git-svn/Makefile
  14. 5
      devel/git-svn/pkg-descr
  15. 2
      devel/git-svn/pkg-plist
  16. 233
      devel/git/Makefile
  17. 21
      devel/git/files/patch-Makefile
  18. 6
      devel/git/pkg-descr-gui
  19. 2
      devel/git/pkg-descr-lite
  20. 6
      devel/git/pkg-descr-svn
  21. 2
      devel/git/pkg-descr-tiny
  22. 91
      devel/git/pkg-plist

2
MOVED

@ -15420,7 +15420,6 @@ devel/cx_Freeze||2020-09-19|Has expired: Uses deprecated version of python
devel/euca2ools||2020-09-19|Has expired: Uses deprecated version of python
devel/evolution-gconf-tools||2020-09-19|Has expired: Uses deprecated version of python
devel/git-bzr-ng||2020-09-19|Has expired: Uses deprecated version of python
devel/git-cvs||2020-09-19|Has expired: Uses deprecated version of python
devel/git-remote-hg||2020-09-19|Has expired: Uses deprecated version of python
devel/grumpy||2020-09-19|Has expired: Uses deprecated version of python
devel/hg-git||2020-09-19|Has expired: Uses deprecated version of python
@ -15558,7 +15557,6 @@ lang/spidermonkey68|lang/spidermonkey78|2020-10-01|Replaced by a more recent ver
audio/zinf||2020-10-02|Has expired: Does not build, no upstream
emulators/qemu-sbruno|emulators/qemu|2020-10-02|Has expired: Port will be removed in favor of emulators/qemu
dns/knot2-lib|dns/knot3-lib|2020-10-04|Replaced by a more recent version
devel/git-gui|devel/git@gui|2020-10-12|Replaced by a flavor
devel/git-lite|devel/git@lite|2020-10-12|Replaced by a flavor
graphics/libxatracker|graphics/mesa-gallium-xa|2020-10-12|Rename to have all gallium driver properly named
sysutils/gnome-mount||2020-10-12|Replaced by gio/gvfs

15
UPDATING

@ -5,6 +5,21 @@ they are unavoidable.
You should get into the habit of checking this file for changes each time
you update your ports collection, before attempting any port upgrades.
20211012:
AFFECTS: users of devel/git
AUTHOR: garga@FreeBSD.org
devel/git port was split into multiple sub-ports that depend on devel/git
and install additional files:
- devel/git-cvs - CVS related scripts and man pages
- devel/git-gui - GUI related scripts and man pages
- devel/git-p4 - Perforce related scripts and man pages
- devel/git-svn - Subversion related scripts and man pages
Due to these changes, CVS, GUI, PERFORCE, and SUBVERSION options
as well as gui and svn flavors were removed from the port.
20211010:
AFFECTS: users of gtk2 flavored devel/geany*
AUTHOR: madpilot@FreeBSD.org

4
devel/Makefile

@ -822,15 +822,19 @@
SUBDIR += git-cinnabar
SUBDIR += git-codereview
SUBDIR += git-cola
SUBDIR += git-cvs
SUBDIR += git-delta
SUBDIR += git-extras
SUBDIR += git-filter-repo
SUBDIR += git-gui
SUBDIR += git-lab
SUBDIR += git-lfs
SUBDIR += git-merge-changelog
SUBDIR += git-modes
SUBDIR += git-p4
SUBDIR += git-review
SUBDIR += git-subrepo
SUBDIR += git-svn
SUBDIR += git-town
SUBDIR += gitaly
SUBDIR += gitblit

9
devel/git-cvs/Makefile

@ -0,0 +1,9 @@
COMMENT= CVS emulation and import/export for git
SUBPORT= cvs
MASTERDIR= ${.CURDIR}/../git
DESCR= ${.CURDIR}/pkg-descr
PLIST= ${.CURDIR}/pkg-plist
.include "${MASTERDIR}/Makefile"

5
devel/git-cvs/pkg-descr

@ -0,0 +1,5 @@
Various commands to support CVS in git:
- git-cvsexportcommit - Export a single commit to a CVS checkout
- git-cvsimport - Salvage your data out of another SCM people
love to hate
- git-cvsserver - A CVS server emulator for Git

8
devel/git-cvs/pkg-plist

@ -0,0 +1,8 @@
bin/git-cvsserver
libexec/git-core/git-cvsexportcommit
libexec/git-core/git-cvsimport
libexec/git-core/git-cvsserver
man/man1/git-cvsexportcommit.1.gz
man/man1/git-cvsimport.1.gz
man/man1/git-cvsserver.1.gz
man/man7/gitcvs-migration.7.gz

9
devel/git-gui/Makefile

@ -0,0 +1,9 @@
COMMENT= Git GUI (Graphical User Interface) components
SUBPORT= gui
MASTERDIR= ${.CURDIR}/../git
DESCR= ${.CURDIR}/pkg-descr
PLIST= ${.CURDIR}/pkg-plist
.include "${MASTERDIR}/Makefile"

1
devel/git-gui/pkg-descr

@ -0,0 +1 @@
Git GUI (Graphical User Interface) components

78
devel/git-gui/pkg-plist

@ -0,0 +1,78 @@
bin/gitk
libexec/git-core/git-citool
libexec/git-core/git-gui
libexec/git-core/git-gui--askpass
man/man1/git-citool.1.gz
man/man1/git-gui.1.gz
man/man1/gitk.1.gz
share/git-gui/lib/about.tcl
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_repository.tcl
share/git-gui/lib/choose_rev.tcl
share/git-gui/lib/chord.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/date.tcl
share/git-gui/lib/diff.tcl
share/git-gui/lib/encoding.tcl
share/git-gui/lib/error.tcl
share/git-gui/lib/git-gui.ico
share/git-gui/lib/index.tcl
share/git-gui/lib/line.tcl
share/git-gui/lib/logo.tcl
share/git-gui/lib/merge.tcl
share/git-gui/lib/mergetool.tcl
share/git-gui/lib/msgs/bg.msg
share/git-gui/lib/msgs/de.msg
share/git-gui/lib/msgs/el.msg
share/git-gui/lib/msgs/fr.msg
share/git-gui/lib/msgs/hu.msg
share/git-gui/lib/msgs/it.msg
share/git-gui/lib/msgs/ja.msg
share/git-gui/lib/msgs/nb.msg
share/git-gui/lib/msgs/pt_br.msg
share/git-gui/lib/msgs/pt_pt.msg
share/git-gui/lib/msgs/ru.msg
share/git-gui/lib/msgs/sv.msg
share/git-gui/lib/msgs/vi.msg
share/git-gui/lib/msgs/zh_cn.msg
share/git-gui/lib/option.tcl
share/git-gui/lib/remote.tcl
share/git-gui/lib/remote_add.tcl
share/git-gui/lib/remote_branch_delete.tcl
share/git-gui/lib/search.tcl
share/git-gui/lib/shortcut.tcl
share/git-gui/lib/spellcheck.tcl
share/git-gui/lib/sshkey.tcl
share/git-gui/lib/status_bar.tcl
share/git-gui/lib/tclIndex
share/git-gui/lib/themed.tcl
share/git-gui/lib/tools.tcl
share/git-gui/lib/tools_dlg.tcl
share/git-gui/lib/transport.tcl
share/git-gui/lib/win32.tcl
share/git-gui/lib/win32_shortcut.js
share/gitk/lib/msgs/bg.msg
share/gitk/lib/msgs/ca.msg
share/gitk/lib/msgs/de.msg
share/gitk/lib/msgs/es.msg
share/gitk/lib/msgs/fr.msg
share/gitk/lib/msgs/hu.msg
share/gitk/lib/msgs/it.msg
share/gitk/lib/msgs/ja.msg
share/gitk/lib/msgs/pt_br.msg
share/gitk/lib/msgs/pt_pt.msg
share/gitk/lib/msgs/ru.msg
share/gitk/lib/msgs/sv.msg
share/gitk/lib/msgs/vi.msg
share/gitk/lib/msgs/zh_cn.msg

9
devel/git-p4/Makefile

@ -0,0 +1,9 @@
COMMENT= Import from and submit to Perforce repositories using git
SUBPORT= p4
MASTERDIR= ${.CURDIR}/../git
DESCR= ${.CURDIR}/pkg-descr
PLIST= ${.CURDIR}/pkg-plist
.include "${MASTERDIR}/Makefile"

3
devel/git-p4/pkg-descr

@ -0,0 +1,3 @@
Import from and submit to Perforce repositories
This command provides a way to interact with p4 repositories using Git.

2
devel/git-p4/pkg-plist

@ -0,0 +1,2 @@
libexec/git-core/git-p4
man/man1/git-p4.1.gz

9
devel/git-svn/Makefile

@ -0,0 +1,9 @@
COMMENT= Bidirectional operation between a Subversion repository and Git
SUBPORT= svn
MASTERDIR= ${.CURDIR}/../git
DESCR= ${.CURDIR}/pkg-descr
PLIST= ${.CURDIR}/pkg-plist
.include "${MASTERDIR}/Makefile"

5
devel/git-svn/pkg-descr

@ -0,0 +1,5 @@
Bidirectional operation between a Subversion repository and Git
git svn is a simple conduit for changesets between Subversion and Git. It
provides a bidirectional flow of changes between a Subversion and a Git
repository.

2
devel/git-svn/pkg-plist

@ -0,0 +1,2 @@
libexec/git-core/git-svn
man/man1/git-svn.1.gz

233
devel/git/Makefile

@ -12,46 +12,51 @@ EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX} \
${PORTNAME}-manpages-${DISTVERSION}${EXTRACT_SUFX}
MAINTAINER= garga@FreeBSD.org
COMMENT= Distributed source code management tool ${COMMENT_${FLAVOR}}
COMMENT?= Distributed source code management tool ${COMMENT_${FLAVOR}}
LICENSE= GPLv2
LICENSE_FILE= ${WRKSRC}/COPYING
FLAVORS= default gui lite svn tiny
default_CONFLICTS_INSTALL= git-gui git-lite git-svn git-tiny
gui_CONFLICTS_INSTALL= git git-lite git-svn git-tiny
gui_DESCR= ${.CURDIR}/pkg-descr-gui
gui_PKGNAMESUFFIX= -gui
lite_CONFLICTS_INSTALL= git git-gui git-svn git-tiny
SUBPORT?= core
.if ${SUBPORT} != core
PKGNAMESUFFIX= -${SUBPORT}
.endif
.if ${SUBPORT} == core
FLAVORS= default lite tiny
default_CONFLICTS_INSTALL= git-lite git-tiny
lite_CONFLICTS_INSTALL= git git-tiny
lite_DESCR= ${.CURDIR}/pkg-descr-lite
lite_PKGNAMESUFFIX= -lite
svn_CONFLICTS_INSTALL= git git-gui git-lite git-tiny
svn_DESCR= ${.CURDIR}/pkg-descr-svn
svn_PKGNAMESUFFIX= -svn
tiny_CONFLICTS_INSTALL= git git-gui git-svn git-lite
tiny_CONFLICTS_INSTALL= git git-lite
tiny_DESCR= ${.CURDIR}/pkg-descr-tiny
tiny_PKGNAMESUFFIX= -tiny
.endif
USES= autoreconf cpe gmake iconv shebangfix ssl tar:xz
USES= autoreconf gmake iconv shebangfix tar:xz
CPE_VENDOR= git-scm
COMMENT_gui= (GUI enabled flavor)
.if ${SUBPORT} == core
USES+= ssl
COMMENT_lite= (lite flavor)
COMMENT_svn= (SVN enabled flavor)
COMMENT_tiny= (tiny flavor)
USERS= git_daemon
GROUPS= git_daemon
.endif
SUB_FILES= pkg-message gitweb.conf
GNU_CONFIGURE= yes
CPPFLAGS+= -isystem${LOCALBASE}/include
LDFLAGS+= -L${LOCALBASE}/lib
MAKE_ARGS+= DEVELOPER=
MAKE_ARGS= DEVELOPER= NO_TCLTK=yes
MAKE_ENV+= V=1
.if ${SUBPORT} == core
USE_RC_SUBR= git_daemon
.endif
SHEBANG_FILES= *.perl */*.perl */*/*.perl */*.pl */*/*.pl */*/*/*.pl \
t/*/*/pre t/*/*/post t/Git-SVN/Utils/*.t \
git-p4.py \
@ -70,30 +75,27 @@ TEST_TARGET= test
CONFIGURE_ARGS= --enable-pthreads=-pthread ac_cv_header_libcharset_h=no
OPTIONS_DEFINE= CONTRIB CURL CVS GITWEB GUI HTMLDOCS ICONV NLS PCRE2 PERFORCE PERL \
SEND_EMAIL SUBTREE SUBVERSION
OPTIONS_DEFAULT=CONTRIB CURL CVS GITWEB ICONV PCRE2 PERFORCE PERL SEND_EMAIL \
.if ${SUBPORT} == core
OPTIONS_DEFINE= CONTRIB CURL GITWEB HTMLDOCS ICONV NLS PCRE2 PERL SEND_EMAIL \
SUBTREE
.if ${FLAVOR:U} == gui
OPTIONS_SLAVE+= GUI
.elif ${FLAVOR:U} == lite
OPTIONS_EXCLUDE= GUI SUBVERSION GITWEB CONTRIB PERFORCE CVS PERL
.elif ${FLAVOR:U} == svn
OPTIONS_SLAVE+= SUBVERSION
.elif ${FLAVOR:U} == tiny
OPTIONS_DEFAULT=CONTRIB CURL GITWEB ICONV PCRE2 PERL SEND_EMAIL SUBTREE
. if ${FLAVOR:U} == lite
OPTIONS_EXCLUDE+= GITWEB CONTRIB PERL
. elif ${FLAVOR:U} == tiny
OPTIONS_EXCLUDE:= ${OPTIONS_DEFINE:NCURL}
OPTIONS_SLAVE= CURL
.endif
. endif
OPTIONS_SUB= yes
.if !empty(FLAVOR) && ${FLAVOR:U} != default
. if !empty(FLAVOR) && ${FLAVOR:U} != default
OPTIONS_FILE= ${PORT_DBDIR}/${OPTIONS_NAME}/${FLAVOR}-options
.endif
. endif
CONTRIB_DESC= Install contributed scripts
CURL_DESC= Install curl support (provides HTTPS transport)
CVS_DESC= Enable CVS support
GITWEB_DESC= Install gitweb
HTMLDOCS_DESC= Install additional documentation
PCRE2_DESC= Use Perl Compatible Regular Expressions (v2)
@ -129,21 +131,34 @@ CURL_MAKE_ARGS_OFF= NO_CURL=1 NO_EXPAT=1
HTMLDOCS_DISTFILES= ${PORTNAME}-htmldocs-${DISTVERSION}${EXTRACT_SUFX}
GUI_USES= tk
GUI_MAKE_ARGS= TCL_PATH=${TCLSH} TCLTK_PATH=${WISH}
GUI_MAKE_ARGS_OFF= NO_TCLTK=yes
SUBVERSION_RUN_DEPENDS= p5-Term-ReadKey>=0:devel/p5-Term-ReadKey
.if ${WITH_SUBVERSION_VER:U} == LTS
SUBVERSION_RUN_DEPENDS+= p5-subversion-lts>=0:devel/p5-subversion
.else
SUBVERSION_RUN_DEPENDS+= p5-subversion>=0:devel/p5-subversion
.endif
SUBTREE_BUILD_DEPENDS= asciidoctor:textproc/rubygem-asciidoctor\
xmlto:textproc/xmlto
CVS_RUN_DEPENDS= cvsps:devel/cvsps
.else
NO_ARCH= yes
MAKE_ENV+= V=1
MAKE_ARGS= NO_GETTEXT=yes
. if ${SUBPORT} != gui
MAKE_ARGS+= NO_TCLTK=yes
. endif
RUN_DEPENDS+= git=${PKGVERSION}:devel/git
. if ${SUBPORT} == cvs
RUN_DEPENDS+= cvsps:devel/cvsps
. elif ${SUBPORT} == gui
USES+= tk
MAKE_ARGS+= TCL_PATH=${TCLSH} TCLTK_PATH=${WISH}
. elif ${SUBPORT} == svn
RUN_DEPENDS+= p5-Term-ReadKey>=0:devel/p5-Term-ReadKey
. if ${WITH_SUBVERSION_VER:U} == LTS
RUN_DEPENDS+= p5-subversion-lts>=0:devel/p5-subversion
. else
RUN_DEPENDS+= p5-subversion>=0:devel/p5-subversion
. endif
. endif
.endif
.include <bsd.port.options.mk>
@ -152,24 +167,28 @@ CVS_RUN_DEPENDS= cvsps:devel/cvsps
ALL_TARGET= all strip
.endif
.if ${PORT_OPTIONS:MPERFORCE} || ${PORT_OPTIONS:MCONTRIB}
.if ${SUBPORT} == p4 || ${PORT_OPTIONS:MCONTRIB}
USES+= python
CONFIGURE_ARGS+= --with-python=${PYTHON_CMD}
.else
CONFIGURE_ARGS+= --without-python
.endif
.if empty(PORT_OPTIONS:MGUI)
.if ${SUBPORT} != gui
RMMAN1+= git-citool.1 \
git-gui.1 \
gitk.1
.endif
.if empty(PORT_OPTIONS:MSUBVERSION)
.if ${SUBPORT} != p4
RMMAN1+= git-p4.1
.endif
.if ${SUBPORT} != svn
RMMAN1+= git-svn.1
.endif
.if empty(PORT_OPTIONS:MCVS)
.if ${SUBPORT} != cvs
RMMAN1+= git-cvsimport.1 \
git-cvsexportcommit.1 \
git-cvsserver.1
@ -190,42 +209,54 @@ post-patch:
@${RM} ${WRKDIR}/man7/${FILE}
.endfor
@${REINPLACE_CMD} -e "s,%%SITE_PERL%%,${SITE_PERL},g" ${WRKSRC}/Makefile
post-patch-CONTRIB-on:
@${REINPLACE_CMD} -e "s,/usr/bin/perl,${PERL}," \
${WRKSRC}/contrib/diff-highlight/Makefile
post-patch-CVS-off:
.if ${SUBPORT} != cvs
@${REINPLACE_CMD} -e '/git-cvsexportcommit.perl/d; \
/git-cvsimport.perl/d; \
/git-cvsserver.perl/d; \
/documented,gitcvs-migration/d; \
s/git-cvsserver//' \
${WRKSRC}/Makefile
post-patch-SUBVERSION-off:
.endif
.if ${SUBPORT} != p4
@${REINPLACE_CMD} -e '/^SCRIPT_PYTHON += git-p4.py$$/d' \
${WRKSRC}/Makefile
.endif
.if ${SUBPORT} != svn
@${REINPLACE_CMD} -e '/git-svn.perl/d' ${WRKSRC}/Makefile
.endif
.if ${SUBPORT} == gui
@${REINPLACE_CMD} -e "/exec wish/s,wish,${WISH}," \
${WRKSRC}/gitk-git/gitk \
${WRKSRC}/git-gui/git-gui--askpass
.endif
post-patch-GITWEB-off:
@${REINPLACE_CMD} -e '/$$(MAKE) -C gitweb install/d' ${WRKSRC}/Makefile
@${REINPLACE_CMD} -e "s,/usr/bin/perl,${PERL}," ${WRKSRC}/t/lib-gitweb.sh
post-patch-CONTRIB-on:
@${REINPLACE_CMD} -e "s,/usr/bin/perl,${PERL}," \
${WRKSRC}/contrib/diff-highlight/Makefile
post-patch-PERFORCE-off:
@${REINPLACE_CMD} -e '/^SCRIPT_PYTHON += git-p4.py$$/d' ${WRKSRC}/Makefile
post-patch-GITWEB-off:
@${REINPLACE_CMD} -e '/$$(MAKE) -C gitweb install/d' \
${WRKSRC}/Makefile
@${REINPLACE_CMD} -e "s,/usr/bin/perl,${PERL}," \
${WRKSRC}/t/lib-gitweb.sh
.if ${PORT_OPTIONS:MPERFORCE} || ${PORT_OPTIONS:MCONTRIB}
.if ${SUBPORT} == p4 || ${PORT_OPTIONS:MCONTRIB}
post-build:
@${FIND} ${WRKSRC} -name "*.bak" -delete
.endif
.if ${SUBPORT} == core
post-build-CONTRIB-on:
${SETENV} ${MAKE_ENV} ${MAKE_CMD} -C ${WRKSRC}/contrib/diff-highlight
${RM} ${WRKSRC}/contrib/diff-highlight/shebang.perl
post-install:
(cd ${WRKDIR}/man1/ && ${COPYTREE_SHARE} . ${STAGEDIR}${MANPREFIX}/man/man1)
(cd ${WRKDIR}/man5/ && ${COPYTREE_SHARE} . ${STAGEDIR}${MANPREFIX}/man/man5)
(cd ${WRKDIR}/man7/ && ${COPYTREE_SHARE} . ${STAGEDIR}${MANPREFIX}/man/man7)
(cd ${WRKDIR}/man1/ && \
${COPYTREE_SHARE} . ${STAGEDIR}${MANPREFIX}/man/man1)
(cd ${WRKDIR}/man5/ && \
${COPYTREE_SHARE} . ${STAGEDIR}${MANPREFIX}/man/man5)
(cd ${WRKDIR}/man7/ && \
${COPYTREE_SHARE} . ${STAGEDIR}${MANPREFIX}/man/man7)
${MKDIR} ${STAGEDIR}${PREFIX}/share/emacs/site-lisp/git
${INSTALL_DATA} ${WRKSRC}/contrib/emacs/git.el \
${STAGEDIR}${PREFIX}/share/emacs/site-lisp/git/
@ -247,7 +278,8 @@ post-install-HTMLDOCS-on:
post-install-SUBTREE-on:
cd ${WRKSRC}/contrib/subtree && ${SETENV} ${MAKE_ENV} \
${MAKE_CMD} ${MAKE_FLAGS} Makefile USE_ASCIIDOCTOR=1 ${MAKE_ARGS} install install-doc
${MAKE_CMD} ${MAKE_FLAGS} Makefile USE_ASCIIDOCTOR=1 \
${MAKE_ARGS} install install-doc
post-install-CONTRIB-on:
@${ECHO_MSG} "===> Installing contributed scripts"
@ -255,12 +287,81 @@ post-install-CONTRIB-on:
${RM} ${WRKSRC}/contrib/credential/netrc/test.netrc.gpg
${CP} -R ${WRKSRC}/contrib/* ${STAGEDIR}${PREFIX}/share/git-core/contrib
post-install-PERFORCE-on:
${INSTALL_SCRIPT} ${WRKSRC}/git-p4.py ${STAGEDIR}${PREFIX}/bin/
post-install-GITWEB-on:
${MKDIR} ${STAGEDIR}${ETCDIR}
${INSTALL_DATA} ${WRKDIR}/gitweb.conf \
${STAGEDIR}${ETCDIR}/gitweb.conf.sample
.elif ${SUBPORT} == gui
do-install:
${MKDIR} ${STAGEDIR}${PREFIX}/libexec/git-core \
${STAGEDIR}${PREFIX}/share/git-gui/lib/msgs \
${STAGEDIR}${PREFIX}/share/gitk/lib/msgs
${INSTALL_SCRIPT} ${WRKSRC}/gitk-git/gitk \
${STAGEDIR}${PREFIX}/bin
${INSTALL_SCRIPT} ${WRKSRC}/git-gui/git-gui \
${STAGEDIR}${PREFIX}/libexec/git-core/
${LN} ${STAGEDIR}${PREFIX}/libexec/git-core/git-gui \
${STAGEDIR}${PREFIX}/libexec/git-core/git-citool
${INSTALL_SCRIPT} ${WRKSRC}/git-gui/git-gui--askpass \
${STAGEDIR}${PREFIX}/libexec/git-core/
${INSTALL_DATA} ${WRKSRC}/git-gui/lib/tclIndex \
${STAGEDIR}${PREFIX}/share/git-gui/lib/
${INSTALL_DATA} ${WRKSRC}/git-gui/lib/*.ico \
${STAGEDIR}${PREFIX}/share/git-gui/lib/
${INSTALL_DATA} ${WRKSRC}/git-gui/lib/*.js \
${STAGEDIR}${PREFIX}/share/git-gui/lib/
${INSTALL_DATA} ${WRKSRC}/git-gui/lib/*.tcl \
${STAGEDIR}${PREFIX}/share/git-gui/lib/
${INSTALL_DATA} ${WRKSRC}/git-gui/po/*.msg \
${STAGEDIR}${PREFIX}/share/git-gui/lib/msgs/
${INSTALL_DATA} ${WRKSRC}/gitk-git/po/*.msg \
${STAGEDIR}${PREFIX}/share/gitk/lib/msgs/
${INSTALL_DATA} ${WRKDIR}/man1/git-citool.1 \
${STAGEDIR}${MANPREFIX}/man/man1/
${INSTALL_DATA} ${WRKDIR}/man1/git-gui.1 \
${STAGEDIR}${MANPREFIX}/man/man1/
${INSTALL_DATA} ${WRKDIR}/man1/gitk.1 \
${STAGEDIR}${MANPREFIX}/man/man1/
.elif ${SUBPORT} == cvs
do-install:
${MKDIR} ${STAGEDIR}${PREFIX}/libexec/git-core
${INSTALL_SCRIPT} ${WRKSRC}/git-cvsserver ${STAGEDIR}${PREFIX}/bin
${INSTALL_SCRIPT} ${WRKSRC}/git-cvsexportcommit \
${STAGEDIR}${PREFIX}/libexec/git-core/
${INSTALL_SCRIPT} ${WRKSRC}/git-cvsimport \
${STAGEDIR}${PREFIX}/libexec/git-core/
${INSTALL_SCRIPT} ${WRKSRC}/git-cvsserver \
${STAGEDIR}${PREFIX}/libexec/git-core/
${INSTALL_DATA} ${WRKDIR}/man1/git-cvsimport.1 \
${STAGEDIR}${MANPREFIX}/man/man1/
${INSTALL_DATA} ${WRKDIR}/man1/git-cvsexportcommit.1 \
${STAGEDIR}${MANPREFIX}/man/man1/
${INSTALL_DATA} ${WRKDIR}/man1/git-cvsserver.1 \
${STAGEDIR}${MANPREFIX}/man/man1/
${INSTALL_DATA} ${WRKDIR}/man7/gitcvs-migration.7 \
${STAGEDIR}${MANPREFIX}/man/man7/
.elif ${SUBPORT} == p4
do-install:
${MKDIR} ${STAGEDIR}${PREFIX}/libexec/git-core
${INSTALL_SCRIPT} ${WRKSRC}/git-p4.py \
${STAGEDIR}${PREFIX}/libexec/git-core/git-p4
${INSTALL_DATA} ${WRKDIR}/man1/git-p4.1 \
${STAGEDIR}${MANPREFIX}/man/man1/
.elif ${SUBPORT} == svn
do-install:
${MKDIR} ${STAGEDIR}${PREFIX}/libexec/git-core
${INSTALL_SCRIPT} ${WRKSRC}/git-svn \
${STAGEDIR}${PREFIX}/libexec/git-core/
${INSTALL_DATA} ${WRKDIR}/man1/git-svn.1 \
${STAGEDIR}${MANPREFIX}/man/man1/
.endif
.include <bsd.port.mk>

21
devel/git/files/patch-Makefile

@ -1,6 +1,6 @@
--- Makefile.orig 2019-02-24 16:31:46 UTC
--- Makefile.orig 2021-06-06 12:13:45 UTC
+++ Makefile
@@ -535,16 +535,16 @@ ARFLAGS = rcs
@@ -520,16 +520,16 @@ GIT-VERSION-FILE: FORCE
prefix = $(HOME)
bindir = $(prefix)/bin
@ -22,7 +22,18 @@
ETC_GITCONFIG = $(sysconfdir)/gitconfig
ETC_GITATTRIBUTES = $(sysconfdir)/gitattributes
lib = lib
@@ -1383,9 +1383,9 @@ EXTLIBS += -lz
@@ -554,8 +554,8 @@ DIFF = diff
TAR = tar
FIND = find
INSTALL = install
-TCL_PATH = tclsh
-TCLTK_PATH = wish
+TCL_PATH ?= tclsh
+TCLTK_PATH ?= wish
XGETTEXT = xgettext
MSGFMT = msgfmt
CURL_CONFIG = curl-config
@@ -1468,9 +1468,9 @@ EXTLIBS += -lz
ifndef NO_OPENSSL
OPENSSL_LIBSSL = -lssl
@ -35,7 +46,7 @@
else
OPENSSL_LINK =
endif
@@ -2234,7 +2234,7 @@ git-instaweb: git-instaweb.sh GIT-SCRIPT-DEFINES
@@ -2358,7 +2358,7 @@ git-instaweb: git-instaweb.sh GIT-SCRIPT-DEFINES
chmod +x $@+ && \
mv $@+ $@
else # NO_PERL
@ -44,7 +55,7 @@
$(QUIET_GEN)$(RM) $@ $@+ && \
sed -e '1s|#!.*/sh|#!$(SHELL_PATH_SQ)|' \
-e 's|@@REASON@@|NO_PERL=$(NO_PERL)|g' \
@@ -2250,7 +2250,7 @@ ifndef NO_PYTHON
@@ -2374,7 +2374,7 @@ ifndef NO_PYTHON
$(SCRIPT_PYTHON_GEN): GIT-CFLAGS GIT-PREFIX GIT-PYTHON-VARS
$(SCRIPT_PYTHON_GEN): % : %.py
$(QUIET_GEN)$(RM) $@ $@+ && \

6
devel/git/pkg-descr-gui

@ -1,6 +0,0 @@
Git is a free and open source distributed version control system designed to
handle everything from small to very large projects with speed and efficiency.
This version provides a package with GUI option enabled.
WWW: https://git-scm.com/

2
devel/git/pkg-descr-lite

@ -3,4 +3,6 @@ handle everything from small to very large projects with speed and efficiency.
This version provides the bare minimum git experience without any bindings.
WARNING: This flavor cannot coexist with cvs, gui, p4 or svn subpackages.
WWW: https://git-scm.com/

6
devel/git/pkg-descr-svn

@ -1,6 +0,0 @@
Git is a free and open source distributed version control system designed to
handle everything from small to very large projects with speed and efficiency.
This version provides a package with SVN option enabled.
WWW: https://git-scm.com/

2
devel/git/pkg-descr-tiny

@ -4,4 +4,6 @@ handle everything from small to very large projects with speed and efficiency.
This version provides the tiniest usable git experience, depending only upon
ftp/curl for http(s) support.
WARNING: This flavor cannot coexist with cvs, gui, p4 or svn subpackages.
WWW: https://git-scm.com/

91
devel/git/pkg-plist

@ -1,11 +1,8 @@
bin/git
%%CVS%%bin/git-cvsserver
%%PERFORCE%%bin/git-p4.py
bin/git-receive-pack
bin/git-shell
bin/git-upload-archive
bin/git-upload-pack
%%GUI%%bin/gitk
etc/bash_completion.d/git-completion.bash
%%PERL%%%%SITE_PERL%%/FromCPAN/Error.pm
%%PERL%%%%SITE_PERL%%/FromCPAN/Mail/Address.pm
@ -50,7 +47,6 @@ libexec/git-core/git-checkout--worker
libexec/git-core/git-checkout-index
libexec/git-core/git-cherry
libexec/git-core/git-cherry-pick
%%GUI%%libexec/git-core/git-citool
libexec/git-core/git-clean
libexec/git-core/git-clone
libexec/git-core/git-column
@ -63,9 +59,6 @@ libexec/git-core/git-credential
libexec/git-core/git-credential-cache
libexec/git-core/git-credential-cache--daemon
libexec/git-core/git-credential-store
%%CVS%%libexec/git-core/git-cvsexportcommit
%%CVS%%libexec/git-core/git-cvsimport
%%CVS%%libexec/git-core/git-cvsserver
libexec/git-core/git-daemon
libexec/git-core/git-describe
libexec/git-core/git-diff
@ -89,8 +82,6 @@ libexec/git-core/git-fsck-objects
libexec/git-core/git-gc
libexec/git-core/git-get-tar-commit-id
libexec/git-core/git-grep
%%GUI%%libexec/git-core/git-gui
%%GUI%%libexec/git-core/git-gui--askpass
libexec/git-core/git-hash-object
libexec/git-core/git-help
libexec/git-core/git-http-backend
@ -128,7 +119,6 @@ libexec/git-core/git-mv
libexec/git-core/git-multi-pack-index
libexec/git-core/git-name-rev
libexec/git-core/git-notes
%%PERFORCE%%libexec/git-core/git-p4
libexec/git-core/git-pack-objects
libexec/git-core/git-pack-redundant
libexec/git-core/git-pack-refs
@ -180,7 +170,6 @@ libexec/git-core/git-stripspace
libexec/git-core/git-submodule
libexec/git-core/git-submodule--helper
%%SUBTREE%%libexec/git-core/git-subtree
%%SUBVERSION%%libexec/git-core/git-svn
libexec/git-core/git-switch
libexec/git-core/git-symbolic-ref
libexec/git-core/git-tag
@ -242,7 +231,6 @@ man/man1/git-checkout-index.1.gz
man/man1/git-checkout.1.gz
man/man1/git-cherry-pick.1.gz
man/man1/git-cherry.1.gz
%%GUI%%man/man1/git-citool.1.gz
man/man1/git-clean.1.gz
man/man1/git-clone.1.gz
man/man1/git-column.1.gz
@ -255,9 +243,6 @@ man/man1/git-credential-cache--daemon.1.gz
man/man1/git-credential-cache.1.gz
man/man1/git-credential-store.1.gz
man/man1/git-credential.1.gz
%%CVS%%man/man1/git-cvsexportcommit.1.gz
%%CVS%%man/man1/git-cvsimport.1.gz
%%CVS%%man/man1/git-cvsserver.1.gz
man/man1/git-daemon.1.gz
man/man1/git-describe.1.gz
man/man1/git-diff-files.1.gz
@ -279,7 +264,6 @@ man/man1/git-fsck.1.gz
man/man1/git-gc.1.gz
man/man1/git-get-tar-commit-id.1.gz
man/man1/git-grep.1.gz
%%GUI%%man/man1/git-gui.1.gz
man/man1/git-hash-object.1.gz
man/man1/git-help.1.gz
man/man1/git-http-backend.1.gz
@ -312,7 +296,6 @@ man/man1/git-mv.1.gz
man/man1/git-multi-pack-index.1.gz
man/man1/git-name-rev.1.gz
man/man1/git-notes.1.gz
man/man1/git-p4.1.gz
man/man1/git-pack-objects.1.gz
man/man1/git-pack-redundant.1.gz
man/man1/git-pack-refs.1.gz
@ -358,7 +341,6 @@ man/man1/git-status.1.gz
man/man1/git-stripspace.1.gz
man/man1/git-submodule.1.gz
%%SUBTREE%%man/man1/git-subtree.1.gz
%%SUBVERSION%%man/man1/git-svn.1.gz
man/man1/git-switch.1.gz
man/man1/git-symbolic-ref.1.gz
man/man1/git-tag.1.gz
@ -378,7 +360,6 @@ man/man1/git-whatchanged.1.gz
man/man1/git-worktree.1.gz
man/man1/git-write-tree.1.gz
man/man1/git.1.gz
%%GUI%%man/man1/gitk.1.gz
man/man1/gitweb.1.gz
man/man5/gitattributes.5.gz
man/man5/githooks.5.gz
@ -390,7 +371,6 @@ man/man5/gitweb.conf.5.gz
man/man7/gitcli.7.gz
man/man7/gitcore-tutorial.7.gz
man/man7/gitcredentials.7.gz
%%CVS%%man/man7/gitcvs-migration.7.gz
man/man7/gitdiffcore.7.gz
man/man7/giteveryday.7.gz
man/man7/gitfaq.7.gz
@ -1363,77 +1343,6 @@ share/git-core/templates/hooks/prepare-commit-msg.sample
share/git-core/templates/hooks/push-to-checkout.sample
share/git-core/templates/hooks/update.sample
share/git-core/templates/info/exclude
%%GUI%%share/git-gui/lib/about.tcl
%%GUI%%share/git-gui/lib/blame.tcl
%%GUI%%share/git-gui/lib/branch.tcl
%%GUI%%share/git-gui/lib/branch_checkout.tcl
%%GUI%%share/git-gui/lib/branch_create.tcl
%%GUI%%share/git-gui/lib/branch_delete.tcl
%%GUI%%share/git-gui/lib/branch_rename.tcl
%%GUI%%share/git-gui/lib/browser.tcl
%%GUI%%share/git-gui/lib/checkout_op.tcl
%%GUI%%share/git-gui/lib/choose_font.tcl
%%GUI%%share/git-gui/lib/choose_repository.tcl
%%GUI%%share/git-gui/lib/choose_rev.tcl
%%GUI%%share/git-gui/lib/chord.tcl
%%GUI%%share/git-gui/lib/class.tcl
%%GUI%%share/git-gui/lib/commit.tcl
%%GUI%%share/git-gui/lib/console.tcl
%%GUI%%share/git-gui/lib/database.tcl
%%GUI%%share/git-gui/lib/date.tcl
%%GUI%%share/git-gui/lib/diff.tcl
%%GUI%%share/git-gui/lib/encoding.tcl
%%GUI%%share/git-gui/lib/error.tcl
%%GUI%%share/git-gui/lib/git-gui.ico
%%GUI%%share/git-gui/lib/index.tcl
%%GUI%%share/git-gui/lib/line.tcl
%%GUI%%share/git-gui/lib/logo.tcl
%%GUI%%share/git-gui/lib/merge.tcl
%%GUI%%share/git-gui/lib/mergetool.tcl
%%GUI%%share/git-gui/lib/msgs/bg.msg
%%GUI%%share/git-gui/lib/msgs/de.msg
%%GUI%%share/git-gui/lib/msgs/el.msg
%%GUI%%share/git-gui/lib/msgs/fr.msg
%%GUI%%share/git-gui/lib/msgs/hu.msg
%%GUI%%share/git-gui/lib/msgs/it.msg
%%GUI%%share/git-gui/lib/msgs/ja.msg
%%GUI%%share/git-gui/lib/msgs/nb.msg
%%GUI%%share/git-gui/lib/msgs/pt_br.msg
%%GUI%%share/git-gui/lib/msgs/pt_pt.msg
%%GUI%%share/git-gui/lib/msgs/ru.msg
%%GUI%%share/git-gui/lib/msgs/sv.msg
%%GUI%%share/git-gui/lib/msgs/vi.msg
%%GUI%%share/git-gui/lib/msgs/zh_cn.msg
%%GUI%%share/git-gui/lib/option.tcl
%%GUI%%share/git-gui/lib/remote.tcl
%%GUI%%share/git-gui/lib/remote_add.tcl
%%GUI%%share/git-gui/lib/remote_branch_delete.tcl
%%GUI%%share/git-gui/lib/search.tcl
%%GUI%%share/git-gui/lib/shortcut.tcl
%%GUI%%share/git-gui/lib/spellcheck.tcl
%%GUI%%share/git-gui/lib/sshkey.tcl
%%GUI%%share/git-gui/lib/status_bar.tcl
%%GUI%%share/git-gui/lib/tclIndex
%%GUI%%share/git-gui/lib/themed.tcl
%%GUI%%share/git-gui/lib/tools.tcl
%%GUI%%share/git-gui/lib/tools_dlg.tcl
%%GUI%%share/git-gui/lib/transport.tcl
%%GUI%%share/git-gui/lib/win32.tcl
%%GUI%%share/git-gui/lib/win32_shortcut.js
%%GUI%%share/gitk/lib/msgs/bg.msg
%%GUI%%share/gitk/lib/msgs/ca.msg
%%GUI%%share/gitk/lib/msgs/de.msg
%%GUI%%share/gitk/lib/msgs/es.msg
%%GUI%%share/gitk/lib/msgs/fr.msg
%%GUI%%share/gitk/lib/msgs/hu.msg
%%GUI%%share/gitk/lib/msgs/it.msg
%%GUI%%share/gitk/lib/msgs/ja.msg
%%GUI%%share/gitk/lib/msgs/pt_br.msg
%%GUI%%share/gitk/lib/msgs/pt_pt.msg
%%GUI%%share/gitk/lib/msgs/ru.msg
%%GUI%%share/gitk/lib/msgs/sv.msg
%%GUI%%share/gitk/lib/msgs/vi.msg
%%GUI%%share/gitk/lib/msgs/zh_cn.msg
%%NLS%%share/locale/bg/LC_MESSAGES/git.mo
%%NLS%%share/locale/ca/LC_MESSAGES/git.mo
%%NLS%%share/locale/de/LC_MESSAGES/git.mo

Loading…
Cancel
Save