Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F132567428
D30238.id89175.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
13 KB
Referenced Files
None
Subscribers
None
D30238.id89175.diff
View Options
Index: devel/git-cvs/Makefile
===================================================================
--- /dev/null
+++ devel/git-cvs/Makefile
@@ -0,0 +1,8 @@
+COMMENT= CVS emulation and import/export for git
+
+SUBPORT= cvs
+
+MASTERDIR= ${.CURDIR}/../git
+DESCR= ${.CURDIR}/pkg-descr
+
+.include "${MASTERDIR}/Makefile"
Index: devel/git-cvs/pkg-descr
===================================================================
--- /dev/null
+++ 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
Index: devel/git-p4/Makefile
===================================================================
--- /dev/null
+++ devel/git-p4/Makefile
@@ -0,0 +1,8 @@
+COMMENT= Import from and submit to Perforce repositories using git
+
+SUBPORT= p4
+
+MASTERDIR= ${.CURDIR}/../git
+DESCR= ${.CURDIR}/pkg-descr
+
+.include "${MASTERDIR}/Makefile"
Index: devel/git-p4/pkg-descr
===================================================================
--- /dev/null
+++ 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.
Index: devel/git-svn/Makefile
===================================================================
--- /dev/null
+++ devel/git-svn/Makefile
@@ -0,0 +1,8 @@
+COMMENT= Bidirectional operation between a Subversion repository and Git
+
+SUBPORT= svn
+
+MASTERDIR= ${.CURDIR}/../git
+DESCR= ${.CURDIR}/pkg-descr
+
+.include "${MASTERDIR}/Makefile"
Index: devel/git-svn/pkg-descr
===================================================================
--- /dev/null
+++ 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.
Index: devel/git/Makefile
===================================================================
--- devel/git/Makefile
+++ devel/git/Makefile
@@ -2,7 +2,7 @@
PORTNAME= git
DISTVERSION= 2.31.1
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= devel
MASTER_SITES= KERNEL_ORG/software/scm/git
DISTFILES= ${DISTNAME}${EXTRACT_SUFX} \
@@ -14,33 +14,40 @@
MAINTAINER= garga@FreeBSD.org
COMMENT= Distributed source code management tool ${COMMENT_${FLAVOR}}
+SUBPORT?= core
+
+.if ${SUBPORT} != core
+PKGNAMESUFFIX= -${SUBPORT}
+.endif
+
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
+.if ${SUBPORT} == core
+FLAVORS= default gui lite tiny
+default_CONFLICTS_INSTALL= git-gui git-lite git-tiny
+gui_CONFLICTS_INSTALL= git git-lite git-tiny
gui_DESCR= ${.CURDIR}/pkg-descr-gui
gui_PKGNAMESUFFIX= -gui
-lite_CONFLICTS_INSTALL= git git-gui git-svn git-tiny
+lite_CONFLICTS_INSTALL= git git-gui 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-gui git-lite
tiny_DESCR= ${.CURDIR}/pkg-descr-tiny
tiny_PKGNAMESUFFIX= -tiny
+.endif
-USES= autoreconf gmake iconv shebangfix ssl tar:xz
+USES= autoreconf gmake iconv shebangfix tar:xz
+.if ${SUBPORT} == core
+USES+= ssl
COMMENT_gui= (GUI enabled flavor)
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
@@ -49,7 +56,9 @@
LDFLAGS+= -L${LOCALBASE}/lib
MAKE_ARGS+= DEVELOPER=
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 \
@@ -68,21 +77,23 @@
CONFIGURE_ARGS= --enable-pthreads=-pthread ac_cv_header_libcharset_h=no
-OPTIONS_DEFINE= CONTRIB CURL CVS GITWEB GUI HTMLDOCS ICONV NLS P4 PCRE2 PERL \
- SEND_EMAIL SUBTREE SVN
-OPTIONS_DEFAULT=CONTRIB CURL CVS GITWEB ICONV P4 PCRE2 PERL SEND_EMAIL \
+OPTIONS_DEFINE= CONTRIB CURL GITWEB GUI HTMLDOCS ICONV NLS PCRE2 PERL \
+ SEND_EMAIL SUBTREE
+OPTIONS_DEFAULT=CONTRIB CURL GITWEB ICONV PCRE2 PERL SEND_EMAIL \
SUBTREE
+
+.if ${SUBPORT} == core
+
.if ${FLAVOR:U} == gui
OPTIONS_SLAVE+= GUI
.elif ${FLAVOR:U} == lite
-OPTIONS_EXCLUDE= GUI SVN GITWEB CONTRIB P4 CVS PERL
-.elif ${FLAVOR:U} == svn
-OPTIONS_SLAVE+= SVN
+OPTIONS_EXCLUDE+= GUI GITWEB CONTRIB PERL
.elif ${FLAVOR:U} == tiny
OPTIONS_EXCLUDE:= ${OPTIONS_DEFINE:NCURL}
OPTIONS_SLAVE= CURL
.endif
+
OPTIONS_SUB= yes
.if !empty(FLAVOR) && ${FLAVOR:U} != default
@@ -91,10 +102,8 @@
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
-P4_DESC= Enable Perforce support
PCRE2_DESC= Use Perl Compatible Regular Expressions (v2)
SEND_EMAIL_DESC=Enable the git-send-email(1) script
SUBTREE_DESC= Install git-subtree
@@ -132,17 +141,37 @@
GUI_MAKE_ARGS= TCL_PATH=${TCLSH} TCLTK_PATH=${WISH}
GUI_MAKE_ARGS_OFF= NO_TCLTK=yes
-SVN_RUN_DEPENDS= p5-Term-ReadKey>=0:devel/p5-Term-ReadKey
+
+SUBTREE_BUILD_DEPENDS= asciidoctor:textproc/rubygem-asciidoctor\
+ xmlto:textproc/xmlto
+
+
+.else
+
+OPTIONS_DEFINE=
+OPTIONS_DEFAULT=
+
+USES+= perl5
+CONFIGURE_WITH+= perl=${PERL}
+MAKE_ARGS+= NO_GETTEXT=yes NO_TCLTK=yes
+
+RUN_DEPENDS+= git=${PKGVERSION}:devel/git
+
+.if ${SUBPORT} == cvs
+RUN_DEPENDS+= cvsps:devel/cvsps
+.elif ${SUBPORT} == svn
+RUN_DEPENDS+= p5-Term-ReadKey>=0:devel/p5-Term-ReadKey
.if ${WITH_SUBVERSION_VER:U} == LTS
-SVN_RUN_DEPENDS+= p5-subversion-lts>=0:devel/p5-subversion
+RUN_DEPENDS+= p5-subversion-lts>=0:devel/p5-subversion
.else
-SVN_RUN_DEPENDS+= p5-subversion>=0:devel/p5-subversion
+RUN_DEPENDS+= p5-subversion>=0:devel/p5-subversion
+.endif
+
+.endif
+
.endif
-SUBTREE_BUILD_DEPENDS= asciidoctor:textproc/rubygem-asciidoctor\
- xmlto:textproc/xmlto
-CVS_RUN_DEPENDS= cvsps:devel/cvsps
.include <bsd.port.options.mk>
@@ -151,7 +180,7 @@
ALL_TARGET= all strip
.endif
-.if ${PORT_OPTIONS:MP4} || ${PORT_OPTIONS:MCONTRIB}
+.if ${SUBPORT} == p4 || ${PORT_OPTIONS:MCONTRIB}
USES+= python
CONFIGURE_ARGS+= --with-python=${PYTHON_CMD}
.else
@@ -164,11 +193,15 @@
gitk.1
.endif
-.if empty(PORT_OPTIONS:MSVN)
+.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
@@ -189,34 +222,35 @@
@${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-SVN-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
+
+post-patch-CONTRIB-on:
+ @${REINPLACE_CMD} -e "s,/usr/bin/perl,${PERL}," \
+ ${WRKSRC}/contrib/diff-highlight/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
-post-patch-P4-off:
- @${REINPLACE_CMD} -e '/^SCRIPT_PYTHON += git-p4.py$$/d' ${WRKSRC}/Makefile
-
-.if ${PORT_OPTIONS:MP4} || ${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
@@ -253,12 +287,54 @@
${MKDIR} ${STAGEDIR}${PREFIX}/share/git-core/contrib
${CP} -R ${WRKSRC}/contrib/* ${STAGEDIR}${PREFIX}/share/git-core/contrib
-post-install-P4-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} == cvs
+
+PLIST= ${MASTERDIR}/pkg-plist.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
+
+PLIST= ${MASTERDIR}/pkg-plist.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
+
+PLIST= ${MASTERDIR}/pkg-plist.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>
Index: devel/git/pkg-descr-svn
===================================================================
--- devel/git/pkg-descr-svn
+++ /dev/null
@@ -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/
Index: devel/git/pkg-plist
===================================================================
--- devel/git/pkg-plist
+++ devel/git/pkg-plist
@@ -1,6 +1,4 @@
bin/git
-%%CVS%%bin/git-cvsserver
-%%P4%%bin/git-p4.py
bin/git-receive-pack
bin/git-shell
bin/git-upload-archive
@@ -62,9 +60,6 @@
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
@@ -127,7 +122,6 @@
libexec/git-core/git-multi-pack-index
libexec/git-core/git-name-rev
libexec/git-core/git-notes
-%%P4%%libexec/git-core/git-p4
libexec/git-core/git-pack-objects
libexec/git-core/git-pack-redundant
libexec/git-core/git-pack-refs
@@ -179,7 +173,6 @@
libexec/git-core/git-submodule
libexec/git-core/git-submodule--helper
%%SUBTREE%%libexec/git-core/git-subtree
-%%SVN%%libexec/git-core/git-svn
libexec/git-core/git-switch
libexec/git-core/git-symbolic-ref
libexec/git-core/git-tag
@@ -254,9 +247,6 @@
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
@@ -311,7 +301,6 @@
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
@@ -357,7 +346,6 @@
man/man1/git-stripspace.1.gz
man/man1/git-submodule.1.gz
%%SUBTREE%%man/man1/git-subtree.1.gz
-%%SVN%%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
@@ -389,7 +377,6 @@
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
Index: devel/git/pkg-plist.cvs
===================================================================
--- /dev/null
+++ devel/git/pkg-plist.cvs
@@ -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
Index: devel/git/pkg-plist.p4
===================================================================
--- /dev/null
+++ devel/git/pkg-plist.p4
@@ -0,0 +1,2 @@
+libexec/git-core/git-p4
+man/man1/git-p4.1.gz
Index: devel/git/pkg-plist.svn
===================================================================
--- /dev/null
+++ devel/git/pkg-plist.svn
@@ -0,0 +1,2 @@
+libexec/git-core/git-svn
+man/man1/git-svn.1.gz
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Sun, Oct 19, 1:13 AM (11 h, 46 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
23903017
Default Alt Text
D30238.id89175.diff (13 KB)
Attached To
Mode
D30238: devel/git, devel/git-cvs, and 2 more: Split git ports
Attached
Detach File
Event Timeline
Log In to Comment