diff options
Diffstat (limited to 'dev-vcs')
546 files changed, 36630 insertions, 0 deletions
diff --git a/dev-vcs/archway/Manifest b/dev-vcs/archway/Manifest new file mode 100644 index 000000000000..8bcee1195af0 --- /dev/null +++ b/dev-vcs/archway/Manifest @@ -0,0 +1 @@ +DIST archway-0.2.1.tar.gz 384389 SHA256 66ce7be2bb5697aac1d060834fcc0419718d99473cbcd472272e98ce8125775b SHA512 52a9a5c3ced55dd50e996c75b7973c0d8e57a1b4f2094c8be598f8cb6f4b291c7d6c8ad79b447a32aa0a4f73263d65409d9b0c8ea8ef505e71e73d03fbb92a7d WHIRLPOOL a1a6c330ef15854ee1728ec90270bf10455181fa11c3a48440c681b6c910a8d493d9b7c30e12959d4a2b3f71900d62041937932d73aa4fecf6e0a1ed6e9abfd5 diff --git a/dev-vcs/archway/archway-0.2.1.ebuild b/dev-vcs/archway/archway-0.2.1.ebuild new file mode 100644 index 000000000000..82c895fe2978 --- /dev/null +++ b/dev-vcs/archway/archway-0.2.1.ebuild @@ -0,0 +1,30 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=3 +inherit eutils + +DESCRIPTION="A GUI for GNU Arch" +HOMEPAGE="http://www.nongnu.org/archway/" +SRC_URI="http://savannah.nongnu.org/download/${PN}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" +IUSE="" + +#"ArchWay requires gtk-2.4 and gtk2-perl." -$HOMEPAGE +#DEPEND=">=dev-util/tla-1.1 +# >=dev-lang/perl-5.8.0 +# >=dev-perl/gtk2-perl-1.040 +# >=dev-perl/glib-perl-1.040 +# >=x11-libs/gtk+-2.4.0" + +DEPEND="" +RDEPEND="x11-libs/gtk+:2 + >=dev-perl/gtk2-perl-1.040" + +src_install() { + emake DESTDIR="${D}" prefix=/usr install || die +} diff --git a/dev-vcs/archway/metadata.xml b/dev-vcs/archway/metadata.xml new file mode 100644 index 000000000000..59e2b8f78cb5 --- /dev/null +++ b/dev-vcs/archway/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>maintainer-needed@gentoo.org</email> + <name>Default assignee for orphaned packages</name> + </maintainer> +</pkgmetadata> diff --git a/dev-vcs/bfg/Manifest b/dev-vcs/bfg/Manifest new file mode 100644 index 000000000000..30d30a109e36 --- /dev/null +++ b/dev-vcs/bfg/Manifest @@ -0,0 +1,6 @@ +DIST bfg-1.11.10.jar 13415363 SHA256 8605400d3357cd8bd13a2cef457a3a0b8f7d914ea5159354bc73f72b4dc5b295 SHA512 a960d699e445997897cb0c264a642bb637b8747c6474957c94796c6531c4d7d112f2412fd138bb78185455f8e09e4d3a0135ff53c558d535a6195c00a5698d87 WHIRLPOOL 2caebc6f1c1f14feea069a7d0ee6011570e3a6e58291527918d8bed4a863361af777d399c701a84df63e3e6076fccdc3c4b019e05587245f8069298ad23cf7f2 +DIST bfg-1.11.7.jar 13410526 SHA256 4b5f8eb6f1a28dddcd4cf11589e07e1c4fc9e76fc431baecf2b3a94439d7cf10 SHA512 0c05db6dc87e8da003206ec854d4a5b2c51643033db23bf3ed069f4184f6beed89e8d677584dada97d35819cea47788003bc29614d336fb3b7f9c9fdfa2a1aaa WHIRLPOOL b44ecbe4c877848f618e890e9068ea55da2f7f86a6a80cff2a9303496037cc127d5eeb318566ca46cfa89765fe43a6669e7e8a3e729a2645b8b70ff17a64c184 +DIST bfg-1.11.8.jar 13421588 SHA256 32b83c9bc660af2460d03672bd7febf07b5d5c7ffd915423bd63407e668b00a2 SHA512 947bbb49001c6dcec66fdeeb4fa8ee9b25b983ab1a9e13c32ff7a3b6455e54d4a98660ed42f96c8ba9adb3ac0d4833a541cde01703e097c8d652172a096a246c WHIRLPOOL da383e2a39c759ce239abcccd78a7d516070b43540a4babd0f4b6f895450297e3025193b251ec26a803e554f8e018408b95e2512f8c02bbd9e18b53a688d6bfe +DIST bfg-1.12.0.jar 13517642 SHA256 e65277640a6836bb6c3723230e2f655d0a1ce82566a6da998f2033c540dc900b SHA512 7b6144793cd2c12661b37fdeb0391331fd423b2c37028cb319ec647dd6b38487397c167dcd70fdf9d67ef983f76a5d516e08351f3f494742f228fae6d93e6fb8 WHIRLPOOL 8bfaf061203c8770deb63c2c0bbe718a810fd72adc0365e604c3fc15e709d4ffd536e273001e114809ac65d6fc86a26da0496ed3650014b07baea3385c8f836d +DIST bfg-1.12.1.jar 13566555 SHA256 de7eef7cc2fccb622c992d1fd20c7f3368321737dbe01ea8ef1e9c910df83c4c SHA512 6fcbd662f15aabd373b19cc0f9ba4bec81a424cb839bf60e3d524eefed7e7d6245d6bf6fc975e6bf9ec07b9e5b61730c9fe3e3f02242d9893e8588bfc0111b89 WHIRLPOOL e951a92aa0f3e735be60e6508ea2946a241f4af6e9cdd92261749add4ee7e426db7de07b6cba00df397a6030306a83774e83f0670686180fe5c6902459f0c179 +DIST bfg-1.12.3.jar 13569036 SHA256 2e237631235cfb8cc2d49dabb986389851dca8a28a07083345274b443dfa4911 SHA512 c55aaf76004f92fe13294bd54221646b3c7ccd9aaab46b7418fbcb417dfa632de1011608cf7ab9ff85c6c34b4cef1885327ad40e45beb26b27e97753990a0737 WHIRLPOOL d70f4ed866a24a7fe88c93170d8fcfd112ca7fc9e59a0f5a5cb6d78b6c46f6cedd89ee1a534d9a1f84741ee0bfa1b599c2cc3534e6faa2d6d54b21d397fabdf3 diff --git a/dev-vcs/bfg/bfg-1.11.10.ebuild b/dev-vcs/bfg/bfg-1.11.10.ebuild new file mode 100644 index 000000000000..565ecf289292 --- /dev/null +++ b/dev-vcs/bfg/bfg-1.11.10.ebuild @@ -0,0 +1,27 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit java-pkg-2 + +DESCRIPTION="a simpler, faster alternative to git-filter-branch for removing bad data from git repos" +HOMEPAGE="http://rtyley.github.io/bfg-repo-cleaner/" +SRC_URI="http://repo1.maven.org/maven2/com/madgag/${PN}/${PV}/${P}.jar" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +RDEPEND=">=virtual/jre-1.6" + +S=${WORKDIR} + +src_unpack() { :; } +src_compile() { :; } + +src_install() { + java-pkg_newjar "${DISTDIR}"/${P}.jar + java-pkg_dolauncher ${PN} +} diff --git a/dev-vcs/bfg/bfg-1.11.7.ebuild b/dev-vcs/bfg/bfg-1.11.7.ebuild new file mode 100644 index 000000000000..565ecf289292 --- /dev/null +++ b/dev-vcs/bfg/bfg-1.11.7.ebuild @@ -0,0 +1,27 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit java-pkg-2 + +DESCRIPTION="a simpler, faster alternative to git-filter-branch for removing bad data from git repos" +HOMEPAGE="http://rtyley.github.io/bfg-repo-cleaner/" +SRC_URI="http://repo1.maven.org/maven2/com/madgag/${PN}/${PV}/${P}.jar" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +RDEPEND=">=virtual/jre-1.6" + +S=${WORKDIR} + +src_unpack() { :; } +src_compile() { :; } + +src_install() { + java-pkg_newjar "${DISTDIR}"/${P}.jar + java-pkg_dolauncher ${PN} +} diff --git a/dev-vcs/bfg/bfg-1.11.8.ebuild b/dev-vcs/bfg/bfg-1.11.8.ebuild new file mode 100644 index 000000000000..565ecf289292 --- /dev/null +++ b/dev-vcs/bfg/bfg-1.11.8.ebuild @@ -0,0 +1,27 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit java-pkg-2 + +DESCRIPTION="a simpler, faster alternative to git-filter-branch for removing bad data from git repos" +HOMEPAGE="http://rtyley.github.io/bfg-repo-cleaner/" +SRC_URI="http://repo1.maven.org/maven2/com/madgag/${PN}/${PV}/${P}.jar" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +RDEPEND=">=virtual/jre-1.6" + +S=${WORKDIR} + +src_unpack() { :; } +src_compile() { :; } + +src_install() { + java-pkg_newjar "${DISTDIR}"/${P}.jar + java-pkg_dolauncher ${PN} +} diff --git a/dev-vcs/bfg/bfg-1.12.0.ebuild b/dev-vcs/bfg/bfg-1.12.0.ebuild new file mode 100644 index 000000000000..85b19cade09c --- /dev/null +++ b/dev-vcs/bfg/bfg-1.12.0.ebuild @@ -0,0 +1,27 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit java-pkg-2 + +DESCRIPTION="a simpler, faster alternative to git-filter-branch for removing bad data from git repos" +HOMEPAGE="http://rtyley.github.io/bfg-repo-cleaner/" +SRC_URI="http://repo1.maven.org/maven2/com/madgag/${PN}/${PV}/${P}.jar" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +RDEPEND=">=virtual/jre-1.6" + +S=${WORKDIR} + +src_unpack() { :; } +src_compile() { :; } + +src_install() { + java-pkg_newjar "${DISTDIR}"/${P}.jar + java-pkg_dolauncher ${PN} +} diff --git a/dev-vcs/bfg/bfg-1.12.1.ebuild b/dev-vcs/bfg/bfg-1.12.1.ebuild new file mode 100644 index 000000000000..85b19cade09c --- /dev/null +++ b/dev-vcs/bfg/bfg-1.12.1.ebuild @@ -0,0 +1,27 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit java-pkg-2 + +DESCRIPTION="a simpler, faster alternative to git-filter-branch for removing bad data from git repos" +HOMEPAGE="http://rtyley.github.io/bfg-repo-cleaner/" +SRC_URI="http://repo1.maven.org/maven2/com/madgag/${PN}/${PV}/${P}.jar" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +RDEPEND=">=virtual/jre-1.6" + +S=${WORKDIR} + +src_unpack() { :; } +src_compile() { :; } + +src_install() { + java-pkg_newjar "${DISTDIR}"/${P}.jar + java-pkg_dolauncher ${PN} +} diff --git a/dev-vcs/bfg/bfg-1.12.3.ebuild b/dev-vcs/bfg/bfg-1.12.3.ebuild new file mode 100644 index 000000000000..85b19cade09c --- /dev/null +++ b/dev-vcs/bfg/bfg-1.12.3.ebuild @@ -0,0 +1,27 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit java-pkg-2 + +DESCRIPTION="a simpler, faster alternative to git-filter-branch for removing bad data from git repos" +HOMEPAGE="http://rtyley.github.io/bfg-repo-cleaner/" +SRC_URI="http://repo1.maven.org/maven2/com/madgag/${PN}/${PV}/${P}.jar" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +RDEPEND=">=virtual/jre-1.6" + +S=${WORKDIR} + +src_unpack() { :; } +src_compile() { :; } + +src_install() { + java-pkg_newjar "${DISTDIR}"/${P}.jar + java-pkg_dolauncher ${PN} +} diff --git a/dev-vcs/bfg/metadata.xml b/dev-vcs/bfg/metadata.xml new file mode 100644 index 000000000000..157326a7e891 --- /dev/null +++ b/dev-vcs/bfg/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>radhermit@gentoo.org</email> + <name>Tim Harder</name> + </maintainer> +</pkgmetadata> diff --git a/dev-vcs/bzr-explorer/Manifest b/dev-vcs/bzr-explorer/Manifest new file mode 100644 index 000000000000..1209172cb63d --- /dev/null +++ b/dev-vcs/bzr-explorer/Manifest @@ -0,0 +1 @@ +DIST bzr-explorer-1.3.0.tar.gz 1469939 SHA256 e3584df263a5004765a224cc38d00449e0ad47495070edae59ecbcc4dac94086 SHA512 60cf3e70e5a4e19de3816619646ac0445a7847bc48c640712bd1042fce0cce5964de13e6ad5e1e65b85c9d596f073571ec918c8132c77d7348bc34e1e318b156 WHIRLPOOL b64dada7af2bf7502c7ce7d4d16174ffdb97596789b50b3026631da52d595f491cff930da034aaffa6dab938606f3a8a8312fef30f3070f1a6d59541d56ebc32 diff --git a/dev-vcs/bzr-explorer/bzr-explorer-1.3.0-r1.ebuild b/dev-vcs/bzr-explorer/bzr-explorer-1.3.0-r1.ebuild new file mode 100644 index 000000000000..507f7030d41a --- /dev/null +++ b/dev-vcs/bzr-explorer/bzr-explorer-1.3.0-r1.ebuild @@ -0,0 +1,34 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +PYTHON_COMPAT=( python2_7 ) +DISTUTILS_SINGLE_IMPL=1 + +inherit distutils-r1 + +MY_PV=${PV/_beta/b} +MY_PV=${MY_PV/_rc/rc} +LPV=${MY_PV} +MY_P=${PN}-${MY_PV} + +DESCRIPTION="A high level interface to all commonly used Bazaar features" +HOMEPAGE="https://launchpad.net/bzr-explorer" +SRC_URI="http://launchpad.net/${PN}/1.3/${LPV}/+download/${MY_P}.tar.gz" +LICENSE="GPL-2" + +SLOT="0" + +KEYWORDS="~amd64 ~x86" +IUSE="gtk" + +DEPEND="" +RDEPEND=">=dev-vcs/bzr-2.5[${PYTHON_USEDEP}] + >=dev-vcs/qbzr-0.23[${PYTHON_USEDEP}] + gtk? ( dev-vcs/bzr-gtk[${PYTHON_USEDEP}] )" + +pkg_setup() { + python-single-r1_pkg_setup +} diff --git a/dev-vcs/bzr-explorer/bzr-explorer-1.3.0.ebuild b/dev-vcs/bzr-explorer/bzr-explorer-1.3.0.ebuild new file mode 100644 index 000000000000..82665ca76b23 --- /dev/null +++ b/dev-vcs/bzr-explorer/bzr-explorer-1.3.0.ebuild @@ -0,0 +1,31 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="3" + +PYTHON_DEPEND="2" +SUPPORT_PYTHON_ABIS="1" +RESTRICT_PYTHON_ABIS="3.*" + +inherit distutils + +MY_PV=${PV/_beta/b} +MY_PV=${MY_PV/_rc/rc} +LPV=${MY_PV} +MY_P=${PN}-${MY_PV} + +DESCRIPTION="A high level interface to all commonly used Bazaar features" +HOMEPAGE="https://launchpad.net/bzr-explorer" +SRC_URI="http://launchpad.net/${PN}/1.3/${LPV}/+download/${MY_P}.tar.gz" +LICENSE="GPL-2" + +SLOT="0" + +KEYWORDS="amd64 x86" +IUSE="gtk" + +DEPEND="" +RDEPEND=">=dev-vcs/bzr-2.5 + >=dev-vcs/qbzr-0.23 + gtk? ( dev-vcs/bzr-gtk )" diff --git a/dev-vcs/bzr-explorer/metadata.xml b/dev-vcs/bzr-explorer/metadata.xml new file mode 100644 index 000000000000..764351126d2d --- /dev/null +++ b/dev-vcs/bzr-explorer/metadata.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>bazaar</herd> + <longdescription lang="en"> + Bazaar Explorer is a desktop application for using the Bazaar + Version Control System. It provides a high level interface to all + commonly used features, launching "applets" from the QBzr plug-in + to provide most of the functionality. Alternatively, the applets + from the bzr-gtk plug-in can be used if it is installed. + </longdescription> + <upstream> + <remote-id type="launchpad">bzr-explorer</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-vcs/bzr-fastimport/Manifest b/dev-vcs/bzr-fastimport/Manifest new file mode 100644 index 000000000000..65d590f70cb0 --- /dev/null +++ b/dev-vcs/bzr-fastimport/Manifest @@ -0,0 +1 @@ +DIST bzr-fastimport-0.13.0.tar.gz 80255 SHA256 5e296dc4ff8e9bf1b6447e81fef41e1217656b43368ee4056a1f024221e009eb SHA512 3677a6ebb9d5d36d7d29198f239289a9670ac4f1fcbf74a1f219f8a0a5a9cd4301dbdc969c4bce2da18e3c4f7f9a3752919b662473071a7b3f1d84c2de27d821 WHIRLPOOL be69b7541b2d2bdf7a85278997096a4113ef97aee59d6c25deddd89e8b5e406590f033eb1457946c3aa9f3f2aca16df6c2bf590b7d67f9ba6cf4ed33c72f2c56 diff --git a/dev-vcs/bzr-fastimport/bzr-fastimport-0.13.0.ebuild b/dev-vcs/bzr-fastimport/bzr-fastimport-0.13.0.ebuild new file mode 100644 index 000000000000..713b659c47bd --- /dev/null +++ b/dev-vcs/bzr-fastimport/bzr-fastimport-0.13.0.ebuild @@ -0,0 +1,34 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="5" + +PYTHON_COMPAT=( python2_7 ) + +inherit distutils-r1 + +DESCRIPTION="Plugin providing fast loading of revision control data into Bazaar" +HOMEPAGE="https://launchpad.net/bzr-fastimport http://wiki.bazaar.canonical.com/BzrFastImport" +SRC_URI="http://launchpad.net/${PN}/trunk/${PV}/+download/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 x86" +IUSE="" + +RDEPEND=">=dev-vcs/bzr-1.18 + >=dev-python/python-fastimport-0.9" +DEPEND="" + +DOCS=( NEWS README.txt doc/notes.txt ) + +pkg_postinst() { + elog "These commands need additional dependencies:" + elog + elog "bzr fast-export-from-darcs: dev-vcs/darcs" + elog "bzr fast-export-from-git: dev-vcs/git" + elog "bzr fast-export-from-hg: dev-vcs/mercurial" + elog "bzr fast-export-from-mtn: dev-vcs/monotone" + elog "bzr fast-export-from-svn: dev-vcs/subversion[python]" +} diff --git a/dev-vcs/bzr-fastimport/metadata.xml b/dev-vcs/bzr-fastimport/metadata.xml new file mode 100644 index 000000000000..e8dc124c31fa --- /dev/null +++ b/dev-vcs/bzr-fastimport/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>tetromino@gentoo.org</email> + <name>Alexandre Rostovtsev</name> + </maintainer> + <herd>bazaar</herd> + <upstream> + <remote-id type="launchpad">bzr-fastimport</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-vcs/bzr-git/Manifest b/dev-vcs/bzr-git/Manifest new file mode 100644 index 000000000000..d70782568a0c --- /dev/null +++ b/dev-vcs/bzr-git/Manifest @@ -0,0 +1 @@ +DIST bzr-git-0.6.8.tar.gz 117453 SHA256 b157db228717900d109990df349c656d2297803a20f88edb8280f2e9d73bfc27 SHA512 23bd236bdd8bed53a691be03ae0e22bef804e164d4d0ec3760e2ee49d2b83d9cdff64207f33b6e7f088b7d94f7b14249948befb653f3391096210056ebe613cf WHIRLPOOL 9c0d21707a5f556abc685adc987f6777abc21f5339ec0120fa339e60c905ac579c84817b80f4dc7f5170242088c26ca4b6f9eefcfaa7dfbd2252d2efac0927aa diff --git a/dev-vcs/bzr-git/bzr-git-0.6.8-r1.ebuild b/dev-vcs/bzr-git/bzr-git-0.6.8-r1.ebuild new file mode 100644 index 000000000000..d14b550aeebe --- /dev/null +++ b/dev-vcs/bzr-git/bzr-git-0.6.8-r1.ebuild @@ -0,0 +1,41 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +PYTHON_COMPAT=( python2_7 ) +DISTUTILS_SINGLE_IMPL=1 + +inherit distutils-r1 + +DESCRIPTION="Support for Git branches in Bazaar" +HOMEPAGE="http://bazaar-vcs.org/BzrForeignBranches/Git" +SRC_URI="" + +LICENSE="GPL-2" +SLOT="0" + +if [[ ${PV} = 9999 ]]; then + inherit bzr + EBZR_REPO_URI="lp:bzr-git" + KEYWORDS="" +else + SRC_URI="http://samba.org/~jelmer/bzr/${P}.tar.gz" + KEYWORDS="~amd64 ~x86" +fi + +IUSE="" +# Test are broken, they want API functions from Dulwich which are not +# installed in Gentoo +RESTRICT="test" + +# Check info.py for dulwich and bzr version dependency info. +# The file should be fairly straightforward to understand. +DEPEND="" +RDEPEND=">=dev-python/dulwich-0.8.2[${PYTHON_USEDEP}] + >=dev-vcs/bzr-2.5.0[${PYTHON_USEDEP}]" + +pkg_setup() { + python-single-r1_pkg_setup +} diff --git a/dev-vcs/bzr-git/bzr-git-0.6.8.ebuild b/dev-vcs/bzr-git/bzr-git-0.6.8.ebuild new file mode 100644 index 000000000000..87cb700ecdf2 --- /dev/null +++ b/dev-vcs/bzr-git/bzr-git-0.6.8.ebuild @@ -0,0 +1,37 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="3" +PYTHON_DEPEND="2" +SUPPORT_PYTHON_ABIS="1" +RESTRICT_PYTHON_ABIS="3.*" + +inherit distutils + +DESCRIPTION="Support for Git branches in Bazaar" +HOMEPAGE="http://bazaar-vcs.org/BzrForeignBranches/Git" +SRC_URI="" + +LICENSE="GPL-2" +SLOT="0" + +if [[ ${PV} = 9999 ]]; then + inherit bzr + EBZR_REPO_URI="lp:bzr-git" + KEYWORDS="" +else + SRC_URI="http://samba.org/~jelmer/bzr/${P}.tar.gz" + KEYWORDS="amd64 x86" +fi + +IUSE="" +# Test are broken, they want API functions from Dulwich which are not +# installed in Gentoo +RESTRICT="test" + +# Check info.py for dulwich and bzr version dependency info. +# The file should be fairly straightforward to understand. +DEPEND="" +RDEPEND=">=dev-python/dulwich-0.8.2 + >=dev-vcs/bzr-2.5.0" diff --git a/dev-vcs/bzr-git/metadata.xml b/dev-vcs/bzr-git/metadata.xml new file mode 100644 index 000000000000..e74a92d1562c --- /dev/null +++ b/dev-vcs/bzr-git/metadata.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>bazaar</herd> +</pkgmetadata> diff --git a/dev-vcs/bzr-gtk/Manifest b/dev-vcs/bzr-gtk/Manifest new file mode 100644 index 000000000000..7d5a9568e584 --- /dev/null +++ b/dev-vcs/bzr-gtk/Manifest @@ -0,0 +1,2 @@ +DIST bzr-gtk-0.103.0.tar.gz 210971 SHA256 5dc8b222d36f1a1d5d9a4c5048b9c5c2febb653e70a9a752dae941f58d34e2fe SHA512 b95496e514b2144ffc70f516360c4f59f885ad2105a8b989ac469313dada9d5ebf05fa5b11f4e6cb16f41f0b5380159ff974f867391387f702dd35ca6dd4fe27 WHIRLPOOL 7d9a2ea8d27ed25e6f2f3a83e0eed292b758dd25942c3f26b99cf2f267b9242c77d4be814dce6d86e226fc710752ff5e1664554fe5c151fd2da051eb69c6a21b +DIST bzr-gtk-0.104.0.tar.gz 218863 SHA256 c6d378d5111ca3483de7c54ffd9f6c7264407f567c9556e76e802b9c55ff419b SHA512 d39a1303570dd7504cad9211f3b1c86d3e6f022535c262b7b5f7b19899b362ff7b01d9f19e557cb4391d7ccf1470635ebc5d5380d2d5216b6610c4e8e1b7b6a3 WHIRLPOOL 26f611122ba3a08cc281a9d8490ed53dedad5a64d13567518ea1697285fe6f1eaa331847f928b5ac91cb35e7deef0c7bef0f9f38eddb5f3abc8dec67a3f9772d diff --git a/dev-vcs/bzr-gtk/bzr-gtk-0.103.0.ebuild b/dev-vcs/bzr-gtk/bzr-gtk-0.103.0.ebuild new file mode 100644 index 000000000000..ba18350706e5 --- /dev/null +++ b/dev-vcs/bzr-gtk/bzr-gtk-0.103.0.ebuild @@ -0,0 +1,50 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="3" +PYTHON_DEPEND="2" +SUPPORT_PYTHON_ABIS="1" +RESTRICT_PYTHON_ABIS="3.*" + +inherit distutils + +MY_P="/${P/_rc/rc}" + +DESCRIPTION="A GTK+ interfaces to most Bazaar operations" +HOMEPAGE="http://bazaar-vcs.org/bzr-gtk" +SRC_URI="http://launchpad.net/${PN}/gtk3/${PV}/+download/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 x86" +IUSE="gnome-keyring gpg nautilus" + +DEPEND=">=dev-vcs/bzr-1.6_rc1 + dev-python/pygobject + dev-python/notify-python + >=dev-python/pycairo-1.0" +RDEPEND="${DEPEND} + nautilus? ( >=dev-python/nautilus-python-1.0 ) + dev-python/notify-python + gnome-keyring? ( dev-python/gnome-keyring-python ) + gpg? ( app-crypt/seahorse )" + +S="${WORKDIR}/${MY_P}" + +#TODO: src_test + +src_prepare() { + cp "${FILESDIR}"/credits.pickle "${S}"/credits.pickle +} + +src_install() { + distutils_src_install + insinto /etc/xdg/autostart + doins bzr-notify.desktop + if ! use nautilus + then + rm -rf "${D}"/usr/$(get_libdir)/nautilus/ + rm -rf "${D}"$(python_get_libdir --final-ABI)/site-packages/bzrlib/plugins/gtk/nautilus-bzr.py + fi +} diff --git a/dev-vcs/bzr-gtk/bzr-gtk-0.104.0-r1.ebuild b/dev-vcs/bzr-gtk/bzr-gtk-0.104.0-r1.ebuild new file mode 100644 index 000000000000..f6339bf98872 --- /dev/null +++ b/dev-vcs/bzr-gtk/bzr-gtk-0.104.0-r1.ebuild @@ -0,0 +1,62 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +DISTUTILS_SINGLE_IMPL=1 +PYTHON_COMPAT=( python2_7 ) + +inherit distutils-r1 + +MY_P="/${P/_rc/rc}" + +DESCRIPTION="A GTK+ interfaces to most Bazaar operations" +HOMEPAGE="http://bazaar-vcs.org/bzr-gtk" +SRC_URI="http://launchpad.net/${PN}/gtk3/${PV}/+download/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="gnome-keyring gpg nautilus" + +DEPEND=">=dev-vcs/bzr-1.6_rc1[${PYTHON_USEDEP}] + dev-python/pygobject[${PYTHON_USEDEP}] + dev-python/notify-python[${PYTHON_USEDEP}] + >=dev-python/pycairo-1.0[${PYTHON_USEDEP}] + nautilus? ( + >=dev-python/nautilus-python-1.0[${PYTHON_USEDEP}] + virtual/pkgconfig + )" +RDEPEND="${DEPEND} + nautilus? ( >=dev-python/nautilus-python-1.0[${PYTHON_USEDEP}] ) + dev-python/notify-python[${PYTHON_USEDEP}] + gnome-keyring? ( dev-python/gnome-keyring-python[${PYTHON_USEDEP}] ) + gpg? ( app-crypt/seahorse )" + +S="${WORKDIR}/${MY_P}" + +#TODO: src_test + +python_prepare_all() { + cp "${FILESDIR}"/credits.pickle "${S}"/credits.pickle || die + + distutils-r1_python_prepare_all +} + +python_install() { + distutils-r1_python_install + + if ! use nautilus; then + # automagic dep + rm -rf "${D%/}"/usr/$(get_libdir)/nautilus/ || die + rm -rf "${D%/}"$(python_get_sitedir)/bzrlib/plugins/gtk/nautilus-bzr.py* || die + fi +} + +python_install_all() { + distutils-r1_python_install_all + + insinto /etc/xdg/autostart + doins bzr-notify.desktop +} diff --git a/dev-vcs/bzr-gtk/bzr-gtk-0.104.0.ebuild b/dev-vcs/bzr-gtk/bzr-gtk-0.104.0.ebuild new file mode 100644 index 000000000000..f0a9f29feddc --- /dev/null +++ b/dev-vcs/bzr-gtk/bzr-gtk-0.104.0.ebuild @@ -0,0 +1,50 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="3" +PYTHON_DEPEND="2" +SUPPORT_PYTHON_ABIS="1" +RESTRICT_PYTHON_ABIS="3.*" + +inherit distutils + +MY_P="/${P/_rc/rc}" + +DESCRIPTION="A GTK+ interfaces to most Bazaar operations" +HOMEPAGE="http://bazaar-vcs.org/bzr-gtk" +SRC_URI="http://launchpad.net/${PN}/gtk3/${PV}/+download/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="gnome-keyring gpg nautilus" + +DEPEND=">=dev-vcs/bzr-1.6_rc1 + dev-python/pygobject + dev-python/notify-python + >=dev-python/pycairo-1.0" +RDEPEND="${DEPEND} + nautilus? ( >=dev-python/nautilus-python-1.0 ) + dev-python/notify-python + gnome-keyring? ( dev-python/gnome-keyring-python ) + gpg? ( app-crypt/seahorse )" + +S="${WORKDIR}/${MY_P}" + +#TODO: src_test + +src_prepare() { + cp "${FILESDIR}"/credits.pickle "${S}"/credits.pickle +} + +src_install() { + distutils_src_install + insinto /etc/xdg/autostart + doins bzr-notify.desktop + if ! use nautilus + then + rm -rf "${D}"/usr/$(get_libdir)/nautilus/ + rm -rf "${D}"$(python_get_libdir --final-ABI)/site-packages/bzrlib/plugins/gtk/nautilus-bzr.py + fi +} diff --git a/dev-vcs/bzr-gtk/files/credits.pickle b/dev-vcs/bzr-gtk/files/credits.pickle new file mode 100644 index 000000000000..fc0e9deceaec --- /dev/null +++ b/dev-vcs/bzr-gtk/files/credits.pickle @@ -0,0 +1,193 @@ +((lp0 +VJelmer Vernooij <jelmer@samba.org> +p1 +aVDaniel Schierbeck <daniel.schierbeck@gmail.com> +p2 +aVSzilveszter Farkas (Phanatic) <Szilveszter.Farkas@gmail.com> +p3 +aVGary van der Merwe <garyvdm@gmail.com> +p4 +aVJasper Groenewegen <colbrac@xs4all.nl> +p5 +aVVincent Ladeuil <v.ladeuil+lp@free.fr> +p6 +aVJohn Arbash Meinel <john@arbash-meinel.com> +p7 +aVAaron Bentley <abentley@panoramicfeedback.com> +p8 +aVAaron Bentley <aaron@aaronbentley.com> +p9 +aVAlexander Belchenko <bialix@ukr.net> +p10 +aVDavid Allouche <david.allouche@canonical.com> +p11 +aVDan Loda <danloda@gmail.com> +p12 +aVAaron Bentley <aaron.bentley@utoronto.ca> +p13 +aVScott James Remnant <scott@netsplit.com> +p14 +aVScott Scriven <ubuntu@toykeeper.net> +p15 +aVMateusz Korniak <matkor@laptop-hp> +p16 +aVRobert Collins <robertc@robertcollins.net> +p17 +aVSzilveszter Farkas (Phanatic) <szilveszter.farkas@gmail.com> +p18 +aVMartin Albisetti <argentina@gmail.com> +p19 +aVSabin Iacob (m0n5t3r) <iacobs@m0n5t3r.info> +p20 +aVJavier Derderian <javierder@gmail.com> +p21 +aVjbailey@ubuntu.com +p22 +aVGary van der Merwe <garyvdm@garyvdm-desktop> +p23 +aVRichard Ferguson <ubuntu@fergusnet.com> +p24 +aVMartin Pool <mbp@canonical.com> +p25 +aVElliot Murphy <elliot@elliotmurphy.com> +p26 +aVAdeodato Simó <dato@net.com.org.es> +p27 +aVv.ladeuil+lp@free.fr +p28 +aVSzilveszter Farkas <szilveszter.farkas@gmail.com> +p29 +aVWouter van Heyst <larstiq@larstiq.dyndns.org> +p30 +aVTorsten Landschoff <torsten@debian.org> +p31 +aVJamie Wilkinson <jaq@spacepants.org> +p32 +aVGediminas Paulauskas <menesis@pov.lt> +p33 +aVAli Sabil <ali.sabil@gmail.com> +p34 +aVAdrian Wilkins <adrian.wilkins@gmail.com> +p35 +aVMichael Ellerman <michael@ellerman.id.au> +p36 +aVMateusz Korniak (matkor@laptop-hp) +p37 +aVJelmer Vernooij <Jelmer Vernooij@LENOVO-C29B82CD> +p38 +aVFarkas Szilveszter <szilveszter@szilveszter-desktop> +p39 +aVDaniel Schömer <daniel.schoemer@gmx.net> +p40 +aVChris Lamb <chris@chris-lamb.co.uk> +p41 +aVChad MILLER <chad@mysql.com> +p42 +aVrodney.dawes@canonical.com +p43 +aVmatkor <matkor@laptop-hp> +p44 +aVklight@walkertechnical.com +p45 +aVklight <klight@X111> +p46 +aVVincent Geddes <vincent.geddes@gmail.com> +p47 +aVToshio Kuratomi <toshio@fedoraproject.org> +p48 +aVTom Badran <tom@badrunner.net> +p49 +aVSzilveszter Farkas <szilveszter@MacBookPro.local> +p50 +aVStéphane Raimbault <stephane.raimbault@gmail.com> +p51 +aVScott James Remnant <scott@ubuntu.com> +p52 +aVRuss Brown <pickscrape@gmail.com> +p53 +aVRichard Ferguson <fergus@fergusnet.com> +p54 +aVRene Huber <rhuber@ubuntu> +p55 +aVPelle Johansson <pelle@blocket.se> +p56 +aVMichael Vogt <michael.vogt@ubuntu.com> +p57 +aVMathias Brodala <info@noctus.net> +p58 +aVMarkus Korn <thekorn@gmx.de> +p59 +aVMario Danic <mario.danic@gmail.com> +p60 +aVLucas Shrewsbury <rollbak@gmail.com> +p61 +aVKevin Light <klight@walkertechnical.com> +p62 +aVJohn Szakmeister <john@szakmeister.net> +p63 +aVJean-François Fortin Tam <jeff@ecchi.ca> +p64 +aVJasper Groenewegen <colbrac@xs4al.nl> +p65 +aVJames Westby <jw+debian@jameswestby.net> +p66 +aVJames Henstridge <james@jamesh.id.au> +p67 +aVErik Bagfors <erik@bagfors.nu> +p68 +aVDennis Miller <millerdl@telusplanet.net> +p69 +aVAndrew Starr-Bochicchio <a.starr.b@gmail.com> +p70 +aVAndrew Bennetts <andrew@puzzling.org> +p71 +aVAlexandre Défossez <alexandre.defossez@gmail.com> +p72 +aVAdrian Room <ingolemo@gmail.com> +p73 +a(lp74 +g1 +ag3 +ag6 +ag2 +ag12 +ag4 +ag27 +ag50 +ag29 +ag15 +ag14 +ag66 +ag44 +ag22 +ag49 +aVSense Hofstede <qense@ubuntu.com> +p75 +ag52 +ag53 +ag17 +ag16 +ag25 +ag19 +ag61 +aVKiddo <nekohayo@gmail.com> +p76 +ag62 +ag63 +ag38 +ag5 +ag23 +ag11 +ag8 +a(lp77 +g3 +ag2 +ag19 +ag61 +ag1 +a(lp78 +g3 +ag18 +ag51 +atp79 +.
\ No newline at end of file diff --git a/dev-vcs/bzr-gtk/metadata.xml b/dev-vcs/bzr-gtk/metadata.xml new file mode 100644 index 000000000000..a41036fb8275 --- /dev/null +++ b/dev-vcs/bzr-gtk/metadata.xml @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>bazaar</herd> + <longdescription lang="en"> + GTK+ Frontends to various Bazaar commands. Currently contains + dialogs for almost all common operations, including annotate and + visualise (log). Olive, the integrated version control application + is also part of bzr-gtk. + </longdescription> + <use> + <flag name="gpg">Support signing with GnuPG.</flag> + <flag name="nautilus">Integrate with Nautilus file manager</flag> + </use> + <upstream> + <remote-id type="launchpad">bzr-gtk</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-vcs/bzr-rewrite/Manifest b/dev-vcs/bzr-rewrite/Manifest new file mode 100644 index 000000000000..d2199fa74c91 --- /dev/null +++ b/dev-vcs/bzr-rewrite/Manifest @@ -0,0 +1 @@ +DIST bzr-rewrite-0.6.3.tar.gz 33045 SHA256 f4d0032a41a549a0bc3ac4248cd4599da859174ea33e56befcb095dd2c930794 SHA512 f1a55307e80090dcc3739e4b111e08b02e4c4ec07ed479a5ac28d2d40535a699492eba785c142d8f6396032ed9db143d86dc68dac5280c071b79a9818ac69250 WHIRLPOOL 7c27030e94ae0f57449fc77d226c385d8956965c693e2e24e1b431043021b30a519857ca9db3d0018ac93081cafd3908221b0dcd526753dee2d7d79922927115 diff --git a/dev-vcs/bzr-rewrite/bzr-rewrite-0.6.3.ebuild b/dev-vcs/bzr-rewrite/bzr-rewrite-0.6.3.ebuild new file mode 100644 index 000000000000..8fb2c28f807a --- /dev/null +++ b/dev-vcs/bzr-rewrite/bzr-rewrite-0.6.3.ebuild @@ -0,0 +1,22 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="5" +PYTHON_COMPAT=( python2_7 ) + +inherit distutils-r1 + +DESCRIPTION="Bazaar plugin that adds support for rebasing, similar to the functionality in git" +HOMEPAGE="https://launchpad.net/bzr-rewrite" +SRC_URI="http://launchpad.net/bzr-rewrite/trunk/${PV}/+download/${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="alpha amd64 x86" +IUSE="" + +DEPEND=">=dev-vcs/bzr-2.5.0 + !dev-vcs/bzr-rebase" +RDEPEND="${DEPEND} + !<dev-vcs/bzr-svn-0.6" diff --git a/dev-vcs/bzr-rewrite/metadata.xml b/dev-vcs/bzr-rewrite/metadata.xml new file mode 100644 index 000000000000..49b47809416d --- /dev/null +++ b/dev-vcs/bzr-rewrite/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>bazaar</herd> + <upstream> + <remote-id type="launchpad">bzr-rewrite</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-vcs/bzr-xmloutput/Manifest b/dev-vcs/bzr-xmloutput/Manifest new file mode 100644 index 000000000000..01afeda0df0d --- /dev/null +++ b/dev-vcs/bzr-xmloutput/Manifest @@ -0,0 +1 @@ +DIST bzr-xmloutput-0.8.8.tar.gz 49969 SHA256 73b9b2f6ce4d9910031df7fd153d56d14f833c20a106f099bee5a33463f73b36 SHA512 9eb87ba86dd45b7132eca69ef6e52726d7ee2d9211cc3052655e40f5cee2b99e160336c347ddce7ad912c0027e8b6a05ca542f70733d2e3493922cfa311b38ef WHIRLPOOL e07a08cd0738524207e7ab8d6c645b86d087391fb06d1e0ecf08cfbe78e6f6a1e730af41f4e2dea9e197e7c7f0de69cf6494ab1f906919febb86e06b490fe4e2 diff --git a/dev-vcs/bzr-xmloutput/bzr-xmloutput-0.8.8-r1.ebuild b/dev-vcs/bzr-xmloutput/bzr-xmloutput-0.8.8-r1.ebuild new file mode 100644 index 000000000000..ce4302f8d888 --- /dev/null +++ b/dev-vcs/bzr-xmloutput/bzr-xmloutput-0.8.8-r1.ebuild @@ -0,0 +1,27 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="3" +PYTHON_DEPEND="2" +SUPPORT_PYTHON_ABIS="1" +RESTRICT_PYTHON_ABIS="3.*" + +inherit distutils eutils + +DESCRIPTION="A Bazaar plugin that provides a option to generate XML output for +builtin commands." +HOMEPAGE="http://bazaar-vcs.org/XMLOutput" +SRC_URI="http://launchpad.net/${PN}/trunk/${PV}/+download/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 x86" +IUSE="" + +DEPEND="" +RDEPEND="dev-vcs/bzr" + +src_prepare() { + epatch "${FILESDIR}"/${P}_remove-relative-imports.patch +} diff --git a/dev-vcs/bzr-xmloutput/bzr-xmloutput-0.8.8-r2.ebuild b/dev-vcs/bzr-xmloutput/bzr-xmloutput-0.8.8-r2.ebuild new file mode 100644 index 000000000000..5fd210f25a21 --- /dev/null +++ b/dev-vcs/bzr-xmloutput/bzr-xmloutput-0.8.8-r2.ebuild @@ -0,0 +1,28 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +PYTHON_COMPAT=( python2_7 ) +DISTUTILS_SINGLE_IMPL=1 + +inherit distutils-r1 + +DESCRIPTION="A Bazaar plugin that provides a option to generate XML output forbuiltin commands." +HOMEPAGE="http://bazaar-vcs.org/XMLOutput" +SRC_URI="http://launchpad.net/${PN}/trunk/${PV}/+download/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="" + +DEPEND="" +RDEPEND="dev-vcs/bzr[${PYTHON_USEDEP}]" + +PATCHES=( "${FILESDIR}"/${P}_remove-relative-imports.patch ) + +pkg_setup() { + python-single-r1_pkg_setup +} diff --git a/dev-vcs/bzr-xmloutput/files/bzr-xmloutput-0.8.8_remove-relative-imports.patch b/dev-vcs/bzr-xmloutput/files/bzr-xmloutput-0.8.8_remove-relative-imports.patch new file mode 100644 index 000000000000..b21eef05d2ad --- /dev/null +++ b/dev-vcs/bzr-xmloutput/files/bzr-xmloutput-0.8.8_remove-relative-imports.patch @@ -0,0 +1,220 @@ +revno: 160 [merge] +author: Jelmer Vernooij <jelmer@samba.org> +committer: Guillermo Gonzalez <guillo.gonzo@gmail.com> +branch nick: trunk +timestamp: Mon 2011-12-19 18:45:35 -0300 +message: + Removes the use of relative imports and avoids using lazy_import in a few places we're it doesn't make a difference. + +Gentoo bug: https://bugs.gentoo.org/show_bug.cgi?id=418969 +Upstream bug: https://bugs.launchpad.net/bzr-xmloutput/+bug/955329 +Commit: http://bazaar.launchpad.net/~verterok/bzr-xmloutput/trunk/revision/160 + +--- cmds.py 2011-03-09 23:19:41 +0000 ++++ cmds.py 2011-12-12 15:11:38 +0000 +@@ -22,36 +22,39 @@ + + import info + import bzrlib ++from bzrlib.option import Option ++from bzrlib.commands import ( ++ Command, ++ display_command, ++ ) + from bzrlib.lazy_import import lazy_import + lazy_import(globals(), """ + import sys + from bzrlib import ( + builtins, + bzrdir, +- commands, +- option, + log, + workingtree, + errors + ) + +-from bzrlib.option import Option, custom_help +-from bzrlib.commands import display_command +-import logxml +-import service ++from bzrlib.plugins.xmloutput import ( ++ logxml, ++ service, ++ ) + import socket +-from xml_errors import handle_error_xml + """) + ++from bzrlib.plugins.xmloutput.xml_errors import handle_error_xml + + version_info = info.bzr_plugin_version + plugin_name = info.bzr_plugin_name + +-null_option = option.Option('null', +- help='Write an ascii NUL (\\0) as the final char.') +- +- +-class cmd_xmlstatus(commands.Command): ++null_option = Option('null', ++ help='Write an ascii NUL (\\0) as the final char.') ++ ++ ++class cmd_xmlstatus(Command): + """Display status summary. + + This reports on versioned and unknown files, reporting them +@@ -118,7 +121,7 @@ + self.outf.write('\n') + + +-class cmd_xmlannotate(commands.Command): ++class cmd_xmlannotate(Command): + """Show the origin of each line in a file. + + This prints out the given file with an annotation on the left side +@@ -176,7 +179,7 @@ + branch.unlock() + + +-class cmd_xmlmissing(commands.Command): ++class cmd_xmlmissing(Command): + """Show unmerged/unpulled revisions between two branches. + + OTHER_BRANCH may be local or remote. +@@ -212,7 +215,7 @@ + self.outf.write('\n') + + +-class cmd_xmlinfo(commands.Command): ++class cmd_xmlinfo(Command): + """Show information about a working tree, branch or repository. + + This command will show all known locations and formats associated to the +@@ -247,7 +250,7 @@ + self.outf.write('\n') + + +-class cmd_xmlplugins(commands.Command): ++class cmd_xmlplugins(Command): + """List the installed plugins. + + This command displays the list of installed plugins including +@@ -284,7 +287,7 @@ + self.outf.write('\n') + + +-class cmd_xmlversion(commands.Command): ++class cmd_xmlversion(Command): + """Show version of bzr.""" + hidden = True + encoding_type = 'replace' +@@ -383,7 +386,7 @@ + self.outf.write('\0') + self.outf.write('\n') + +-class cmd_start_xmlrpc(commands.Command): ++class cmd_start_xmlrpc(Command): + """Start the xmlrpc service.""" + + hidden = True +@@ -413,7 +416,7 @@ + self.server.shutdown() + + +-class cmd_stop_xmlrpc(commands.Command): ++class cmd_stop_xmlrpc(Command): + """Stops a xmlrpc service.""" + + hidden = True + +--- infoxml.py 2009-07-28 03:43:56 +0000 ++++ infoxml.py 2011-12-12 15:11:38 +0000 +@@ -27,6 +27,7 @@ + + __all__ = ['show_bzrdir_info_xml'] + ++from bzrlib import info + from bzrlib.lazy_import import lazy_import + lazy_import(globals(), """ + import os, sys, time +@@ -36,7 +37,6 @@ + errors, + osutils, + urlutils, +- info, + missing, + ) + """) + +--- logxml.py 2010-12-15 18:27:12 +0000 ++++ logxml.py 2011-12-12 15:11:38 +0000 +@@ -1,14 +1,12 @@ + # -*- encoding: utf-8 -*- + +-import os +- ++from bzrlib import log + from bzrlib.lazy_import import lazy_import + lazy_import(globals(), """ + import bzrlib + from bzrlib import ( + debug, + osutils, +- log, + ) + """) + + +--- lsxml.py 2011-03-09 23:41:22 +0000 ++++ lsxml.py 2011-12-12 15:11:38 +0000 +@@ -19,8 +19,6 @@ + # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + # + +-import os +- + from bzrlib.lazy_import import lazy_import + lazy_import(globals(), """ + from bzrlib import bzrdir, errors, osutils + +--- service.py 2010-02-23 23:38:02 +0000 ++++ service.py 2011-12-12 15:11:38 +0000 +@@ -20,6 +20,8 @@ + # + """ xmlrpc service module """ + ++import os ++ + from bzrlib.lazy_import import lazy_import + lazy_import(globals(), """ + import bzrlib +@@ -30,14 +32,13 @@ + osutils + ) + import sys +-import os + import codecs + import logging + import traceback + from cStringIO import StringIO + """) + +-from xml_errors import XMLError ++from bzrlib.plugins.xmloutput.xml_errors import XMLError + from xmlrpclib import Fault, Binary + from SimpleXMLRPCServer import SimpleXMLRPCServer + + +--- statusxml.py 2010-12-15 18:27:12 +0000 ++++ statusxml.py 2011-12-12 15:11:38 +0000 +@@ -33,7 +33,7 @@ + trace, + ) + +-import logxml ++from bzrlib.plugins.xmloutput import logxml + """) + + from writer import _escape_cdata + diff --git a/dev-vcs/bzr-xmloutput/metadata.xml b/dev-vcs/bzr-xmloutput/metadata.xml new file mode 100644 index 000000000000..db982428e047 --- /dev/null +++ b/dev-vcs/bzr-xmloutput/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>bazaar</herd> + <upstream> + <remote-id type="launchpad">bzr-xmloutput</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-vcs/bzr/Manifest b/dev-vcs/bzr/Manifest new file mode 100644 index 000000000000..b4c3b64c73c2 --- /dev/null +++ b/dev-vcs/bzr/Manifest @@ -0,0 +1,3 @@ +DIST bzr-2.4.2.tar.gz 7528721 SHA256 a5b8db77c61e54450680befdbb4795f8a972fa5a167123786360d898b752656f SHA512 7a54f242618adafea989d904cc4c5c0b8c53c40b4d5548cf393109a134b8319f19a57e72927e7c1b6872feacea8a17ed92df3cd0e36ca22dd1ad8959ad0c4294 WHIRLPOOL 3bf6f2db16dae3466d76537fc6cc8c37cb7872fa94dd6f0d6a6c2a2b3a4b76fce00b5fd673eeb6656a4d277b03b3647e76b208b06834e1dbacd5f7a9041653f9 +DIST bzr-2.5.1.tar.gz 10451513 SHA256 967346fa6cc52971a8dfd5171ec22e1928cf455fb4317013b05b0915ff927982 SHA512 40700d0f4f61bb1609d85772812249114c9e7af619143aafec97163617cb58828e63bda22abf576704848b479463bb85c0b2dc7e5bb49108f48fa397c7bfe85c WHIRLPOOL 34e90eb01e49840bc2eedba6a664fe936ecc6fcc75e3f350a21a2d868609672984182e50f4f3f127da2e7e8b6dbf229aca587fc8dfe1522cf9bbe1d5c9272288 +DIST bzr-2.6.0.tar.gz 11301124 SHA256 0994797182eb828867eee81cccc79480bd2946c99304266bc427b902cf91dab0 SHA512 f40d4380a837321c2ed168d15b0b5d31e9de6df93c0f8f2fd9b16c9351524b0afac5b8744740f587e9704efeb4cc004cae7f35aed47f73b5c796cbe2526af980 WHIRLPOOL a20f45bebb480e0d9d2052373b671ca32f39f52ef3a04800a5d0662248347cbde8a37d24dbaccc6809a7a046646d10bb62ab392302a3dfe983afca0479ce242e diff --git a/dev-vcs/bzr/bzr-2.4.2.ebuild b/dev-vcs/bzr/bzr-2.4.2.ebuild new file mode 100644 index 000000000000..9478eda0d0e1 --- /dev/null +++ b/dev-vcs/bzr/bzr-2.4.2.ebuild @@ -0,0 +1,88 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="3" +PYTHON_DEPEND="2:2.6" +SUPPORT_PYTHON_ABIS="1" +RESTRICT_PYTHON_ABIS="2.[45] 3.* 2.7-pypy-*" + +inherit bash-completion-r1 distutils eutils versionator + +MY_P=${PN}-${PV} +SERIES=$(get_version_component_range 1-2) + +DESCRIPTION="Bazaar is a next generation distributed version control system" +HOMEPAGE="http://bazaar-vcs.org/" +#SRC_URI="http://bazaar-vcs.org/releases/src/${MY_P}.tar.gz" +SRC_URI="http://launchpad.net/bzr/${SERIES}/${PV}/+download/${MY_P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris" +IUSE="curl doc +sftp test" + +RDEPEND="|| ( dev-lang/python:2.7[xml] dev-lang/python:2.6[xml] dev-python/celementtree ) + curl? ( dev-python/pycurl ) + sftp? ( dev-python/paramiko )" + +DEPEND="test? ( + ${RDEPEND} + || ( dev-python/pyftpdlib dev-python/medusa ) + dev-python/subunit + >=dev-python/testtools-0.9.5 + )" + +S="${WORKDIR}/${MY_P}" + +PYTHON_CFLAGS=("2.* + -fno-strict-aliasing") + +DOCS="doc/*.txt" +PYTHON_MODNAME="bzrlib" + +src_prepare() { + distutils_src_prepare + + # Don't regenerate .c files from .pyx when pyrex is found. + epatch "${FILESDIR}/${PN}-2.4.2-no-pyrex-citon.patch" +} + +src_test() { + # Some tests expect the usual pyc compiling behaviour. + python_enable_pyc + + # Define tests which are known to fail below. + local skip_tests="(" + # https://bugs.launchpad.net/bzr/+bug/850676 + skip_tests+="per_transport.TransportTests.test_unicode_paths.*|" + # libcurl cannot verify SSL certs + # https://bugs.launchpad.net/bzr/+bug/82086 + skip_tests+="per_transport.TransportTests.test_clone|per_transport.TransportTests.test_connection_sharing|per_transport.TransportTests.test_copy_to|per_transport.TransportTests.test_get|per_transport.TransportTests.test_get_bytes|per_transport.TransportTests.test_get_bytes_unknown_file|per_transport.TransportTests.test_get_directory_read_gives_ReadError|per_transport.TransportTests.test_get_unknown_file|per_transport.TransportTests.test_has|per_transport.TransportTests.test_has_root_works|per_transport.TransportTests.test_readv|per_transport.TransportTests.test_readv_out_of_order|per_transport.TransportTests.test_readv_short_read|per_transport.TransportTests.test_readv_with_adjust_for_latency|per_transport.TransportTests.test_readv_with_adjust_for_latency_with_big_file|per_transport.TransportTests.test_reuse_connection_for_various_paths|test_read_bundle.TestReadMergeableBundleFromURL.test_read_mergeable_respects_possible_transports|test_read_bundle.TestReadMergeableBundleFromURL.test_read_mergeable_from_url|test_read_bundle.TestReadMergeableBundleFromURL.test_read_fail|test_http.TestActivity.test_readv|test_http.TestActivity.test_post|test_http.TestActivity.test_has|test_http.TestActivity.test_get" + skip_tests+=")" + if [[ -n ${skip_tests} ]]; then + einfo "Skipping tests known to fail: ${skip_tests}" + fi + + testing() { + LC_ALL="C" "$(PYTHON)" bzr --no-plugins selftest ${skip_tests:+-x} ${skip_tests} + } + python_execute_function testing + + # Just to make sure we don't hit any errors on later stages. + python_disable_pyc +} + +src_install() { + distutils_src_install --install-data "${EPREFIX}/usr/share" + + if use doc; then + docinto developers + dodoc doc/developers/* || die + for doc in mini-tutorial tutorials user-{guide,reference}; do + docinto $doc + dodoc doc/en/$doc/* || die + done + fi + + dobashcomp contrib/bash/bzr || die +} diff --git a/dev-vcs/bzr/bzr-2.5.1-r1.ebuild b/dev-vcs/bzr/bzr-2.5.1-r1.ebuild new file mode 100644 index 000000000000..bff18fd5605a --- /dev/null +++ b/dev-vcs/bzr/bzr-2.5.1-r1.ebuild @@ -0,0 +1,97 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="5" +PYTHON_COMPAT=( python2_7 ) +PYTHON_REQ_USE="threads,ssl,xml" + +inherit bash-completion-r1 distutils-r1 eutils flag-o-matic versionator + +MY_P=${PN}-${PV} +SERIES=$(get_version_component_range 1-2) + +DESCRIPTION="Bazaar is a next generation distributed version control system" +HOMEPAGE="http://bazaar-vcs.org/" +#SRC_URI="http://bazaar-vcs.org/releases/src/${MY_P}.tar.gz" +SRC_URI="http://launchpad.net/bzr/${SERIES}/${PV}/+download/${MY_P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="alpha amd64 arm hppa ~ia64 ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd ~x86-fbsd ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris" +IUSE="curl doc +sftp test" + +RDEPEND="curl? ( dev-python/pycurl[${PYTHON_USEDEP}] ) + sftp? ( dev-python/paramiko[${PYTHON_USEDEP}] )" + +DEPEND="test? ( + ${RDEPEND} + >=dev-python/pyftpdlib-0.7.0[${PYTHON_USEDEP}] + dev-python/subunit + >=dev-python/testtools-0.9.5[${PYTHON_USEDEP}] + )" + +S="${WORKDIR}/${MY_P}" + +PATCHES=( + "${FILESDIR}/${PN}-2.4.2-no-pyrex-citon.patch" + "${FILESDIR}/${P}-sphinx-test-failures.patch" +) + +python_configure_all() { + # Generate the locales first to avoid a race condition. + esetup.py build_mo +} + +python_compile() { + if [[ ${EPYTHON} != python3* ]]; then + local CFLAGS=${CFLAGS} + append-cflags -fno-strict-aliasing + fi + distutils-r1_python_compile +} + +src_test() { + # Race due to conflicting ports in + # blackbox.test_serve.TestBzrServe.test_bzr_serve*. + DISTUTILS_NO_PARALLEL_BUILD=1 distutils-r1_src_test +} + +python_test() { + # Some tests expect the usual pyc compiling behaviour. + local -x PYTHONDONTWRITEBYTECODE + + # Define tests which are known to fail below. + local skip_tests="(" + # https://bugs.launchpad.net/bzr/+bug/850676 + skip_tests+="per_transport.TransportTests.test_unicode_paths.*" + skip_tests+=")" + if [[ -n ${skip_tests} ]]; then + einfo "Skipping tests known to fail: ${skip_tests}" + fi + + LC_ALL="C" "${PYTHON}" bzr --no-plugins selftest -v \ + ${skip_tests:+-x} "${skip_tests}" || die "Tests fail with ${EPYTHON}" +} + +python_install_all() { + distutils-r1_python_install_all + + # Fixup manpages manually; passing --install-data causes locales to be + # installed in /usr/share/share/locale + dodir /usr/share + mv "${ED%/}"/usr/{man,share/man} || die + + dodoc doc/*.txt + + if use doc; then + docinto developers + dodoc -r doc/developers/* || die + for doc in mini-tutorial tutorials user-{guide,reference}; do + docinto ${doc} + dodoc -r doc/en/${doc}/* || die + done + fi + + dobashcomp contrib/bash/bzr || die +} diff --git a/dev-vcs/bzr/bzr-2.5.1.ebuild b/dev-vcs/bzr/bzr-2.5.1.ebuild new file mode 100644 index 000000000000..4bc774d19125 --- /dev/null +++ b/dev-vcs/bzr/bzr-2.5.1.ebuild @@ -0,0 +1,88 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="4" +PYTHON_DEPEND="2:2.6" +PYTHON_USE_WITH="threads ssl" +SUPPORT_PYTHON_ABIS="1" +RESTRICT_PYTHON_ABIS="2.[45] 3.* 2.7-pypy-*" + +inherit bash-completion-r1 distutils eutils versionator + +MY_P=${PN}-${PV} +SERIES=$(get_version_component_range 1-2) + +DESCRIPTION="Bazaar is a next generation distributed version control system" +HOMEPAGE="http://bazaar-vcs.org/" +#SRC_URI="http://bazaar-vcs.org/releases/src/${MY_P}.tar.gz" +SRC_URI="http://launchpad.net/bzr/${SERIES}/${PV}/+download/${MY_P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris" +IUSE="curl doc +sftp test" + +RDEPEND="|| ( dev-lang/python:2.7[xml] dev-lang/python:2.6[xml] dev-python/celementtree ) + curl? ( dev-python/pycurl ) + sftp? ( dev-python/paramiko )" + +DEPEND="test? ( + ${RDEPEND} + >=dev-python/pyftpdlib-0.7.0 + dev-python/subunit + >=dev-python/testtools-0.9.5 + )" + +S="${WORKDIR}/${MY_P}" + +PYTHON_CFLAGS=("2.* + -fno-strict-aliasing") + +DOCS="doc/*.txt" +PYTHON_MODNAME="bzrlib" + +src_prepare() { + distutils_src_prepare + + # Don't regenerate .c files from .pyx when pyrex is found. + epatch "${FILESDIR}/${PN}-2.4.2-no-pyrex-citon.patch" + + epatch "${FILESDIR}/${P}-sphinx-test-failures.patch" +} + +src_test() { + # Some tests expect the usual pyc compiling behaviour. + python_enable_pyc + + # Define tests which are known to fail below. + local skip_tests="(" + # https://bugs.launchpad.net/bzr/+bug/850676 + skip_tests+="per_transport.TransportTests.test_unicode_paths.*" + skip_tests+=")" + if [[ -n ${skip_tests} ]]; then + einfo "Skipping tests known to fail: ${skip_tests}" + fi + + testing() { + LC_ALL="C" "$(PYTHON)" bzr --no-plugins selftest ${skip_tests:+-x} ${skip_tests} + } + python_execute_function testing + + # Just to make sure we don't hit any errors on later stages. + python_disable_pyc +} + +src_install() { + distutils_src_install --install-data "${EPREFIX}/usr/share" + + if use doc; then + docinto developers + dodoc -r doc/developers/* || die + for doc in mini-tutorial tutorials user-{guide,reference}; do + docinto ${doc} + dodoc -r doc/en/${doc}/* || die + done + fi + + dobashcomp contrib/bash/bzr || die +} diff --git a/dev-vcs/bzr/bzr-2.6.0.ebuild b/dev-vcs/bzr/bzr-2.6.0.ebuild new file mode 100644 index 000000000000..632a97fb53af --- /dev/null +++ b/dev-vcs/bzr/bzr-2.6.0.ebuild @@ -0,0 +1,95 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="5" +PYTHON_COMPAT=( python2_7 ) +PYTHON_REQ_USE="threads,ssl,xml" + +inherit bash-completion-r1 distutils-r1 eutils flag-o-matic versionator + +MY_P=${PN}-${PV} +SERIES=$(get_version_component_range 1-2) + +DESCRIPTION="Bazaar is a next generation distributed version control system" +HOMEPAGE="http://bazaar-vcs.org/" +SRC_URI="http://launchpad.net/bzr/${SERIES}/${PV}/+download/${MY_P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris" +IUSE="curl doc +sftp test" + +RDEPEND="curl? ( dev-python/pycurl[${PYTHON_USEDEP}] ) + sftp? ( dev-python/paramiko[${PYTHON_USEDEP}] )" + +DEPEND="test? ( + ${RDEPEND} + >=dev-python/pyftpdlib-0.7.0[${PYTHON_USEDEP}] + dev-python/subunit + >=dev-python/testtools-0.9.5[${PYTHON_USEDEP}] + )" + +S="${WORKDIR}/${MY_P}" + +# Fails tests bug#487216 +# Upstream is not exactly keen on fixing it +RESTRICT="test" + +python_configure_all() { + # Generate the locales first to avoid a race condition. + esetup.py build_mo +} + +python_compile() { + if [[ ${EPYTHON} != python3* ]]; then + local CFLAGS=${CFLAGS} + append-cflags -fno-strict-aliasing + fi + distutils-r1_python_compile +} + +src_test() { + # Race due to conflicting ports in + # blackbox.test_serve.TestBzrServe.test_bzr_serve*. + DISTUTILS_NO_PARALLEL_BUILD=1 distutils-r1_src_test +} + +python_test() { + # Some tests expect the usual pyc compiling behaviour. + local -x PYTHONDONTWRITEBYTECODE + + # Define tests which are known to fail below. + local skip_tests="(" + # https://bugs.launchpad.net/bzr/+bug/850676 + skip_tests+="per_transport.TransportTests.test_unicode_paths.*" + skip_tests+=")" + if [[ -n ${skip_tests} ]]; then + einfo "Skipping tests known to fail: ${skip_tests}" + fi + + LC_ALL="C" "${PYTHON}" bzr --no-plugins selftest -v \ + ${skip_tests:+-x} "${skip_tests}" || die "Tests fail with ${EPYTHON}" +} + +python_install_all() { + distutils-r1_python_install_all + + # Fixup manpages manually; passing --install-data causes locales to be + # installed in /usr/share/share/locale + dodir /usr/share + mv "${ED%/}"/usr/{man,share/man} || die + + dodoc doc/*.txt + + if use doc; then + docinto developers + dodoc -r doc/developers/* || die + for doc in mini-tutorial tutorials user-{guide,reference}; do + docinto ${doc} + dodoc -r doc/en/${doc}/* || die + done + fi + + dobashcomp contrib/bash/bzr || die +} diff --git a/dev-vcs/bzr/files/71bzr-gentoo.el b/dev-vcs/bzr/files/71bzr-gentoo.el new file mode 100644 index 000000000000..e8af05fb6ed6 --- /dev/null +++ b/dev-vcs/bzr/files/71bzr-gentoo.el @@ -0,0 +1,5 @@ + +;;; dev-util/bzr site-lisp configuration + +(unless (fboundp 'vc-bzr-registered) + (add-to-list 'load-path "@SITELISP@")) diff --git a/dev-vcs/bzr/files/bzr-2.4.0-no-pyrex-citon.patch b/dev-vcs/bzr/files/bzr-2.4.0-no-pyrex-citon.patch new file mode 100644 index 000000000000..da5b3c881076 --- /dev/null +++ b/dev-vcs/bzr/files/bzr-2.4.0-no-pyrex-citon.patch @@ -0,0 +1,33 @@ +--- setup.py.orig 2011-08-16 17:18:11.280853205 +0200 ++++ setup.py 2011-08-16 17:20:12.597637778 +0200 +@@ -178,28 +178,8 @@ + from distutils.errors import CCompilerError, DistutilsPlatformError + from distutils.extension import Extension + ext_modules = [] +-try: +- try: +- from Cython.Distutils import build_ext +- from Cython.Compiler.Version import version as pyrex_version +- except ImportError: +- print("No Cython, trying Pyrex...") +- from Pyrex.Distutils import build_ext +- from Pyrex.Compiler.Version import version as pyrex_version +-except ImportError: +- have_pyrex = False +- # try to build the extension from the prior generated source. +- print("") +- print("The python package 'Pyrex' is not available." +- " If the .c files are available,") +- print("they will be built," +- " but modifying the .pyx files will not rebuild them.") +- print("") +- from distutils.command.build_ext import build_ext +-else: +- have_pyrex = True +- pyrex_version_info = tuple(map(int, pyrex_version.split('.'))) +- ++have_pyrex = False ++from distutils.command.build_ext import build_ext + + class build_ext_if_possible(build_ext): + diff --git a/dev-vcs/bzr/files/bzr-2.4.2-no-pyrex-citon.patch b/dev-vcs/bzr/files/bzr-2.4.2-no-pyrex-citon.patch new file mode 100644 index 000000000000..a5128a03d628 --- /dev/null +++ b/dev-vcs/bzr/files/bzr-2.4.2-no-pyrex-citon.patch @@ -0,0 +1,33 @@ +--- setup.py.orig 2011-12-26 12:42:40.308882969 +0100 ++++ setup.py 2011-12-26 12:43:38.861854988 +0100 +@@ -178,28 +178,8 @@ + from distutils.errors import CCompilerError, DistutilsPlatformError + from distutils.extension import Extension + ext_modules = [] +-try: +- try: +- from Cython.Distutils import build_ext +- from Cython.Compiler.Version import version as pyrex_version +- except ImportError: +- print("No Cython, trying Pyrex...") +- from Pyrex.Distutils import build_ext +- from Pyrex.Compiler.Version import version as pyrex_version +-except ImportError: +- have_pyrex = False +- # try to build the extension from the prior generated source. +- print("") +- print("The python package 'Pyrex' is not available." +- " If the .c files are available,") +- print("they will be built," +- " but modifying the .pyx files will not rebuild them.") +- print("") +- from distutils.command.build_ext import build_ext +-else: +- have_pyrex = True +- pyrex_version_info = tuple(map(int, pyrex_version.rstrip("+").split('.'))) +- ++have_pyrex = False ++from distutils.command.build_ext import build_ext + + class build_ext_if_possible(build_ext): + diff --git a/dev-vcs/bzr/files/bzr-2.5.1-sphinx-test-failures.patch b/dev-vcs/bzr/files/bzr-2.5.1-sphinx-test-failures.patch new file mode 100644 index 000000000000..ac1fd0212d6b --- /dev/null +++ b/dev-vcs/bzr/files/bzr-2.5.1-sphinx-test-failures.patch @@ -0,0 +1,24 @@ +Upstream revno 6523 ((vila) Avoid test sphinx-related failures now +that we don't have direct sphinx anymore. (Vincent Ladeuil)) + +=== modified file 'bzrlib/tests/test_utextwrap.py' +--- bzrlib/tests/test_utextwrap.py 2011-05-28 06:44:01 +0000 ++++ bzrlib/tests/test_utextwrap.py 2012-04-17 12:18:27 +0000 +@@ -171,16 +171,6 @@ + + + def setup_both(testcase, base_class, reused_class): +- +- if (features.sphinx.available()): +- # Until https://bitbucket.org/birkenfeld/sphinx/issue/706 is fixed, +- # we can't run these tests when sphinx <= 1.0.1 as it breaks +- # textwrap.TextWrapper.wordsep_re +- version = tuple(map(int, +- features.sphinx.module.__version__.split('.'))) +- if version <= (1, 0, 7): +- raise tests.TestSkipped( +- 'sphinx textwrap monkeypatch breaks utextwrap') + super(base_class, testcase).setUp() + override_textwrap_symbols(testcase) + reused_class.setUp(testcase) + diff --git a/dev-vcs/bzr/metadata.xml b/dev-vcs/bzr/metadata.xml new file mode 100644 index 000000000000..3950aca74bad --- /dev/null +++ b/dev-vcs/bzr/metadata.xml @@ -0,0 +1,19 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>bazaar</herd> + <longdescription lang="en"> + Bazaar (``bzr``) is a decentralized revision control system, designed to be + easy for developers and end users alike. Bazaar is part of the GNU project + to develop a complete free operating system. + Bazaar was formerly known as Bazaar-NG. It's the successor to ``baz``, a + fork of GNU arch, but shares no code. (To upgrade from Baz, use the + ``baz-import`` command in the bzrtools plugin.) + </longdescription> + <use> + <flag name="sftp">Enable sftp support</flag> + </use> + <upstream> + <remote-id type="launchpad">bzr</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-vcs/bzrtools/Manifest b/dev-vcs/bzrtools/Manifest new file mode 100644 index 000000000000..4b42a425307b --- /dev/null +++ b/dev-vcs/bzrtools/Manifest @@ -0,0 +1,2 @@ +DIST bzrtools-2.4.1.tar.gz 77725 SHA256 f62771dd221ad820e0363386608985e282cb88b52b5a6f0ed7b7fb2e99804def SHA512 da403e8564857a8f0b2eee58d6e27d6e86ae7b2e67ec13c7ef93d8180f49164dbf274510fbea5b8426d397a3546b449b1fc950f487ff86f8b67658e2401044d5 WHIRLPOOL afb588fd98850edfd2f748f27bab51bf51d2dcc2117ec54f37da1156dae95baee41270500606595d41cb3912256c89f12bcb5ebc17ba19d5cd5934cf6905fe4d +DIST bzrtools-2.5.tar.gz 74508 SHA256 bccff6fba6129013f92a7bf16e73efad159cabd7957f4de765068044f730f03f SHA512 5bc07715a3ed525a9bed5b789ea7a4079c9a56a8ce798b2eff56b27e6eae574fac23b8cc96529a5ea44b8d4ce02c512a7e22d21f046801461ba38a8d2050aa16 WHIRLPOOL 8e03d00f988617ce5dfb015cd6b19caf980d48023952b7329fafc157faa69657d9e40fa6d90864c1db3f707f2f3ca1579679f20faaf309b0d6aaf8833747f4bb diff --git a/dev-vcs/bzrtools/bzrtools-2.4.1.ebuild b/dev-vcs/bzrtools/bzrtools-2.4.1.ebuild new file mode 100644 index 000000000000..32149a69ebe2 --- /dev/null +++ b/dev-vcs/bzrtools/bzrtools-2.4.1.ebuild @@ -0,0 +1,53 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="3" +PYTHON_DEPEND="2" +SUPPORT_PYTHON_ABIS="1" +RESTRICT_PYTHON_ABIS="3.*" + +inherit distutils eutils versionator + +DESCRIPTION="bzrtools is a useful collection of utilities for bzr" +HOMEPAGE="http://bazaar-vcs.org/BzrTools" +SRC_URI="https://launchpad.net/${PN}/stable/${PV}/+download/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="alpha amd64 ~ia64 ppc ppc64 sparc x86 ~x86-interix ~amd64-linux ~x86-linux ~x86-macos" +IUSE="" +#IUSE="test" + +RDEPEND="|| ( =dev-vcs/bzr-2.4* + =dev-vcs/bzr-2.5* )" +DEPEND="${RDEPEND}" +# test? ( dev-python/testtools )" + +RESTRICT="test" + +S="${WORKDIR}/${PN}" + +DOCS="AUTHORS CREDITS NEWS NEWS.Shelf README README.Shelf TODO TODO.heads TODO.Shelf" +PYTHON_MODNAME="bzrlib/plugins/bzrtools" + +src_test() { + testing() { + local return_status="0" + + # put a linked copy of the bzr core into the build directory to properly + # test the "built" version of bzrtools + find "$(python_get_libdir)/site-packages/bzrlib/" \ + -mindepth 1 -maxdepth 1 \ + \( \( -type d -and -not -name "plugins" \) -or -name "*.py" \) \ + -exec ln -s '{}' "${S}/build-${PYTHON_ABI}/lib/bzrlib/" \; + touch "${S}/build-${PYTHON_ABI}/lib/bzrlib/plugins/__init__.py" + "${S}/test.py" "${S}/build-${PYTHON_ABI}/lib" || return_status="1" + # remove the "shadow" copy so it doesn't get installed + rm "${S}/build-${PYTHON_ABI}/lib/bzrlib/plugins/__init__.py" + find "${S}/build-${PYTHON_ABI}/lib/bzrlib/" -mindepth 1 -maxdepth 1 -type l -exec rm '{}' \; + + return "${return_status}" + } + python_execute_function testing +} diff --git a/dev-vcs/bzrtools/bzrtools-2.5.ebuild b/dev-vcs/bzrtools/bzrtools-2.5.ebuild new file mode 100644 index 000000000000..f9adeef3c5ad --- /dev/null +++ b/dev-vcs/bzrtools/bzrtools-2.5.ebuild @@ -0,0 +1,28 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="5" +PYTHON_COMPAT=( python2_7 ) + +inherit distutils-r1 eutils versionator + +DESCRIPTION="bzrtools is a useful collection of utilities for bzr" +HOMEPAGE="http://bazaar-vcs.org/BzrTools" +SRC_URI="https://launchpad.net/${PN}/stable/${PV}/+download/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="alpha amd64 ia64 ppc ppc64 sparc x86 ~x86-interix ~amd64-linux ~x86-linux ~x86-macos" +IUSE="" +#IUSE="test" + +RDEPEND=">=dev-vcs/bzr-2.4" +DEPEND="${RDEPEND}" +# test? ( dev-python/testtools )" + +RESTRICT="test" + +S="${WORKDIR}/${PN}" + +DOCS=( AUTHORS CREDITS NEWS NEWS.Shelf README README.Shelf TODO TODO.heads TODO.Shelf ) diff --git a/dev-vcs/bzrtools/metadata.xml b/dev-vcs/bzrtools/metadata.xml new file mode 100644 index 000000000000..5277693b7c63 --- /dev/null +++ b/dev-vcs/bzrtools/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>bazaar</herd> + <upstream> + <remote-id type="launchpad">bzrtools</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-vcs/colorcvs/Manifest b/dev-vcs/colorcvs/Manifest new file mode 100644 index 000000000000..18d30698a541 --- /dev/null +++ b/dev-vcs/colorcvs/Manifest @@ -0,0 +1 @@ +DIST colorcvs-1.4.tar.bz2 8376 SHA256 8e4b94ee1f6ee3dd4d545182da0f3b38cc52765e447975f64c70397d800ffa2f SHA512 b8c9f3241318599da40614392045a0bba3952314001f6b411207307e79e20b7dea1a9741d5a84dc91b652319ee434c2c14f03435ce4adbd22160d66181da6e44 WHIRLPOOL 83f59360652e4fccb311e47804dd4a3c5bcad07db45287c429e391a7ed00ca6ea5671114a89fe99d5be8d3c02e3a4ab840153b3048aaa635b9580d29ae30717d diff --git a/dev-vcs/colorcvs/colorcvs-1.4-r1.ebuild b/dev-vcs/colorcvs/colorcvs-1.4-r1.ebuild new file mode 100644 index 000000000000..65ec5d3a5d6c --- /dev/null +++ b/dev-vcs/colorcvs/colorcvs-1.4-r1.ebuild @@ -0,0 +1,44 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=3 + +inherit eutils prefix + +DESCRIPTION="A tool based on colorgcc to beautify cvs output" +HOMEPAGE="http://packages.gentoo.org/package/dev-vcs/colorcvs" +SRC_URI="http://dev.gentoo.org/~jlec/distfiles/${P}.tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 ppc x86 ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos" +IUSE="" + +DEPEND="" +RDEPEND=" + dev-lang/perl + dev-vcs/cvs" + +src_prepare() { + # fix typo + sed -i -e 's:compiler_pid:cvs_pid:' ${PN} || die "sed failed" + epatch "${FILESDIR}"/${P}-prefix.patch + eprefixify colorcvs +} + +src_install() { + insinto /etc/profile.d + doins "${FILESDIR}/${PN}-profile.sh" || die "doins failed" + + dobin colorcvs || die "dobin failed" + dodoc colorcvsrc-sample || die "dodoc failed" +} + +pkg_postinst() { + echo + einfo "An alias to colorcvs was installed for the cvs command." + einfo "In order to immediately activate it do:" + einfo "\tsource /etc/profile" + echo +} diff --git a/dev-vcs/colorcvs/files/colorcvs-1.4-prefix.patch b/dev-vcs/colorcvs/files/colorcvs-1.4-prefix.patch new file mode 100644 index 000000000000..0a93b49eba0b --- /dev/null +++ b/dev-vcs/colorcvs/files/colorcvs-1.4-prefix.patch @@ -0,0 +1,20 @@ +--- colorcvs.orig 2008-01-26 20:04:54 +0100 ++++ colorcvs 2008-01-26 20:05:56 +0100 +@@ -54,7 +54,7 @@ + + sub initDefaults + { +- $cvsPath = "/usr/bin/cvs"; ++ $cvsPath = "@GENTOO_PORTAGE_EPREFIX@/usr/bin/cvs"; + + $nocolor{"dumb"} = "true"; + +@@ -118,7 +118,7 @@ + initDefaults(); + + # Read the configuration files. +-for my $configFile ('/etc/colorcvsrc', "$ENV{HOME}/.colorcvsrc") { ++for my $configFile ('@GENTOO_PORTAGE_EPREFIX@/etc/colorcvsrc', "$ENV{HOME}/.colorcvsrc") { + if (-f $configFile) + { + loadPreferences($configFile); diff --git a/dev-vcs/colorcvs/files/colorcvs-profile.sh b/dev-vcs/colorcvs/files/colorcvs-profile.sh new file mode 100644 index 000000000000..07ca68c9d132 --- /dev/null +++ b/dev-vcs/colorcvs/files/colorcvs-profile.sh @@ -0,0 +1,3 @@ +# set alias for colorcvs + +alias cvs='colorcvs' diff --git a/dev-vcs/colorcvs/metadata.xml b/dev-vcs/colorcvs/metadata.xml new file mode 100644 index 000000000000..f23b9cae1593 --- /dev/null +++ b/dev-vcs/colorcvs/metadata.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>shell-tools</herd> +</pkgmetadata> diff --git a/dev-vcs/colorsvn/Manifest b/dev-vcs/colorsvn/Manifest new file mode 100644 index 000000000000..15c497f37ef7 --- /dev/null +++ b/dev-vcs/colorsvn/Manifest @@ -0,0 +1 @@ +DIST colorsvn-0.3.2.tar.gz 98460 SHA256 ee3bff9b897b268a8a62cee8f6162b562127a4c2becba3f20152f6cde83cdbe4 SHA512 1918d3609a871d8fa9e43cab5d32c5314505204deb9e7e0e8321c69c2f345b577a4572574fd7da7e428b8fca9228b2a48a81c8f1dc27c0aceca7e2596e13804f WHIRLPOOL 1b88225f871eca25a5cf82fcd6ad6a518fdf02cccebbb875d44df868033c721e17bade916014d0a71a4948e86430306db811edbb62e24f9b6b28e60577bedc9a diff --git a/dev-vcs/colorsvn/colorsvn-0.3.2-r2.ebuild b/dev-vcs/colorsvn/colorsvn-0.3.2-r2.ebuild new file mode 100644 index 000000000000..a3506f4e0292 --- /dev/null +++ b/dev-vcs/colorsvn/colorsvn-0.3.2-r2.ebuild @@ -0,0 +1,54 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="3" + +inherit eutils + +DESCRIPTION="Subversion output colorizer" +HOMEPAGE="http://colorsvn.tigris.org" +SRC_URI="http://www.console-colors.de/downloads/${PN}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 x86 ~x64-macos ~x86-macos" +IUSE="" + +RDEPEND="dev-lang/perl + dev-vcs/subversion" +DEPEND="${RDEPEND}" + +src_prepare() { + # rxvt-unicode isn't listed by default :) + sed -i -e 's:rxvt:rxvt rxvt-unicode:' colorsvnrc-original || die + # Fix confdir location for Prefix, #435434 + sed -i \ + -e '/^confdir/d' \ + -e 's/$(confdir)/$(sysconfdir)/g' \ + Makefile.in || die + + epatch "${FILESDIR}/0001-Don-t-colorize-svn-mkdir-bug-321451.-Use-IPC-open2-i.patch" +} + +src_compile() { + # bug 335134 + emake -j1 || die +} + +src_install() { + emake DESTDIR="${D}" install || die "emake install failed" + dodoc CREDITS || die "dodoc failed" +} + +pkg_postinst() { + einfo + einfo "The default settings are stored in /etc/colorsvnrc." + einfo "They can be locally overridden by ~/.colorsvnrc." + einfo "An alias to colorsvn was installed for the svn command." + einfo "In order to immediately activate it do:" + einfo "\tsource /etc/profile" + einfo "NOTE: If you don't see colors," + einfo "append the output of 'echo \$TERM' to 'colortty' in your colorsvnrc." + einfo +} diff --git a/dev-vcs/colorsvn/files/0001-Don-t-colorize-svn-mkdir-bug-321451.-Use-IPC-open2-i.patch b/dev-vcs/colorsvn/files/0001-Don-t-colorize-svn-mkdir-bug-321451.-Use-IPC-open2-i.patch new file mode 100644 index 000000000000..6fb1e4b0313b --- /dev/null +++ b/dev-vcs/colorsvn/files/0001-Don-t-colorize-svn-mkdir-bug-321451.-Use-IPC-open2-i.patch @@ -0,0 +1,43 @@ +From 869595b958e80f8c05b823c0df514d3decbe6686 Mon Sep 17 00:00:00 2001 +From: Christian Ruppert <idl0r@gentoo.org> +Date: Thu, 16 Sep 2010 13:04:25 +0200 +Subject: [PATCH] Don't colorize 'svn mkdir', bug 321451. Use IPC::open2 instead of open3 to avoid using STDERR, bug 326279. + +--- + colorsvn-original | 6 +++--- + 1 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/colorsvn-original b/colorsvn-original +index 01d7be3..46f105b 100644 +--- a/colorsvn-original ++++ b/colorsvn-original +@@ -56,7 +56,7 @@ + # Foundation, Inc., 51 Franklin Steet, Fifth Floor, Boston, MA 02110-1301, USA. + + use Term::ANSIColor; +-use IPC::Open3; ++use IPC::Open2; + + use strict; + use warnings; +@@ -115,7 +115,7 @@ our %commandmap = ( "add" => ["add"], + ); + + # never colorize this commands +-our @preventcolor = ("commit", "help", "import", "lock", "switch", "propedit", "resolved", "revert", "unlock"); ++our @preventcolor = ("commit", "help", "import", "lock", "switch", "propedit", "resolved", "revert", "unlock", "mkdir"); + + # + # set default values +@@ -331,7 +331,7 @@ if (! -t STDOUT || $commit == 1 || !$colortty{$terminal} || !$commresolved ) + + # Keep the pid of the svn process so we can get its return + # code and use that as our return code. +-my $svn_pid = open3('<&STDIN', \*SVNOUT, \*SVNOUT, $svnPath, @ARGV); ++my $svn_pid = open2(\*SVNOUT, '<&STDIN', $svnPath, @ARGV); + my $svnName = $svnPath; + $svnName =~ s,.*/(.*)$,$1,; + +-- +1.7.2.2 + diff --git a/dev-vcs/colorsvn/metadata.xml b/dev-vcs/colorsvn/metadata.xml new file mode 100644 index 000000000000..bb5e42d12c69 --- /dev/null +++ b/dev-vcs/colorsvn/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>idl0r@gentoo.org</email> + <name>Christian Ruppert</name> + </maintainer> + <longdescription lang="en"> + colorsvn is the Subversion output colorizer. Colorsvn was extracted from + kde-sdk and was extended with build process and configuration. + </longdescription> +</pkgmetadata> diff --git a/dev-vcs/cssc/Manifest b/dev-vcs/cssc/Manifest new file mode 100644 index 000000000000..d4dc69fb292e --- /dev/null +++ b/dev-vcs/cssc/Manifest @@ -0,0 +1 @@ +DIST CSSC-1.4.0.tar.gz 2012122 SHA256 30146f96c26c2a4c6b742bc8a498993ec6ea9f289becaaf566866488600b2994 SHA512 7abb38ecfb5120e807d1f09d16ce81306b3eb16746e44da5029f626feba67dfb46db20bd2b89daffb2e3cdc51ffadc51cd666eef7d1b94e56b4c7dc24f93ea76 WHIRLPOOL 725702d94cf5e0d2b393e98ab3b2d552d59d562626d4778dfe6a0ff1b4211577123c3fa3689a14738499780413ab73e7e1c10897793a89190c0bcd5b36a65829 diff --git a/dev-vcs/cssc/cssc-1.4.0.ebuild b/dev-vcs/cssc/cssc-1.4.0.ebuild new file mode 100644 index 000000000000..65aee2636fe5 --- /dev/null +++ b/dev-vcs/cssc/cssc-1.4.0.ebuild @@ -0,0 +1,47 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +inherit autotools eutils + +DESCRIPTION="The GNU Project's replacement for SCCS" +SRC_URI="mirror://gnu/${PN}/${P^^}.tar.gz" +HOMEPAGE="http://www.gnu.org/software/cssc/" +SLOT="0" +LICENSE="GPL-3" + +KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos" +IUSE="test valgrind" + +DEPEND=" + test? ( valgrind? ( dev-util/valgrind ) ) +" + +DOCS=( AUTHORS ChangeLog NEWS README ) + +S="${WORKDIR}/${P^^}" + +src_prepare() { + epatch \ + "${FILESDIR}"/${PN}-1.3.0-gcc47.patch \ + "${FILESDIR}"/${P}-config.patch \ + "${FILESDIR}"/${P}-m4.patch \ + "${FILESDIR}"/${P}-test-large.patch + + eautoreconf +} + +src_configure() { + econf \ + $(use test && use_with valgrind) \ + --enable-binary +} + +src_test() { + if [[ ${froobUID} = 0 ]]; then + einfo "The test suite can not be run as root" + else + emake check + fi +} diff --git a/dev-vcs/cssc/files/cssc-1.3.0-gcc47.patch b/dev-vcs/cssc/files/cssc-1.3.0-gcc47.patch new file mode 100644 index 000000000000..4c319016eccd --- /dev/null +++ b/dev-vcs/cssc/files/cssc-1.3.0-gcc47.patch @@ -0,0 +1,10 @@ +--- a/src/file.h ++++ b/src/file.h +@@ -31,6 +31,7 @@ + #define CSSC__FILE_H__ + + #include "filelock.h" ++#include <unistd.h> /* gid_t */ + + enum create_mode { + CREATE_EXCLUSIVE = 001, diff --git a/dev-vcs/cssc/files/cssc-1.4.0-config.patch b/dev-vcs/cssc/files/cssc-1.4.0-config.patch new file mode 100644 index 000000000000..c5790489a9a7 --- /dev/null +++ b/dev-vcs/cssc/files/cssc-1.4.0-config.patch @@ -0,0 +1,15 @@ +In file included from file.h:36:0, + from delta.cc:36: + ../gl/lib/unistd.h:135:3: error: #error "Please include config.h first." + + +--- a/src/delta.h ++++ b/src/delta.h +@@ -25,6 +25,7 @@ + #ifndef CSSC_DELTA_H + #define CSSC_DELTA_H 1 + ++#include "config.h" + #include "sid.h" + #include "sccsdate.h" + #include "mystring.h" diff --git a/dev-vcs/cssc/files/cssc-1.4.0-m4.patch b/dev-vcs/cssc/files/cssc-1.4.0-m4.patch new file mode 100644 index 000000000000..91c163f14104 --- /dev/null +++ b/dev-vcs/cssc/files/cssc-1.4.0-m4.patch @@ -0,0 +1,13 @@ +libtoolize chokes on this line + + +--- a/configure.ac ++++ b/configure.ac +@@ -33,7 +33,6 @@ + + # Changes to AC_CONFIG_MACRO_DIR shoulld be reflected in ACLOCAL_AMFLAGS in Makefile.am. + AC_CONFIG_MACRO_DIR([m4]) +-AC_CONFIG_MACRO_DIR([unit-tests/googletest/m4]) + + AM_INIT_AUTOMAKE([gnits readme-alpha check-news tar-ustar 1.11.6]) + AC_CONFIG_HEADERS(config.h) diff --git a/dev-vcs/cssc/files/cssc-1.4.0-test-large.patch b/dev-vcs/cssc/files/cssc-1.4.0-test-large.patch new file mode 100644 index 000000000000..c7c23fb6a074 --- /dev/null +++ b/dev-vcs/cssc/files/cssc-1.4.0-test-large.patch @@ -0,0 +1,14 @@ +Takes a very long time. + + +--- a/tests/Makefile.am ++++ b/tests/Makefile.am +@@ -136,7 +136,7 @@ + test-rmdel \ + test-admin test-delta test-get test-prs test-prt test-unget \ + test-cdc test-sact test-val \ +- test-large test-sccsdiff test-binary test-bsd-sccs test-what \ ++ test-sccsdiff test-binary test-bsd-sccs test-what \ + test-year-2000 + echo Tests passed. + diff --git a/dev-vcs/cssc/metadata.xml b/dev-vcs/cssc/metadata.xml new file mode 100644 index 000000000000..ab89925c26ad --- /dev/null +++ b/dev-vcs/cssc/metadata.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<maintainer> +<email>jer@gentoo.org</email> +</maintainer> +<use> +<flag name='valgrind'>Enable usage of <pkg>dev-util/valgrind</pkg> in tests</flag> +</use> +</pkgmetadata> diff --git a/dev-vcs/cvs-fast-export/Manifest b/dev-vcs/cvs-fast-export/Manifest new file mode 100644 index 000000000000..716ca1ee7c59 --- /dev/null +++ b/dev-vcs/cvs-fast-export/Manifest @@ -0,0 +1 @@ +DIST cvs-fast-export-1.26.tar.gz 668913 SHA256 ebca4b19ba9045bc1b733f729042d7a98dd6675dac3030239f718b13a99949ed SHA512 81d240ae387b4231415335b4a0d294ae81f6ecbc97077d92a1738aca17642b9a7e7ee3f7806890ceafc5c65c50d4370c39c36ee21c927a4fcd30ebfa3bbe472e WHIRLPOOL 1a59b9e5e0b30d935f463a58873c3554315d0d512b4d9482d5fc2341bdb194b16bd017a444f9e21f8ce2181a3bcf6e85aa09584467b1a9e6845ed92b8a75c4f8 diff --git a/dev-vcs/cvs-fast-export/cvs-fast-export-1.26.ebuild b/dev-vcs/cvs-fast-export/cvs-fast-export-1.26.ebuild new file mode 100644 index 000000000000..e8943ec2b493 --- /dev/null +++ b/dev-vcs/cvs-fast-export/cvs-fast-export-1.26.ebuild @@ -0,0 +1,40 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit toolchain-funcs + +DESCRIPTION="fast-export history from a CVS repository or RCS collection" +HOMEPAGE="http://www.catb.org/~esr/cvs-fast-export/" +SRC_URI="http://www.catb.org/~esr/${PN}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="" + +RDEPEND="" +DEPEND="${RDEPEND} + app-text/asciidoc" + +RESTRICT=test # upstream does not ship them in tarball + +src_prepare() { + tc-export CC + export prefix=/usr + + # respect CC, CFLAGS and LDFLAGS. don't install cvssync + sed \ + -e 's/cc /$(CC) $(LDFLAGS) /' \ + -e 's/^CFLAGS += -O/#&/' \ + -e 's/CFLAGS=/CFLAGS+=/' \ + -e 's/$(INSTALL).*cvssync/#&/g' \ + -i Makefile || die +} + +src_install() { + default + dodoc README +} diff --git a/dev-vcs/cvs-fast-export/metadata.xml b/dev-vcs/cvs-fast-export/metadata.xml new file mode 100644 index 000000000000..d22bbde28e2d --- /dev/null +++ b/dev-vcs/cvs-fast-export/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>slyfox@gentoo.org</email> + <name>Sergei Trofimovich</name> + </maintainer> + <herd>cvs-utils</herd> + <upstream> + <remote-id type="freecode">cvs-fast-export</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-vcs/cvs/Manifest b/dev-vcs/cvs/Manifest new file mode 100644 index 000000000000..bda243d8d414 --- /dev/null +++ b/dev-vcs/cvs/Manifest @@ -0,0 +1,13 @@ +DIST cederqvist-1.11.23.html.bz2 112336 SHA256 7b44791e77d3cc56e2ce970303f4003a8a759e432cfa97de93fa45c4d78f80d9 SHA512 671d9d0d364c7ec21c8b5ae357bf7be097447342053b6eb442d6b367ff1b79e17b8494cac21a08c7a897c039ede7e08992d4af158fb2a68847506f7841f98789 WHIRLPOOL c58dba2bf0ca96a17099f5488f34b1343385e67a22a20697a0de4c9affb30f21fbd790b5fd874487e5f40ce2978ee961e8b876910ac520da35ec7ceb07edf139 +DIST cederqvist-1.11.23.pdf 1134081 SHA256 0ef6dc37510e43be1bcae50c635dedcbb2d56f16968946ff0a304a43f87a7d59 SHA512 6b5f7603ff38eaf0747d364f74960c5bb3ba172fd93436440644396ba9e94538cc3c258c8c44d5fc3437c73eacc8727381f0caa94651227a74353bb46029d490 WHIRLPOOL 31d5e9ff2abe0bf93f9be6f8657690a24c55037d621bc54e735d078a7ac1b089d55d0ea57b8450c47611d6ea7aff54aeed7f7bfbe1ff02188b25abcea164bcd0 +DIST cederqvist-1.11.23.ps 1129600 SHA256 6b35cbeecd6fa069e59743716f2766f5bfffe3013a59cf72d833e5837b20abc0 SHA512 0a0e14bb611a210d4fbacd187a8fd2d8ce2746df1487ec0272cb4abe9027194109adfa7ffe97fada1457203eac7428605e3b3def11a6fece4140e08b66ded17e WHIRLPOOL c24b5dea728a9a317fdbdf212351bb04525daebccc94a68fee8bc717f68ce8f1a9de7446422bffc07e9a27a005bf4a8d6bffcee31a2e83cb3cac34ee993f8cbb +DIST cederqvist-1.12.12.html.tar.bz2 137581 SHA256 6bdd66581ec363e05313a14db27cd3c201b547cdfc9ea2f8edde74e78301f0f6 SHA512 c4f6bdc294b719c1c9f6e8b7d1d4faa9e2aafccd37924e9d4772f8d802da3e7f5ae1778b295989db256b23bb1d0914023db7237adaf07833caaee499ae6b6fa3 WHIRLPOOL 41dd1e0d944a02eeca10539b87b5cfcadbf4fd5923c872aa86e5673bb6a98f774d5378e8b4f1c2e6c6a62e6dc6a4d02c69b5e51ad03da899903070effd62adc9 +DIST cederqvist-1.12.12.pdf 1252423 SHA256 211c5792d24bfd5694f23bc217a161d880bfb2447c41016fab6f657168b041ce SHA512 aa90b76664ca103cf41831a5595d5e99df9fd87633aa5a500569f43854ca6e409a26b655f02ed59cde1c37ce88c40e06f3b3376ad71fdc9487032c3f0898706a WHIRLPOOL 88d015117c05716df6d0cdc763f16dc488f0641624475e9bd33478485dd32e36a7ee5c49a1789ebdd173e665ae5963e75975342d7308e8e453adb65dd31ec6c5 +DIST cederqvist-1.12.12.ps 1262208 SHA256 0e14189614e2c5ead49bfe0ecd187239f8adc3e66371b49d52163be821e44cab SHA512 9a061ef90c664fbb4f882644f72c4f80ffbe0233b6b364511b1c7f18f0a53383980a6ddda326b6df1f2fe1899aed3225de89b55a65a1d9101ba81d1c10c067e2 WHIRLPOOL fb1616ca734e51a626713e7e78786ecbff18378966c2c131f6992df248096d38e850123449d3a5a6aa111ee209f90ef48848da7366b21cb6befeccf07ce54ab6 +DIST cederqvist-1.12.13.html.tar.bz2 140382 SHA256 1a9a34e07c00de5102224b48cbc53384992aea197c91c20b6140dd6885b5ae87 SHA512 4305b5b5d6ec75288e8be0f818815898523de465bd2dc1f55dc277a423815608e619e6fb50d47d29c378249db53f7dba2cc6b4e996f8cd2c1eecf5b9db5957c3 WHIRLPOOL 8b72d282e466b85ad2e898c52a934df55af530a458c39171e4de31a71e1d7c0dbf85674387021f0bc4d87b480a3ff32084574294425923b64c10998e0716abdc +DIST cederqvist-1.12.13.pdf 1297631 SHA256 4f24b2ac3b81c97798cad42cba8ffe6cc65405f13e5a58a4b063aa9fffc4a7bc SHA512 56ff658265a4e08df6bcd59b1bcb046cbcb92d4107fd4fc54a35601e379af048fdab720500207a4ea6b757058bb52973c7723a02f43b5de8c9fee7f09379ba1f WHIRLPOOL 5ca68dbc70dfbf98a61700f696c4b197a8943f3122d419e2ae2a1f085c589b02c3e90bdadfa657351e51dfbf4a40781babcc47319e157aede3f67be8edf08493 +DIST cederqvist-1.12.13.ps 1280573 SHA256 a955722b89155e390635b1220fa67a096c97141d83ac53a7840323c01d13aa91 SHA512 7a6e9605c82b4d105d37663b12ce9fc89eb8e9153897ceeb6d4fd18da07947180b96167f67cd04df0ec2682d431bbb6840c8c87ccd97ddb596dd2efd31bbf1e4 WHIRLPOOL 2b6249d9cba0d08b76e9d8ae24828cfbfae71c2f109e35ca425c0122a79dc3a66a52ec9506971eab031d730743ed3bc5c01b583e3e9a538f067e22e6d78a6c0f +DIST cvs-1.11.23.tar.bz2 2942652 SHA256 400f51b59d85116e79b844f2d5dbbad4759442a789b401a94aa5052c3d7a4aa9 SHA512 d84360b51b966f19ac3f1728265ff25e46d3a3ce6d9e7e30b154f0975bb10ce4f82f5ca3f308d2ff169c2b5dd97b0243e910d2e8ad59a5857aef7a70b9026b19 WHIRLPOOL 0f4a14989c29ee76a911edcbcb9b946f3710d1015391e7a219c841bf3cd03678994d572f23a66975030e9ca2eb64abc7f7665a535203bc81653d754491039252 +DIST cvs-1.12.12.tar.bz2 3197171 SHA256 9fb9176d268b9019768fc57dedc2920c28fbeda5ba224c2348550d4f25043edc SHA512 31c679b77b887e02d9c8c381b0dfb42f1207ef4ca806cd92843638eb2126ed032e99bda70a3e20ea2a029670ff39c40088a43435632e381739e6c2f978e6f4bb WHIRLPOOL 74257976cdb957e86fb9fb7e54fc8c0b7210f72136ce05327203d935195e7a3bdda0c1d616dc04cb1d6495cb038ca7275e88488eddb5d936c1cfceb94583278c +DIST cvs-1.12.13.1.tar.bz2 4075630 SHA256 de7f374d8c4ac414c04e8d44ce9a5d3da919825a6a332d747e299dc7a80c2218 SHA512 db318c0c70b47283bd469d792bdfe5335e5375e3b25beb79a7aea8435209b944cfa7ba51bdef9935f708e3a26a06b72defdb698974f2951cc9afd615f970986b WHIRLPOOL 3369e59e9f598cf6de28577302d62d3f6b00f705a0a5729c7ebf7b956d899e85afaaa160be2c4f7a4c710c1dd8860301ad1855c874229e39dbe60a5acc91a884 +DIST cvs-1.12.13.tar.bz2 3911104 SHA256 78853613b9a6873a30e1cc2417f738c330e75f887afdaf7b3d0800cb19ca515e SHA512 7d10f808de62190b18d4f706d2d03ab218a508bfb52047ff3e830e293ec40c5e8bf6cc743ef72a5c24be5aa867c9e4892d7d475a026a98b296a3764b4bd0f4d8 WHIRLPOOL 0662c898e05dfe9e45ee1615cfc86bdf664dfc74ddcbea8833e0f98b22e5ea65920d401d3f9a674d5e567eb10f94a29631487a2f8e43a49685888ca94f98ab62 diff --git a/dev-vcs/cvs/cvs-1.11.23.ebuild b/dev-vcs/cvs/cvs-1.11.23.ebuild new file mode 100644 index 000000000000..b85ae1d530f7 --- /dev/null +++ b/dev-vcs/cvs/cvs-1.11.23.ebuild @@ -0,0 +1,62 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=3 + +inherit eutils + +DESCRIPTION="Concurrent Versions System - source code revision control tools" +HOMEPAGE="http://www.nongnu.org/cvs/" +SRC_URI="mirror://gnu/non-gnu/cvs/source/stable/${PV}/${P}.tar.bz2 + doc? ( mirror://gnu/non-gnu/cvs/source/stable/${PV}/cederqvist-${PV}.html.bz2 + mirror://gnu/non-gnu/cvs/source/stable/${PV}/cederqvist-${PV}.pdf + mirror://gnu/non-gnu/cvs/source/stable/${PV}/cederqvist-${PV}.ps )" + +LICENSE="GPL-2 LGPL-2" +SLOT="0" +#KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86" +KEYWORDS="~arm64 ~ppc-aix ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="doc emacs" +RESTRICT='test' + +DEPEND=">=sys-libs/zlib-1.1.4" + +src_prepare() { + epatch "${FILESDIR}"/${P}-CVE-2010-3846.patch + epatch "${FILESDIR}"/${P}-getline64.patch + + # remove a useless binary + einfo "Removing a compiled binary" + find "${S}" -type f -name getdate -exec rm \{\} \; +} + +src_configure() { + [[ ${CHOST} == *-interix* ]] && export ac_cv_header_inttypes_h=no + + econf --with-tmpdir=/tmp --without-gssapi || die +} + +src_install() { + einstall || die + + insinto /etc/xinetd.d + newins "${FILESDIR}"/cvspserver.xinetd.d cvspserver || die "newins failed" + + dodoc BUGS ChangeLog* DEVEL* FAQ HACKING \ + MINOR* NEWS PROJECTS README* TESTS TODO + + if use emacs; then + insinto /usr/share/emacs/site-lisp + doins cvs-format.el || die "doins failed" + fi + + if use doc; then + dodoc "${DISTDIR}"/cederqvist-${PV}.pdf + dodoc "${DISTDIR}"/cederqvist-${PV}.ps + tar xjf "${DISTDIR}"/cederqvist-${PV}.html.tar.bz2 + dohtml -r cederqvist-${PV}.html/* + cd "${ED}"/usr/share/doc/${PF}/html/ + ln -s cvs.html index.html + fi +} diff --git a/dev-vcs/cvs/cvs-1.12.12-r10.ebuild b/dev-vcs/cvs/cvs-1.12.12-r10.ebuild new file mode 100644 index 000000000000..5198af42911b --- /dev/null +++ b/dev-vcs/cvs/cvs-1.12.12-r10.ebuild @@ -0,0 +1,90 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=3 + +inherit eutils pam toolchain-funcs + +DESCRIPTION="Concurrent Versions System - source code revision control tools" +HOMEPAGE="http://www.nongnu.org/cvs/" + +SRC_URI="mirror://gnu/non-gnu/cvs/source/feature/${PV}/${P}.tar.bz2 + doc? ( mirror://gnu/non-gnu/cvs/source/feature/${PV}/cederqvist-${PV}.html.tar.bz2 + mirror://gnu/non-gnu/cvs/source/feature/${PV}/cederqvist-${PV}.pdf + mirror://gnu/non-gnu/cvs/source/feature/${PV}/cederqvist-${PV}.ps )" + +LICENSE="GPL-2 LGPL-2" +SLOT="0" +KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" + +IUSE="crypt doc kerberos nls pam server" +RESTRICT='test' + +DEPEND=">=sys-libs/zlib-1.1.4 + kerberos? ( virtual/krb5 ) + pam? ( virtual/pam )" + +src_unpack() { + unpack ${P}.tar.bz2 + use doc && unpack cederqvist-${PV}.html.tar.bz2 +} + +src_prepare() { + epatch "${FILESDIR}"/${P}-cvsbug-tmpfix.patch + epatch "${FILESDIR}"/${P}-openat.patch + epatch "${FILESDIR}"/${P}-block-requests.patch + epatch "${FILESDIR}"/${P}-cvs-gnulib-vasnprintf.patch + epatch "${FILESDIR}"/${P}-install-sh.patch + epatch "${FILESDIR}"/${P}-hash-nameclash.patch # for AIX + epatch "${FILESDIR}"/${P}-getdelim.patch # 314791 + epatch "${FILESDIR}"/${PN}-1.12.12-rcs2log-coreutils.patch # 144114 + epatch "${FILESDIR}"/${P}-mktime-x32.patch # 395641 + epatch "${FILESDIR}"/${P}-fix-massive-leak.patch + use server || elog "If you want any CVS server functionality, you MUST emerge with USE=server!" +} + +src_configure() { + if tc-is-cross-compiler ; then + # Sane defaults when cross-compiling (as these tests want to + # try and execute code). + export cvs_cv_func_printf_ptr="yes" + fi + econf \ + --with-external-zlib \ + --with-tmpdir=/tmp \ + $(use_enable crypt encryption) \ + $(use_with kerberos gssapi) \ + $(use_enable nls) \ + $(use_enable pam) \ + $(use_enable server) +} + +src_install() { + emake install DESTDIR="${D}" || die + + insinto /etc/xinetd.d + if use server; then + newins "${FILESDIR}"/cvspserver.xinetd.d cvspserver || die "newins failed" + fi + newenvd "${FILESDIR}"/01-cvs-env.d 01cvs + + dodoc BUGS ChangeLog* DEVEL* FAQ HACKING \ + MINOR* NEWS PROJECTS README* TESTS TODO + + # Not installed into emacs site-lisp because it clobbers the normal C + # indentations. + dodoc cvs-format.el || die "dodoc failed" + + use server && newdoc "${FILESDIR}"/cvs-1.12.12-cvs-custom.c cvs-custom.c + + if use doc; then + dodoc "${DISTDIR}"/cederqvist-${PV}.pdf + dodoc "${DISTDIR}"/cederqvist-${PV}.ps + tar xjf "${DISTDIR}"/cederqvist-${PV}.html.tar.bz2 + dohtml -r cederqvist-${PV}.html/* + dosym cvs.html /usr/share/doc/${PF}/html/index.html + fi + + newpamd "${FILESDIR}"/cvs.pam-include-1.12.12 cvs +} diff --git a/dev-vcs/cvs/cvs-1.12.12-r6.ebuild b/dev-vcs/cvs/cvs-1.12.12-r6.ebuild new file mode 100644 index 000000000000..4f5a3539155b --- /dev/null +++ b/dev-vcs/cvs/cvs-1.12.12-r6.ebuild @@ -0,0 +1,82 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +inherit eutils pam toolchain-funcs + +DESCRIPTION="Concurrent Versions System - source code revision control tools" +HOMEPAGE="http://www.nongnu.org/cvs/" + +SRC_URI="mirror://gnu/non-gnu/cvs/source/feature/${PV}/${P}.tar.bz2 + doc? ( mirror://gnu/non-gnu/cvs/source/feature/${PV}/cederqvist-${PV}.html.tar.bz2 + mirror://gnu/non-gnu/cvs/source/feature/${PV}/cederqvist-${PV}.pdf + mirror://gnu/non-gnu/cvs/source/feature/${PV}/cederqvist-${PV}.ps )" + +LICENSE="GPL-2 LGPL-2" +SLOT="0" +KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~sparc-fbsd ~x86-fbsd" + +IUSE="crypt doc kerberos nls pam server" +RESTRICT='test' + +DEPEND=">=sys-libs/zlib-1.1.4 + kerberos? ( virtual/krb5 ) + pam? ( virtual/pam )" + +src_unpack() { + unpack ${P}.tar.bz2 + use doc && unpack cederqvist-${PV}.html.tar.bz2 + EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${P}-cvsbug-tmpfix.patch + epatch "${FILESDIR}"/${P}-openat.patch + EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${P}-block-requests.patch + cd "${S}" + epatch "${FILESDIR}"/${P}-cvs-gnulib-vasnprintf.patch + epatch "${FILESDIR}"/${P}-install-sh.patch + epatch "${FILESDIR}"/${P}-mktime-x32.patch # 395641 + use server || elog "If you want any CVS server functionality, you MUST emerge with USE=server!" +} + +src_compile() { + if tc-is-cross-compiler ; then + # Sane defaults when cross-compiling (as these tests want to + # try and execute code). + export cvs_cv_func_printf_ptr="yes" + fi + econf \ + --with-external-zlib \ + --with-tmpdir=/tmp \ + $(use_enable crypt encryption) \ + $(use_with kerberos gssapi) \ + $(use_enable nls) \ + $(use_enable pam) \ + $(use_enable server) \ + || die + emake || die "emake failed" +} + +src_install() { + emake install DESTDIR="${D}" || die + + insinto /etc/xinetd.d + newins "${FILESDIR}"/cvspserver.xinetd.d cvspserver || die "newins failed" + + dodoc BUGS ChangeLog* DEVEL* FAQ HACKING \ + MINOR* NEWS PROJECTS README* TESTS TODO + + # Not installed into emacs site-lisp because it clobbers the normal C + # indentations. + dodoc cvs-format.el || die "dodoc failed" + + use server && newdoc "${FILESDIR}"/cvs-1.12.12-cvs-custom.c cvs-custom.c + + if use doc; then + dodoc "${DISTDIR}"/cederqvist-${PV}.pdf + dodoc "${DISTDIR}"/cederqvist-${PV}.ps + tar xjf "${DISTDIR}"/cederqvist-${PV}.html.tar.bz2 + dohtml -r cederqvist-${PV}.html/* + cd "${D}"/usr/share/doc/${PF}/html/ + ln -s cvs.html index.html + fi + + newpamd "${FILESDIR}"/cvs.pam-include-1.12.12 cvs +} diff --git a/dev-vcs/cvs/cvs-1.12.12-r7.ebuild b/dev-vcs/cvs/cvs-1.12.12-r7.ebuild new file mode 100644 index 000000000000..754e0c143554 --- /dev/null +++ b/dev-vcs/cvs/cvs-1.12.12-r7.ebuild @@ -0,0 +1,83 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=3 + +inherit eutils pam toolchain-funcs + +DESCRIPTION="Concurrent Versions System - source code revision control tools" +HOMEPAGE="http://www.nongnu.org/cvs/" + +SRC_URI="mirror://gnu/non-gnu/cvs/source/feature/${PV}/${P}.tar.bz2 + doc? ( mirror://gnu/non-gnu/cvs/source/feature/${PV}/cederqvist-${PV}.html.tar.bz2 + mirror://gnu/non-gnu/cvs/source/feature/${PV}/cederqvist-${PV}.pdf + mirror://gnu/non-gnu/cvs/source/feature/${PV}/cederqvist-${PV}.ps )" + +LICENSE="GPL-2 LGPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" + +IUSE="crypt doc kerberos nls pam server" +RESTRICT='test' + +DEPEND=">=sys-libs/zlib-1.1.4 + kerberos? ( virtual/krb5 ) + pam? ( virtual/pam )" + +src_unpack() { + unpack ${P}.tar.bz2 + use doc && unpack cederqvist-${PV}.html.tar.bz2 +} + +src_prepare() { + epatch "${FILESDIR}"/${P}-cvsbug-tmpfix.patch + epatch "${FILESDIR}"/${P}-openat.patch + epatch "${FILESDIR}"/${P}-block-requests.patch + epatch "${FILESDIR}"/${P}-cvs-gnulib-vasnprintf.patch + epatch "${FILESDIR}"/${P}-install-sh.patch + epatch "${FILESDIR}"/${P}-hash-nameclash.patch # for AIX + elog "If you want any CVS server functionality, you MUST emerge with USE=server!" +} + +src_configure() { + if tc-is-cross-compiler ; then + # Sane defaults when cross-compiling (as these tests want to + # try and execute code). + export cvs_cv_func_printf_ptr="yes" + fi + econf \ + --with-external-zlib \ + --with-tmpdir=/tmp \ + $(use_enable crypt encryption) \ + $(use_with kerberos gssapi) \ + $(use_enable nls) \ + $(use_enable pam) \ + $(use_enable server) +} + +src_install() { + emake install DESTDIR="${D}" || die + + insinto /etc/xinetd.d + newins "${FILESDIR}"/cvspserver.xinetd.d cvspserver || die "newins failed" + + dodoc BUGS ChangeLog* DEVEL* FAQ HACKING \ + MINOR* NEWS PROJECTS README* TESTS TODO + + # Not installed into emacs site-lisp because it clobbers the normal C + # indentations. + dodoc cvs-format.el || die "dodoc failed" + + use server && newdoc "${FILESDIR}"/cvs-1.12.12-cvs-custom.c cvs-custom.c + + if use doc; then + dodoc "${DISTDIR}"/cederqvist-${PV}.pdf + dodoc "${DISTDIR}"/cederqvist-${PV}.ps + tar xjf "${DISTDIR}"/cederqvist-${PV}.html.tar.bz2 + dohtml -r cederqvist-${PV}.html/* + dosym cvs.html /usr/share/doc/${PF}/html/index.html + fi + + newpamd "${FILESDIR}"/cvs.pam-include-1.12.12 cvs +} diff --git a/dev-vcs/cvs/cvs-1.12.12-r8.ebuild b/dev-vcs/cvs/cvs-1.12.12-r8.ebuild new file mode 100644 index 000000000000..18e0e6c1f374 --- /dev/null +++ b/dev-vcs/cvs/cvs-1.12.12-r8.ebuild @@ -0,0 +1,84 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=3 + +inherit eutils pam toolchain-funcs + +DESCRIPTION="Concurrent Versions System - source code revision control tools" +HOMEPAGE="http://www.nongnu.org/cvs/" + +SRC_URI="mirror://gnu/non-gnu/cvs/source/feature/${PV}/${P}.tar.bz2 + doc? ( mirror://gnu/non-gnu/cvs/source/feature/${PV}/cederqvist-${PV}.html.tar.bz2 + mirror://gnu/non-gnu/cvs/source/feature/${PV}/cederqvist-${PV}.pdf + mirror://gnu/non-gnu/cvs/source/feature/${PV}/cederqvist-${PV}.ps )" + +LICENSE="GPL-2 LGPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" + +IUSE="crypt doc kerberos nls pam server" +RESTRICT='test' + +DEPEND=">=sys-libs/zlib-1.1.4 + kerberos? ( virtual/krb5 ) + pam? ( virtual/pam )" + +src_unpack() { + unpack ${P}.tar.bz2 + use doc && unpack cederqvist-${PV}.html.tar.bz2 +} + +src_prepare() { + epatch "${FILESDIR}"/${P}-cvsbug-tmpfix.patch + epatch "${FILESDIR}"/${P}-openat.patch + epatch "${FILESDIR}"/${P}-block-requests.patch + epatch "${FILESDIR}"/${P}-cvs-gnulib-vasnprintf.patch + epatch "${FILESDIR}"/${P}-install-sh.patch + epatch "${FILESDIR}"/${P}-hash-nameclash.patch # for AIX + epatch "${FILESDIR}"/${P}-getdelim.patch # 314791 + elog "If you want any CVS server functionality, you MUST emerge with USE=server!" +} + +src_configure() { + if tc-is-cross-compiler ; then + # Sane defaults when cross-compiling (as these tests want to + # try and execute code). + export cvs_cv_func_printf_ptr="yes" + fi + econf \ + --with-external-zlib \ + --with-tmpdir=/tmp \ + $(use_enable crypt encryption) \ + $(use_with kerberos gssapi) \ + $(use_enable nls) \ + $(use_enable pam) \ + $(use_enable server) +} + +src_install() { + emake install DESTDIR="${D}" || die + + insinto /etc/xinetd.d + newins "${FILESDIR}"/cvspserver.xinetd.d cvspserver || die "newins failed" + + dodoc BUGS ChangeLog* DEVEL* FAQ HACKING \ + MINOR* NEWS PROJECTS README* TESTS TODO + + # Not installed into emacs site-lisp because it clobbers the normal C + # indentations. + dodoc cvs-format.el || die "dodoc failed" + + use server && newdoc "${FILESDIR}"/cvs-1.12.12-cvs-custom.c cvs-custom.c + + if use doc; then + dodoc "${DISTDIR}"/cederqvist-${PV}.pdf + dodoc "${DISTDIR}"/cederqvist-${PV}.ps + tar xjf "${DISTDIR}"/cederqvist-${PV}.html.tar.bz2 + dohtml -r cederqvist-${PV}.html/* + dosym cvs.html /usr/share/doc/${PF}/html/index.html + fi + + newpamd "${FILESDIR}"/cvs.pam-include-1.12.12 cvs +} diff --git a/dev-vcs/cvs/cvs-1.12.12-r9.ebuild b/dev-vcs/cvs/cvs-1.12.12-r9.ebuild new file mode 100644 index 000000000000..4531ce4b4e77 --- /dev/null +++ b/dev-vcs/cvs/cvs-1.12.12-r9.ebuild @@ -0,0 +1,89 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=3 + +inherit eutils pam toolchain-funcs + +DESCRIPTION="Concurrent Versions System - source code revision control tools" +HOMEPAGE="http://www.nongnu.org/cvs/" + +SRC_URI="mirror://gnu/non-gnu/cvs/source/feature/${PV}/${P}.tar.bz2 + doc? ( mirror://gnu/non-gnu/cvs/source/feature/${PV}/cederqvist-${PV}.html.tar.bz2 + mirror://gnu/non-gnu/cvs/source/feature/${PV}/cederqvist-${PV}.pdf + mirror://gnu/non-gnu/cvs/source/feature/${PV}/cederqvist-${PV}.ps )" + +LICENSE="GPL-2 LGPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" + +IUSE="crypt doc kerberos nls pam server" +RESTRICT='test' + +DEPEND=">=sys-libs/zlib-1.1.4 + kerberos? ( virtual/krb5 ) + pam? ( virtual/pam )" + +src_unpack() { + unpack ${P}.tar.bz2 + use doc && unpack cederqvist-${PV}.html.tar.bz2 +} + +src_prepare() { + epatch "${FILESDIR}"/${P}-cvsbug-tmpfix.patch + epatch "${FILESDIR}"/${P}-openat.patch + epatch "${FILESDIR}"/${P}-block-requests.patch + epatch "${FILESDIR}"/${P}-cvs-gnulib-vasnprintf.patch + epatch "${FILESDIR}"/${P}-install-sh.patch + epatch "${FILESDIR}"/${P}-hash-nameclash.patch # for AIX + epatch "${FILESDIR}"/${P}-getdelim.patch # 314791 + epatch "${FILESDIR}"/${PN}-1.12.12-rcs2log-coreutils.patch # 144114 + epatch "${FILESDIR}"/${P}-mktime-x32.patch # 395641 + use server || elog "If you want any CVS server functionality, you MUST emerge with USE=server!" +} + +src_configure() { + if tc-is-cross-compiler ; then + # Sane defaults when cross-compiling (as these tests want to + # try and execute code). + export cvs_cv_func_printf_ptr="yes" + fi + econf \ + --with-external-zlib \ + --with-tmpdir=/tmp \ + $(use_enable crypt encryption) \ + $(use_with kerberos gssapi) \ + $(use_enable nls) \ + $(use_enable pam) \ + $(use_enable server) +} + +src_install() { + emake install DESTDIR="${D}" || die + + insinto /etc/xinetd.d + if use server; then + newins "${FILESDIR}"/cvspserver.xinetd.d cvspserver || die "newins failed" + fi + newenvd "${FILESDIR}"/01-cvs-env.d 01cvs + + dodoc BUGS ChangeLog* DEVEL* FAQ HACKING \ + MINOR* NEWS PROJECTS README* TESTS TODO + + # Not installed into emacs site-lisp because it clobbers the normal C + # indentations. + dodoc cvs-format.el || die "dodoc failed" + + use server && newdoc "${FILESDIR}"/cvs-1.12.12-cvs-custom.c cvs-custom.c + + if use doc; then + dodoc "${DISTDIR}"/cederqvist-${PV}.pdf + dodoc "${DISTDIR}"/cederqvist-${PV}.ps + tar xjf "${DISTDIR}"/cederqvist-${PV}.html.tar.bz2 + dohtml -r cederqvist-${PV}.html/* + dosym cvs.html /usr/share/doc/${PF}/html/index.html + fi + + newpamd "${FILESDIR}"/cvs.pam-include-1.12.12 cvs +} diff --git a/dev-vcs/cvs/cvs-1.12.13-r1.ebuild b/dev-vcs/cvs/cvs-1.12.13-r1.ebuild new file mode 100644 index 000000000000..a96af961bc85 --- /dev/null +++ b/dev-vcs/cvs/cvs-1.12.13-r1.ebuild @@ -0,0 +1,131 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=3 + +inherit eutils pam toolchain-funcs + +DESCRIPTION="Concurrent Versions System - source code revision control tools" +HOMEPAGE="http://www.nongnu.org/cvs/" + +SRC_URI="mirror://gnu/non-gnu/cvs/source/feature/${PV}/${P}.tar.bz2 + doc? ( mirror://gnu/non-gnu/cvs/source/feature/${PV}/cederqvist-${PV}.html.tar.bz2 + mirror://gnu/non-gnu/cvs/source/feature/${PV}/cederqvist-${PV}.pdf + mirror://gnu/non-gnu/cvs/source/feature/${PV}/cederqvist-${PV}.ps )" + +LICENSE="GPL-2 LGPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" + +IUSE="crypt doc emacs kerberos nls pam server" + +DEPEND=">=sys-libs/zlib-1.1.4 + kerberos? ( virtual/krb5 ) + pam? ( virtual/pam )" + +src_unpack() { + unpack ${P}.tar.bz2 + use doc && unpack cederqvist-${PV}.html.tar.bz2 +} + +src_prepare() { + epatch "${FILESDIR}"/${PN}-1.12.12-cvsbug-tmpfix.patch + epatch "${FILESDIR}"/${P}-openat.patch + epatch "${FILESDIR}"/${P}-zlib.patch + epatch "${FILESDIR}"/${PN}-1.12.12-install-sh.patch + # this testcase was not updated + #sed -i.orig -e '/unrecognized keyword.*BogusOption/s,98,73,g' \ + # ${S}/src/sanity.sh + # this one fails when the testpath path contains '.' + sed -i.orig -e '/newfile config3/s,a-z,a-z.,g' \ + "${S}"/src/sanity.sh +} + +src_configure() { + local myconf + # the tests need the server and proxy + if use test; then + use server || \ + ewarn "The server and proxy code are enabled as they are required for tests." + myconf="--enable-server --enable-proxy" + fi + if tc-is-cross-compiler ; then + # Sane defaults when cross-compiling (as these tests want to + # try and execute code). + export cvs_cv_func_printf_ptr="yes" + fi + econf \ + --with-external-zlib \ + --with-tmpdir=/tmp \ + $(use_enable crypt encryption) \ + $(use_with kerberos gssapi) \ + $(use_enable nls) \ + $(use_enable pam) \ + $(use_enable server) \ + $(use_enable server proxy) +} + +src_install() { + einstall || die + + if use server; then + insinto /etc/xinetd.d + newins "${FILESDIR}"/cvspserver.xinetd.d cvspserver || die "newins failed" + fi + + dodoc BUGS ChangeLog* DEVEL* FAQ HACKING \ + MINOR* NEWS PROJECTS README* TESTS TODO + + if use emacs; then + insinto /usr/share/emacs/site-lisp + doins cvs-format.el || die "doins failed" + fi + + if use doc; then + dodoc "${DISTDIR}"/cederqvist-${PV}.pdf + dodoc "${DISTDIR}"/cederqvist-${PV}.ps + tar xjf "${DISTDIR}"/cederqvist-${PV}.html.tar.bz2 + dohtml -r cederqvist-${PV}.html/* + dosym cvs.html /usr/share/doc/${PF}/html/index.html + fi + + newpamd "${FILESDIR}"/cvs.pam-include-1.12.12 cvs +} + +src_test() { + einfo "If you want to see realtime status, or check out a failure," + einfo "please look at ${S}/src/check.log*" + if [ -n "$TEST_REMOTE_AND_PROXY" ]; then + einfo "local, remote, and proxy tests enabled." + else + einfo "Only testing local mode. Please see ebuild for other modes." + fi + + cd "${S}"/src + export TESTDIR="${T}/tests-local" + mkdir -p "$TESTDIR" + # we only do the local tests by default + make localcheck || die "Some local test failed." + mv -f check.log check.log-local + + # if you want to test the remote and proxy modes, things get a little bit + # complicated. You need to set up a SSH config file at ~portage/.ssh/config + # that allows the portage user to login without any authentication, and also + # set up the ~portage/.ssh/known_hosts file for your machine. + # We do not do this by default, as it is unsafe from a security point of + # view, and requires root level ssh changes. + if [ -n "$TEST_REMOTE_AND_PROXY" ]; then + cd "${S}"/src + export TESTDIR="${T}/tests-remote" + mkdir -p "$TESTDIR" + make remotecheck || die "Some remote test failed." + mv -f check.log check.log-remote + + cd "${S}"/src + export TESTDIR="${T}/tests-proxy" + mkdir -p "$TESTDIR" + make proxycheck || die "Some proxy test failed." + mv -f check.log check.log-proxy + fi +} diff --git a/dev-vcs/cvs/cvs-1.12.13-r2.ebuild b/dev-vcs/cvs/cvs-1.12.13-r2.ebuild new file mode 100644 index 000000000000..de3d18dfe28c --- /dev/null +++ b/dev-vcs/cvs/cvs-1.12.13-r2.ebuild @@ -0,0 +1,132 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=3 + +inherit eutils pam toolchain-funcs + +DESCRIPTION="Concurrent Versions System - source code revision control tools" +HOMEPAGE="http://www.nongnu.org/cvs/" + +SRC_URI="mirror://gnu/non-gnu/cvs/source/feature/${PV}/${P}.tar.bz2 + doc? ( mirror://gnu/non-gnu/cvs/source/feature/${PV}/cederqvist-${PV}.html.tar.bz2 + mirror://gnu/non-gnu/cvs/source/feature/${PV}/cederqvist-${PV}.pdf + mirror://gnu/non-gnu/cvs/source/feature/${PV}/cederqvist-${PV}.ps )" + +LICENSE="GPL-2 LGPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" + +IUSE="crypt doc emacs kerberos nls pam server" + +DEPEND=">=sys-libs/zlib-1.1.4 + kerberos? ( virtual/krb5 ) + pam? ( virtual/pam )" + +src_unpack() { + unpack ${P}.tar.bz2 + use doc && unpack cederqvist-${PV}.html.tar.bz2 +} + +src_prepare() { + epatch "${FILESDIR}"/${PN}-1.12.12-cvsbug-tmpfix.patch + epatch "${FILESDIR}"/${P}-openat.patch + epatch "${FILESDIR}"/${P}-zlib.patch + epatch "${FILESDIR}"/${PN}-1.12.12-install-sh.patch + epatch "${FILESDIR}"/${PN}-1.12.12-fix-massive-leak.patch + # this testcase was not updated + #sed -i.orig -e '/unrecognized keyword.*BogusOption/s,98,73,g' \ + # ${S}/src/sanity.sh + # this one fails when the testpath path contains '.' + sed -i.orig -e '/newfile config3/s,a-z,a-z.,g' \ + "${S}"/src/sanity.sh +} + +src_configure() { + local myconf + # the tests need the server and proxy + if use test; then + use server || \ + ewarn "The server and proxy code are enabled as they are required for tests." + myconf="--enable-server --enable-proxy" + fi + if tc-is-cross-compiler ; then + # Sane defaults when cross-compiling (as these tests want to + # try and execute code). + export cvs_cv_func_printf_ptr="yes" + fi + econf \ + --with-external-zlib \ + --with-tmpdir=/tmp \ + $(use_enable crypt encryption) \ + $(use_with kerberos gssapi) \ + $(use_enable nls) \ + $(use_enable pam) \ + $(use_enable server) \ + $(use_enable server proxy) +} + +src_install() { + einstall || die + + if use server; then + insinto /etc/xinetd.d + newins "${FILESDIR}"/cvspserver.xinetd.d cvspserver || die "newins failed" + fi + + dodoc BUGS ChangeLog* DEVEL* FAQ HACKING \ + MINOR* NEWS PROJECTS README* TESTS TODO + + if use emacs; then + insinto /usr/share/emacs/site-lisp + doins cvs-format.el || die "doins failed" + fi + + if use doc; then + dodoc "${DISTDIR}"/cederqvist-${PV}.pdf + dodoc "${DISTDIR}"/cederqvist-${PV}.ps + tar xjf "${DISTDIR}"/cederqvist-${PV}.html.tar.bz2 + dohtml -r cederqvist-${PV}.html/* + dosym cvs.html /usr/share/doc/${PF}/html/index.html + fi + + newpamd "${FILESDIR}"/cvs.pam-include-1.12.12 cvs +} + +src_test() { + einfo "If you want to see realtime status, or check out a failure," + einfo "please look at ${S}/src/check.log*" + if [ -n "$TEST_REMOTE_AND_PROXY" ]; then + einfo "local, remote, and proxy tests enabled." + else + einfo "Only testing local mode. Please see ebuild for other modes." + fi + + cd "${S}"/src + export TESTDIR="${T}/tests-local" + mkdir -p "$TESTDIR" + # we only do the local tests by default + make localcheck || die "Some local test failed." + mv -f check.log check.log-local + + # if you want to test the remote and proxy modes, things get a little bit + # complicated. You need to set up a SSH config file at ~portage/.ssh/config + # that allows the portage user to login without any authentication, and also + # set up the ~portage/.ssh/known_hosts file for your machine. + # We do not do this by default, as it is unsafe from a security point of + # view, and requires root level ssh changes. + if [ -n "$TEST_REMOTE_AND_PROXY" ]; then + cd "${S}"/src + export TESTDIR="${T}/tests-remote" + mkdir -p "$TESTDIR" + make remotecheck || die "Some remote test failed." + mv -f check.log check.log-remote + + cd "${S}"/src + export TESTDIR="${T}/tests-proxy" + mkdir -p "$TESTDIR" + make proxycheck || die "Some proxy test failed." + mv -f check.log check.log-proxy + fi +} diff --git a/dev-vcs/cvs/cvs-1.12.13.1-r1.ebuild b/dev-vcs/cvs/cvs-1.12.13.1-r1.ebuild new file mode 100644 index 000000000000..8c06d888a320 --- /dev/null +++ b/dev-vcs/cvs/cvs-1.12.13.1-r1.ebuild @@ -0,0 +1,154 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=3 + +inherit eutils pam toolchain-funcs versionator + +DESCRIPTION="Concurrent Versions System - source code revision control tools" +HOMEPAGE="http://www.nongnu.org/cvs/" + +DOC_PV="$(get_version_component_range 1-3)" +FEAT_URIBASE="mirror://gnu/non-gnu/cvs/source/feature/${PV}/" +DOC_URIBASE="mirror://gnu/non-gnu/cvs/source/feature/${DOC_PV}/" +SNAP_URIBASE="mirror://gnu/non-gnu/cvs/source/nightly-snapshots/feature/" +SRC_URI=" + ${FEAT_URIBASE}/${P}.tar.bz2 + ${SNAP_URIBASE}/${P}.tar.bz2 + doc? ( + ${DOC_URIBASE}/cederqvist-${DOC_PV}.html.tar.bz2 + ${DOC_URIBASE}/cederqvist-${DOC_PV}.pdf + ${DOC_URIBASE}/cederqvist-${DOC_PV}.ps + )" + +LICENSE="GPL-2 LGPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" + +IUSE="crypt doc kerberos nls pam server" + +RDEPEND=">=sys-libs/zlib-1.1.4 + kerberos? ( virtual/krb5 ) + pam? ( virtual/pam )" +DEPEND="${RDEPEND}" + +src_unpack() { + unpack ${P}.tar.bz2 + use doc && unpack cederqvist-${DOC_PV}.html.tar.bz2 +} + +src_prepare() { + epatch "${FILESDIR}"/${PN}-1.12.12-cvsbug-tmpfix.patch + epatch "${FILESDIR}"/${PN}-1.12.12-install-sh.patch + epatch "${FILESDIR}"/${PN}-1.12.13.1-block-requests.patch + epatch "${FILESDIR}"/${PN}-1.12.13.1-hash-nameclash.patch # for AIX + epatch "${FILESDIR}"/${PN}-1.12.13.1-gl-mempcpy.patch # for AIX + epatch "${FILESDIR}"/${PN}-1.12.12-fix-massive-leak.patch + epatch "${FILESDIR}"/${PN}-1.12.13.1-use-include_next.patch + # Applied by upstream: + #epatch "${FILESDIR}"/${PN}-1.12.13-openat.patch + #epatch "${FILESDIR}"/${PN}-1.12.13-zlib.patch + + # this testcase was not updated + #sed -i.orig -e '/unrecognized keyword.*BogusOption/s,98,73,g' \ + # ${S}/src/sanity.sh + # this one fails when the testpath path contains '.' + sed -i.orig \ + -e '/newfile config3/s,a-z,a-z.,g' \ + "${S}"/src/sanity.sh + + elog "If you want any CVS server functionality, you MUST emerge with USE=server!" +} + +src_configure() { + local myconf + # the tests need the server and proxy + if use test; then + use server || \ + ewarn "The server and proxy code are enabled as they are required for tests." + myconf="--enable-server --enable-proxy" + fi + if tc-is-cross-compiler ; then + # Sane defaults when cross-compiling (as these tests want to + # try and execute code). + export cvs_cv_func_printf_ptr="yes" + fi + econf \ + --with-external-zlib \ + --with-tmpdir=/tmp \ + $(use_enable crypt encryption) \ + $(use_with kerberos gssapi) \ + $(use_enable nls) \ + $(use_enable pam) \ + $(use_enable server) \ + $(use_enable server proxy) \ + ${myconf} +} + +src_install() { + emake install DESTDIR="${D}" || die + + if use server; then + insinto /etc/xinetd.d + newins "${FILESDIR}"/cvspserver.xinetd.d cvspserver || die "newins failed" + fi + + dodoc BUGS ChangeLog* DEVEL* FAQ HACKING \ + MINOR* NEWS PROJECTS README* TESTS TODO + + # Not installed into emacs site-lisp because it clobbers the normal C + # indentations. + dodoc cvs-format.el || die "dodoc failed" + + use server && newdoc "${FILESDIR}"/${PN}-1.12.12-cvs-custom.c cvs-custom.c + + if use doc; then + dodoc "${DISTDIR}"/cederqvist-${DOC_PV}.pdf + dodoc "${DISTDIR}"/cederqvist-${DOC_PV}.ps + dohtml -r "${WORKDIR}"/cederqvist-${DOC_PV}.html/ + dosym cvs.html /usr/share/doc/${PF}/html/index.html + fi + + newpamd "${FILESDIR}"/cvs.pam-include-1.12.12 cvs +} + +_run_one_test() { + mode="$1" ; shift + einfo "Starting ${mode} test" + cd "${S}"/src + export TESTDIR="${T}/tests-${mode}" + rm -rf "$TESTDIR" # Clean up from any previous test passes + mkdir -p "$TESTDIR" + emake -j1 ${mode}check || die "Some ${mode} test failed." + mv -f check.log check.log-${mode} + einfo "${mode} test completed successfully, log is check.log-${mode}" +} + +src_test() { + einfo "If you want to see realtime status, or check out a failure," + einfo "please look at ${S}/src/check.log*" + + if [ "$TEST_REMOTE_AND_PROXY" == "1" ]; then + einfo "local, remote, and proxy tests enabled." + else + einfo "Only testing local mode. Please see ebuild for other modes." + fi + + # we only do the local tests by default + _run_one_test local + + # if you want to test the remote and proxy modes, things get a little bit + # complicated. You need to set up a SSH config file at ~portage/.ssh/config + # that allows the portage user to login without any authentication, and also + # set up the ~portage/.ssh/known_hosts file for your machine. + # We do not do this by default, as it is unsafe from a security point of + # view, and requires root level ssh changes. + # Note that this also requires having a real shell for the portage user, so make + # sure that su -c 'ssh portage@mybox' portage works first! + # (It uses the local ip, not loopback) + if [ "$TEST_REMOTE_AND_PROXY" == "1" ]; then + _run_one_test remote + _run_one_test proxy + fi +} diff --git a/dev-vcs/cvs/cvs-1.12.13.1-r2.ebuild b/dev-vcs/cvs/cvs-1.12.13.1-r2.ebuild new file mode 100644 index 000000000000..912f17e31f14 --- /dev/null +++ b/dev-vcs/cvs/cvs-1.12.13.1-r2.ebuild @@ -0,0 +1,155 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=3 + +inherit eutils pam toolchain-funcs versionator + +DESCRIPTION="Concurrent Versions System - source code revision control tools" +HOMEPAGE="http://www.nongnu.org/cvs/" + +DOC_PV="$(get_version_component_range 1-3)" +FEAT_URIBASE="mirror://gnu/non-gnu/cvs/source/feature/${PV}/" +DOC_URIBASE="mirror://gnu/non-gnu/cvs/source/feature/${DOC_PV}/" +SNAP_URIBASE="mirror://gnu/non-gnu/cvs/source/nightly-snapshots/feature/" +SRC_URI=" + ${FEAT_URIBASE}/${P}.tar.bz2 + ${SNAP_URIBASE}/${P}.tar.bz2 + doc? ( + ${DOC_URIBASE}/cederqvist-${DOC_PV}.html.tar.bz2 + ${DOC_URIBASE}/cederqvist-${DOC_PV}.pdf + ${DOC_URIBASE}/cederqvist-${DOC_PV}.ps + )" + +LICENSE="GPL-2 LGPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" + +IUSE="crypt doc kerberos nls pam server" + +RDEPEND=">=sys-libs/zlib-1.1.4 + kerberos? ( virtual/krb5 ) + pam? ( virtual/pam )" +DEPEND="${RDEPEND}" + +src_unpack() { + unpack ${P}.tar.bz2 + use doc && unpack cederqvist-${DOC_PV}.html.tar.bz2 +} + +src_prepare() { + epatch "${FILESDIR}"/${PN}-1.12.12-cvsbug-tmpfix.patch + epatch "${FILESDIR}"/${PN}-1.12.12-install-sh.patch + epatch "${FILESDIR}"/${PN}-1.12.13.1-block-requests.patch + epatch "${FILESDIR}"/${PN}-1.12.13.1-hash-nameclash.patch # for AIX + epatch "${FILESDIR}"/${PN}-1.12.13.1-gl-mempcpy.patch # for AIX + epatch "${FILESDIR}"/${PN}-1.12.12-fix-massive-leak.patch + epatch "${FILESDIR}"/${PN}-1.12.13.1-use-include_next.patch + epatch "${FILESDIR}"/${PN}-1.12.13.1-fix-gnulib-SEGV-vasnprintf.patch + # Applied by upstream: + #epatch "${FILESDIR}"/${PN}-1.12.13-openat.patch + #epatch "${FILESDIR}"/${PN}-1.12.13-zlib.patch + + # this testcase was not updated + #sed -i.orig -e '/unrecognized keyword.*BogusOption/s,98,73,g' \ + # ${S}/src/sanity.sh + # this one fails when the testpath path contains '.' + sed -i.orig \ + -e '/newfile config3/s,a-z,a-z.,g' \ + "${S}"/src/sanity.sh + + elog "If you want any CVS server functionality, you MUST emerge with USE=server!" +} + +src_configure() { + local myconf + # the tests need the server and proxy + if use test; then + use server || \ + ewarn "The server and proxy code are enabled as they are required for tests." + myconf="--enable-server --enable-proxy" + fi + if tc-is-cross-compiler ; then + # Sane defaults when cross-compiling (as these tests want to + # try and execute code). + export cvs_cv_func_printf_ptr="yes" + fi + econf \ + --with-external-zlib \ + --with-tmpdir=/tmp \ + $(use_enable crypt encryption) \ + $(use_with kerberos gssapi) \ + $(use_enable nls) \ + $(use_enable pam) \ + $(use_enable server) \ + $(use_enable server proxy) \ + ${myconf} +} + +src_install() { + emake install DESTDIR="${D}" || die + + if use server; then + insinto /etc/xinetd.d + newins "${FILESDIR}"/cvspserver.xinetd.d cvspserver || die "newins failed" + fi + + dodoc BUGS ChangeLog* DEVEL* FAQ HACKING \ + MINOR* NEWS PROJECTS README* TESTS TODO + + # Not installed into emacs site-lisp because it clobbers the normal C + # indentations. + dodoc cvs-format.el || die "dodoc failed" + + use server && newdoc "${FILESDIR}"/${PN}-1.12.12-cvs-custom.c cvs-custom.c + + if use doc; then + dodoc "${DISTDIR}"/cederqvist-${DOC_PV}.pdf + dodoc "${DISTDIR}"/cederqvist-${DOC_PV}.ps + dohtml -r "${WORKDIR}"/cederqvist-${DOC_PV}.html/ + dosym cvs.html /usr/share/doc/${PF}/html/index.html + fi + + newpamd "${FILESDIR}"/cvs.pam-include-1.12.12 cvs +} + +_run_one_test() { + mode="$1" ; shift + einfo "Starting ${mode} test" + cd "${S}"/src + export TESTDIR="${T}/tests-${mode}" + rm -rf "$TESTDIR" # Clean up from any previous test passes + mkdir -p "$TESTDIR" + emake -j1 ${mode}check || die "Some ${mode} test failed." + mv -f check.log check.log-${mode} + einfo "${mode} test completed successfully, log is check.log-${mode}" +} + +src_test() { + einfo "If you want to see realtime status, or check out a failure," + einfo "please look at ${S}/src/check.log*" + + if [ "$TEST_REMOTE_AND_PROXY" == "1" ]; then + einfo "local, remote, and proxy tests enabled." + else + einfo "Only testing local mode. Please see ebuild for other modes." + fi + + # we only do the local tests by default + _run_one_test local + + # if you want to test the remote and proxy modes, things get a little bit + # complicated. You need to set up a SSH config file at ~portage/.ssh/config + # that allows the portage user to login without any authentication, and also + # set up the ~portage/.ssh/known_hosts file for your machine. + # We do not do this by default, as it is unsafe from a security point of + # view, and requires root level ssh changes. + # Note that this also requires having a real shell for the portage user, so make + # sure that su -c 'ssh portage@mybox' portage works first! + # (It uses the local ip, not loopback) + if [ "$TEST_REMOTE_AND_PROXY" == "1" ]; then + _run_one_test remote + _run_one_test proxy + fi +} diff --git a/dev-vcs/cvs/cvs-1.12.13.1.ebuild b/dev-vcs/cvs/cvs-1.12.13.1.ebuild new file mode 100644 index 000000000000..2422d3a225d9 --- /dev/null +++ b/dev-vcs/cvs/cvs-1.12.13.1.ebuild @@ -0,0 +1,151 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=3 + +inherit eutils pam toolchain-funcs versionator + +DESCRIPTION="Concurrent Versions System - source code revision control tools" +HOMEPAGE="http://www.nongnu.org/cvs/" + +DOC_PV="$(get_version_component_range 1-3)" +FEAT_URIBASE="mirror://gnu/non-gnu/cvs/source/feature/${PV}/" +DOC_URIBASE="mirror://gnu/non-gnu/cvs/source/feature/${DOC_PV}/" +SNAP_URIBASE="mirror://gnu/non-gnu/cvs/source/nightly-snapshots/feature/" +SRC_URI=" + ${FEAT_URIBASE}/${P}.tar.bz2 + ${SNAP_URIBASE}/${P}.tar.bz2 + doc? ( + ${DOC_URIBASE}/cederqvist-${DOC_PV}.html.tar.bz2 + ${DOC_URIBASE}/cederqvist-${DOC_PV}.pdf + ${DOC_URIBASE}/cederqvist-${DOC_PV}.ps + )" + +LICENSE="GPL-2 LGPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" + +IUSE="crypt doc kerberos nls pam server" + +DEPEND=">=sys-libs/zlib-1.1.4 + kerberos? ( virtual/krb5 ) + pam? ( virtual/pam )" + +src_unpack() { + unpack ${P}.tar.bz2 + use doc && unpack cederqvist-${DOC_PV}.html.tar.bz2 +} + +src_prepare() { + epatch "${FILESDIR}"/${PN}-1.12.12-cvsbug-tmpfix.patch + epatch "${FILESDIR}"/${PN}-1.12.12-install-sh.patch + epatch "${FILESDIR}"/${PN}-1.12.13.1-block-requests.patch + epatch "${FILESDIR}"/${PN}-1.12.13.1-hash-nameclash.patch # for AIX + epatch "${FILESDIR}"/${PN}-1.12.13.1-gl-mempcpy.patch # for AIX + # Applied by upstream: + #epatch "${FILESDIR}"/${PN}-1.12.13-openat.patch + #epatch "${FILESDIR}"/${PN}-1.12.13-zlib.patch + + # this testcase was not updated + #sed -i.orig -e '/unrecognized keyword.*BogusOption/s,98,73,g' \ + # ${S}/src/sanity.sh + # this one fails when the testpath path contains '.' + sed -i.orig \ + -e '/newfile config3/s,a-z,a-z.,g' \ + "${S}"/src/sanity.sh + + elog "If you want any CVS server functionality, you MUST emerge with USE=server!" +} + +src_configure() { + local myconf + # the tests need the server and proxy + if use test; then + use server || \ + ewarn "The server and proxy code are enabled as they are required for tests." + myconf="--enable-server --enable-proxy" + fi + if tc-is-cross-compiler ; then + # Sane defaults when cross-compiling (as these tests want to + # try and execute code). + export cvs_cv_func_printf_ptr="yes" + fi + econf \ + --with-external-zlib \ + --with-tmpdir=/tmp \ + $(use_enable crypt encryption) \ + $(use_with kerberos gssapi) \ + $(use_enable nls) \ + $(use_enable pam) \ + $(use_enable server) \ + $(use_enable server proxy) \ + ${myconf} +} + +src_install() { + emake install DESTDIR="${D}" || die + + if use server; then + insinto /etc/xinetd.d + newins "${FILESDIR}"/cvspserver.xinetd.d cvspserver || die "newins failed" + fi + + dodoc BUGS ChangeLog* DEVEL* FAQ HACKING \ + MINOR* NEWS PROJECTS README* TESTS TODO + + # Not installed into emacs site-lisp because it clobbers the normal C + # indentations. + dodoc cvs-format.el || die "dodoc failed" + + use server && newdoc "${FILESDIR}"/${PN}-1.12.12-cvs-custom.c cvs-custom.c + + if use doc; then + dodoc "${DISTDIR}"/cederqvist-${DOC_PV}.pdf + dodoc "${DISTDIR}"/cederqvist-${DOC_PV}.ps + dohtml -r "${WORKDIR}"/cederqvist-${DOC_PV}.html/ + dosym cvs.html /usr/share/doc/${PF}/html/index.html + fi + + newpamd "${FILESDIR}"/cvs.pam-include-1.12.12 cvs +} + +_run_one_test() { + mode="$1" ; shift + einfo "Starting ${mode} test" + cd "${S}"/src + export TESTDIR="${T}/tests-${mode}" + rm -rf "$TESTDIR" # Clean up from any previous test passes + mkdir -p "$TESTDIR" + emake -j1 ${mode}check || die "Some ${mode} test failed." + mv -f check.log check.log-${mode} + einfo "${mode} test completed successfully, log is check.log-${mode}" +} + +src_test() { + einfo "If you want to see realtime status, or check out a failure," + einfo "please look at ${S}/src/check.log*" + + if [ "$TEST_REMOTE_AND_PROXY" == "1" ]; then + einfo "local, remote, and proxy tests enabled." + else + einfo "Only testing local mode. Please see ebuild for other modes." + fi + + # we only do the local tests by default + _run_one_test local + + # if you want to test the remote and proxy modes, things get a little bit + # complicated. You need to set up a SSH config file at ~portage/.ssh/config + # that allows the portage user to login without any authentication, and also + # set up the ~portage/.ssh/known_hosts file for your machine. + # We do not do this by default, as it is unsafe from a security point of + # view, and requires root level ssh changes. + # Note that this also requires having a real shell for the portage user, so make + # sure that su -c 'ssh portage@mybox' portage works first! + # (It uses the local ip, not loopback) + if [ "$TEST_REMOTE_AND_PROXY" == "1" ]; then + _run_one_test remote + _run_one_test proxy + fi +} diff --git a/dev-vcs/cvs/files/01-cvs-env.d b/dev-vcs/cvs/files/01-cvs-env.d new file mode 100644 index 000000000000..5c89358b9554 --- /dev/null +++ b/dev-vcs/cvs/files/01-cvs-env.d @@ -0,0 +1 @@ +CVS_RSH="ssh" diff --git a/dev-vcs/cvs/files/cvs-1.11.23-CVE-2010-3846.patch b/dev-vcs/cvs/files/cvs-1.11.23-CVE-2010-3846.patch new file mode 100644 index 000000000000..e1560cef82e7 --- /dev/null +++ b/dev-vcs/cvs/files/cvs-1.11.23-CVE-2010-3846.patch @@ -0,0 +1,167 @@ +From b122edcb68ff05bb6eb22f6e50423e7f1050841b Mon Sep 17 00:00:00 2001 +From: Larry Jones <lawrence.jones@siemens.com> +Date: Thu, 21 Oct 2010 10:08:16 +0200 +Subject: [PATCH] Fix for CVE-2010-3846 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Mallformed RCS revision (delete after the end of input file, or overlayed +deleted regions) screws output file image size computation. This leads to +write attempt after the allocated memory opening hiden memory corruption +driven by CVS server. + +Signed-off-by: Petr PÃsaÅ™ <ppisar@redhat.com> +--- + src/rcs.c | 52 +++++++++++++++++++++++++++++----------------------- + 1 files changed, 29 insertions(+), 23 deletions(-) + +diff --git a/src/rcs.c b/src/rcs.c +index 7d0d078..2f88f85 100644 +--- a/src/rcs.c ++++ b/src/rcs.c +@@ -7128,7 +7128,7 @@ apply_rcs_changes (orig_lines, diffbuf, difflen, name, addvers, delvers) + struct deltafrag *dfhead; + struct deltafrag **dftail; + struct deltafrag *df; +- unsigned long numlines, lastmodline, offset; ++ unsigned long numlines, offset; + struct linevector lines; + int err; + +@@ -7202,12 +7202,12 @@ apply_rcs_changes (orig_lines, diffbuf, difflen, name, addvers, delvers) + + /* New temp data structure to hold new org before + copy back into original structure. */ +- lines.nlines = lines.lines_alloced = numlines; ++ lines.lines_alloced = numlines; + lines.vector = xmalloc (numlines * sizeof *lines.vector); + + /* We changed the list order to first to last -- so the + list never gets larger than the size numlines. */ +- lastmodline = 0; ++ lines.nlines = 0; + + /* offset created when adding/removing lines + between new and original structure */ +@@ -7216,25 +7216,24 @@ apply_rcs_changes (orig_lines, diffbuf, difflen, name, addvers, delvers) + for (df = dfhead; df != NULL; ) + { + unsigned int ln; +- unsigned long deltaend; ++ unsigned long newpos = df->pos - offset; + +- if (df->pos > orig_lines->nlines) ++ if (newpos < lines.nlines || newpos > numlines) + err = 1; + + /* On error, just free the rest of the list. */ + if (!err) + { +- /* Here we need to get to the line where the next insert will ++ /* Here we need to get to the line where the next change will + begin, which is DF->pos in ORIG_LINES. We will fill up to + DF->pos - OFFSET in LINES with original items. */ +- for (deltaend = df->pos - offset; +- lastmodline < deltaend; +- lastmodline++) ++ while (lines.nlines < newpos) + { + /* we need to copy from the orig structure into new one */ +- lines.vector[lastmodline] = +- orig_lines->vector[lastmodline + offset]; +- lines.vector[lastmodline]->refcount++; ++ lines.vector[lines.nlines] = ++ orig_lines->vector[lines.nlines + offset]; ++ lines.vector[lines.nlines]->refcount++; ++ lines.nlines++; + } + + switch (df->type) +@@ -7246,7 +7245,12 @@ apply_rcs_changes (orig_lines, diffbuf, difflen, name, addvers, delvers) + struct line *q; + int nextline_newline; + size_t nextline_len; +- ++ ++ if (newpos + df->nlines > numlines) ++ { ++ err = 1; ++ break; ++ } + textend = df->new_lines + df->len; + nextline_newline = 0; + nextline_text = df->new_lines; +@@ -7271,8 +7275,7 @@ apply_rcs_changes (orig_lines, diffbuf, difflen, name, addvers, delvers) + q->has_newline = nextline_newline; + q->refcount = 1; + memcpy (q->text, nextline_text, nextline_len); +- lines.vector[lastmodline++] = q; +- offset--; ++ lines.vector[lines.nlines++] = q; + + nextline_text = (char *)p + 1; + nextline_newline = 0; +@@ -7286,11 +7289,11 @@ apply_rcs_changes (orig_lines, diffbuf, difflen, name, addvers, delvers) + q->has_newline = nextline_newline; + q->refcount = 1; + memcpy (q->text, nextline_text, nextline_len); +- lines.vector[lastmodline++] = q; ++ lines.vector[lines.nlines++] = q; + + /* For each line we add the offset between the #'s + decreases. */ +- offset--; ++ offset -= df->nlines; + break; + } + +@@ -7301,7 +7304,9 @@ apply_rcs_changes (orig_lines, diffbuf, difflen, name, addvers, delvers) + if (df->pos + df->nlines > orig_lines->nlines) + err = 1; + else if (delvers) ++ { + for (ln = df->pos; ln < df->pos + df->nlines; ++ln) ++ { + if (orig_lines->vector[ln]->refcount > 1) + /* Annotate needs this but, since the original + * vector is disposed of before returning from +@@ -7309,6 +7314,8 @@ apply_rcs_changes (orig_lines, diffbuf, difflen, name, addvers, delvers) + * there are multiple references. + */ + orig_lines->vector[ln]->vers = delvers; ++ } ++ } + break; + } + } +@@ -7328,21 +7335,20 @@ apply_rcs_changes (orig_lines, diffbuf, difflen, name, addvers, delvers) + else + { + /* add the rest of the remaining lines to the data vector */ +- for (; lastmodline < numlines; lastmodline++) ++ while (lines.nlines < numlines) + { + /* we need to copy from the orig structure into new one */ +- lines.vector[lastmodline] = orig_lines->vector[lastmodline ++ lines.vector[lines.nlines] = orig_lines->vector[lines.nlines + + offset]; +- lines.vector[lastmodline]->refcount++; ++ lines.vector[lines.nlines]->refcount++; ++ lines.nlines++; + } + + /* Move the lines vector to the original structure for output, + * first deleting the old. + */ + linevector_free (orig_lines); +- orig_lines->vector = lines.vector; +- orig_lines->lines_alloced = numlines; +- orig_lines->nlines = lines.nlines; ++ *orig_lines = lines; + } + + return !err; +-- +1.7.2.3 + diff --git a/dev-vcs/cvs/files/cvs-1.11.23-getline64.patch b/dev-vcs/cvs/files/cvs-1.11.23-getline64.patch new file mode 100644 index 000000000000..f93fca465444 --- /dev/null +++ b/dev-vcs/cvs/files/cvs-1.11.23-getline64.patch @@ -0,0 +1,36 @@ +http://pkgs.fedoraproject.org/gitweb/?p=cvs.git;a=blob;f=cvs-1.11.23-getline64.patch;h=99942e0589e4ff26e87a927c1a54662954876e64;hb=HEAD + +--- cvs-1.11.23/lib/getline.c ++++ cvs-1.11.23/lib/getline.c +@@ -154,7 +154,7 @@ + return ret; + } + +-int ++ssize_t + getline (lineptr, n, stream) + char **lineptr; + size_t *n; +@@ -163,7 +163,7 @@ + return getstr (lineptr, n, stream, '\n', 0, GETLINE_NO_LIMIT); + } + +-int ++ssize_t + getline_safe (lineptr, n, stream, limit) + char **lineptr; + size_t *n; +--- cvs-1.11.23/lib/getline.h ++++ cvs-1.11.23/lib/getline.h +@@ -11,9 +11,9 @@ + + #define GETLINE_NO_LIMIT -1 + +-int ++ssize_t + getline __PROTO ((char **_lineptr, size_t *_n, FILE *_stream)); +-int ++ssize_t + getline_safe __PROTO ((char **_lineptr, size_t *_n, FILE *_stream, + int limit)); + int diff --git a/dev-vcs/cvs/files/cvs-1.12.12-block-requests.patch b/dev-vcs/cvs/files/cvs-1.12.12-block-requests.patch new file mode 100644 index 000000000000..9c9b49db8f62 --- /dev/null +++ b/dev-vcs/cvs/files/cvs-1.12.12-block-requests.patch @@ -0,0 +1,140 @@ +Author: Robin H. Johnson <robbat2@gentoo.org> +Date: 2006-08-09 + +This patch allows a CVS server to deny usage of specific commands, based on +input in the environment. + +Just set the CVS_BLOCK_REQUESTS env var with all of the commands you want, +seperated by spaces. Eg: +CVS_BLOCK_REQUESTS="Gzip-stream gzip-file-contents" +would block ALL usage of compression. + +Please see the array 'struct request requests[]' in src/server.c for a full +list of commands. + +Please note that if you block any commands marked as RQ_ESSENTIAL, CVS clients +may fail! (This includes 'ci'!). + +See the companion cvs-custom.c for a wrapper that can enforce the environment variable for pserver setups. + +Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> + +diff -Nuar --exclude '*~' -U 10 cvs-1.12.12.orig/src/server.c cvs-1.12.12/src/server.c +--- cvs-1.12.12.orig/src/server.c 2005-04-14 14:13:29.000000000 +0000 ++++ cvs-1.12.12/src/server.c 2006-08-09 01:40:44.000000000 +0000 +@@ -5836,43 +5836,90 @@ + #undef REQ_LINE + }; + #endif /* SERVER_SUPPORT or CLIENT_SUPPORT */ + + + + #ifdef SERVER_SUPPORT + /* + * This server request is not ignored by the secondary. + */ ++ ++/* Hack by Robin H. Johnson <robbat2@gentoo.org>. ++ * Allow the server ENV to specify what request types are to be ignored. ++ */ ++ ++static char blocked_requests[BUFSIZ] = " "; ++ ++static void build_blocked_requests() { ++ char *tmp = getenv("CVS_BLOCK_REQUESTS"); ++ ++ if (tmp != NULL && strlen(tmp) > 0) { ++ // move to our custom buffer ++ strncat(blocked_requests, tmp, sizeof(blocked_requests)-strlen(blocked_requests)); ++ //add a space on the end as well for searching ++ strncat(blocked_requests, " ", sizeof(blocked_requests)-strlen(blocked_requests)); ++ } ++ ++ // now blocked_requests contains the list of every request that we do not ++ // want to serve ++} ++ ++// returns 0 if we should serve this request ++// use as if(checker(FOO)) continue; ++static int serve_valid_requests_checker(char *reqname) { ++ char needle[BUFSIZ] = " "; ++ char *tmp; ++ ++ if(!blocked_requests || strlen(blocked_requests) < 2) ++ return 0; ++ ++ // we want to look for ' 'reqname' ' ++ snprintf(needle, sizeof(needle), " %s ", reqname); ++ ++ // now do the search ++ tmp = strstr(blocked_requests, needle); ++ ++ if (tmp != NULL) ++ return 1; ++ ++ return 0; ++ ++} ++ + static void + serve_valid_requests (char *arg) + { + struct request *rq; + + /* Since this is processed in the first pass, don't reprocess it in the + * second. + * + * We still print errors since new errors could have been generated in the + * second pass. + */ + if (print_pending_error () + #ifdef PROXY_SUPPORT + || reprocessing + #endif /* PROXY_SUPPORT */ + ) + return; ++ ++ build_blocked_requests(); + + buf_output0 (buf_to_net, "Valid-requests"); + for (rq = requests; rq->name != NULL; rq++) + { + if (rq->func != NULL) + { ++ if(serve_valid_requests_checker(rq->name)) ++ continue; + buf_append_char (buf_to_net, ' '); + buf_output0 (buf_to_net, rq->name); + } + } + buf_output0 (buf_to_net, "\nok\n"); + + /* The client is waiting for the list of valid requests, so we + must send the output now. */ + buf_flush (buf_to_net, 1); + } +@@ -6353,20 +6400,24 @@ + cmd += len; + else if (cmd[len] == ' ') + cmd += len + 1; + else + /* + * The first len characters match, but it's a different + * command. e.g. the command is "cooperate" but we matched + * "co". + */ + continue; ++ // Ignore commands that we are supposed to ignore. ++ if(serve_valid_requests_checker(rq->name)) ++ continue; ++ + + if (!(rq->flags & RQ_ROOTLESS) + && current_parsed_root == NULL) + { + /* For commands which change the way in which data + is sent and received, for example Gzip-stream, + this does the wrong thing. Since the client + assumes that everything is being compressed, + unconditionally, there is no way to give this + error to the client without turning on diff --git a/dev-vcs/cvs/files/cvs-1.12.12-cvs-custom.c b/dev-vcs/cvs/files/cvs-1.12.12-cvs-custom.c new file mode 100644 index 000000000000..597f6de8dbdb --- /dev/null +++ b/dev-vcs/cvs/files/cvs-1.12.12-cvs-custom.c @@ -0,0 +1,58 @@ +/* +Author: Robin H. Johnson <robbat2@gentoo.org> +Date: 2006-08-09 + +This patch allows a CVS server to deny usage of specific commands, based on +input in the environment. + +Just set the CVS_BLOCK_REQUESTS env var with all of the commands you want, +seperated by spaces. Eg: +CVS_BLOCK_REQUESTS="Gzip-stream gzip-file-contents" +would block ALL usage of compression. + +Please see the array 'struct request requests[]' in src/server.c for a full +list of commands. + +Please note that if you block any commands marked as RQ_ESSENTIAL, CVS clients +may fail! (This includes 'ci'!). + +See the companion cvs-custom.c for a wrapper that can enforce the environment variable for pserver setups. + +Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> +*/ + +#include <stdio.h> +#include <unistd.h> +#include <stdlib.h> +#include <malloc.h> + + +#define REAL_CVS "/bin/cvs" +#define CVS_TMPDIR "/tmp" +#define CMDS_BLOCKED " Gzip-stream gzip-file-contents Kerberos-encrypt Gssapi-encrypt Gssapi-authenticate add remove admin import init history watch-on watch-off watch-add watch-remove watchers editors edit version tag rtag " + +int main(int argc, char* argv[]) { + char** newargv; + int newargc, offset; + int i; + // 0 for argv[0] we must copy + offset = 0+0; + // +1 for trailing NULL + newargc = argc+offset+1; + newargv = (char**) malloc(newargc*sizeof(char*)); + newargv[0] = "cvs"; + //newargv[1] = "-T"; + //newargv[2] = CVS_TMPDIR; + //newargv[3] = "-R"; + for(i=1;i<argc;i++) { + newargv[i+offset] = argv[i]; + } + newargv[newargc-1] = NULL; + setenv("CVS_BLOCK_REQUESTS",CMDS_BLOCKED ,1); + //for(i =0;i<newargc;i++) { + // printf("[%d]='%s'\n",i,newargv[i] != NULL ? newargv[i] : "NULL"); + //} + execv(REAL_CVS,newargv); + free(newargv); + return 0; +} diff --git a/dev-vcs/cvs/files/cvs-1.12.12-cvs-gnulib-vasnprintf.patch b/dev-vcs/cvs/files/cvs-1.12.12-cvs-gnulib-vasnprintf.patch new file mode 100644 index 000000000000..d7d6e6bb8a65 --- /dev/null +++ b/dev-vcs/cvs/files/cvs-1.12.12-cvs-gnulib-vasnprintf.patch @@ -0,0 +1,34 @@ +http://bugs.gentoo.org/213833 + +commit 913c09becd9df89dbd9b9f386e7f35c240d5efe8 +Author: Bruno Haible <bruno@clisp.org> +Date: Fri Oct 19 01:50:42 2007 +0200 + + Don't use %n on glibc >= 2.3 systems. + +diff --git a/lib/vasnprintf.c b/lib/vasnprintf.c +index f563823..5d818aa 100644 +--- a/lib/vasnprintf.c ++++ b/lib/vasnprintf.c +@@ -3385,9 +3385,21 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, + #endif + *p = dp->conversion; + #if USE_SNPRINTF ++# if !(__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 3)) + p[1] = '%'; + p[2] = 'n'; + p[3] = '\0'; ++# else ++ /* On glibc2 systems from glibc >= 2.3 - probably also older ++ ones - we know that snprintf's returns value conforms to ++ ISO C 99: the gl_SNPRINTF_DIRECTIVE_N test passes. ++ Therefore we can avoid using %n in this situation. ++ On glibc2 systems from 2004-10-18 or newer, the use of %n ++ in format strings in writable memory may crash the program ++ (if compiled with _FORTIFY_SOURCE=2), so we should avoid it ++ in this situation. */ ++ p[1] = '\0'; ++# endif + #else + p[1] = '\0'; + #endif diff --git a/dev-vcs/cvs/files/cvs-1.12.12-cvsbug-tmpfix.patch b/dev-vcs/cvs/files/cvs-1.12.12-cvsbug-tmpfix.patch new file mode 100644 index 000000000000..fcd4431e8775 --- /dev/null +++ b/dev-vcs/cvs/files/cvs-1.12.12-cvsbug-tmpfix.patch @@ -0,0 +1,22 @@ +Index: cvs-1.12.12/src/cvsbug.in +=================================================================== +--- cvs-1.12.12.orig/src/cvsbug.in ++++ cvs-1.12.12/src/cvsbug.in +@@ -109,14 +109,14 @@ elif [ -f /bin/domainname ]; then + /usr/bin/ypcat passwd 2>/dev/null | cat - /etc/passwd | grep "^$LOGNAME:" | + cut -f5 -d':' | sed -e 's/,.*//' > $TEMP + ORIGINATOR="`cat $TEMP`" +- rm -f $TEMP ++ > $TEMP + fi + fi + + if [ "$ORIGINATOR" = "" ]; then + grep "^$LOGNAME:" /etc/passwd | cut -f5 -d':' | sed -e 's/,.*//' > $TEMP + ORIGINATOR="`cat $TEMP`" +- rm -f $TEMP ++ > $TEMP + fi + + if [ -n "$ORGANIZATION" ]; then + diff --git a/dev-vcs/cvs/files/cvs-1.12.12-fix-massive-leak.patch b/dev-vcs/cvs/files/cvs-1.12.12-fix-massive-leak.patch new file mode 100644 index 000000000000..5366f50855f1 --- /dev/null +++ b/dev-vcs/cvs/files/cvs-1.12.12-fix-massive-leak.patch @@ -0,0 +1,52 @@ +buf_free_data must free data independently +of send or reseived bytes over network. + +Moreover, when buffer is usually freed +buffer _is_ empty, but has one clean mapped page. + +I've observed massive 'cvs server' leaks +when importing large gentoo-x86 repo with 'cvsps'. +Leak ate all my 32GBs of RAM and killed process. +(Leaked around 3 pages per client request). + +valgrind found the leak easily: + +$ valgrind \ + cvsps \ + --root :local:$HOME/portage/gentoo-x86.rsync \ + --fast-export \ + gentoo-x86/dev-vcs/git-annex 2>l | + git fast-import + + ==13504== 1,248 bytes in 52 blocks are still reachable in loss record 41 of 47 + ==13504== at 0x4C2C19B: malloc (vg_replace_malloc.c:270) + ==13504== by 0x48A556: xnmalloc_inline (xmalloc.c:40) + ==13504== by 0x48A5B5: xmalloc (xmalloc.c:56) + ==13504== by 0x4855F5: new_memnode (pagealign_alloc.c:91) + ==13504== by 0x48571B: pagealign_alloc (pagealign_alloc.c:151) + ==13504== by 0x485739: pagealign_xalloc (pagealign_alloc.c:182) + ==13504== by 0x408DD7: get_buffer_data (buffer.c:98) + ==13504== by 0x409C0C: buf_input_data (buffer.c:738) + ==13504== by 0x45BB63: do_cvs_command (server.c:3847) + ==13504== by 0x45D39E: serve_co (server.c:4809) + ==13504== by 0x45F845: server (server.c:6438) + ==13504== by 0x438784: main (main.c:1066) + +And now it takes constant space (less, than 18MB) +for 'cvs server' process to convert all gentoo-x86 +by serving more, than 5 000 000 client requests. + +Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org> +diff --git a/src/buffer.c b/src/buffer.c +index 3f12513..9a7a559 100644 +--- a/src/buffer.c ++++ b/src/buffer.c +@@ -526,7 +526,7 @@ buf_copy_data (struct buffer *buf, struct buffer_data *data, + void + buf_free_data (struct buffer *buffer) + { +- if (buf_empty_p (buffer)) return; ++ if (! buffer->data) return; + buf_free_datas (buffer->data, buffer->last); + buffer->data = buffer->last = NULL; + } diff --git a/dev-vcs/cvs/files/cvs-1.12.12-getdelim.patch b/dev-vcs/cvs/files/cvs-1.12.12-getdelim.patch new file mode 100644 index 000000000000..d27bcc04a681 --- /dev/null +++ b/dev-vcs/cvs/files/cvs-1.12.12-getdelim.patch @@ -0,0 +1,21 @@ +The function getdelim() behaves slightly different on FreeBSD, +only appending to the *line buffer if line_size is 0. + +See: +http://savannah.nongnu.org/bugs/?29466 +http://bugs.gentoo.org/314791 + +Already comitted upstream: +http://cvs.savannah.gnu.org/viewvc/ccvs/src/myndbm.c?root=cvs&r1=1.38&r2=1.39 + +--- src/myndbm.c.orig ++++ src/myndbm.c +@@ -213,7 +213,7 @@ + mydbm_load_file (FILE *fp, List *list, char *filename) + { + char *line = NULL; +- size_t line_size; ++ size_t line_size = 0; + char *value; + size_t value_allocated; + char *cp, *vp; diff --git a/dev-vcs/cvs/files/cvs-1.12.12-hash-nameclash.patch b/dev-vcs/cvs/files/cvs-1.12.12-hash-nameclash.patch new file mode 100644 index 000000000000..0a33eea873ff --- /dev/null +++ b/dev-vcs/cvs/files/cvs-1.12.12-hash-nameclash.patch @@ -0,0 +1,42 @@ +http://cvs.savannah.gnu.org/viewvc/cvs/ccvs/src/hash.h?r1=1.14.6.2&r2=1.14.6.3&pathrev=cvs1-11-x-branch +fixed in cvs-1.11.23, cvs-HEAD after cvs-1.12.13a + +--- src/hash.h.orig 2005-02-01 22:56:48 +0100 ++++ src/hash.h 2010-03-10 19:00:11 +0100 +@@ -27,26 +27,26 @@ + }; + typedef enum ntype Ntype; + +-struct node ++struct hashnode + { + Ntype type; +- struct node *next; +- struct node *prev; +- struct node *hashnext; +- struct node *hashprev; ++ struct hashnode *next; ++ struct hashnode *prev; ++ struct hashnode *hashnext; ++ struct hashnode *hashprev; + char *key; + void *data; +- void (*delproc) (struct node *); ++ void (*delproc) (struct hashnode *); + }; +-typedef struct node Node; ++typedef struct hashnode Node; + +-struct list ++struct hashlist + { + Node *list; + Node *hasharray[HASHSIZE]; +- struct list *next; ++ struct hashlist *next; + }; +-typedef struct list List; ++typedef struct hashlist List; + + List *getlist (void); + Node *findnode (List * list, const char *key); diff --git a/dev-vcs/cvs/files/cvs-1.12.12-install-sh.patch b/dev-vcs/cvs/files/cvs-1.12.12-install-sh.patch new file mode 100644 index 000000000000..825c0ee6f1c3 --- /dev/null +++ b/dev-vcs/cvs/files/cvs-1.12.12-install-sh.patch @@ -0,0 +1,12 @@ +diff -ur a/build-aux/install-sh b/build-aux/install-sh +--- a/build-aux/install-sh 2006-03-25 20:04:46 +0000 ++++ b/build-aux/install-sh 2007-09-14 10:53:29 +0100 +@@ -246,7 +246,7 @@ + fi + + if test -n "$dir_arg"; then +- $doit $mkdircmd "$dst" \ ++ { test -d "$dst" || $doit $mkdircmd -p "$dst"; } \ + && { test -z "$chowncmd" || $doit $chowncmd "$dst"; } \ + && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } \ + && { test -z "$stripcmd" || $doit $stripcmd "$dst"; } \ diff --git a/dev-vcs/cvs/files/cvs-1.12.12-mktime-x32.patch b/dev-vcs/cvs/files/cvs-1.12.12-mktime-x32.patch new file mode 100644 index 000000000000..948fa4d7144e --- /dev/null +++ b/dev-vcs/cvs/files/cvs-1.12.12-mktime-x32.patch @@ -0,0 +1,29 @@ +back port changes from upstream gnulib to make this work on x32 + +https://bugs.gentoo.org/395641 + +--- cvs-1.12.12/lib/mktime.c ++++ cvs-1.12.12/lib/mktime.c +@@ -115,6 +115,13 @@ + #define TM_YEAR_BASE 1900 + verify (base_year_is_a_multiple_of_100, TM_YEAR_BASE % 100 == 0); + ++#if INT_MAX <= LONG_MAX / 2 ++typedef long int long_int; ++#else ++typedef long long int long_int; ++#endif ++verify (long_int_is_wide_enough, INT_MAX == INT_MAX * (long_int) 2 / 2); ++ + /* Return 1 if YEAR + TM_YEAR_BASE is a leap year. */ + static inline int + leapyear (long int year) +@@ -167,8 +174,6 @@ + int year0, int yday0, int hour0, int min0, int sec0) + { + verify (C99_integer_division, -1 / 2 == 0); +- verify (long_int_year_and_yday_are_wide_enough, +- INT_MAX <= LONG_MAX / 2 || TIME_T_MAX <= UINT_MAX); + + /* Compute intervening leap days correctly even if year is negative. + Take care to avoid integer overflow here. */ diff --git a/dev-vcs/cvs/files/cvs-1.12.12-openat.patch b/dev-vcs/cvs/files/cvs-1.12.12-openat.patch new file mode 100644 index 000000000000..fdb406a45e4f --- /dev/null +++ b/dev-vcs/cvs/files/cvs-1.12.12-openat.patch @@ -0,0 +1,21 @@ +Index: cvs-1.12.12/lib/openat.c +=================================================================== +--- cvs-1.12.12.orig/lib/openat.c ++++ cvs-1.12.12/lib/openat.c +@@ -55,9 +55,13 @@ rpl_openat (int fd, char const *filename + va_list arg; + va_start (arg, flags); + +- /* Assume that mode_t is passed compatibly with mode_t's type +- after argument promotion. */ +- mode = va_arg (arg, mode_t); ++ /* If mode_t is narrower than int, use the promoted type (int), ++ not mode_t. Use sizeof to guess whether mode_t is nerrower; ++ we don't know of any practical counterexamples. */ ++ if (sizeof (mode_t) < sizeof (int)) ++ mode = va_arg (arg, int); ++ else ++ mode = va_arg (arg, mode_t); + + va_end (arg); + } diff --git a/dev-vcs/cvs/files/cvs-1.12.12-rcs2log-coreutils.patch b/dev-vcs/cvs/files/cvs-1.12.12-rcs2log-coreutils.patch new file mode 100644 index 000000000000..0fb4c6c6d73d --- /dev/null +++ b/dev-vcs/cvs/files/cvs-1.12.12-rcs2log-coreutils.patch @@ -0,0 +1,14 @@ +X-Gentoo-bug: 144114 + +diff -Nuar cvs-1.12.12.orig//contrib/rcs2log.sh cvs-1.12.12//contrib/rcs2log.sh +--- cvs-1.12.12.orig//contrib/rcs2log.sh 2003-02-25 21:32:51.000000000 +0000 ++++ cvs-1.12.12//contrib/rcs2log.sh 2010-12-06 21:14:33.831532212 +0000 +@@ -620,7 +620,7 @@ + # Sort the log entries, first by date+time (in reverse order), + # then by author, then by log entry, and finally by file name and revision + # (just in case). +-sort -t"$SOH" +2 -4r +4 +0 | ++sort -t"$SOH" -k 3,4r -k 5 -k 1,2 | + + # Finally, reformat the sorted log entries. + $AWK -F"$SOH" ' diff --git a/dev-vcs/cvs/files/cvs-1.12.13-openat.patch b/dev-vcs/cvs/files/cvs-1.12.13-openat.patch new file mode 100644 index 000000000000..762924a8c1d5 --- /dev/null +++ b/dev-vcs/cvs/files/cvs-1.12.13-openat.patch @@ -0,0 +1,21 @@ +Index: cvs-1.12.13/lib/openat.c +=================================================================== +--- cvs-1.12.13.orig/lib/openat.c ++++ cvs-1.12.13/lib/openat.c +@@ -55,9 +55,13 @@ rpl_openat (int fd, char const *filename + va_list arg; + va_start (arg, flags); + +- /* Assume that mode_t is passed compatibly with mode_t's type +- after argument promotion. */ +- mode = va_arg (arg, mode_t); ++ /* If mode_t is narrower than int, use the promoted type (int), ++ not mode_t. Use sizeof to guess whether mode_t is nerrower; ++ we don't know of any practical counterexamples. */ ++ if (sizeof (mode_t) < sizeof (int)) ++ mode = va_arg (arg, int); ++ else ++ mode = va_arg (arg, mode_t); + + va_end (arg); + } diff --git a/dev-vcs/cvs/files/cvs-1.12.13-zlib.patch b/dev-vcs/cvs/files/cvs-1.12.13-zlib.patch new file mode 100644 index 000000000000..a4b4b1e2afeb --- /dev/null +++ b/dev-vcs/cvs/files/cvs-1.12.13-zlib.patch @@ -0,0 +1,31 @@ +Index: src/zlib.c +=================================================================== +RCS file: /sources/cvs/ccvs/src/zlib.c,v +retrieving revision 1.31 +retrieving revision 1.32 +diff -u -r1.31 -r1.32 +--- src/zlib.c 3 Jun 2005 18:26:09 -0000 1.31 ++++ src/zlib.c 28 Oct 2005 14:10:59 -0000 1.32 +@@ -221,15 +221,14 @@ + point. */ + assert (bd->size == 0); + +- /* This will work well in the server, because this call will +- do an unblocked read and fetch all the available data. In +- the client, this will read a single byte from the stdio +- stream, which will cause us to call inflate once per byte. +- It would be more efficient if we could make a call which +- would fetch all the available bytes, and at least one byte. */ +- ++ /* On the server, this will do an unblocking read of as much data as is ++ * available. On the client, with a blocking input descriptor and the ++ * current fd_buffer implementation, this should read as much data as ++ * is currently available, and at least 1 byte (or EOF), from the ++ * underlying buffer. ++ */ + status = (*cb->buf->input) (cb->buf->closure, bd->text, +- need, BUFFER_DATA_SIZE, &nread); ++ need ? 1 : 0, BUFFER_DATA_SIZE, &nread); + + if (status == -2) + /* Don't try to recover from memory allcoation errors. */ diff --git a/dev-vcs/cvs/files/cvs-1.12.13.1-block-requests.patch b/dev-vcs/cvs/files/cvs-1.12.13.1-block-requests.patch new file mode 100644 index 000000000000..216336f34941 --- /dev/null +++ b/dev-vcs/cvs/files/cvs-1.12.13.1-block-requests.patch @@ -0,0 +1,101 @@ +Author: Robin H. Johnson <robbat2@gentoo.org> +Original-Date: 2006-08-09 +Forward-Port-Date: 2007-12-06 + +This patch allows a CVS server to deny usage of specific commands, based on +input in the environment. + +Just set the CVS_BLOCK_REQUESTS env var with all of the commands you want, +seperated by spaces. Eg: +CVS_BLOCK_REQUESTS="Gzip-stream gzip-file-contents" +would block ALL usage of compression. + +Please see the array 'struct request requests[]' in src/server.c for a full +list of commands. + +Please note that if you block any commands marked as RQ_ESSENTIAL, CVS clients +may fail! (This includes 'ci'!). + +See the companion cvs-custom.c for a wrapper that can enforce the environment variable for pserver setups. + +Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> + +diff -Nuar cvs-1.12.13.1.orig/src/server.c cvs-1.12.13.1/src/server.c +--- cvs-1.12.13.1.orig/src/server.c 2006-06-21 11:55:21.000000000 -0700 ++++ cvs-1.12.13.1/src/server.c 2007-12-06 16:25:38.109309990 -0800 +@@ -6244,6 +6244,49 @@ + /* + * This server request is not ignored by the secondary. + */ ++ ++/* Hack by Robin H. Johnson <robbat2@gentoo.org>. ++ * Allow the server ENV to specify what request types are to be ignored. ++ */ ++ ++static char blocked_requests[BUFSIZ] = " "; ++ ++static void build_blocked_requests() { ++ char *tmp = getenv("CVS_BLOCK_REQUESTS"); ++ ++ if (tmp != NULL && strlen(tmp) > 0) { ++ // move to our custom buffer ++ strncat(blocked_requests, tmp, sizeof(blocked_requests)-strlen(blocked_requests)); ++ //add a space on the end as well for searching ++ strncat(blocked_requests, " ", sizeof(blocked_requests)-strlen(blocked_requests)); ++ } ++ ++ // now blocked_requests contains the list of every request that we do not ++ // want to serve ++} ++ ++// returns 0 if we should serve this request ++// use as if(checker(FOO)) continue; ++static int serve_valid_requests_checker(char *reqname) { ++ char needle[BUFSIZ] = " "; ++ char *tmp; ++ ++ if(!blocked_requests || strlen(blocked_requests) < 2) ++ return 0; ++ ++ // we want to look for ' 'reqname' ' ++ snprintf(needle, sizeof(needle), " %s ", reqname); ++ ++ // now do the search ++ tmp = strstr(blocked_requests, needle); ++ ++ if (tmp != NULL) ++ return 1; ++ ++ return 0; ++ ++} ++ + static void + serve_valid_requests (char *arg) + { +@@ -6262,11 +6305,15 @@ + ) + return; + ++ build_blocked_requests(); ++ + buf_output0 (buf_to_net, "Valid-requests"); + for (rq = requests; rq->name != NULL; rq++) + { + if (rq->func != NULL) + { ++ if(serve_valid_requests_checker(rq->name)) ++ continue; + buf_append_char (buf_to_net, ' '); + buf_output0 (buf_to_net, rq->name); + } +@@ -6706,6 +6753,9 @@ + * "co". + */ + continue; ++ // Ignore commands that we are supposed to ignore. ++ if(serve_valid_requests_checker(rq->name)) ++ continue; + + if (!(rq->flags & RQ_ROOTLESS) + && current_parsed_root == NULL) diff --git a/dev-vcs/cvs/files/cvs-1.12.13.1-fix-gnulib-SEGV-vasnprintf.patch b/dev-vcs/cvs/files/cvs-1.12.13.1-fix-gnulib-SEGV-vasnprintf.patch new file mode 100644 index 000000000000..4554b9ac912a --- /dev/null +++ b/dev-vcs/cvs/files/cvs-1.12.13.1-fix-gnulib-SEGV-vasnprintf.patch @@ -0,0 +1,42 @@ +Attemt to use CVS leads to glibc crash: +$ cvs up + *** %n in writable segment detected *** + +Fixes: http://savannah.nongnu.org/bugs/?35432 +Upstream gnulib commit: + +From 913c09becd9df89dbd9b9f386e7f35c240d5efe8 Mon Sep 17 00:00:00 2001 +From: Bruno Haible <bruno@clisp.org> +Date: Thu, 18 Oct 2007 23:50:42 +0000 +Subject: Don't use %n on glibc >= 2.3 systems. + +--- +(limited to 'lib/vasnprintf.c') + +diff --git a/lib/vasnprintf.c b/lib/vasnprintf.c +index f563823..5d818aa 100644 +--- a/lib/vasnprintf.c ++++ b/lib/vasnprintf.c +@@ -3386,8 +3386,20 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, + *fbp = dp->conversion; + #if USE_SNPRINTF ++# if !(__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 3)) + p[1] = '%'; + p[2] = 'n'; + p[3] = '\0'; ++# else ++ /* On glibc2 systems from glibc >= 2.3 - probably also older ++ ones - we know that snprintf's returns value conforms to ++ ISO C 99: the gl_SNPRINTF_DIRECTIVE_N test passes. ++ Therefore we can avoid using %n in this situation. ++ On glibc2 systems from 2004-10-18 or newer, the use of %n ++ in format strings in writable memory may crash the program ++ (if compiled with _FORTIFY_SOURCE=2), so we should avoid it ++ in this situation. */ ++ p[1] = '\0'; ++# endif + #else + p[1] = '\0'; + #endif +-- +cgit v0.9.0.2 diff --git a/dev-vcs/cvs/files/cvs-1.12.13.1-gl-mempcpy.patch b/dev-vcs/cvs/files/cvs-1.12.13.1-gl-mempcpy.patch new file mode 100644 index 000000000000..7ad7533b0a57 --- /dev/null +++ b/dev-vcs/cvs/files/cvs-1.12.13.1-gl-mempcpy.patch @@ -0,0 +1,24 @@ +http://cvs.savannah.gnu.org/viewvc/cvs/ccvs/lib/mempcpy.c?r1=1.2&r2=1.3&pathrev=MAIN +fixed in cvs-HEAD after cvs-1.12.13a + +--- lib/mempcpy.c 2005/05/23 17:44:31 1.2 ++++ lib/mempcpy.c 2007/08/22 12:48:42 1.3 +@@ -1,5 +1,5 @@ + /* Copy memory area and return pointer after last written byte. +- Copyright (C) 2003 Free Software Foundation, Inc. ++ Copyright (C) 2003, 2007 Free Software Foundation, Inc. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by +@@ -15,9 +15,9 @@ + along with this program; if not, write to the Free Software Foundation, + Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + +-/* Specification. */ +-#include "mempcpy.h" ++#include <config.h> + ++/* Specification. */ + #include <string.h> + + /* Copy N bytes of SRC to DEST, return pointer to bytes after the diff --git a/dev-vcs/cvs/files/cvs-1.12.13.1-hash-nameclash.patch b/dev-vcs/cvs/files/cvs-1.12.13.1-hash-nameclash.patch new file mode 100644 index 000000000000..d9c3358faf46 --- /dev/null +++ b/dev-vcs/cvs/files/cvs-1.12.13.1-hash-nameclash.patch @@ -0,0 +1,43 @@ +http://cvs.savannah.gnu.org/viewvc/cvs/ccvs/src/hash.h?r1=1.14.6.2&r2=1.14.6.3&pathrev=cvs1-11-x-branch +fixed in cvs-1.11.23, cvs-HEAD after cvs-1.12.13a + +--- src/hash.h.orig 2010-03-11 10:12:19 +0100 ++++ src/hash.h 2010-03-11 10:12:40 +0100 +@@ -32,27 +32,27 @@ + }; + typedef enum ntype Ntype; + +-struct node ++struct hashnode + { + Ntype type; +- struct node *next; +- struct node *prev; +- struct node *hashnext; +- struct node *hashprev; ++ struct hashnode *next; ++ struct hashnode *prev; ++ struct hashnode *hashnext; ++ struct hashnode *hashprev; + char *key; + void *data; + size_t len; /* Length of DATA. */ +- void (*delproc) (struct node *); ++ void (*delproc) (struct hashnode *); + }; +-typedef struct node Node; ++typedef struct hashnode Node; + +-struct list ++struct hashlist + { + Node *list; + Node *hasharray[HASHSIZE]; +- struct list *next; ++ struct hashlist *next; + }; +-typedef struct list List; ++typedef struct hashlist List; + + List *getlist (void); + Node *findnode (List *list, const char *key); diff --git a/dev-vcs/cvs/files/cvs-1.12.13.1-use-include_next.patch b/dev-vcs/cvs/files/cvs-1.12.13.1-use-include_next.patch new file mode 100644 index 000000000000..adaff55ebb16 --- /dev/null +++ b/dev-vcs/cvs/files/cvs-1.12.13.1-use-include_next.patch @@ -0,0 +1,30 @@ +Fix build failure on gentoo's gcc: + +In file included from ./inttypes.h:34:0, + from ./stdint.h:65, + from /usr/include/netinet/in.h:23, + from /usr/include/netdb.h:27, + from getaddrinfo.h:30, + from canon-host.c:27: + /usr/include/inttypes.h:297:1: error: unknown type name 'intmax_t' + /usr/include/inttypes.h:297:26: error: unknown type name 'intmax_t' + /usr/include/inttypes.h:300:27: error: unknown type name 'intmax_t' + /usr/include/inttypes.h:300:45: error: unknown type name 'intmax_t' +diff --git a/lib/stdint_.h b/lib/stdint_.h +index adab4d7..3a8db19 100644 +--- a/lib/stdint_.h ++++ b/lib/stdint_.h +@@ -43,7 +43,12 @@ + Include it before <inttypes.h>, since any "#include <stdint.h>" + in <inttypes.h> would reinclude us, skipping our contents because + _GL_STDINT_H is defined. */ +-# include @ABSOLUTE_STDINT_H@ ++# include "config.h" ++# if HAVE_INCLUDE_NEXT ++# include_next <stdint.h> ++# else ++# include @ABSOLUTE_STDINT_H@ ++# endif + #endif + + /* <sys/types.h> defines some of the stdint.h types as well, on glibc, diff --git a/dev-vcs/cvs/files/cvs.pam-include-1.12.12 b/dev-vcs/cvs/files/cvs.pam-include-1.12.12 new file mode 100644 index 000000000000..f401ec082a11 --- /dev/null +++ b/dev-vcs/cvs/files/cvs.pam-include-1.12.12 @@ -0,0 +1,4 @@ +#%PAM-1.0 +auth include system-auth +account include system-auth +session include system-auth diff --git a/dev-vcs/cvs/files/cvspserver.xinetd.d b/dev-vcs/cvs/files/cvspserver.xinetd.d new file mode 100644 index 000000000000..0f2edb09cba0 --- /dev/null +++ b/dev-vcs/cvs/files/cvspserver.xinetd.d @@ -0,0 +1,14 @@ +service cvspserver +{ + disable = yes + socket_type = stream + wait = no + user = root + log_type = FILE /var/log/cvspserver + protocol = tcp + env = HOME=/var/cvsroot + log_on_failure += USERID + port = 2401 + server = /usr/bin/cvs + server_args = -f --allow-root=/var/cvsroot pserver +} diff --git a/dev-vcs/cvs/metadata.xml b/dev-vcs/cvs/metadata.xml new file mode 100644 index 000000000000..443275017827 --- /dev/null +++ b/dev-vcs/cvs/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>cvs-utils</herd> + <use> + <flag name="server">Enable server support</flag> + </use> +</pkgmetadata> diff --git a/dev-vcs/cvs2cl/Manifest b/dev-vcs/cvs2cl/Manifest new file mode 100644 index 000000000000..e2b2eae157f0 --- /dev/null +++ b/dev-vcs/cvs2cl/Manifest @@ -0,0 +1 @@ +DIST cvs2cl-2.71.pl.bz2 25347 SHA256 f7a86512f30b73cf2fe63e5e7e68fa3fc9607ab498dafbec704b3f02132f67d9 SHA512 de9e8465da56bec5b541a588e0d2a73f49e060fcadbde33ca63a7c4f93edf37cc50aa3271c4ad466430d3315b95c27d642325bd885ec7afdd6a75586d15d9dbe WHIRLPOOL 2deef9614c0a2061c9663762bbdc46dfc303883d92630d48d54c4dec5f6b4c3516cf34581cbe6d56344b639718f01ce868a3a62951b1509d8c3a01532b53aa7a diff --git a/dev-vcs/cvs2cl/cvs2cl-2.71.ebuild b/dev-vcs/cvs2cl/cvs2cl-2.71.ebuild new file mode 100644 index 000000000000..f58512d522b0 --- /dev/null +++ b/dev-vcs/cvs2cl/cvs2cl-2.71.ebuild @@ -0,0 +1,30 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +DESCRIPTION="produces a GNU-style ChangeLog for CVS-controlled sources" +HOMEPAGE="http://www.red-bean.com/cvs2cl/" +SRC_URI="mirror://gentoo/${P}.pl.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux ~ppc-macos" +IUSE="" + +DEPEND="dev-lang/perl" + +S=${WORKDIR} + +maint_pkg_create() { + set -x + wget http://www.red-bean.com/cvs2cl/${PN}.pl + mv ${PN}.pl ${P}.pl + bzip2 ${P}.pl + ls -l ${PWD}/${P}.pl.bz2 + set +x +} +#pkg_setup() { maint_pkg_create; } + +src_install() { + newbin ${P}.pl ${PN} || die +} diff --git a/dev-vcs/cvs2cl/metadata.xml b/dev-vcs/cvs2cl/metadata.xml new file mode 100644 index 000000000000..45023270b146 --- /dev/null +++ b/dev-vcs/cvs2cl/metadata.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>cvs-utils</herd> +</pkgmetadata> diff --git a/dev-vcs/cvs2svn/Manifest b/dev-vcs/cvs2svn/Manifest new file mode 100644 index 000000000000..99a17eb32c74 --- /dev/null +++ b/dev-vcs/cvs2svn/Manifest @@ -0,0 +1,8 @@ +DIST cvs2svn-1.5.0.tar.gz 266057 SHA256 12c282757043b8ffc98443175cbac218119e92ccc73e942da447659efaf23274 SHA512 e6cbfcb541e8277091892e9ed26a35ce6fedfbf9d91659ba318bd10643ffae998a5a95d58056c56d4bdbd763f7de78e3592589a23c9ee04b6e43a6d617a09443 WHIRLPOOL 6f30dbdc6f084dfbe3e4c76a54a72dc073767ebc659d1815c672e0f6e84e4b3a0e0d89605da86d6d975c4d08b0c85c7ba956c623181a2a22ab7f568050b3d932 +DIST cvs2svn-1.5.1.tar.gz 266476 SHA256 75e97351af93ee9e4803b5285e7f18f280e0f258d7e9139a1a1bf84e34146179 SHA512 afe245ec913372bda27d4a5eb8fe41d8fff8b6f72dc9c57686c8d6144a10a0af9da7196136e1f3ed96fdb459f9e31cf6f226385ff47c0e3a63f7a0df9c0ea951 WHIRLPOOL 1ac7a61fcf5396257a06dbd5f70cab9778da673da9ac8281d77998c5ab6c1e38167a84e80313d548318128a3858f030500875e20531ff259f7b4eea54937be1c +DIST cvs2svn-2.0.1.tar.gz 344924 SHA256 323c16ba865106856f82cf8d278741735e433e6a56b00207b75408fb7ef7ebdd SHA512 e754e3fc3e960643b8fb89c6d2aa97d741a1439e59d0e6e272fa5a18d099e3be9b713ec0b41c604844f6056582e917c7d11f30b2760a9d3dc2f98080757ea034 WHIRLPOOL e731f594a5ee100c86a51d9953a3b812af76038437d82c0a76ac41c5cfb8a74b123d50ecd538714956d6d48e7d44f32e742aa8c034c4512f8dd6d0eec9d1cab6 +DIST cvs2svn-2.1.0.tar.gz 389401 SHA256 b698b8aa138d3d8af07067f47068e9279871f4edbe2864ed056cf8a5a274ed54 SHA512 d78365dc194064e9f108a2d316185acfb1d61eac75c331008f81ba76b4c4b7c329789acafa8b593eddfe97dd3a503e2dbd63d9b684d91c485a89e4b4b417602c WHIRLPOOL 3e4dd3ad7eaaaa50d6d8505e817a9a44db9f44eb81b5291547ebc0c836091050297452939b59711e861e10a18e0d359f4eb2d5228a289c87984560bc777d3a28 +DIST cvs2svn-2.1.1.tar.gz 389645 SHA256 bd724fb615a5ac1ea1f7aaa62cafad3404d82b9fd1922a1028b81ad0672f9f10 SHA512 32b901ad618b42c9d58324c8c1b933a97477cad2af886bd88e1ab9742728d9986367abf9f559f7f3e7757958c32e519eb4eb08e620522d51d3961a74911efb86 WHIRLPOOL 76d04fb94b12b098a9cf5cd8466982e7cb913db9043a76bfdc593e03c984c017f1999bf49296d8b733ad3653be37738694a7c4cfb54c8f9cb5d3a6234396c436 +DIST cvs2svn-2.2.0.tar.gz 411531 SHA256 372c57cfea369637cd49fd9d685d1ebaa2e84a9cf4ad301fcc63f9cb42161bea SHA512 25a496b8ef46ecddfe94285f37fc8f0cf44a8775c6d8040c9748f21b93763416aa8831bfed7719708f4f897f455b884b59e4d1a8f766b7adf5a3195ab13b03e1 WHIRLPOOL e17fcac8d77a5a75361dba7548eed04c2079c83ea9b4066146dc8290980b5cc1d9f6a57871c492ca6add0f803090df833ab93ce1b0dec3b1cb47d1172c498acd +DIST cvs2svn-2.3.0.tar.gz 479373 SHA256 d9d835e0c7df48966fbadf51527c25ebf1343b25179e3802f4637d4b96ba363e SHA512 709a41f407fc58c939ab9cad9a06e4abcc1161cba37353a871bc0e2621a6045600a7ba76016383df57cb7f534a433148b1ce4138d5f219ee3801c8db3780df51 WHIRLPOOL 8f8605a235e430f34eb06fd1791fdc0c04aa95d15d95fbf176da6e8ecafe492debc2fd2be3c10071fc989387d8699b0bce233bb298e31630f5f636f818232c50 +DIST cvs2svn-2.4.0.tar.gz 514891 SHA256 a6677fc3e7b4374020185c61c998209d691de0c1b01b53e59341057459f6f116 SHA512 726fb8a3b3261eeb6d8097973f2741aa7a433f847bcef6701a6c0b7dc3d8fb5da1726e40f008d1dffac71791b953ddb9ade5db5809c98731d78e94da6465506a WHIRLPOOL b1040b65c6d55ad3144e9ca8d358c7da6833f7990d766d32d7df3bec0949fd6fb66a1f4ccca6ec48bd4a39072deb9eb5f444e3efaee7ab299e086ee0edc72b02 diff --git a/dev-vcs/cvs2svn/cvs2svn-1.5.0.ebuild b/dev-vcs/cvs2svn/cvs2svn-1.5.0.ebuild new file mode 100644 index 000000000000..830bed79bcd4 --- /dev/null +++ b/dev-vcs/cvs2svn/cvs2svn-1.5.0.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="2" +PYTHON_DEPEND="2" +SUPPORT_PYTHON_ABIS="1" +RESTRICT_PYTHON_ABIS="3.* *-jython" + +inherit distutils + +FILEVER="34574" + +DESCRIPTION="Convert a CVS repository to a Subversion repository" +HOMEPAGE="http://cvs2svn.tigris.org/" +SRC_URI="http://cvs2svn.tigris.org/files/documents/1462/${FILEVER}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="alpha amd64 ia64 ~ppc x86" +IUSE="" + +DEPEND=">=dev-vcs/subversion-1.0.9" +RDEPEND="${DEPEND} + dev-vcs/rcs" + +PYTHON_MODNAME="cvs2svn_lib cvs2svn_rcsparse" + +src_prepare() { + distutils_src_prepare + python_convert_shebangs -r 2 . +} + +src_install() { + distutils_src_install + insinto "/usr/share/${PN}" + doins -r contrib cvs2svn-example.options {profile-repos,show-db,verify-cvs2svn}.py + doman cvs2svn.1 +} + +pkg_postinst() { + distutils_pkg_postinst + elog "Additional scripts and examples have been installed to:" + elog " ${ROOT}usr/share/${PN}/" +} + +src_test() { + # Need this because subversion is localized, but the tests aren't + export LC_ALL=C + + testing() { + "$(PYTHON)" run-tests.py + } + python_execute_function testing +} diff --git a/dev-vcs/cvs2svn/cvs2svn-1.5.1.ebuild b/dev-vcs/cvs2svn/cvs2svn-1.5.1.ebuild new file mode 100644 index 000000000000..b78960dbeced --- /dev/null +++ b/dev-vcs/cvs2svn/cvs2svn-1.5.1.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="2" +PYTHON_DEPEND="2" +SUPPORT_PYTHON_ABIS="1" +RESTRICT_PYTHON_ABIS="3.* *-jython" + +inherit distutils + +FILEVER="36129" + +DESCRIPTION="Convert a CVS repository to a Subversion repository" +HOMEPAGE="http://cvs2svn.tigris.org/" +SRC_URI="http://cvs2svn.tigris.org/files/documents/1462/${FILEVER}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~x86" +IUSE="" + +DEPEND=">=dev-vcs/subversion-1.0.9" +RDEPEND="${DEPEND} + dev-vcs/rcs" + +PYTHON_MODNAME="cvs2svn_lib cvs2svn_rcsparse" + +src_prepare() { + distutils_src_prepare + python_convert_shebangs -r 2 . +} + +src_install() { + distutils_src_install + insinto "/usr/share/${PN}" + doins -r contrib cvs2svn-example.options {profile-repos,show-db,verify-cvs2svn}.py + doman cvs2svn.1 +} + +pkg_postinst() { + distutils_pkg_postinst + elog "Additional scripts and examples have been installed to:" + elog " ${ROOT}usr/share/${PN}/" +} + +src_test() { + # Need this because subversion is localized, but the tests aren't + export LC_ALL=C + + testing() { + "$(PYTHON)" run-tests.py + } + python_execute_function testing +} diff --git a/dev-vcs/cvs2svn/cvs2svn-2.0.1.ebuild b/dev-vcs/cvs2svn/cvs2svn-2.0.1.ebuild new file mode 100644 index 000000000000..b6eabcad848b --- /dev/null +++ b/dev-vcs/cvs2svn/cvs2svn-2.0.1.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="2" +PYTHON_DEPEND="2" +SUPPORT_PYTHON_ABIS="1" +RESTRICT_PYTHON_ABIS="3.* *-jython" + +inherit distutils + +FILEVER="39919" + +DESCRIPTION="Convert a CVS repository to a Subversion repository" +HOMEPAGE="http://cvs2svn.tigris.org/" +SRC_URI="http://cvs2svn.tigris.org/files/documents/1462/${FILEVER}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~x86" +IUSE="" + +DEPEND=">=dev-vcs/subversion-1.0.9" +RDEPEND="${DEPEND} + dev-vcs/rcs" + +PYTHON_MODNAME="cvs2svn_lib cvs2svn_rcsparse" + +src_prepare() { + distutils_src_prepare + python_convert_shebangs -r 2 . +} + +src_install() { + distutils_src_install + insinto "/usr/share/${PN}" + doins -r contrib cvs2svn-example.options {profile-repos,show-db,verify-cvs2svn}.py + doman cvs2svn.1 +} + +pkg_postinst() { + distutils_pkg_postinst + elog "Additional scripts and examples have been installed to:" + elog " ${ROOT}usr/share/${PN}/" +} + +src_test() { + # Need this because subversion is localized, but the tests aren't + export LC_ALL=C + + testing() { + "$(PYTHON)" run-tests.py + } + python_execute_function testing +} diff --git a/dev-vcs/cvs2svn/cvs2svn-2.1.0.ebuild b/dev-vcs/cvs2svn/cvs2svn-2.1.0.ebuild new file mode 100644 index 000000000000..81f107b6873b --- /dev/null +++ b/dev-vcs/cvs2svn/cvs2svn-2.1.0.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="2" +PYTHON_DEPEND="2" +SUPPORT_PYTHON_ABIS="1" +RESTRICT_PYTHON_ABIS="3.* *-jython" + +inherit distutils + +FILEVER="41596" + +DESCRIPTION="Convert a CVS repository to a Subversion repository" +HOMEPAGE="http://cvs2svn.tigris.org/" +SRC_URI="http://cvs2svn.tigris.org/files/documents/1462/${FILEVER}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~x86" +IUSE="" + +DEPEND=">=dev-vcs/subversion-1.0.9" +RDEPEND="${DEPEND} + dev-vcs/rcs" + +PYTHON_MODNAME="cvs2svn_lib cvs2svn_rcsparse" + +src_prepare() { + distutils_src_prepare + python_convert_shebangs -r 2 . +} + +src_install() { + distutils_src_install + insinto "/usr/share/${PN}" + doins -r contrib cvs2svn-example.options + doman cvs2svn.1 +} + +src_test() { + # Need this because subversion is localized, but the tests aren't + export LC_ALL=C + + testing() { + "$(PYTHON)" run-tests.py + } + python_execute_function testing +} + +pkg_postinst() { + distutils_pkg_postinst + elog "Additional scripts and examples have been installed to:" + elog " /usr/share/${PN}/" +} diff --git a/dev-vcs/cvs2svn/cvs2svn-2.1.1.ebuild b/dev-vcs/cvs2svn/cvs2svn-2.1.1.ebuild new file mode 100644 index 000000000000..5f0268079847 --- /dev/null +++ b/dev-vcs/cvs2svn/cvs2svn-2.1.1.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="2" +PYTHON_DEPEND="2" +SUPPORT_PYTHON_ABIS="1" +RESTRICT_PYTHON_ABIS="3.* *-jython" + +inherit distutils + +FILEVER="42521" + +DESCRIPTION="Convert a CVS repository to a Subversion repository" +HOMEPAGE="http://cvs2svn.tigris.org/" +SRC_URI="http://cvs2svn.tigris.org/files/documents/1462/${FILEVER}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="alpha amd64 ia64 ppc x86" +IUSE="" + +DEPEND=">=dev-vcs/subversion-1.0.9" +RDEPEND="${DEPEND} + dev-vcs/rcs" + +PYTHON_MODNAME="cvs2svn_lib cvs2svn_rcsparse" + +src_prepare() { + distutils_src_prepare + python_convert_shebangs -r 2 . +} + +src_install() { + distutils_src_install + insinto "/usr/share/${PN}" + doins -r contrib cvs2svn-example.options {profile-repos,show-db,verify-cvs2svn}.py + doman cvs2svn.1 +} + +src_test() { + # Need this because subversion is localized, but the tests aren't + export LC_ALL=C + + testing() { + "$(PYTHON)" run-tests.py + } + python_execute_function testing +} + +pkg_postinst() { + distutils_pkg_postinst + elog "Additional scripts and examples have been installed to:" + elog " /usr/share/${PN}/" +} diff --git a/dev-vcs/cvs2svn/cvs2svn-2.2.0.ebuild b/dev-vcs/cvs2svn/cvs2svn-2.2.0.ebuild new file mode 100644 index 000000000000..a3c9c5b5072a --- /dev/null +++ b/dev-vcs/cvs2svn/cvs2svn-2.2.0.ebuild @@ -0,0 +1,60 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="2" +PYTHON_DEPEND="2" +PYTHON_USE_WITH_OR="berkdb gdbm" +PYTHON_USE_WITH_OPT="test" +SUPPORT_PYTHON_ABIS="1" +RESTRICT_PYTHON_ABIS="3.* *-jython" + +inherit eutils distutils + +FILEVER="44372" + +DESCRIPTION="Convert a CVS repository to a Subversion repository" +HOMEPAGE="http://cvs2svn.tigris.org/" +SRC_URI="http://cvs2svn.tigris.org/files/documents/1462/${FILEVER}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos" +IUSE="bazaar git test" + +DEPEND=">=dev-vcs/subversion-1.0.9" +RDEPEND="${DEPEND} + bazaar? ( >=dev-vcs/bzr-1.13 ) + git? ( >=dev-vcs/git-1.5.4.4 ) + dev-vcs/rcs" + +PYTHON_MODNAME="cvs2svn_lib cvs2svn_rcsparse" + +src_prepare() { + epatch "${FILESDIR}/2.2.0-deprecated-modules.patch" + distutils_src_prepare + python_convert_shebangs -r 2 . +} + +src_install() { + distutils_src_install + insinto "/usr/share/${PN}" + doins -r contrib cvs2svn-example.options + doman cvs2svn.1 +} + +src_test() { + # Need this because subversion is localized, but the tests aren't + export LC_ALL=C + + testing() { + "$(PYTHON)" -W ignore run-tests.py + } + python_execute_function testing +} + +pkg_postinst() { + distutils_pkg_postinst + elog "Additional scripts and examples have been installed to:" + elog " /usr/share/${PN}/" +} diff --git a/dev-vcs/cvs2svn/cvs2svn-2.3.0.ebuild b/dev-vcs/cvs2svn/cvs2svn-2.3.0.ebuild new file mode 100644 index 000000000000..ffa6e7f0c52b --- /dev/null +++ b/dev-vcs/cvs2svn/cvs2svn-2.3.0.ebuild @@ -0,0 +1,64 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="2" +PYTHON_DEPEND="2" +PYTHON_USE_WITH_OR="berkdb gdbm" +PYTHON_USE_WITH_OPT="test" +SUPPORT_PYTHON_ABIS="1" +RESTRICT_PYTHON_ABIS="3.* *-jython" + +inherit distutils + +FILEVER="46528" + +DESCRIPTION="Convert a CVS repository to a Subversion repository" +HOMEPAGE="http://cvs2svn.tigris.org/" +SRC_URI="http://cvs2svn.tigris.org/files/documents/1462/${FILEVER}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos" +IUSE="bazaar git test" + +DEPEND=">=dev-vcs/subversion-1.0.9" +RDEPEND="${DEPEND} + bazaar? ( >=dev-vcs/bzr-1.13 ) + git? ( >=dev-vcs/git-1.5.4.4 ) + dev-vcs/rcs" + +PYTHON_MODNAME="cvs2svn_lib cvs2svn_rcsparse" + +src_prepare() { + distutils_src_prepare + python_convert_shebangs -r 2 . +} + +src_compile() { + distutils_src_compile + emake man +} + +src_install() { + distutils_src_install + insinto "/usr/share/${PN}" + doins -r contrib cvs2{svn,git,bzr}-example.options + doman *.1 +} + +src_test() { + # Need this because subversion is localized, but the tests aren't + export LC_ALL=C + + testing() { + "$(PYTHON)" -W ignore run-tests.py + } + python_execute_function testing +} + +pkg_postinst() { + distutils_pkg_postinst + elog "Additional scripts and examples have been installed to:" + elog " /usr/share/${PN}/" +} diff --git a/dev-vcs/cvs2svn/cvs2svn-2.4.0.ebuild b/dev-vcs/cvs2svn/cvs2svn-2.4.0.ebuild new file mode 100644 index 000000000000..d91533a82fe9 --- /dev/null +++ b/dev-vcs/cvs2svn/cvs2svn-2.4.0.ebuild @@ -0,0 +1,64 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="2" +PYTHON_DEPEND="2" +PYTHON_USE_WITH_OR="berkdb gdbm" +PYTHON_USE_WITH_OPT="test" +SUPPORT_PYTHON_ABIS="1" +RESTRICT_PYTHON_ABIS="3.* *-jython" + +inherit distutils + +FILEVER="49237" + +DESCRIPTION="Convert a CVS repository to a Subversion repository" +HOMEPAGE="http://cvs2svn.tigris.org/" +SRC_URI="http://cvs2svn.tigris.org/files/documents/1462/${FILEVER}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos" +IUSE="bazaar git test" + +DEPEND=">=dev-vcs/subversion-1.0.9" +RDEPEND="${DEPEND} + bazaar? ( >=dev-vcs/bzr-1.13 ) + git? ( >=dev-vcs/git-1.5.4.4 ) + dev-vcs/rcs" + +PYTHON_MODNAME="cvs2svn_lib cvs2svn_rcsparse" + +src_prepare() { + distutils_src_prepare + python_convert_shebangs -r 2 . +} + +src_compile() { + distutils_src_compile + emake man +} + +src_install() { + distutils_src_install + insinto "/usr/share/${PN}" + doins -r contrib cvs2{svn,git,bzr}-example.options + doman *.1 +} + +src_test() { + # Need this because subversion is localized, but the tests aren't + export LC_ALL=C + + testing() { + "$(PYTHON)" -W ignore run-tests.py + } + python_execute_function testing +} + +pkg_postinst() { + distutils_pkg_postinst + elog "Additional scripts and examples have been installed to:" + elog " /usr/share/${PN}/" +} diff --git a/dev-vcs/cvs2svn/files/2.2.0-deprecated-modules.patch b/dev-vcs/cvs2svn/files/2.2.0-deprecated-modules.patch new file mode 100644 index 000000000000..94ceaa2b2fa2 --- /dev/null +++ b/dev-vcs/cvs2svn/files/2.2.0-deprecated-modules.patch @@ -0,0 +1,54 @@ +Index: cvs2svn_lib/dumpfile_delegate.py +=================================================================== +--- cvs2svn_lib/dumpfile_delegate.py (revision 4808) ++++ cvs2svn_lib/dumpfile_delegate.py (working copy) +@@ -16,9 +16,11 @@ + + """This module contains database facilities used by cvs2svn.""" + ++try: ++ from hashlib import md5 ++except ImportError: ++ from md5 import new as md5 + +-import md5 +- + from cvs2svn_lib import config + from cvs2svn_lib.common import FatalError + from cvs2svn_lib.common import InternalError +@@ -320,7 +322,7 @@ + self.dumpfile.write(prop_contents) + + # Insert the rev contents, calculating length and checksum as we go. +- checksum = md5.new() ++ checksum = md5() + length = 0 + if buf is None: + buf = stream.read(config.PIPE_READ_SIZE) +Index: cvs2svn_lib/metadata_database.py +=================================================================== +--- cvs2svn_lib/metadata_database.py (revision 4808) ++++ cvs2svn_lib/metadata_database.py (working copy) +@@ -16,9 +16,11 @@ + + """This module contains classes to manage CVSRevision metadata.""" + ++try: ++ from hashlib import sha1 ++except ImportError: ++ from sha import new as sha1 + +-import sha +- + from cvs2svn_lib.context import Ctx + from cvs2svn_lib.database import IndexedDatabase + from cvs2svn_lib.key_generator import KeyGenerator +@@ -86,7 +88,7 @@ + if not Ctx().cross_branch_commits: + key.append(branch_name or '') + +- digest = sha.new('\0'.join(key)).digest() ++ digest = sha1('\0'.join(key)).digest() + try: + # See if it is already known: + return self._digest_to_id[digest] diff --git a/dev-vcs/cvs2svn/metadata.xml b/dev-vcs/cvs2svn/metadata.xml new file mode 100644 index 000000000000..a5f294680254 --- /dev/null +++ b/dev-vcs/cvs2svn/metadata.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<maintainer> + <email>robbat2@gentoo.org</email> +</maintainer> +<use> + <flag name="bazaar">Support for dev-vcs/bzr</flag> +</use> +</pkgmetadata> diff --git a/dev-vcs/cvsd/Manifest b/dev-vcs/cvsd/Manifest new file mode 100644 index 000000000000..9da8110e311b --- /dev/null +++ b/dev-vcs/cvsd/Manifest @@ -0,0 +1,2 @@ +DIST cvsd-1.0.17.tar.gz 247026 SHA256 49d6a0c95bbb2c2e87f549eea8941ca115e6eb147c9720f8fb88678c84c0802a SHA512 beea48a288ff580e6cc7fdcd1997b7af01e7ea1b1c185006c92cd7758e7e557d2b1b4fc820bd03b787ebc74b5fa9ef661584d2c523480cf6418f452f5f929c9d WHIRLPOOL 2fa9ae2e679933c3777b4e124f2a4733056120d591f61b1cb711642f76c2f3fa59e30eb9275ddf90f8caf6d49ba395e7e1d4c085ade1214493c7f0294b02492b +DIST cvsd-1.0.7.tar.gz 193964 SHA256 0a5891f3e2bff1bd8b304d5a7ce8426df635dc73fd5f690464c17430844c89c5 SHA512 6ffc3d554e43d50c0fa4861b3f6cc6c696298d882074f017da80068f7afbca3361e5d88fbd13fcadf930afee2df8d6a0777710bc0f992dd208b7674595cc8ea1 WHIRLPOOL 4f0d3dbe7267087747d7174cce941808091f88c146e4809acec3b4b9afb1ea715d094630ceaacf6feb34752b7603413f52422e1e2d7d232784015669bbcfcd76 diff --git a/dev-vcs/cvsd/cvsd-1.0.17.ebuild b/dev-vcs/cvsd/cvsd-1.0.17.ebuild new file mode 100644 index 000000000000..aa563dd298ee --- /dev/null +++ b/dev-vcs/cvsd/cvsd-1.0.17.ebuild @@ -0,0 +1,44 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +inherit eutils user + +DESCRIPTION="CVS pserver daemon" +HOMEPAGE="http://ch.tudelft.nl/~arthur/cvsd/" +SRC_URI="http://ch.tudelft.nl/~arthur/cvsd/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos" +IUSE="tcpd" + +DEPEND=">=dev-vcs/cvs-1.11.6 + tcpd? ( >=sys-apps/tcp-wrappers-7.6 )" +RDEPEND="${DEPEND} + >=dev-lang/perl-5.8.0" + +pkg_setup() { + enewgroup cvsd + enewuser cvsd -1 -1 /var/lib/cvsd cvsd +} + +src_compile() { + econf $(use_with tcpd libwrap) || die "econf failed" + emake || die "emake failed" +} + +src_install() { + make DESTDIR="${D}" install || die "make install failed" + dosed 's:^Repos:# Repos:g' /etc/cvsd/cvsd.conf + keepdir /var/lib/cvsd + + dodoc AUTHORS ChangeLog FAQ INSTALL NEWS README TODO + + newinitd "${FILESDIR}/cvsd.rc6" ${PN} +} + +pkg_postinst() { + elog "To configure cvsd please read the README in " + elog "/usr/share/doc/${PF}/" +} diff --git a/dev-vcs/cvsd/cvsd-1.0.7.ebuild b/dev-vcs/cvsd/cvsd-1.0.7.ebuild new file mode 100644 index 000000000000..dcf467848d75 --- /dev/null +++ b/dev-vcs/cvsd/cvsd-1.0.7.ebuild @@ -0,0 +1,44 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +inherit eutils user + +DESCRIPTION="CVS pserver daemon" +HOMEPAGE="http://ch.tudelft.nl/~arthur/cvsd/" +SRC_URI="http://ch.tudelft.nl/~arthur/cvsd/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 ppc ~sparc x86" +IUSE="tcpd" + +DEPEND="tcpd? ( >=sys-apps/tcp-wrappers-7.6 )" +RDEPEND="${DEPEND} + >=dev-lang/perl-5.8.0 + >=dev-vcs/cvs-1.11.6" + +pkg_setup() { + enewgroup cvsd + enewuser cvsd -1 -1 /var/lib/cvsd cvsd +} + +src_compile() { + econf $(use_with tcpd libwrap) || die "econf failed" + emake || die "emake failed" +} + +src_install() { + make DESTDIR="${D}" install || die "make install failed" + dosed 's:^Repos:# Repos:g' /etc/cvsd/cvsd.conf + keepdir /var/lib/cvsd + + dodoc AUTHORS ChangeLog FAQ INSTALL NEWS README TODO + + newinitd "${FILESDIR}"/cvsd.rc6 ${PN} +} + +pkg_postinst() { + elog "To configure cvsd please read the README in " + elog "/usr/share/doc/${PF}/" +} diff --git a/dev-vcs/cvsd/files/cvsd.rc6 b/dev-vcs/cvsd/files/cvsd.rc6 new file mode 100644 index 000000000000..b300b3562904 --- /dev/null +++ b/dev-vcs/cvsd/files/cvsd.rc6 @@ -0,0 +1,20 @@ +#!/sbin/runscript +# Copyright 1999-2004 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +depend() { + need net +} + +start() { + ebegin "Starting cvsd" + start-stop-daemon --start --quiet --background --exec /usr/sbin/cvsd + eend $? +} + +stop() { + ebegin "Stopping cvsd" + start-stop-daemon --stop --quiet --pidfile /var/run/cvsd.pid + eend $? +} diff --git a/dev-vcs/cvsd/metadata.xml b/dev-vcs/cvsd/metadata.xml new file mode 100644 index 000000000000..45023270b146 --- /dev/null +++ b/dev-vcs/cvsd/metadata.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>cvs-utils</herd> +</pkgmetadata> diff --git a/dev-vcs/cvsgraph/Manifest b/dev-vcs/cvsgraph/Manifest new file mode 100644 index 000000000000..decffd2b5db4 --- /dev/null +++ b/dev-vcs/cvsgraph/Manifest @@ -0,0 +1,2 @@ +DIST cvsgraph-1.6.1.tar.gz 114337 SHA256 05cdbed36bb2dd37aa382fc7f4410caac20dcf9176a50e922551cdc965dbc60b SHA512 6548d43784cd6e2e85777e0158371c6332f96f72fc8d1827dcece8aa54d77139021586e468155ec003d371eaa7095cd57a5004a1ed76bc55db325c3899105e6b WHIRLPOOL bd12cafe2d3fe5436adbb508b689f3e7bea1b8dfbc7aa02974ba23bc6d4dc57fe2f1e9f07325924e0ee949709091362a821948cda9b4273197eaac6650694add +DIST cvsgraph-1.7.0.tar.gz 202678 SHA256 74438faaefd325c7a8ed289ea5d1657befe1d1859d55f8fbbcc7452f4efd435f SHA512 b2a5bec073e7fbba2a2b1975bb4583c8fa87d29a985b7bcedcaf556c744b822ea5ff65b5ca3c4bd6da6bb6697f5e023a7ce35cf5084f2d59fdd15297790e7aab WHIRLPOOL 1ca604faf530c2d3820fcc0d1c9e2c6bee4c4582f1caf93c98facb4610892a2a7160c0378daf175479af3ece76f2f35c08c7aaeabdd78a00e1f1e52e1e579c74 diff --git a/dev-vcs/cvsgraph/cvsgraph-1.6.1.ebuild b/dev-vcs/cvsgraph/cvsgraph-1.6.1.ebuild new file mode 100644 index 000000000000..f98ae29b596d --- /dev/null +++ b/dev-vcs/cvsgraph/cvsgraph-1.6.1.ebuild @@ -0,0 +1,41 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +DESCRIPTION="CVS/RCS repository grapher" +HOMEPAGE="http://www.akhphd.au.dk/~bertho/cvsgraph" +SRC_URI="http://www.akhphd.au.dk/~bertho/cvsgraph/release/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="-alpha amd64 -ia64 ppc sparc x86" +IUSE="gif jpeg nls png truetype zlib" + +DEPEND="media-libs/gd + zlib? ( sys-libs/zlib ) + gif? ( media-libs/giflib ) + png? ( media-libs/libpng ) + jpeg? ( virtual/jpeg ) + truetype? ( media-libs/freetype )" +RDEPEND="${DEPEND}" + +src_compile() { + econf \ + $(use_enable nls) \ + $(use_enable gif) \ + $(use_enable png) \ + $(use_enable jpeg) \ + $(use_enable truetype) \ + || die "econf failed" + + emake || die "emake failed" +} + +src_install () { + dobin cvsgraph + insinto /etc + doins cvsgraph.conf + doman cvsgraph.1 cvsgraph.conf.5 + dodoc ChangeLog README contrib/*.php3 + docinto automatic_documentation ; dodoc contrib/automatic_documentation/* +} diff --git a/dev-vcs/cvsgraph/cvsgraph-1.7.0.ebuild b/dev-vcs/cvsgraph/cvsgraph-1.7.0.ebuild new file mode 100644 index 000000000000..dbaf49b05e55 --- /dev/null +++ b/dev-vcs/cvsgraph/cvsgraph-1.7.0.ebuild @@ -0,0 +1,41 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +DESCRIPTION="CVS/RCS repository grapher" +HOMEPAGE="http://www.akhphd.au.dk/~bertho/cvsgraph" +SRC_URI="http://www.akhphd.au.dk/~bertho/cvsgraph/release/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="-alpha amd64 -ia64 ~ppc ~sparc x86" +IUSE="gif jpeg nls png truetype zlib" + +DEPEND="media-libs/gd + zlib? ( sys-libs/zlib ) + gif? ( media-libs/giflib ) + png? ( media-libs/libpng ) + jpeg? ( virtual/jpeg ) + truetype? ( media-libs/freetype )" +RDEPEND="${DEPEND}" + +src_compile() { + econf \ + $(use_enable nls) \ + $(use_enable gif) \ + $(use_enable png) \ + $(use_enable jpeg) \ + $(use_enable truetype) \ + || die "econf failed" + + emake || die "emake failed" +} + +src_install () { + dobin cvsgraph + insinto /etc + doins cvsgraph.conf + doman cvsgraph.1 cvsgraph.conf.5 + dodoc ChangeLog README AUTHORS contrib/*.php + docinto automatic_documentation ; dodoc contrib/automatic_documentation/* +} diff --git a/dev-vcs/cvsgraph/metadata.xml b/dev-vcs/cvsgraph/metadata.xml new file mode 100644 index 000000000000..1f00c0c93be5 --- /dev/null +++ b/dev-vcs/cvsgraph/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>cvs-utils</herd> + <longdescription lang="en"> + CvsGraph is a utility to make a graphical representation of all + revisions and branches of a file in a CVS/RCS repository. It has been + inspired by the 'graph' option in WinCVS, but I could not find a + stand-alone version of this graph code. So, it was time to write one. + </longdescription> +</pkgmetadata> + diff --git a/dev-vcs/cvsps/Manifest b/dev-vcs/cvsps/Manifest new file mode 100644 index 000000000000..fc18c66818d5 --- /dev/null +++ b/dev-vcs/cvsps/Manifest @@ -0,0 +1,3 @@ +DIST cvsps-2.1.tar.gz 61634 SHA256 91d3198b33463861a581686d5fcf99a5c484e7c4d819384c04fda9cafec1075a SHA512 8ba703fc4dd1c7a8201f4cefec533a6e228943f53f5380d8d17107718d8cb607c861a733d7ad1d6ed9288c4dbeae9fd59ceaf52172f16885a00d000a667e0e38 WHIRLPOOL 8299c0ff5ae5701409142c02fad6c604b2aadd2038282b29b49ff8934eb0740f456b3e4d837ed966e31af7ebb73f2e8e97bd48190ed806dbb3ed76182ba85caf +DIST cvsps-2.2b1.tar.gz 62763 SHA256 6906acb3636cdb4a4a9d608111aec22a85530037cb08a62ed5eb74ca0b218f81 SHA512 9e6f95df53cdc16566f1606a9299ee641de9b020a373c9004218b3db23fbdcce9e32d4a57dce332580bc4e6429b90977c2753facd0ad8f9a9234b79f03a7a33d WHIRLPOOL e60706d0324a28a6bcbdc6aeb73e51211295e2b6462d04d7b1bc54634ae8b558971ac0545860a7649dd230a8de823e9ec1912b97bfe584d59bc76808b49d6ec8 +DIST cvsps-3.13.tar.gz 64437 SHA256 5f078a6e02c394f663893751f128caf643fe00a30b559e87db6f45190c623799 SHA512 9fe2be4839c7a6f31a788102fd6ebb1e2e0693f09a4dad2bca5cd5d0788088eb34388d592778f04bcfec9817e3ffffb66d70db9aa47996d3bd1c45cf7cd8464f WHIRLPOOL 52694e8b2b3cb0924333d80533618f687676f0b44f782c1c4f7bbc28a4f4e6a425c966823f027db7dcee27695c27c0b136115e449e83eac43459a7da03baa57c diff --git a/dev-vcs/cvsps/cvsps-2.1-r1.ebuild b/dev-vcs/cvsps/cvsps-2.1-r1.ebuild new file mode 100644 index 000000000000..844e834defa7 --- /dev/null +++ b/dev-vcs/cvsps/cvsps-2.1-r1.ebuild @@ -0,0 +1,38 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +inherit eutils toolchain-funcs + +MY_P="${P/_/}" +DESCRIPTION="Generates patchset information from a CVS repository" +HOMEPAGE="http://www.cobite.com/cvsps/" +SRC_URI="http://www.cobite.com/cvsps/${MY_P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x64-solaris ~x86-solaris" +IUSE="" + +DEPEND="sys-libs/zlib" +RDEPEND="${DEPEND}" + +S="${WORKDIR}/${MY_P}" + +src_unpack() { + unpack ${A} + cd "${S}" + epatch "${FILESDIR}"/${P}-build.patch + epatch "${FILESDIR}"/${P}-solaris.patch + # no configure around + if [[ ${CHOST} == *-solaris* ]] ; then + sed -i -e '/^LDLIBS+=/s/$/ -lsocket/' Makefile || die + fi + tc-export CC +} + +src_install() { + dobin cvsps || die + doman cvsps.1 + dodoc README CHANGELOG +} diff --git a/dev-vcs/cvsps/cvsps-2.2_beta1.ebuild b/dev-vcs/cvsps/cvsps-2.2_beta1.ebuild new file mode 100644 index 000000000000..0713161c1613 --- /dev/null +++ b/dev-vcs/cvsps/cvsps-2.2_beta1.ebuild @@ -0,0 +1,38 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="4" + +inherit eutils toolchain-funcs + +MY_P="${P/_beta/b}" +DESCRIPTION="Generates patchset information from a CVS repository" +HOMEPAGE="http://www.cobite.com/cvsps/" +SRC_URI="http://www.cobite.com/cvsps/${MY_P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris" +IUSE="" + +RDEPEND="sys-libs/zlib" +DEPEND="${RDEPEND}" + +S="${WORKDIR}/${MY_P}" + +src_prepare() { + epatch "${FILESDIR}"/${PN}-2.1-build.patch + epatch "${FILESDIR}"/${P}-solaris.patch + # no configure around + if [[ ${CHOST} == *-solaris* ]] ; then + sed -i -e '/^LDLIBS+=/s/$/ -lsocket/' Makefile || die + fi + tc-export CC +} + +src_install() { + dobin cvsps || die + doman cvsps.1 + dodoc README CHANGELOG +} diff --git a/dev-vcs/cvsps/cvsps-3.13-r1.ebuild b/dev-vcs/cvsps/cvsps-3.13-r1.ebuild new file mode 100644 index 000000000000..60f8ea17d5d0 --- /dev/null +++ b/dev-vcs/cvsps/cvsps-3.13-r1.ebuild @@ -0,0 +1,39 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit eutils toolchain-funcs + +DESCRIPTION="Generates patchset information from a CVS repository (supports fast-import)" +HOMEPAGE="http://www.catb.org/~esr/cvsps/" +SRC_URI="http://www.catb.org/~esr/${PN}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="3" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris" +IUSE="" + +RDEPEND="sys-libs/zlib" +DEPEND="${RDEPEND} + app-text/asciidoc" + +RESTRICT=test # upstream does not ship tests + +src_prepare() { + local gentoo_name=${PN}-3 + + epatch "${FILESDIR}"/${P}-make.patch + mv ${PN}.asc ${gentoo_name}.asc || die + sed -i "s/${PN}/${gentoo_name}/g" ${gentoo_name}.asc || die + sed -i "s/PROG = cvsps/PROG = ${gentoo_name}/" Makefile || die + + tc-export CC + export prefix="${EPREFIX}"/usr +} + +src_install() { + default + dodoc README +} diff --git a/dev-vcs/cvsps/files/cvsps-2.1-build.patch b/dev-vcs/cvsps/files/cvsps-2.1-build.patch new file mode 100644 index 000000000000..bcb394d5dd0b --- /dev/null +++ b/dev-vcs/cvsps/files/cvsps-2.1-build.patch @@ -0,0 +1,18 @@ +--- Makefile.orig 2008-03-24 07:16:47.000000000 -0400 ++++ Makefile 2008-03-24 07:17:18.000000000 -0400 +@@ -3,6 +3,7 @@ + CC?=gcc + CFLAGS?=-g -O2 -Wall + CFLAGS+=-I. -DVERSION=\"$(MAJOR).$(MINOR)\" ++LDLIBS+=-lz + prefix?=/usr/local + OBJS=\ + cbtcommon/debug.o\ +@@ -21,7 +22,6 @@ + all: cvsps + + cvsps: $(OBJS) +- $(CC) -o cvsps $(OBJS) -lz + + install: + [ -d $(prefix)/bin ] || mkdir -p $(prefix)/bin diff --git a/dev-vcs/cvsps/files/cvsps-2.1-solaris.patch b/dev-vcs/cvsps/files/cvsps-2.1-solaris.patch new file mode 100644 index 000000000000..3e063fd9248b --- /dev/null +++ b/dev-vcs/cvsps/files/cvsps-2.1-solaris.patch @@ -0,0 +1,131 @@ +Modified version of +http://cvs.openpkg.org/fileview?f=openpkg-src/cvsps/cvsps.patch&v=1.13 + +Index: cache.c +--- cache.c.orig 2008-04-02 03:18:44 +0200 ++++ cache.c 2008-04-02 09:10:25 +0200 +@@ -361,7 +361,7 @@ + + strcpy(buff, p_buff); + +- while ((s = strsep(&p, ";"))) ++ while ((s = my_strsep(&p, ";"))) + { + char * c = strchr(s, ':'); + +Index: cvs_direct.c +--- cvs_direct.c.orig 2008-04-02 03:18:44 +0200 ++++ cvs_direct.c 2008-04-02 09:10:25 +0200 +@@ -92,12 +92,12 @@ + + strcpy_a(root, p_root, PATH_MAX); + +- tok = strsep(&p, ":"); ++ tok = my_strsep(&p, ":"); + + /* if root string looks like :pserver:... then the first token will be empty */ + if (strlen(tok) == 0) + { +- char * method = strsep(&p, ":"); ++ char * method = my_strsep(&p, ":"); + if (strcmp(method, "pserver") == 0) + { + ctx = open_ctx_pserver(ctx, p); +@@ -185,14 +185,14 @@ + + strcpy_a(root, p_root, PATH_MAX); + +- tok = strsep(&p, ":"); ++ tok = my_strsep(&p, ":"); + if (strlen(tok) == 0 || !p) + { + debug(DEBUG_APPERROR, "parse error on third token"); + goto out_free_err; + } + +- tok2 = strsep(&tok, "@"); ++ tok2 = my_strsep(&tok, "@"); + if (!strlen(tok2) || (!tok || !strlen(tok))) + { + debug(DEBUG_APPERROR, "parse error on user@server in pserver"); +@@ -272,7 +272,7 @@ + strcpy_a(root, p_root, PATH_MAX); + + /* if there's a ':', it's remote */ +- tok = strsep(&p, ":"); ++ tok = my_strsep(&p, ":"); + + if (p) + { +@@ -281,7 +281,7 @@ + if (!cvs_rsh) + cvs_rsh = "rsh"; + +- tok2 = strsep(&tok, "@"); ++ tok2 = my_strsep(&tok, "@"); + + if (tok) + snprintf(execcmd, PATH_MAX, "%s -l %s %s %s server", cvs_rsh, tok2, tok, cvs_server); +@@ -776,7 +776,7 @@ + static int parse_patch_arg(char * arg, char ** str) + { + char *tok, *tok2 = ""; +- tok = strsep(str, " "); ++ tok = my_strsep(str, " "); + if (!tok) + return 0; + +@@ -796,7 +796,7 @@ + /* see if command wants two args and they're separated by ' ' */ + if (tok[2] == 0 && strchr("BdDFgiorVxYz", tok[1])) + { +- tok2 = strsep(str, " "); ++ tok2 = my_strsep(str, " "); + if (!tok2) + { + debug(DEBUG_APPERROR, "diff_opts parse_error: argument %s requires two arguments", tok); +Index: util.c +--- util.c.orig 2008-04-02 03:18:44 +0200 ++++ util.c 2008-04-02 09:10:25 +0200 +@@ -316,3 +316,31 @@ + exit(1); + } + } ++ ++char *my_strsep(char **stringp, const char *delim) ++{ ++ char *s; ++ const char *spanp; ++ int c, sc; ++ char *tok; ++ ++ if ((s = *stringp) == NULL) ++ return NULL; ++ for (tok = s;;) { ++ c = *s++; ++ spanp = delim; ++ do { ++ if ((sc = *spanp++) == c) { ++ if (c == 0) ++ s = NULL; ++ else ++ s[-1] = 0; ++ *stringp = s; ++ return tok; ++ } ++ } while (sc != 0); ++ } ++ /* NOTREACHED */ ++ return NULL; ++} ++ +Index: util.h +--- util.h.orig 2008-04-02 03:18:44 +0200 ++++ util.h 2008-04-02 09:15:35 +0200 +@@ -24,5 +24,6 @@ + void timing_stop(const char *); + int my_system(const char *); + int escape_filename(char *, int, const char *); ++char *my_strsep(char **, const char *); + + #endif /* UTIL_H */ diff --git a/dev-vcs/cvsps/files/cvsps-2.2_beta1-solaris.patch b/dev-vcs/cvsps/files/cvsps-2.2_beta1-solaris.patch new file mode 100644 index 000000000000..444ac1382a7b --- /dev/null +++ b/dev-vcs/cvsps/files/cvsps-2.2_beta1-solaris.patch @@ -0,0 +1,135 @@ +Modified version of. +http://cvs.openpkg.org/fileview?f=openpkg-src/cvsps/cvsps.patch&v=1.13 + +diff --git a/cache.c b/cache.c +index 4c51cf7..2c3918d 100644 +--- a/cache.c ++++ b/cache.c +@@ -361,7 +361,7 @@ static void parse_cache_revision(PatchSetMember * psm, const char * p_buff) + + strcpy(buff, p_buff); + +- while ((s = strsep(&p, ";"))) ++ while ((s = my_strsep(&p, ";"))) + { + char * c = strchr(s, ':'); + +diff --git a/cvs_direct.c b/cvs_direct.c +index e281848..5aa8f0f 100644 +--- a/cvs_direct.c ++++ b/cvs_direct.c +@@ -92,12 +92,12 @@ CvsServerCtx * open_cvs_server(char * p_root, int compress) + + strcpy_a(root, p_root, PATH_MAX); + +- tok = strsep(&p, ":"); ++ tok = my_strsep(&p, ":"); + + /* if root string looks like :pserver:... then the first token will be empty */ + if (strlen(tok) == 0) + { +- char * method = strsep(&p, ":"); ++ char * method = my_strsep(&p, ":"); + if (strcmp(method, "pserver") == 0) + { + ctx = open_ctx_pserver(ctx, p); +@@ -185,14 +185,14 @@ static CvsServerCtx * open_ctx_pserver(CvsServerCtx * ctx, const char * p_root) + + strcpy_a(root, p_root, PATH_MAX); + +- tok = strsep(&p, ":"); ++ tok = my_strsep(&p, ":"); + if (strlen(tok) == 0 || !p) + { + debug(DEBUG_APPERROR, "parse error on third token"); + goto out_free_err; + } + +- tok2 = strsep(&tok, "@"); ++ tok2 = my_strsep(&tok, "@"); + if (!strlen(tok2) || (!tok || !strlen(tok))) + { + debug(DEBUG_APPERROR, "parse error on user@server in pserver"); +@@ -272,7 +272,7 @@ static CvsServerCtx * open_ctx_forked(CvsServerCtx * ctx, const char * p_root) + strcpy_a(root, p_root, PATH_MAX); + + /* if there's a ':', it's remote */ +- tok = strsep(&p, ":"); ++ tok = my_strsep(&p, ":"); + + if (p) + { +@@ -281,7 +281,7 @@ static CvsServerCtx * open_ctx_forked(CvsServerCtx * ctx, const char * p_root) + if (!cvs_rsh) + cvs_rsh = "rsh"; + +- tok2 = strsep(&tok, "@"); ++ tok2 = my_strsep(&tok, "@"); + + if (tok) + snprintf(execcmd, PATH_MAX, "%s -l %s %s %s server", cvs_rsh, tok2, tok, cvs_server); +@@ -776,7 +776,7 @@ void cvs_rupdate(CvsServerCtx * ctx, const char * rep, const char * file, const + static int parse_patch_arg(char * arg, char ** str) + { + char *tok, *tok2 = ""; +- tok = strsep(str, " "); ++ tok = my_strsep(str, " "); + if (!tok) + return 0; + +@@ -796,7 +796,7 @@ static int parse_patch_arg(char * arg, char ** str) + /* see if command wants two args and they're separated by ' ' */ + if (tok[2] == 0 && strchr("BdDFgiorVxYz", tok[1])) + { +- tok2 = strsep(str, " "); ++ tok2 = my_strsep(str, " "); + if (!tok2) + { + debug(DEBUG_APPERROR, "diff_opts parse_error: argument %s requires two arguments", tok); +diff --git a/util.c b/util.c +index 7884c84..f3ab3a3 100644 +--- a/util.c ++++ b/util.c +@@ -316,3 +316,31 @@ void strcpy_a(char * dst, const char * src, int n) + exit(1); + } + } ++ ++char *my_strsep(char **stringp, const char *delim) ++{ ++ char *s; ++ const char *spanp; ++ int c, sc; ++ char *tok; ++ ++ if ((s = *stringp) == NULL) ++ return NULL; ++ for (tok = s;;) { ++ c = *s++; ++ spanp = delim; ++ do { ++ if ((sc = *spanp++) == c) { ++ if (c == 0) ++ s = NULL; ++ else ++ s[-1] = 0; ++ *stringp = s; ++ return tok; ++ } ++ } while (sc != 0); ++ } ++ /* NOTREACHED */ ++ return NULL; ++} ++ +diff --git a/util.h b/util.h +index ff2d3a0..336fd63 100644 +--- a/util.h ++++ b/util.h +@@ -24,5 +24,6 @@ void timing_stop(const char *); + int my_system(const char *); + int escape_filename(char *, int, const char *); + void strcpy_a(char * dst, const char * src, int n); ++char *my_strsep(char **, const char *); + + #endif /* UTIL_H */ diff --git a/dev-vcs/cvsps/files/cvsps-3.13-make.patch b/dev-vcs/cvsps/files/cvsps-3.13-make.patch new file mode 100644 index 000000000000..7c96d60300a1 --- /dev/null +++ b/dev-vcs/cvsps/files/cvsps-3.13-make.patch @@ -0,0 +1,52 @@ +diff --git a/Makefile b/Makefile +index 6266c9d..4f60d2f 100644 +--- a/Makefile ++++ b/Makefile +@@ -8,6 +8,9 @@ INSTALL = install + prefix?=/usr/local + target=$(DESTDIR)$(prefix) + ++PROG = cvsps ++MANPAGE = $(PROG).1 ++ + OBJS= debug.o \ + hash.o \ + sio.o \ +@@ -19,12 +22,12 @@ OBJS= debug.o \ + cvsclient.o \ + list_sort.o + +-all: cvsps ++all: $(PROG) $(MANPAGE) + + deps: + makedepend -Y -I. *.c + +-cvsps: $(OBJS) +- $(CC) -o cvsps $(OBJS) $(LDFLAGS) $(LDLIBS) ++$(PROG): $(OBJS) ++ $(CC) -o $(PROG) $(OBJS) $(LDFLAGS) $(LDLIBS) + + check: +@@ -50,17 +53,17 @@ pylint: + .txt.html: + a2x --doctype manpage --format xhtml $*.txt + +-install: cvsps.1 all ++install: all + $(INSTALL) -d "$(target)/bin" + $(INSTALL) -d "$(target)/share/man/man1" +- $(INSTALL) cvsps "$(target)/bin" +- $(INSTALL) -m 644 cvsps.1 "$(target)/share/man/man1" ++ $(INSTALL) $(PROG) "$(target)/bin" ++ $(INSTALL) -m 644 $(MANPAGE) "$(target)/share/man/man1" + + tags: *.c *.h + ctags *.c *.h + + clean: +- rm -f cvsps *.o core tags cvsps.1 cvsps.html docbook-xsl.css ++ rm -f $(PROG) *.o core tags $(MANPAGE) cvsps.html docbook-xsl.css + + SOURCES = Makefile *.[ch] merge_utils.sh + DOCS = README COPYING NEWS cvsps.asc TODO diff --git a/dev-vcs/cvsps/metadata.xml b/dev-vcs/cvsps/metadata.xml new file mode 100644 index 000000000000..e9a271ce1876 --- /dev/null +++ b/dev-vcs/cvsps/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>slyfox@gentoo.org</email> + <name>Sergei Trofimovich</name> + </maintainer> + <herd>cvs-utils</herd> + <upstream> + <remote-id type="freecode">cvsps</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-vcs/cvsq/Manifest b/dev-vcs/cvsq/Manifest new file mode 100644 index 000000000000..12d35f8942e9 --- /dev/null +++ b/dev-vcs/cvsq/Manifest @@ -0,0 +1 @@ +DIST cvsq-0.4.4.tar.gz 3717 SHA256 9759fa87c4f81db187989ffa6ef2d9f610a2cc8fc74b2466849ca0b069c72eae SHA512 137f09f42f5213853b327f23c3d23914116851b2d8d7f17752257f6ab0b2f62e4526f95b7d005fbf49746ea17591fbb38cfc58ccbe55a976b36339df13e44f8f WHIRLPOOL b53286475eccc0e327cd937f6aaf09ead73145585f5cb0a6dd6ba76115b60119fcfab02ef03cfb64d07e46b15e2d2b17cb66d2787a96b23d3c4e9c81844c91ad diff --git a/dev-vcs/cvsq/cvsq-0.4.4.ebuild b/dev-vcs/cvsq/cvsq-0.4.4.ebuild new file mode 100644 index 000000000000..f63b4e3657ce --- /dev/null +++ b/dev-vcs/cvsq/cvsq-0.4.4.ebuild @@ -0,0 +1,24 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +IUSE="" + +DESCRIPTION="A tool that enables developers to work comfortably offline with CVS by queuing the commits" +SRC_URI="http://metawire.org/~vslavik/sw/cvsq/download/${P}.tar.gz" +HOMEPAGE="http://metawire.org/~vslavik/sw/cvsq/" + +SLOT="0" +LICENSE="public-domain" +KEYWORDS="~amd64 ~ppc x86" + +DEPEND="" # This is just a shell script. +RDEPEND="dev-vcs/cvs + app-shells/bash + sys-apps/coreutils" + +src_install () { + dodir /usr/bin + dobin cvsq + dodoc README AUTHORS ChangeLog +} diff --git a/dev-vcs/cvsq/metadata.xml b/dev-vcs/cvsq/metadata.xml new file mode 100644 index 000000000000..45023270b146 --- /dev/null +++ b/dev-vcs/cvsq/metadata.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>cvs-utils</herd> +</pkgmetadata> diff --git a/dev-vcs/cvsspam/Manifest b/dev-vcs/cvsspam/Manifest new file mode 100644 index 000000000000..fa998c728188 --- /dev/null +++ b/dev-vcs/cvsspam/Manifest @@ -0,0 +1 @@ +DIST cvsspam-0.2.12.tar.gz 83714 SHA256 217c53ceebcc7fcbb8949304648b48c7c0805e0c4531d0c85473e8dd685b3e16 SHA512 80786f980fe5070fff90de8e7a470cdf91ee8ddbd4c37fb1d98d0ddc042d157f2f74998962eaab1a24503b9147fae2129db35f1d505b557a8c75325d1e101bec WHIRLPOOL f59677098ab67d7b558e1de0eb6f6e361dad0505873c96701bc8ab4da3b93871dc80405764d2083ab7d346cbbf058b136dacea8081413a7ec8fb12bc1e88843f diff --git a/dev-vcs/cvsspam/cvsspam-0.2.12.ebuild b/dev-vcs/cvsspam/cvsspam-0.2.12.ebuild new file mode 100644 index 000000000000..fda4d9005d1d --- /dev/null +++ b/dev-vcs/cvsspam/cvsspam-0.2.12.ebuild @@ -0,0 +1,35 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit eutils + +DESCRIPTION="Utility to send colored HTML CVS-mails" +HOMEPAGE="http://www.badgers-in-foil.co.uk/projects/cvsspam/" +SRC_URI="http://www.badgers-in-foil.co.uk/projects/cvsspam/releases/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" +IUSE="subversion" + +RDEPEND="dev-lang/ruby + subversion? ( dev-vcs/subversion ) +" + +src_prepare() { + use subversion && epatch "${FILESDIR}/${P}-svn.patch" +} + +src_install() { + dobin collect_diffs.rb + dobin cvsspam.rb + dobin record_lastdir.rb + insinto /etc/cvsspam + doins cvsspam.conf + + dohtml cvsspam-doc.html + dodoc CREDITS TODO cvsspam-doc.pdf +} diff --git a/dev-vcs/cvsspam/files/cvsspam-0.2.12-svn.patch b/dev-vcs/cvsspam/files/cvsspam-0.2.12-svn.patch new file mode 100644 index 000000000000..3278f94bc005 --- /dev/null +++ b/dev-vcs/cvsspam/files/cvsspam-0.2.12-svn.patch @@ -0,0 +1,30 @@ +--- cvsspam.rb.old 2006-12-02 13:36:48.000000000 -0500 ++++ cvsspam.rb 2006-12-02 13:38:28.000000000 -0500 +@@ -1386,12 +1386,10 @@ + $allTags = Hash.new + + File.open("#{$logfile}.emailtmp", File::RDWR|File::CREAT|File::TRUNC) do |mail| ++ reader = LogReader.new($stdin) + + $diff_output_limiter = OutputSizeLimiter.new(mail, $mail_size_limit) + +- File.open($logfile) do |log| +- reader = LogReader.new(log) +- + until reader.eof + handler = $handlers[reader.currentLineCode] + if handler == nil +@@ -1399,12 +1397,11 @@ + end + handler.handleLines(reader.getLines, $diff_output_limiter) + end +- end + + end + + if $subjectPrefix == nil +- $subjectPrefix = "[CVS #{Repository.array.join(',')}]" ++ $subjectPrefix = "[SVN #{Repository.array.join(',')}]" + end + + if $files_in_subject diff --git a/dev-vcs/cvsspam/metadata.xml b/dev-vcs/cvsspam/metadata.xml new file mode 100644 index 000000000000..ff62877c67ae --- /dev/null +++ b/dev-vcs/cvsspam/metadata.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<maintainer> + <email>maintainer-needed@gentoo.org</email> +</maintainer> +</pkgmetadata> diff --git a/dev-vcs/cvsutils/Manifest b/dev-vcs/cvsutils/Manifest new file mode 100644 index 000000000000..d0fa89355cbb --- /dev/null +++ b/dev-vcs/cvsutils/Manifest @@ -0,0 +1 @@ +DIST cvsutils-0.2.5.tar.gz 79596 RMD160 98b8af82f1ab61b8fcfe5973af703a25cb992936 SHA1 294599ce431be50ad1da7295e8b6a65a17fbf531 SHA256 ac5f6faf250fd317655d79782e6f7cecaa5ab836659d8a31c28faa51160a4681 diff --git a/dev-vcs/cvsutils/cvsutils-0.2.5.ebuild b/dev-vcs/cvsutils/cvsutils-0.2.5.ebuild new file mode 100644 index 000000000000..aa2ef30f800c --- /dev/null +++ b/dev-vcs/cvsutils/cvsutils-0.2.5.ebuild @@ -0,0 +1,20 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +DESCRIPTION="A small bundle of utilities to work with CVS repositories" +HOMEPAGE="http://www.red-bean.com/cvsutils/" +SRC_URI="http://www.red-bean.com/cvsutils/releases/${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux" +IUSE="" + +RDEPEND="dev-lang/perl" +DEPEND="" + +src_install() { + emake DESTDIR="${D}" install || die + dodoc AUTHORS ChangeLog README THANKS NEWS +} diff --git a/dev-vcs/cvsutils/metadata.xml b/dev-vcs/cvsutils/metadata.xml new file mode 100644 index 000000000000..78866efc2780 --- /dev/null +++ b/dev-vcs/cvsutils/metadata.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>cvs-utils</herd> + <longdescription> + CVS Utilities are helpful scripts for working with CVS repositories + offline and online. They include the ability to check file status, + "fake" include files in the repo, diff new files easily, change CVS + server of a repository and more. + </longdescription> +</pkgmetadata> diff --git a/dev-vcs/darcs/Manifest b/dev-vcs/darcs/Manifest new file mode 100644 index 000000000000..873e747e10d0 --- /dev/null +++ b/dev-vcs/darcs/Manifest @@ -0,0 +1,4 @@ +DIST darcs-2.10.0.tar.gz 1502347 SHA256 52b3db3f7b64a4306585b96af7b5887f62ba54f6e9c3bdbed9b6a18d97f16b36 SHA512 216fb69aeed03c56cc7773eb92b8de3ec60be0526826a15a05230b7a66f9804e492be230c82c6475faa46e49ffed1531a9b03ea0d9c60e8de802cb9cdd421dcb WHIRLPOOL 3c62966ee5ab933471f8c42ff8be622ed8d6d0f8c392528906288f0da8a0d8dacb512c8645b82fba4ca4a03f628fc361630079b0bd6d6d09bce640cf03fd322c +DIST darcs-2.10.1.tar.gz 1509208 SHA256 f1ef65b43780e7593ca1afdae5ecf44ed91d62cc1be360693a52c5ff7b57ee94 SHA512 b8c3971da3d635a7d90e35226c2ffa6d6ca8e78ba18793c632b7509bc4d52c1bda2490d147cdaea5842fbe5d8826b0025de61e2fb4f58c441875c5858d910e47 WHIRLPOOL a44550b9e44125ee468b10da723742c992c215a42411c074e8c2547643694ce572db7f59b5ba4209cef5aac26bd1ddcef1c54f592e8b73fd0da941d0e9e77d93 +DIST darcs-2.8.4.tar.gz 1301464 SHA256 3fab4dbb2d5dd9f381d49f4730c12e1534b5c484b0dde9712614a7151f659f98 SHA512 c60531bacea43bdd5a18ae461dd390fe64682cac56fa4e6b5153a5da3c003b59d8fb24827bd42b4b30f0d2c61877d36b58eb98317644f9f8a200ab7c5961c48e WHIRLPOOL 128e8e58e219d427928eb8725d9566c1b6b3bb478b3cda69b30ded8798fa104eb8dec0fda8a32701f5d074babf9f11f1b3036388cd15a82118853a566c832430 +DIST darcs-2.8.5.tar.gz 1306525 SHA256 064310ed589c89500e224ad5254ab88de815c349f14f9aef9513720eb857e399 SHA512 810fd8d2df2f8703891e85dc512b0185257dc84a35590aecb2077e14a78096b4fac57dbd7f89218987d04df846992d51c5d5c4deb8cc9f441ce9195ab202223b WHIRLPOOL 78cb6d20d8bd0af5eea71e3e737c12ef7063eb71f1788c2eb173abd5813930862b2e8f078243f2f650e4a65a4405b2d1d1539aef05a193e85521f367ec3ddd80 diff --git a/dev-vcs/darcs/darcs-2.10.0-r1.ebuild b/dev-vcs/darcs/darcs-2.10.0-r1.ebuild new file mode 100644 index 000000000000..25b457429995 --- /dev/null +++ b/dev-vcs/darcs/darcs-2.10.0-r1.ebuild @@ -0,0 +1,107 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +# ebuild generated by hackport 0.4.5.9999 +#hackport: flags: +library,+executable,-hpc,-warn-as-error,+pkgconfig,-rts,-static,-optimize + +CABAL_FEATURES="bin lib profile haddock hoogle hscolour test-suite" +inherit haskell-cabal + +DESCRIPTION="a distributed, interactive, smart revision control system" +HOMEPAGE="http://darcs.net/" +SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0/${PV}" +KEYWORDS="~amd64 ~x86" +IUSE="+curl diff +http +terminfo +threaded" + +RESTRICT=test # some files are missing + +RDEPEND=">=dev-haskell/attoparsec-0.11:=[profile?] <dev-haskell/attoparsec-0.14:=[profile?] + >=dev-haskell/base16-bytestring-0.1:=[profile?] <dev-haskell/base16-bytestring-0.2:=[profile?] + >=dev-haskell/binary-0.5:=[profile?] <dev-haskell/binary-0.8:=[profile?] + >=dev-haskell/cryptohash-0.4:=[profile?] <dev-haskell/cryptohash-0.12:=[profile?] + >=dev-haskell/data-ordlist-0.4:=[profile?] <dev-haskell/data-ordlist-0.5:=[profile?] + >=dev-haskell/dataenc-0.11:=[profile?] <dev-haskell/dataenc-0.15:=[profile?] + >=dev-haskell/hashable-1.0:=[profile?] <dev-haskell/hashable-1.3:=[profile?] + >=dev-haskell/haskeline-0.6.3:=[profile?] <dev-haskell/haskeline-0.8:=[profile?] + >=dev-haskell/html-1.0:=[profile?] <dev-haskell/html-1.1:=[profile?] + >=dev-haskell/mmap-0.5:=[profile?] <dev-haskell/mmap-0.6:=[profile?] + >=dev-haskell/mtl-2.1:=[profile?] <dev-haskell/mtl-2.3:=[profile?] + >=dev-haskell/old-locale-1.0:=[profile?] <dev-haskell/old-locale-1.1:=[profile?] + >=dev-haskell/old-time-1.1:=[profile?] <dev-haskell/old-time-1.2:=[profile?] + >=dev-haskell/parsec-3.1:=[profile?] <dev-haskell/parsec-3.2:=[profile?] + >=dev-haskell/random-1.0:=[profile?] <dev-haskell/random-1.2:=[profile?] + >=dev-haskell/regex-applicative-0.2:=[profile?] <dev-haskell/regex-applicative-0.4:=[profile?] + >=dev-haskell/regex-compat-tdfa-0.95.1:=[profile?] <dev-haskell/regex-compat-tdfa-0.96:=[profile?] + >=dev-haskell/tar-0.4:=[profile?] <dev-haskell/tar-0.5:=[profile?] + >=dev-haskell/text-0.11.2.0:=[profile?] <dev-haskell/text-1.3:=[profile?] + >=dev-haskell/transformers-compat-0.4:=[profile?] <dev-haskell/transformers-compat-0.5:=[profile?] + >=dev-haskell/unix-compat-0.1.2:=[profile?] <dev-haskell/unix-compat-0.5:=[profile?] + >=dev-haskell/utf8-string-0.3.6:=[profile?] <dev-haskell/utf8-string-1.1:=[profile?] + >=dev-haskell/vector-0.7:=[profile?] <dev-haskell/vector-0.11:=[profile?] + >=dev-haskell/zip-archive-0.2.3:=[profile?] <dev-haskell/zip-archive-0.3:=[profile?] + >=dev-haskell/zlib-0.5.3.0:=[profile?] <dev-haskell/zlib-0.6.0.0:=[profile?] + >=dev-lang/ghc-7.4.1:= + virtual/libiconv + || ( ( >=dev-haskell/transformers-0.3:=[profile?] <dev-haskell/transformers-0.4.0.0:=[profile?] ) + ( >dev-haskell/transformers-0.4.0.0:=[profile?] <dev-haskell/transformers-0.5:=[profile?] ) ) + curl? ( net-misc/curl ) + diff? ( dev-haskell/lcs:=[profile?] ) + http? ( >=dev-haskell/http-4000.2.3:=[profile?] <dev-haskell/http-4000.3:=[profile?] + >=dev-haskell/network-2.6:=[profile?] + dev-haskell/network-uri:=[profile?] + ) + terminfo? ( >=dev-haskell/terminfo-0.3:=[profile?] ) +" +DEPEND="${RDEPEND} + >=dev-haskell/cabal-1.10 + dev-lang/ghc + test? ( >=dev-haskell/cmdargs-0.10 <dev-haskell/cmdargs-0.11 + >=dev-haskell/findbin-0.0 <dev-haskell/findbin-0.1 + >=dev-haskell/hunit-1.0 <dev-haskell/hunit-1.3 + >=dev-haskell/quickcheck-2.3 <dev-haskell/quickcheck-2.8 + >=dev-haskell/shelly-1.6 <dev-haskell/shelly-1.7 + >=dev-haskell/split-0.1.4.1 <dev-haskell/split-0.3 + >=dev-haskell/test-framework-0.4.0 <dev-haskell/test-framework-0.9 + >=dev-haskell/test-framework-hunit-0.2.2 <dev-haskell/test-framework-hunit-0.4 + >=dev-haskell/test-framework-quickcheck2-0.3 <dev-haskell/test-framework-quickcheck2-0.4 ) + curl? ( virtual/pkgconfig ) +" + +src_prepare() { + cabal_chdeps \ + 'terminfo == 0.3.*' 'terminfo >= 0.3' \ + 'network >= 2.3 && < 2.5' 'network >= 2.6, network-uri' \ + 'QuickCheck >= 2.3 && < 2.8' 'QuickCheck >= 2.3' \ + 'attoparsec >= 0.11 && < 0.13' 'attoparsec >= 0.11 && < 0.14' +} + +src_configure() { + haskell-cabal_src_configure \ + $(cabal_flag curl curl) \ + --flag=executable \ + $(cabal_flag diff hashed-storage-diff) \ + --flag=-hpc \ + $(cabal_flag http http) \ + --flag=library \ + --flag=-optimize \ + --flag=pkgconfig \ + --flag=-rts \ + --flag=-static \ + $(cabal_flag terminfo terminfo) \ + $(cabal_flag threaded threaded) \ + --flag=-warn-as-error +} + +src_install() { + haskell-cabal_src_install + + # fixup perms in such an an awkward way + mv "${ED}/usr/share/man/man1/darcs.1" "${S}/darcs.1" || die "darcs.1 not found" + doman "${S}/darcs.1" || die "failed to register darcs.1 as a manpage" +} diff --git a/dev-vcs/darcs/darcs-2.10.1.ebuild b/dev-vcs/darcs/darcs-2.10.1.ebuild new file mode 100644 index 000000000000..b23bab985e36 --- /dev/null +++ b/dev-vcs/darcs/darcs-2.10.1.ebuild @@ -0,0 +1,100 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +# ebuild generated by hackport 0.4.5.9999 +#hackport: flags: +library,+executable,-hpc,-warn-as-error,+pkgconfig,-rts,-static,-optimize,hashed-storage-diff:diff + +CABAL_FEATURES="bin lib profile haddock hoogle hscolour test-suite" +inherit haskell-cabal + +DESCRIPTION="a distributed, interactive, smart revision control system" +HOMEPAGE="http://darcs.net/" +SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0/${PV}" +KEYWORDS="~amd64 ~x86" +IUSE="+curl diff +http +network-uri +terminfo +threaded" + +RESTRICT=test # missing file 'tests/bin/renameHelper.hs' + +RDEPEND=">=dev-haskell/attoparsec-0.11:=[profile?] <dev-haskell/attoparsec-0.14:=[profile?] + >=dev-haskell/base16-bytestring-0.1:=[profile?] <dev-haskell/base16-bytestring-0.2:=[profile?] + >=dev-haskell/binary-0.5:=[profile?] <dev-haskell/binary-0.8:=[profile?] + >=dev-haskell/cryptohash-0.4:=[profile?] <dev-haskell/cryptohash-0.12:=[profile?] + >=dev-haskell/data-ordlist-0.4:=[profile?] <dev-haskell/data-ordlist-0.5:=[profile?] + >=dev-haskell/dataenc-0.11:=[profile?] <dev-haskell/dataenc-0.15:=[profile?] + >=dev-haskell/hashable-1.0:=[profile?] <dev-haskell/hashable-1.3:=[profile?] + >=dev-haskell/haskeline-0.6.3:=[profile?] <dev-haskell/haskeline-0.8:=[profile?] + >=dev-haskell/html-1.0:=[profile?] <dev-haskell/html-1.1:=[profile?] + >=dev-haskell/mmap-0.5:=[profile?] <dev-haskell/mmap-0.6:=[profile?] + >=dev-haskell/mtl-2.1:=[profile?] <dev-haskell/mtl-2.3:=[profile?] + >=dev-haskell/old-locale-1.0:=[profile?] <dev-haskell/old-locale-1.1:=[profile?] + >=dev-haskell/old-time-1.1:=[profile?] <dev-haskell/old-time-1.2:=[profile?] + >=dev-haskell/parsec-3.1:=[profile?] <dev-haskell/parsec-3.2:=[profile?] + >=dev-haskell/random-1.0:=[profile?] <dev-haskell/random-1.2:=[profile?] + >=dev-haskell/regex-applicative-0.2:=[profile?] <dev-haskell/regex-applicative-0.4:=[profile?] + >=dev-haskell/regex-compat-tdfa-0.95.1:=[profile?] <dev-haskell/regex-compat-tdfa-0.96:=[profile?] + >=dev-haskell/tar-0.4:=[profile?] <dev-haskell/tar-0.5:=[profile?] + >=dev-haskell/text-0.11.2.0:=[profile?] <dev-haskell/text-1.3:=[profile?] + >=dev-haskell/transformers-compat-0.4:=[profile?] <dev-haskell/transformers-compat-0.5:=[profile?] + >=dev-haskell/unix-compat-0.1.2:=[profile?] <dev-haskell/unix-compat-0.5:=[profile?] + >=dev-haskell/utf8-string-0.3.6:=[profile?] <dev-haskell/utf8-string-1.1:=[profile?] + >=dev-haskell/vector-0.7:=[profile?] <dev-haskell/vector-0.11:=[profile?] + >=dev-haskell/zip-archive-0.2.3:=[profile?] <dev-haskell/zip-archive-0.3:=[profile?] + >=dev-haskell/zlib-0.5.3.0:=[profile?] <dev-haskell/zlib-0.7.0.0:=[profile?] + >=dev-lang/ghc-7.4.1:= + virtual/libiconv + || ( ( >=dev-haskell/transformers-0.3:=[profile?] <dev-haskell/transformers-0.4.0.0:=[profile?] ) + ( >dev-haskell/transformers-0.4.0.0:=[profile?] <dev-haskell/transformers-0.5:=[profile?] ) ) + curl? ( net-misc/curl ) + diff? ( dev-haskell/lcs:=[profile?] ) + http? ( >=dev-haskell/http-4000.2.3:=[profile?] <dev-haskell/http-4000.3:=[profile?] + network-uri? ( >=dev-haskell/network-2.6:=[profile?] <dev-haskell/network-2.7:=[profile?] + >=dev-haskell/network-uri-2.6:=[profile?] <dev-haskell/network-uri-2.7:=[profile?] ) + !network-uri? ( >=dev-haskell/network-2.3:=[profile?] <dev-haskell/network-2.6:=[profile?] ) ) + terminfo? ( >=dev-haskell/terminfo-0.3:=[profile?] <dev-haskell/terminfo-0.5:=[profile?] ) +" +DEPEND="${RDEPEND} + >=dev-haskell/cabal-1.10 + dev-lang/ghc + test? ( >=dev-haskell/cmdargs-0.10 <dev-haskell/cmdargs-0.11 + >=dev-haskell/findbin-0.0 <dev-haskell/findbin-0.1 + >=dev-haskell/hunit-1.0 <dev-haskell/hunit-1.3 + >=dev-haskell/quickcheck-2.3 <dev-haskell/quickcheck-2.9 + >=dev-haskell/shelly-1.6.2 <dev-haskell/shelly-1.7 + >=dev-haskell/split-0.1.4.1 <dev-haskell/split-0.3 + >=dev-haskell/test-framework-0.4.0 <dev-haskell/test-framework-0.9 + >=dev-haskell/test-framework-hunit-0.2.2 <dev-haskell/test-framework-hunit-0.4 + >=dev-haskell/test-framework-quickcheck2-0.3 <dev-haskell/test-framework-quickcheck2-0.4 ) + curl? ( virtual/pkgconfig ) +" + +src_configure() { + haskell-cabal_src_configure \ + $(cabal_flag curl curl) \ + --flag=executable \ + $(cabal_flag diff hashed-storage-diff) \ + --flag=-hpc \ + $(cabal_flag http http) \ + --flag=library \ + $(cabal_flag network-uri network-uri) \ + --flag=-optimize \ + --flag=pkgconfig \ + --flag=-rts \ + --flag=-static \ + $(cabal_flag terminfo terminfo) \ + $(cabal_flag threaded threaded) \ + --flag=-warn-as-error +} + +src_install() { + haskell-cabal_src_install + + # fixup perms in such an an awkward way + mv "${ED}/usr/share/man/man1/darcs.1" "${S}/darcs.1" || die "darcs.1 not found" + doman "${S}/darcs.1" || die "failed to register darcs.1 as a manpage" +} diff --git a/dev-vcs/darcs/darcs-2.8.4-r3.ebuild b/dev-vcs/darcs/darcs-2.8.4-r3.ebuild new file mode 100644 index 000000000000..b21ee9339264 --- /dev/null +++ b/dev-vcs/darcs/darcs-2.8.4-r3.ebuild @@ -0,0 +1,128 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +# ebuild generated by hackport 0.3.9999 + +CABAL_FEATURES="bin lib profile haddock hoogle hscolour" +inherit eutils haskell-cabal bash-completion-r1 + +DESCRIPTION="a distributed, interactive, smart revision control system" +HOMEPAGE="http://darcs.net/" +SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0/${PV}" +KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris" +IUSE="doc test" + +RDEPEND="=dev-haskell/extensible-exceptions-0.1*:=[profile?] + >=dev-haskell/hashed-storage-0.5.6:=[profile?] + <dev-haskell/hashed-storage-0.6:=[profile?] + >=dev-haskell/haskeline-0.6.3:=[profile?] + <dev-haskell/haskeline-0.8:=[profile?] + =dev-haskell/html-1.0*:=[profile?] + =dev-haskell/mmap-0.5*:=[profile?] + >=dev-haskell/mtl-1.0:=[profile?] + <dev-haskell/mtl-2.2:=[profile?] + >=dev-haskell/parsec-2.0:=[profile?] + <dev-haskell/parsec-3.2:=[profile?] + =dev-haskell/random-1.0*:=[profile?] + >=dev-haskell/regex-compat-0.95.1:=[profile?] + >=dev-haskell/tar-0.3:=[profile?] + <dev-haskell/tar-0.5:=[profile?] + >=dev-haskell/terminfo-0.3:=[profile?] <dev-haskell/terminfo-0.5:=[profile?] + >=dev-haskell/text-0.11.0.6:=[profile?] + >=dev-haskell/vector-0.7:=[profile?] + >=dev-haskell/zlib-0.5.1.0:=[profile?] + <dev-haskell/zlib-0.6.0.0:=[profile?] + >=dev-lang/ghc-6.10.4:= + net-misc/curl" +DEPEND="${RDEPEND} + >=dev-haskell/cabal-1.8 + doc? ( virtual/latex-base + || ( dev-tex/latex2html[png] + dev-tex/latex2html[gif] + ) + ) + test? ( >=dev-haskell/cmdlib-0.2.1[profile?] + <dev-haskell/cmdlib-0.4[profile?] + =dev-haskell/findbin-0.0*[profile?] + >=dev-haskell/quickcheck-2.3 + >=dev-haskell/shellish-0.1.3[profile?] + <dev-haskell/shellish-0.2[profile?] + >=dev-haskell/test-framework-0.4.0[profile?] + >=dev-haskell/test-framework-hunit-0.2.2[profile?] + >=dev-haskell/test-framework-quickcheck2-0.2.8[profile?] + ) + " + +src_prepare() { + rm "${S}/tests/add_permissions.sh" || die "Could not rm add_permissions.sh" + rm "${S}/tests/send-output-v1.sh" || die "Could not rm send-output-v1.sh" + rm "${S}/tests/send-output-v2.sh" || die "Could not rm send-output-v2.sh" + rm "${S}/tests/utf8.sh" || die "Could not rm utf8.sh" + + epatch "${FILESDIR}"/${P}-ghc-7.8-part-1.patch + + cabal_chdeps \ + 'text >= 0.11.0.6 && < 0.12.0.0' 'text >= 0.11.0.6' \ + 'terminfo == 0.3.*' 'terminfo >= 0.3 && < 0.5' \ + 'array >= 0.1 && < 0.5' 'array >= 0.1 && <0.6' \ + 'process >= 1.0.0.0 && < 1.2.0.0' 'process >= 1.0.0.0 && < 1.3' \ + 'unix >= 1.0 && < 2.7' 'unix >=1.0 && <2.8' \ + 'base >= 4.5 && < 4.7' 'base >= 4.5 && < 4.8' \ + 'ghc >= 6.10 && < 7.8' 'ghc >= 6.10 && < 7.9' +} + +src_configure() { + # checking whether ghc supports -threaded flag + # Beware: http://www.haskell.org/ghc/docs/latest/html/users_guide/options-phases.html#options-linker + # contains: 'The ability to make a foreign call that does not block all other Haskell threads.' + # It might have interactivity impact. + + threaded_flag="" + if $(ghc-getghc) --info | grep "Support SMP" | grep -q "YES"; then + threaded_flag="--flags=threaded" + einfo "$P will be built with threads support" + else + threaded_flag="--flags=-threaded" + einfo "$P will be built without threads support" + fi + + # Use curl for net stuff to avoid strict version dep on HTTP and network + cabal_src_configure \ + --flags=curl \ + --flags=-http \ + --flags=color \ + --flags=terminfo \ + --flags=mmap \ + --flags=force-char8-encoding \ + $threaded_flag \ + $(cabal_flag test) +} + +src_test() { + # run cabal test from haskell-cabal + haskell-cabal_src_test || die "cabal test failed" +} + +src_install() { + cabal_src_install + newbashcomp "${S}/contrib/darcs_completion" "${PN}" + + # fixup perms in such an an awkward way + mv "${ED}/usr/share/man/man1/darcs.1" "${S}/darcs.1" || die "darcs.1 not found" + doman "${S}/darcs.1" || die "failed to register darcs.1 as a manpage" +} + +pkg_postinst() { + ghc-package_pkg_postinst + + ewarn "NOTE: in order for the darcs send command to work properly," + ewarn "you must properly configure your mail transport agent to relay" + ewarn "outgoing mail. For example, if you are using ssmtp, please edit" + ewarn "${EPREFIX}/etc/ssmtp/ssmtp.conf with appropriate values for your site." +} diff --git a/dev-vcs/darcs/darcs-2.8.4-r6.ebuild b/dev-vcs/darcs/darcs-2.8.4-r6.ebuild new file mode 100644 index 000000000000..7ea5b9fe71ee --- /dev/null +++ b/dev-vcs/darcs/darcs-2.8.4-r6.ebuild @@ -0,0 +1,134 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +# ebuild generated by hackport 0.3.9999 + +CABAL_FEATURES="bin lib profile haddock hoogle hscolour" +inherit eutils haskell-cabal bash-completion-r1 + +DESCRIPTION="a distributed, interactive, smart revision control system" +HOMEPAGE="http://darcs.net/" +SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0/${PV}" +KEYWORDS="alpha amd64 ia64 ppc ppc64 sparc x86 ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris" +IUSE="doc test" + +RDEPEND="=dev-haskell/extensible-exceptions-0.1*:=[profile?] + >=dev-haskell/hashed-storage-0.5.6:=[profile?] + <dev-haskell/hashed-storage-0.6:=[profile?] + >=dev-haskell/haskeline-0.6.3:=[profile?] + <dev-haskell/haskeline-0.8:=[profile?] + =dev-haskell/html-1.0*:=[profile?] + =dev-haskell/mmap-0.5*:=[profile?] + >=dev-haskell/mtl-1.0:=[profile?] + <dev-haskell/mtl-2.3:=[profile?] + >=dev-haskell/parsec-2.0:=[profile?] + <dev-haskell/parsec-3.2:=[profile?] + =dev-haskell/random-1.0*:=[profile?] + >=dev-haskell/regex-compat-0.95.1:=[profile?] + >=dev-haskell/tar-0.3:=[profile?] + <dev-haskell/tar-0.5:=[profile?] + >=dev-haskell/terminfo-0.3:=[profile?] <dev-haskell/terminfo-0.5:=[profile?] + >=dev-haskell/text-0.11.0.6:=[profile?] + >=dev-haskell/utf8-string-0.3.6:=[profile?] <dev-haskell/utf8-string-0.4:=[profile?] + >=dev-haskell/vector-0.7:=[profile?] + >=dev-haskell/zlib-0.5.1.0:=[profile?] + <dev-haskell/zlib-0.6.0.0:=[profile?] + >=dev-lang/ghc-6.10.4:= + net-misc/curl" +DEPEND="${RDEPEND} + >=dev-haskell/cabal-1.8 + doc? ( virtual/latex-base + || ( dev-tex/latex2html[png] + dev-tex/latex2html[gif] + ) + ) + test? ( >=dev-haskell/cmdlib-0.2.1[profile?] + <dev-haskell/cmdlib-0.4[profile?] + =dev-haskell/findbin-0.0*[profile?] + >=dev-haskell/quickcheck-2.3 + >=dev-haskell/shellish-0.1.3[profile?] + <dev-haskell/shellish-0.2[profile?] + >=dev-haskell/test-framework-0.4.0[profile?] + >=dev-haskell/test-framework-hunit-0.2.2[profile?] + >=dev-haskell/test-framework-quickcheck2-0.2.8[profile?] + ) + " + +src_prepare() { + rm "${S}/tests/add_permissions.sh" || die "Could not rm add_permissions.sh" + rm "${S}/tests/send-output-v1.sh" || die "Could not rm send-output-v1.sh" + rm "${S}/tests/send-output-v2.sh" || die "Could not rm send-output-v2.sh" + rm "${S}/tests/utf8.sh" || die "Could not rm utf8.sh" + + epatch "${FILESDIR}"/${P}-ghc-7.8-part-1.patch + epatch "${FILESDIR}"/${P}-ghc-7.8-part-2.patch + epatch "${FILESDIR}"/${P}-fix-nonatomic-global.patch + epatch "${FILESDIR}"/${P}-issue2364.patch + epatch "${FILESDIR}"/${P}-issue2364-part-2.patch + + cabal_chdeps \ + 'text >= 0.11.0.6 && < 0.12.0.0' 'text >= 0.11.0.6' \ + 'terminfo == 0.3.*' 'terminfo >= 0.3 && < 0.5' \ + 'array >= 0.1 && < 0.5' 'array >= 0.1 && <0.6' \ + 'process >= 1.0.0.0 && < 1.2.0.0' 'process >= 1.0.0.0 && < 1.3' \ + 'unix >= 1.0 && < 2.7' 'unix >=1.0 && <2.8' \ + 'base >= 4.5 && < 4.7' 'base >= 4.5 && < 4.8' \ + 'ghc >= 6.10 && < 7.8' 'ghc >= 6.10' \ + 'mtl >= 1.0 && < 2.2' 'mtl >= 1.0 && < 2.3' +} + +src_configure() { + # checking whether ghc supports -threaded flag + # Beware: http://www.haskell.org/ghc/docs/latest/html/users_guide/options-phases.html#options-linker + # contains: 'The ability to make a foreign call that does not block all other Haskell threads.' + # It might have interactivity impact. + + threaded_flag="" + if $(ghc-getghc) --info | grep "Support SMP" | grep -q "YES"; then + threaded_flag="--flags=threaded" + einfo "$P will be built with threads support" + else + threaded_flag="--flags=-threaded" + einfo "$P will be built without threads support" + fi + + # Use curl for net stuff to avoid strict version dep on HTTP and network + cabal_src_configure \ + --flags=curl \ + --flags=-http \ + --flags=color \ + --flags=terminfo \ + --flags=mmap \ + --flags=force-char8-encoding \ + $threaded_flag \ + $(cabal_flag test) +} + +src_test() { + # run cabal test from haskell-cabal + haskell-cabal_src_test || die "cabal test failed" +} + +src_install() { + cabal_src_install + newbashcomp "${S}/contrib/darcs_completion" "${PN}" + + # fixup perms in such an an awkward way + mv "${ED}/usr/share/man/man1/darcs.1" "${S}/darcs.1" || die "darcs.1 not found" + doman "${S}/darcs.1" || die "failed to register darcs.1 as a manpage" +} + +pkg_postinst() { + ghc-package_pkg_postinst + + ewarn "NOTE: in order for the darcs send command to work properly," + ewarn "you must properly configure your mail transport agent to relay" + ewarn "outgoing mail. For example, if you are using ssmtp, please edit" + ewarn "${EPREFIX}/etc/ssmtp/ssmtp.conf with appropriate values for your site." +} diff --git a/dev-vcs/darcs/darcs-2.8.4.ebuild b/dev-vcs/darcs/darcs-2.8.4.ebuild new file mode 100644 index 000000000000..7c2fae5540d2 --- /dev/null +++ b/dev-vcs/darcs/darcs-2.8.4.ebuild @@ -0,0 +1,117 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +# ebuild generated by hackport 0.3.9999 + +CABAL_FEATURES="bin lib profile haddock hoogle hscolour" +inherit haskell-cabal bash-completion-r1 + +DESCRIPTION="a distributed, interactive, smart revision control system" +HOMEPAGE="http://darcs.net/" +SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0/${PV}" +KEYWORDS="alpha amd64 ia64 ppc ppc64 sparc x86 ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris" +IUSE="doc test" + +RDEPEND="=dev-haskell/extensible-exceptions-0.1*:=[profile?] + >=dev-haskell/hashed-storage-0.5.6:=[profile?] + <dev-haskell/hashed-storage-0.6:=[profile?] + >=dev-haskell/haskeline-0.6.3:=[profile?] + <dev-haskell/haskeline-0.8:=[profile?] + =dev-haskell/html-1.0*:=[profile?] + =dev-haskell/mmap-0.5*:=[profile?] + >=dev-haskell/mtl-1.0:=[profile?] + <dev-haskell/mtl-2.2:=[profile?] + >=dev-haskell/parsec-2.0:=[profile?] + <dev-haskell/parsec-3.2:=[profile?] + =dev-haskell/random-1.0*:=[profile?] + >=dev-haskell/regex-compat-0.95.1:=[profile?] + >=dev-haskell/tar-0.3:=[profile?] + <dev-haskell/tar-0.5:=[profile?] + =dev-haskell/terminfo-0.3*:=[profile?] + >=dev-haskell/text-0.11.0.6:=[profile?] + <dev-haskell/text-0.12.0.0:=[profile?] + >=dev-haskell/vector-0.7:=[profile?] + >=dev-haskell/zlib-0.5.1.0:=[profile?] + <dev-haskell/zlib-0.6.0.0:=[profile?] + >=dev-lang/ghc-6.10.4:= + net-misc/curl" +DEPEND="${RDEPEND} + >=dev-haskell/cabal-1.8 + doc? ( virtual/latex-base + || ( dev-tex/latex2html[png] + dev-tex/latex2html[gif] + ) + ) + test? ( >=dev-haskell/cmdlib-0.2.1[profile?] + <dev-haskell/cmdlib-0.4[profile?] + =dev-haskell/findbin-0.0*[profile?] + >=dev-haskell/quickcheck-2.3 + >=dev-haskell/shellish-0.1.3[profile?] + <dev-haskell/shellish-0.2[profile?] + >=dev-haskell/test-framework-0.4.0[profile?] + >=dev-haskell/test-framework-hunit-0.2.2[profile?] + >=dev-haskell/test-framework-quickcheck2-0.2.8[profile?] + ) + " + +src_prepare() { + rm "${S}/tests/add_permissions.sh" || die "Could not rm add_permissions.sh" + rm "${S}/tests/send-output-v1.sh" || die "Could not rm send-output-v1.sh" + rm "${S}/tests/send-output-v2.sh" || die "Could not rm send-output-v2.sh" + rm "${S}/tests/utf8.sh" || die "Could not rm utf8.sh" +} + +src_configure() { + # checking whether ghc supports -threaded flag + # Beware: http://www.haskell.org/ghc/docs/latest/html/users_guide/options-phases.html#options-linker + # contains: 'The ability to make a foreign call that does not block all other Haskell threads.' + # It might have interactivity impact. + + threaded_flag="" + if $(ghc-getghc) --info | grep "Support SMP" | grep -q "YES"; then + threaded_flag="--flags=threaded" + einfo "$P will be built with threads support" + else + threaded_flag="--flags=-threaded" + einfo "$P will be built without threads support" + fi + + # Use curl for net stuff to avoid strict version dep on HTTP and network + cabal_src_configure \ + --flags=curl \ + --flags=-http \ + --flags=color \ + --flags=terminfo \ + --flags=mmap \ + $threaded_flag \ + $(cabal_flag test) +} + +src_test() { + # run cabal test from haskell-cabal + haskell-cabal_src_test || die "cabal test failed" +} + +src_install() { + cabal_src_install + newbashcomp "${S}/contrib/darcs_completion" "${PN}" + + # fixup perms in such an an awkward way + mv "${ED}/usr/share/man/man1/darcs.1" "${S}/darcs.1" || die "darcs.1 not found" + doman "${S}/darcs.1" || die "failed to register darcs.1 as a manpage" +} + +pkg_postinst() { + ghc-package_pkg_postinst + + ewarn "NOTE: in order for the darcs send command to work properly," + ewarn "you must properly configure your mail transport agent to relay" + ewarn "outgoing mail. For example, if you are using ssmtp, please edit" + ewarn "${EPREFIX}/etc/ssmtp/ssmtp.conf with appropriate values for your site." +} diff --git a/dev-vcs/darcs/darcs-2.8.5-r3.ebuild b/dev-vcs/darcs/darcs-2.8.5-r3.ebuild new file mode 100644 index 000000000000..06cb957839ca --- /dev/null +++ b/dev-vcs/darcs/darcs-2.8.5-r3.ebuild @@ -0,0 +1,94 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +# ebuild generated by hackport 0.4.4.9999 +#hackport: flags: +library,+executable,-hpc,-warn-as-error + +CABAL_FEATURES="bin lib profile haddock hoogle hscolour" +inherit base haskell-cabal + +DESCRIPTION="a distributed, interactive, smart revision control system" +HOMEPAGE="http://darcs.net/" +SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0/${PV}" +KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris" +IUSE="+color +curl +http +mmap +network-uri +optimize static +terminfo test +threaded" + +RDEPEND=">=dev-haskell/extensible-exceptions-0.1:=[profile?] <dev-haskell/extensible-exceptions-0.2:=[profile?] + >=dev-haskell/hashed-storage-0.5.6:=[profile?] <dev-haskell/hashed-storage-0.6:=[profile?] + >=dev-haskell/haskeline-0.6.3:=[profile?] <dev-haskell/haskeline-0.8:=[profile?] + >=dev-haskell/html-1.0:=[profile?] <dev-haskell/html-1.1:=[profile?] + >=dev-haskell/mtl-1.0:=[profile?] <dev-haskell/mtl-2.3:=[profile?] + >=dev-haskell/parsec-2.0:=[profile?] <dev-haskell/parsec-3.2:=[profile?] + >=dev-haskell/random-1.0:=[profile?] <dev-haskell/random-1.2:=[profile?] + >=dev-haskell/regex-compat-0.95.1:=[profile?] + >=dev-haskell/tar-0.3:=[profile?] <dev-haskell/tar-0.5:=[profile?] + >=dev-haskell/text-0.11.0.6:=[profile?] <dev-haskell/text-1.3:=[profile?] + >=dev-haskell/utf8-string-0.3.6:=[profile?] <dev-haskell/utf8-string-0.4:=[profile?] + >=dev-haskell/vector-0.7:=[profile?] + >=dev-haskell/zlib-0.5.1.0:=[profile?] <dev-haskell/zlib-0.6.0.0:=[profile?] + >=dev-lang/ghc-7.4.1:= + virtual/libiconv + curl? ( net-misc/curl ) + http? ( >=dev-haskell/http-4000.0.8:=[profile?] <dev-haskell/http-4000.3:=[profile?] + network-uri? ( >=dev-haskell/network-2.6:=[profile?] + >=dev-haskell/network-uri-2.6:=[profile?] ) + !network-uri? ( >=dev-haskell/network-2.2:=[profile?] <dev-haskell/network-2.6:=[profile?] ) ) + mmap? ( >=dev-haskell/mmap-0.5:=[profile?] <dev-haskell/mmap-0.6:=[profile?] ) + terminfo? ( >=dev-haskell/terminfo-0.3:=[profile?] <dev-haskell/terminfo-0.5:=[profile?] ) +" +DEPEND="${RDEPEND} + >=dev-haskell/cabal-1.8 + dev-lang/ghc + test? ( >=dev-haskell/cmdlib-0.2.1:=[profile?] <dev-haskell/cmdlib-0.4:=[profile?] + >=dev-haskell/findbin-0.0:=[profile?] <dev-haskell/findbin-0.1:=[profile?] + >=dev-haskell/hunit-1.0:=[profile?] + >=dev-haskell/quickcheck-2.3:2=[profile?] + >=dev-haskell/shellish-0.1.3:=[profile?] <dev-haskell/shellish-0.2:=[profile?] + >=dev-haskell/test-framework-0.4.0:=[profile?] + >=dev-haskell/test-framework-hunit-0.2.2:=[profile?] + >=dev-haskell/test-framework-quickcheck2-0.2.8:=[profile?] ) +" + +PATCHES=("${FILESDIR}/${P}-ghc-7.10.patch") + +src_prepare() { + base_src_prepare + cabal_chdeps \ + 'terminfo == 0.3.*' 'terminfo >= 0.3 && < 0.5' \ + 'text >= 0.11.0.6 && < 1.2' 'text >= 0.11.0.6 && < 1.3' \ + 'random == 1.0.*' 'random >= 1.0 && < 1.2' \ + 'base >= 4.5 && < 4.8' 'base >= 4.5 && < 4.9' \ + 'ghc >= 6.10 && < 7.10' 'ghc >= 6.10 && < 7.12' +} + +src_configure() { + haskell-cabal_src_configure \ + $(cabal_flag color color) \ + $(cabal_flag curl curl) \ + --flag=executable \ + --flag=-hpc \ + $(cabal_flag http http) \ + --flag=library \ + $(cabal_flag mmap mmap) \ + $(cabal_flag network-uri network-uri) \ + $(cabal_flag optimize optimize) \ + $(cabal_flag static static) \ + $(cabal_flag terminfo terminfo) \ + $(cabal_flag test test) \ + $(cabal_flag threaded threaded) \ + --flag=-warn-as-error +} + +src_install() { + haskell-cabal_src_install + + # fixup perms in such an an awkward way + mv "${ED}/usr/share/man/man1/darcs.1" "${S}/darcs.1" || die "darcs.1 not found" + doman "${S}/darcs.1" || die "failed to register darcs.1 as a manpage" +} diff --git a/dev-vcs/darcs/darcs-2.8.5-r4.ebuild b/dev-vcs/darcs/darcs-2.8.5-r4.ebuild new file mode 100644 index 000000000000..ab45bdd2461a --- /dev/null +++ b/dev-vcs/darcs/darcs-2.8.5-r4.ebuild @@ -0,0 +1,96 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +# ebuild generated by hackport 0.4.4.9999 +#hackport: flags: +library,+executable,-hpc,-warn-as-error + +CABAL_FEATURES="bin lib profile haddock hoogle hscolour" +inherit base haskell-cabal + +DESCRIPTION="a distributed, interactive, smart revision control system" +HOMEPAGE="http://darcs.net/" +SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0/${PV}" +KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris" +IUSE="+color +curl +http +mmap +network-uri +optimize static +terminfo test +threaded" + +RDEPEND=">=dev-haskell/extensible-exceptions-0.1:=[profile?] <dev-haskell/extensible-exceptions-0.2:=[profile?] + >=dev-haskell/hashed-storage-0.5.6:=[profile?] <dev-haskell/hashed-storage-0.6:=[profile?] + >=dev-haskell/haskeline-0.6.3:=[profile?] <dev-haskell/haskeline-0.8:=[profile?] + >=dev-haskell/html-1.0:=[profile?] <dev-haskell/html-1.1:=[profile?] + >=dev-haskell/mtl-1.0:=[profile?] <dev-haskell/mtl-2.3:=[profile?] + >=dev-haskell/parsec-2.0:=[profile?] <dev-haskell/parsec-3.2:=[profile?] + >=dev-haskell/random-1.0:=[profile?] <dev-haskell/random-1.2:=[profile?] + >=dev-haskell/regex-compat-0.95.1:=[profile?] + >=dev-haskell/tar-0.3:=[profile?] <dev-haskell/tar-0.5:=[profile?] + >=dev-haskell/text-0.11.0.6:=[profile?] <dev-haskell/text-1.3:=[profile?] + >=dev-haskell/utf8-string-0.3.6:=[profile?] <dev-haskell/utf8-string-1.1:=[profile?] + >=dev-haskell/vector-0.7:=[profile?] + >=dev-haskell/zlib-0.5.1.0:=[profile?] <dev-haskell/zlib-0.6.0.0:=[profile?] + >=dev-lang/ghc-7.4.1:= + virtual/libiconv + curl? ( net-misc/curl ) + http? ( >=dev-haskell/http-4000.0.8:=[profile?] <dev-haskell/http-4000.3:=[profile?] + network-uri? ( >=dev-haskell/network-2.6:=[profile?] + >=dev-haskell/network-uri-2.6:=[profile?] ) + !network-uri? ( >=dev-haskell/network-2.2:=[profile?] <dev-haskell/network-2.6:=[profile?] ) ) + mmap? ( >=dev-haskell/mmap-0.5:=[profile?] <dev-haskell/mmap-0.6:=[profile?] ) + terminfo? ( >=dev-haskell/terminfo-0.3:=[profile?] <dev-haskell/terminfo-0.5:=[profile?] ) +" +DEPEND="${RDEPEND} + >=dev-haskell/cabal-1.8 + dev-lang/ghc + test? ( >=dev-haskell/cmdlib-0.2.1:=[profile?] <dev-haskell/cmdlib-0.4:=[profile?] + >=dev-haskell/findbin-0.0:=[profile?] <dev-haskell/findbin-0.1:=[profile?] + >=dev-haskell/hunit-1.0:=[profile?] + >=dev-haskell/quickcheck-2.3:2=[profile?] + >=dev-haskell/shellish-0.1.3:=[profile?] <dev-haskell/shellish-0.2:=[profile?] + >=dev-haskell/test-framework-0.4.0:=[profile?] + >=dev-haskell/test-framework-hunit-0.2.2:=[profile?] + >=dev-haskell/test-framework-quickcheck2-0.2.8:=[profile?] ) +" + +PATCHES=("${FILESDIR}/${P}-ghc-7.10.patch") + +src_prepare() { + base_src_prepare + cabal_chdeps \ + 'terminfo == 0.3.*' 'terminfo >= 0.3 && < 0.5' \ + 'text >= 0.11.0.6 && < 1.2' 'text >= 0.11.0.6 && < 1.3' \ + 'random == 1.0.*' 'random >= 1.0 && < 1.2' \ + 'base >= 4.5 && < 4.8' 'base >= 4.5 && < 4.9' \ + 'ghc >= 6.10 && < 7.10' 'ghc >= 6.10 && < 7.12' \ + 'utf8-string >= 0.3.6 && < 0.4' 'utf8-string >= 0.3.6 && < 1.1' + +} + +src_configure() { + haskell-cabal_src_configure \ + $(cabal_flag color color) \ + $(cabal_flag curl curl) \ + --flag=executable \ + --flag=-hpc \ + $(cabal_flag http http) \ + --flag=library \ + $(cabal_flag mmap mmap) \ + $(cabal_flag network-uri network-uri) \ + $(cabal_flag optimize optimize) \ + $(cabal_flag static static) \ + $(cabal_flag terminfo terminfo) \ + $(cabal_flag test test) \ + $(cabal_flag threaded threaded) \ + --flag=-warn-as-error +} + +src_install() { + haskell-cabal_src_install + + # fixup perms in such an an awkward way + mv "${ED}/usr/share/man/man1/darcs.1" "${S}/darcs.1" || die "darcs.1 not found" + doman "${S}/darcs.1" || die "failed to register darcs.1 as a manpage" +} diff --git a/dev-vcs/darcs/files/darcs-2.8.4-fix-nonatomic-global.patch b/dev-vcs/darcs/files/darcs-2.8.4-fix-nonatomic-global.patch new file mode 100644 index 000000000000..c3fce6fbc9e8 --- /dev/null +++ b/dev-vcs/darcs/files/darcs-2.8.4-fix-nonatomic-global.patch @@ -0,0 +1,20 @@ +There is a bug in speculateFileOrUrl. +It puts downloaded file nonatomically. + +There is a window when copyFileOrUrl can (and does) +copy partially downloaded file. + +Darcs-bug: http://bugs.darcs.net/issue2364 +diff --git a/src/Darcs/External.hs b/src/Darcs/External.hs +index 2e0e791..d5a0b9f 100644 +--- a/src/Darcs/External.hs ++++ b/src/Darcs/External.hs +@@ -184,7 +184,7 @@ copyFileOrUrl rd fou out _ | isSshUrl fou = copySSH rd (splitSshUrl fou) + copyFileOrUrl _ fou _ _ = fail $ "unknown transport protocol: " ++ fou + + speculateFileOrUrl :: String -> FilePath -> IO () +-speculateFileOrUrl fou out | isHttpUrl fou = speculateRemote fou out ++speculateFileOrUrl fou out | isHttpUrl fou = speculateRemote fou out >> waitUrl fou + | otherwise = return () + + copyLocal :: String -> FilePath -> IO () diff --git a/dev-vcs/darcs/files/darcs-2.8.4-ghc-7.8-part-1.patch b/dev-vcs/darcs/files/darcs-2.8.4-ghc-7.8-part-1.patch new file mode 100644 index 000000000000..3680c29b0440 --- /dev/null +++ b/dev-vcs/darcs/files/darcs-2.8.4-ghc-7.8-part-1.patch @@ -0,0 +1,128 @@ +diff --git a/src/Crypt/SHA256.hs b/src/Crypt/SHA256.hs +index 69a8a4c..606f2ad 100644 +--- a/src/Crypt/SHA256.hs ++++ b/src/Crypt/SHA256.hs +@@ -20,9 +20,10 @@ import Numeric (showHex) + import Foreign.C.String ( withCString ) + import Data.ByteString.Unsafe (unsafeUseAsCStringLen) + import qualified Data.ByteString as B ++import qualified System.IO.Unsafe as U + + sha256sum :: B.ByteString -> String +-sha256sum p = unsafePerformIO $ ++sha256sum p = U.unsafePerformIO $ + withCString (take 64 $ repeat 'x') $ \digestCString -> + unsafeUseAsCStringLen p $ \(ptr,n) -> + do let digest = castPtr digestCString :: Ptr Word8 +diff --git a/src/Darcs/Commands/Get.hs b/src/Darcs/Commands/Get.hs +index e450d28..6b51915 100644 +--- a/src/Darcs/Commands/Get.hs ++++ b/src/Darcs/Commands/Get.hs +@@ -157,7 +157,8 @@ copyRepoAndGoToChosenVersion opts repodir rfsource = do + copyRepo + withRepository opts ((RepoJob $ \repository -> goToChosenVersion repository opts) :: RepoJob ()) + putInfo opts $ text "Finished getting." +- where copyRepo = ++ where copyRepo :: IO () ++ copyRepo = + withRepository opts $ RepoJob $ \repository -> + if formatHas HashedInventory rfsource + then do +diff --git a/src/Darcs/Global.hs b/src/Darcs/Global.hs +index 9792bf0..e17f071 100644 +--- a/src/Darcs/Global.hs ++++ b/src/Darcs/Global.hs +@@ -60,8 +60,9 @@ module Darcs.Global + import Control.Applicative ( (<$>), (<*>) ) + import Control.Monad ( when ) + import Control.Concurrent.MVar +-import Control.Exception.Extensible ( bracket_, catch, catchJust, SomeException +- , block, unblock ++import Control.Exception.Extensible as E ++ ( bracket_, catch, catchJust, SomeException ++ , mask + ) + import Data.IORef ( IORef, newIORef, readIORef, writeIORef ) + import Data.IORef ( modifyIORef ) +@@ -106,12 +107,12 @@ withAtexit prog = + exit + prog + where +- exit = block $ do ++ exit = E.mask $ \restore -> do + Just actions <- swapMVar atexitActions Nothing + -- from now on atexit will not register new actions +- mapM_ runAction actions +- runAction action = +- catch (unblock action) $ \(exn :: SomeException) -> do ++ mapM_ (runAction restore) actions ++ runAction restore action = ++ catch (restore action) $ \(exn :: SomeException) -> do + hPutStrLn stderr $ "Exception thrown by an atexit registered action:" + hPutStrLn stderr $ show exn + +diff --git a/src/Darcs/SignalHandler.hs b/src/Darcs/SignalHandler.hs +index ac0f526..d0ef162 100644 +--- a/src/Darcs/SignalHandler.hs ++++ b/src/Darcs/SignalHandler.hs +@@ -26,8 +26,8 @@ import Prelude hiding ( catch ) + import System.IO.Error ( isUserError, ioeGetErrorString, ioeGetFileName ) + import System.Exit ( exitWith, ExitCode ( ExitFailure ) ) + import Control.Concurrent ( ThreadId, myThreadId ) +-import Control.Exception.Extensible +- ( catch, throw, throwTo, block, unblock, ++import Control.Exception.Extensible as E ++ ( catch, throw, throwTo, mask, + Exception(..), SomeException(..), IOException ) + import System.Posix.Files ( getFdStatus, isNamedPipe ) + import System.Posix.IO ( stdOutput ) +@@ -128,8 +128,8 @@ catchUserErrors comp handler = catch comp handler' + | otherwise = throw ioe + + withSignalsBlocked :: IO a -> IO a +-withSignalsBlocked job = block (job >>= \r -> +- unblock(return r) `catchSignal` couldnt_do r) ++withSignalsBlocked job = E.mask $ \restore -> (job >>= \r -> ++ restore (return r) `catchSignal` couldnt_do r) + where couldnt_do r s | s == sigINT = oops "interrupt" r + | s == sigHUP = oops "HUP" r + | s == sigABRT = oops "ABRT" r +diff --git a/src/Darcs/Test/Patch/Info.hs b/src/Darcs/Test/Patch/Info.hs +index fd27fb3..b35cfef 100644 +--- a/src/Darcs/Test/Patch/Info.hs ++++ b/src/Darcs/Test/Patch/Info.hs +@@ -28,7 +28,6 @@ import Data.Maybe ( isNothing ) + import Data.Text as T ( find, any ) + import Data.Text.Encoding ( decodeUtf8With ) + import Data.Text.Encoding.Error ( lenientDecode ) +-import Foreign ( unsafePerformIO ) + import Test.QuickCheck ( Arbitrary(arbitrary), oneof, listOf, choose, shrink + , Gen ) + import Test.Framework.Providers.QuickCheck2 ( testProperty ) +@@ -39,6 +38,8 @@ import Darcs.Patch.Info ( PatchInfo(..), patchinfo, + piLog, piAuthor, piName ) + import ByteStringUtils ( decodeLocale, packStringToUTF8, unpackPSFromUTF8 ) + ++import qualified System.IO.Unsafe as U ++ + testSuite :: Test + testSuite = testGroup "Darcs.Patch.Info" + [ metadataDecodingTest +@@ -86,7 +87,7 @@ instance Arbitrary UTF8PatchInfo where + sa <- shrink (piAuthor pi) + sl <- shrink (filter (not . isPrefixOf "Ignore-this:") (piLog pi)) + return (UTF8PatchInfo +- (unsafePerformIO $ patchinfo sn ++ (U.unsafePerformIO $ patchinfo sn + (BC.unpack (_piDate pi)) sa sl)) + + instance Arbitrary UTF8OrNotPatchInfo where +@@ -101,7 +102,7 @@ arbitraryUTF8Patch = + d <- arbitrary + a <- asString `fmap` arbitrary + l <- (lines . asString) `fmap` arbitrary +- return $ unsafePerformIO $ patchinfo n d a l ++ return $ U.unsafePerformIO $ patchinfo n d a l + + -- | Generate arbitrary patch metadata that has totally arbitrary byte strings + -- as its name, date, author and log. diff --git a/dev-vcs/darcs/files/darcs-2.8.4-ghc-7.8-part-2.patch b/dev-vcs/darcs/files/darcs-2.8.4-ghc-7.8-part-2.patch new file mode 100644 index 000000000000..33786477b3fa --- /dev/null +++ b/dev-vcs/darcs/files/darcs-2.8.4-ghc-7.8-part-2.patch @@ -0,0 +1,14 @@ +diff --git a/src/Darcs/Test/Patch.hs b/src/Darcs/Test/Patch.hs +index 0f7ed24..078fbc3 100644 +--- a/src/Darcs/Test/Patch.hs ++++ b/src/Darcs/Test/Patch.hs +@@ -2,6 +2,9 @@ + #if __GLASGOW_HASKELL__ >= 700 + {-# LANGUAGE ImpredicativeTypes #-} + #endif ++#if __GLASGOW_HASKELL__ >= 708 ++{-# LANGUAGE AllowAmbiguousTypes #-} ++#endif + -- Copyright (C) 2002-2005,2007 David Roundy + -- + -- This program is free software; you can redistribute it and/or modify diff --git a/dev-vcs/darcs/files/darcs-2.8.4-issue2364-part-2.patch b/dev-vcs/darcs/files/darcs-2.8.4-issue2364-part-2.patch new file mode 100644 index 000000000000..6164a4a00074 --- /dev/null +++ b/dev-vcs/darcs/files/darcs-2.8.4-issue2364-part-2.patch @@ -0,0 +1,52 @@ +Tue May 13 22:07:19 FET 2014 Sergei Trofimovich <slyfox@community.haskell.org> + * resolve issue2364: don't break list of 'bad sources' + + This time the bug manifested on a simple operation: + $ darcs record -a -m "something" + + Attempt to write a patch resulted in something like: + Failed to record patch 'hello' + + HINT: I could not reach the following repositories: + http://repetae.net/repos/jhc + /home/st/.darcs/cache + /home/st/.cache/darcs + /home/st/dev/darcs/jhc + If you're not using them, you should probably delete + + The sequence should be the following: + 1. store patch to inventory/foo + 2. try to store to a writable cache (say, ~/.darcs/cache/patches) + 3. fail to write + 4. filter out bad caches + 5. try again + 6. copy from cache to patches/ + + Due to missing NOINLINE step 4. led to + all caches treated as writable, thus step 5 + failed without a chance for patch to + go to 'patches/'. + + As a side-effect building darcs with -O0 produced seemingly working darcs. + Reported-by: Ivan Miljenovic +diff -rN -u old-darcs.net/src/Darcs/Util/Global.hs new-darcs.net/src/Darcs/Util/Global.hs +--- old-darcs.net/src/Darcs/Global.hs 2014-05-13 22:23:29.897329750 +0300 ++++ new-darcs.net/src/Darcs/Global.hs 2014-05-13 22:23:29.979329754 +0300 +@@ -135,7 +135,7 @@ + + _badSourcesList :: IORef [String] + _badSourcesList = unsafePerformIO $ newIORef [] +-{- NOINLINE _badSourcesList -} ++{-# NOINLINE _badSourcesList #-} + + + addBadSource :: String -> IO () +@@ -154,7 +154,7 @@ + + _reachableSourcesList :: IORef [String] + _reachableSourcesList = unsafePerformIO $ newIORef [] +-{- NOINLINE _reachableSourcesList -} ++{-# NOINLINE _reachableSourcesList #-} + + + addReachableSource :: String -> IO () diff --git a/dev-vcs/darcs/files/darcs-2.8.4-issue2364.patch b/dev-vcs/darcs/files/darcs-2.8.4-issue2364.patch new file mode 100644 index 000000000000..97c4e0f1ad2b --- /dev/null +++ b/dev-vcs/darcs/files/darcs-2.8.4-issue2364.patch @@ -0,0 +1,70 @@ +* resolve issue2364: fix file corruption on double fetch + +The bug is the result of attempt to fetch the same file +(say F) by the same URL (U) multiple times concurrently. + +First time U gets fetched by speculative prefetch logic. +Second time as an ordinary file (while first fetch is not finished). + +The function 'copyUrlWithPriority' sends download request +to 'urlChan' both times (it's already not a nice situation, +fixed by this patch). + +Later urlThread satisfies first request, notifies receiver, +and starts downloading exactly the same U again. + +I don't know exact data corruption mechanics yet, but it has +to do with non-random intermediate file names of downloaded +files and 'truncate' call when temp file is opened for a new +downlaod job. + +All temp names are completely non-random for a single darcs run: + + urlThread :: Chan UrlRequest -> IO () + urlThread ch = do + junk <- flip showHex "" `fmap` randomRIO rrange + evalStateT urlThread' (UrlState Map.empty emptyQ 0 junk) + + createDownloadFileName :: FilePath -> UrlState -> FilePath + createDownloadFileName f st = f ++ "-new_" ++ randomJunk st + +My theory is next download manages to step on toes of previous job. + +I'll try to make file names truly random in other patch. +That way such errors should manifest as read erros instead of data +corruption. + +Thanks! +diff --git a/src/URL.hs b/src/URL.hs +index 4cb85ee..26de278 100644 +--- a/src/URL.hs ++++ b/src/URL.hs +@@ -18,11 +18,12 @@ module URL ( copyUrl, copyUrlFirst, setDebugHTTP, + import Data.IORef ( newIORef, readIORef, writeIORef, IORef ) + import Data.Map ( Map ) + import qualified Data.Map as Map ++import Data.Tuple ( swap ) + import System.Directory ( copyFile ) + import System.IO.Unsafe ( unsafePerformIO ) + import Control.Concurrent ( forkIO ) + import Control.Concurrent.Chan ( isEmptyChan, newChan, readChan, writeChan, Chan ) +-import Control.Concurrent.MVar ( isEmptyMVar, modifyMVar_, newEmptyMVar, newMVar, putMVar, readMVar, withMVar, MVar ) ++import Control.Concurrent.MVar ( isEmptyMVar, modifyMVar, modifyMVar_, newEmptyMVar, newMVar, putMVar, readMVar, withMVar, MVar ) + import Control.Monad ( unless, when ) + import Control.Monad.Trans ( liftIO ) + import Control.Monad.State ( evalStateT, get, modify, put, StateT ) +@@ -196,10 +197,10 @@ copyUrlWithPriority p u f c = do + debugMessage ("URL.copyUrlWithPriority ("++u++"\n"++ + " -> "++f++")") + v <- newEmptyMVar +- let fn _ old_val = old_val +- modifyMVar_ urlNotifications (return . (Map.insertWith fn u v)) +- let r = UrlRequest u f c p +- writeChan urlChan r ++ old_mv <- modifyMVar urlNotifications (return . swap . Map.insertLookupWithKey (\_k _n old -> old) u v) ++ case old_mv of ++ Nothing -> writeChan urlChan $ UrlRequest u f c p -- ok, new URL ++ Just _ -> debugMessage $ "URL.copyUrlWithPriority already in progress, skip (" ++ u ++ "\n" ++ "-> " ++ f ++ ")" + + waitNextUrl :: StateT UrlState IO () + waitNextUrl = do diff --git a/dev-vcs/darcs/files/darcs-2.8.5-ghc-7.10.patch b/dev-vcs/darcs/files/darcs-2.8.5-ghc-7.10.patch new file mode 100644 index 000000000000..138c0848b9b8 --- /dev/null +++ b/dev-vcs/darcs/files/darcs-2.8.5-ghc-7.10.patch @@ -0,0 +1,142 @@ +--- darcs-2.8.5-orig/src/Darcs/Repository/Internal.hs 2014-08-26 06:27:34.000000000 +1000 ++++ darcs-2.8.5/src/Darcs/Repository/Internal.hs 2015-01-03 12:18:03.576529408 +1100 +@@ -71,8 +71,8 @@ + writeProblem, readProblem, readfromAndWritetoProblem ) + import System.Directory ( doesDirectoryExist, setCurrentDirectory, + createDirectoryIfMissing, doesFileExist ) +-import Control.Monad ( when, unless, filterM ) +-import Control.Applicative ( (<$>) ) ++import Control.Monad ( when, unless, filterM, ap ) ++import Control.Applicative ( Applicative(..), (<$>) ) + import Control.Exception ( catch, IOException ) + + import Workaround ( getCurrentDirectory, renameFile, setExecutable ) +@@ -184,6 +184,10 @@ + instance Functor (RIO p C(r u t t)) where + fmap f m = RIO $ \r -> fmap f (unsafeUnRIO m r) + ++instance Applicative (RIO p C(r u t t)) where ++ pure = return ++ (<*>) = ap ++ + -- | We have an instance of Monad so that IO actions that do not + -- change the tentative recorded state are convenient in the IO monad. + instance Monad (RIO p C(r u t t)) where +--- darcs-2.8.5-orig/src/Darcs/Patch/Prim/V1/Commute.hs 2014-08-26 06:27:34.000000000 +1000 ++++ darcs-2.8.5/src/Darcs/Patch/Prim/V1/Commute.hs 2015-01-03 12:11:31.281425244 +1100 +@@ -6,7 +6,8 @@ + where + + import Prelude hiding ( pi ) +-import Control.Monad ( MonadPlus, msum, mzero, mplus ) ++import Control.Applicative ( Applicative(..), Alternative(..) ) ++import Control.Monad ( MonadPlus, msum, mzero, mplus, liftM, ap ) + + import qualified Data.ByteString as B (ByteString, concat) + import qualified Data.ByteString.Char8 as BC (pack) +@@ -35,6 +36,17 @@ + + data Perhaps a = Unknown | Failed | Succeeded a + ++instance Functor Perhaps where ++ fmap = liftM ++ ++instance Applicative Perhaps where ++ pure = return ++ (<*>) = ap ++ ++instance Alternative Perhaps where ++ (<|>) = mplus ++ empty = mzero ++ + instance Monad Perhaps where + (Succeeded x) >>= k = k x + Failed >>= _ = Failed +--- darcs-2.8.5-orig/src/Darcs/IO.hs 2014-08-26 06:27:34.000000000 +1000 ++++ darcs-2.8.5/src/Darcs/IO.hs 2015-01-03 12:06:40.423103022 +1100 +@@ -23,6 +23,7 @@ + import Data.Char ( toLower ) + import Data.List ( isSuffixOf ) + import System.IO.Error ( isDoesNotExistError, isPermissionError ) ++import Control.Applicative ( Applicative(..) ) + import Control.Exception.Extensible ( catch, SomeException, IOException ) + import Control.Monad.Error + import System.Directory ( createDirectory, +@@ -97,6 +98,10 @@ + instance Functor TolerantIO where + fmap f m = m >>= return . f + ++instance Applicative TolerantIO where ++ pure = return ++ (<*>) = ap ++ + instance Monad TolerantIO where + f >>= g = runTM $ runIO f >>= runIO . g + f >> g = runTM $ runIO f >> runIO g +@@ -106,6 +111,10 @@ + instance Functor SilentIO where + fmap f m = m >>= return . f + ++instance Applicative SilentIO where ++ pure = return ++ (<*>) = ap ++ + instance Monad SilentIO where + f >>= g = runTM $ runIO f >>= runIO . g + f >> g = runTM $ runIO f >> runIO g +--- darcs-2.8.5-orig/src/Darcs/Patch/V2/Real.hs 2014-08-26 06:27:34.000000000 +1000 ++++ darcs-2.8.5/src/Darcs/Patch/V2/Real.hs 2015-01-03 11:14:40.109221505 +1100 +@@ -29,6 +29,9 @@ + , mergeUnravelled + ) where + ++#if MIN_VERSION_base(4,8,0) ++import Prelude hiding ( (*>) ) ++#endif + import Control.Monad ( mplus, liftM ) + import qualified Data.ByteString.Char8 as BC ( ByteString, pack ) + import Data.Maybe ( fromMaybe ) +--- darcs-2.8.5-orig/src/Darcs/Patch/V2/Non.hs 2014-08-26 06:27:34.000000000 +1000 ++++ darcs-2.8.5/src/Darcs/Patch/V2/Non.hs 2015-01-03 11:14:08.073788136 +1100 +@@ -40,7 +40,11 @@ + , (>>*) + ) where + ++#if MIN_VERSION_base(4,8,0) ++import Prelude hiding ( rem, (*>) ) ++#else + import Prelude hiding ( rem ) ++#endif + import Data.List ( delete ) + import Control.Monad ( liftM, mzero ) + import Darcs.Patch.Commute ( commuteFL ) +--- darcs-2.8.5-orig/src/Darcs/Patch/V1/Commute.hs 2014-08-26 06:27:34.000000000 +1000 ++++ darcs-2.8.5/src/Darcs/Patch/V1/Commute.hs 2015-01-03 12:11:47.084707544 +1100 +@@ -28,7 +28,8 @@ + ) + where + +-import Control.Monad ( MonadPlus, mplus, msum, mzero, guard ) ++import Control.Applicative ( Applicative(..), Alternative(..) ) ++import Control.Monad ( MonadPlus, mplus, msum, mzero, guard, liftM, ap ) + + import Darcs.Patch.Commute ( toFwdCommute ) + import Darcs.Patch.ConflictMarking ( mangleUnravelled ) +@@ -69,6 +70,17 @@ + + data Perhaps a = Unknown | Failed | Succeeded a + ++instance Functor Perhaps where ++ fmap = liftM ++ ++instance Applicative Perhaps where ++ pure = return ++ (<*>) = ap ++ ++instance Alternative Perhaps where ++ (<|>) = mplus ++ empty = mzero ++ + instance Monad Perhaps where + (Succeeded x) >>= k = k x + Failed >>= _ = Failed diff --git a/dev-vcs/darcs/metadata.xml b/dev-vcs/darcs/metadata.xml new file mode 100644 index 000000000000..91743df1aec2 --- /dev/null +++ b/dev-vcs/darcs/metadata.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<herd>haskell</herd> +<maintainer> + <email>haskell@gentoo.org</email> +</maintainer> +<use> + <flag name="color">Use ansi color escapes.</flag> + <flag name="diff">Use 'lcs' for diff building.</flag> + <flag name="http">Use the pure Haskell HTTP package for HTTP support.</flag> + <flag name="optimize">Build with optimizations (-O2).</flag> + <flag name="network-uri">Get Network.URI from the network-uri package.</flag> + <flag name="terminfo">Use the terminfo package for enhanced console support.</flag> + <flag name="threaded">Use threading and SMP support.</flag> +</use> +</pkgmetadata> diff --git a/dev-vcs/easygit/Manifest b/dev-vcs/easygit/Manifest new file mode 100644 index 000000000000..8acfcbc03474 --- /dev/null +++ b/dev-vcs/easygit/Manifest @@ -0,0 +1 @@ +DIST easygit-1.6.5.5 283019 SHA256 ef6a96825d6f9606c23957cd8e1cb5a5d46b226392c8101d3883094a4a2b54ad SHA512 2e639ffa40ac6ea8619abf5d8aced57a9fb203aaf96e259b2d3905b1d6d040d3d64adf14dad0552bd710808e3c23b63e859f1b5b02bd13aca1ad232fe05c2bbd WHIRLPOOL d170f10a13ec20f6c26d92a7f45331b2955cd9f0251c3486ab2da619385dca826c86f2d1faac00a1660a5d406a7f3ee3beaede68ff73f3bed58878c700b715b5 diff --git a/dev-vcs/easygit/easygit-1.6.5.5.ebuild b/dev-vcs/easygit/easygit-1.6.5.5.ebuild new file mode 100644 index 000000000000..0b0916f7fb21 --- /dev/null +++ b/dev-vcs/easygit/easygit-1.6.5.5.ebuild @@ -0,0 +1,23 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="2" + +MY_PN="eg" + +DESCRIPTION="Easy GIT is a wrapper for git, designed to make git easy to learn and use" +HOMEPAGE="http://www.gnome.org/~newren/eg/" +SRC_URI="http://www.gnome.org/~newren/${MY_PN}/download/${PV}/${MY_PN} -> ${PF}" + +LICENSE="GPL-2" +KEYWORDS="~amd64 ~ppc ~x86" +SLOT="0" +IUSE="" + +RDEPEND=">=dev-vcs/git-${PV} + dev-lang/perl" + +src_install() { + newbin "${DISTDIR}/${PF}" "${MY_PN}" || die +} diff --git a/dev-vcs/easygit/metadata.xml b/dev-vcs/easygit/metadata.xml new file mode 100644 index 000000000000..ff62877c67ae --- /dev/null +++ b/dev-vcs/easygit/metadata.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<maintainer> + <email>maintainer-needed@gentoo.org</email> +</maintainer> +</pkgmetadata> diff --git a/dev-vcs/fossil/Manifest b/dev-vcs/fossil/Manifest new file mode 100644 index 000000000000..6c1db4998cef --- /dev/null +++ b/dev-vcs/fossil/Manifest @@ -0,0 +1 @@ +DIST fossil-src-20150119112900.tar.gz 3973184 SHA256 37969e5a09c1611199921e3518a4ed736fd637a02f2d5810cd45897a4ceb92dc SHA512 9bee82916d98b5d7d81e200ec6616c1e463540de254464a559254ee117a99492a0080003645a99ef93cc551395e38b93dfb12728abbbdbf468f5c2743f67718e WHIRLPOOL 19175692472913bc94bf993956c1e0b8510ff33d6df2c168acf700e64b6f4e62eed34a4888c38e093eabfe582224edf5b7e03dc652b5f1e8824b9e8e5608d492 diff --git a/dev-vcs/fossil/fossil-20150119112900.ebuild b/dev-vcs/fossil/fossil-20150119112900.ebuild new file mode 100644 index 000000000000..1bb7ba485d5d --- /dev/null +++ b/dev-vcs/fossil/fossil-20150119112900.ebuild @@ -0,0 +1,48 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +MY_P=${PN}-src-${PV} + +inherit toolchain-funcs + +DESCRIPTION="Simple, high-reliability, source control management, and more" +HOMEPAGE="http://www.fossil-scm.org/" +SRC_URI="http://www.fossil-scm.org/download/${MY_P}.tar.gz" + +LICENSE="BSD-2" +SLOT="0" +KEYWORDS="amd64 ~arm x86" +IUSE="json +lineedit sqlite +ssl tcl" + +DEPEND=" + sys-libs/zlib + lineedit? ( || ( sys-libs/readline:0 dev-libs/libedit ) ) + ssl? ( dev-libs/openssl:0 ) + sqlite? ( dev-db/sqlite:3 ) + tcl? ( dev-lang/tcl:0= ) +" +RDEPEND="${DEPEND}" + +S=${WORKDIR}/${MY_P} + +src_configure() { + # this is not an autotools situation so don't make it seem like one + # --with-tcl: works + # --without-tcl: dies + local myconf='--with-zlib' + + myconf+=" --lineedit=$(usex lineedit 1 0)" + myconf+=" --with-openssl=$(usex ssl auto none)" + use json && myconf+=' --json' + use sqlite && myconf+=' --disable-internal-sqlite' + use tcl && myconf+=' --with-tcl --with-tcl-stubs' + tc-export CC + ./configure ${myconf} || die +} + +src_install() { + dobin fossil +} diff --git a/dev-vcs/fossil/metadata.xml b/dev-vcs/fossil/metadata.xml new file mode 100644 index 000000000000..af4a9e3be69d --- /dev/null +++ b/dev-vcs/fossil/metadata.xml @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>rafaelmartins@gentoo.org</email> + <name>Rafael G. Martins</name> + </maintainer> + <maintainer> + <email>titanofold@gentoo.org</email> + <name>Aaron W. Swenson</name> + <description>Co-Maintainer</description> + </maintainer> + <use> + <flag name="json">Enable the JSON API of Fossil's wiki</flag> + <flag name="lineedit">Enable line-editing with libedit or readline</flag> + <flag name="sqlite"> + Use the system SQLite instead of the bundled one + </flag> + </use> +</pkgmetadata> diff --git a/dev-vcs/giggle/Manifest b/dev-vcs/giggle/Manifest new file mode 100644 index 000000000000..9ebfaf0745fd --- /dev/null +++ b/dev-vcs/giggle/Manifest @@ -0,0 +1 @@ +DIST giggle-0.7.tar.xz 2042304 SHA256 ae2e2237fa0d0999d99d0a0ee9b7ec147e80bd2472d59a045b2b01eb02261f59 SHA512 01d3cc0adc610706a97b89487624fe3d09c1347c0b07920e71d2e33761fab4894ebb304113ac7df6cdd03ed6116d09dcce85b35d6169df5a3f3973faaa151cfb WHIRLPOOL 54f721249b1e2bdaafcfd42c800ce4eb80e9b9e1ed312e853a2c30b650db25b98a14af2088849930a7be4ca36628c45021f276f04af13f7e76276a965cfc4c7b diff --git a/dev-vcs/giggle/files/giggle-0.6.2-gtksourceview-3.8.0.patch b/dev-vcs/giggle/files/giggle-0.6.2-gtksourceview-3.8.0.patch new file mode 100644 index 000000000000..37648e171232 --- /dev/null +++ b/dev-vcs/giggle/files/giggle-0.6.2-gtksourceview-3.8.0.patch @@ -0,0 +1,24 @@ +diff --git a/src/giggle-diff-view.h b/src/giggle-diff-view.h +index de5fe02..9ef33b5 100644 +--- a/src/giggle-diff-view.h ++++ b/src/giggle-diff-view.h +@@ -23,6 +23,7 @@ + + #include <glib-object.h> + #include <gtk/gtk.h> ++#include <gtksourceview/gtksourcebuffer.h> + #include <gtksourceview/gtksourceview.h> + #include <gtksourceview/gtksourcelanguagemanager.h> + +diff --git a/src/giggle-view-file.c b/src/giggle-view-file.c +index 7746225..7b74c0a 100644 +--- a/src/giggle-view-file.c ++++ b/src/giggle-view-file.c +@@ -42,6 +42,7 @@ + + #include <gtksourceview/gtksourcelanguagemanager.h> + #include <gtksourceview/gtksourceview.h> ++#include <gtksourceview/gtksourcebuffer.h> + + #define GIGGLE_TYPE_VIEW_FILE_SNAPSHOT (giggle_view_file_snapshot_get_type ()) + #define GIGGLE_VIEW_FILE_SNAPSHOT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIGGLE_TYPE_VIEW_FILE_SNAPSHOT, GiggleViewFileSnapshot)) diff --git a/dev-vcs/giggle/giggle-0.7-r1.ebuild b/dev-vcs/giggle/giggle-0.7-r1.ebuild new file mode 100644 index 000000000000..1b5cd5bc37c0 --- /dev/null +++ b/dev-vcs/giggle/giggle-0.7-r1.ebuild @@ -0,0 +1,46 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="5" +GCONF_DEBUG="no" +GNOME2_LA_PUNT="yes" + +inherit gnome2 eutils + +DESCRIPTION="GTK+ Frontend for GIT" +HOMEPAGE="https://wiki.gnome.org/Apps/giggle" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 x86 ~x86-interix ~amd64-linux ~x86-linux" +IUSE="eds" + +RDEPEND=" + >=dev-vcs/git-1.5 + >=dev-libs/glib-2.30:2 + >=x11-libs/gtk+-3.3.12:3 + >=x11-libs/gtksourceview-3.0:3.0 + >=x11-libs/gdk-pixbuf-2.22.0 + eds? ( gnome-extra/evolution-data-server ) + >=x11-libs/vte-0.28:2.90 +" +DEPEND="${RDEPEND} + gnome-base/gnome-common + sys-devel/gettext + app-text/yelp-tools + virtual/pkgconfig + >=dev-util/intltool-0.35 + >=sys-devel/autoconf-2.64 + >=sys-devel/libtool-2 +" + +src_prepare() { + epatch "${FILESDIR}/${PN}-0.6.2-gtksourceview-3.8.0.patch" + gnome2_src_prepare +} + +src_configure() { + gnome2_src_configure \ + $(use_enable eds evolution-data-server) +} diff --git a/dev-vcs/giggle/metadata.xml b/dev-vcs/giggle/metadata.xml new file mode 100644 index 000000000000..ff688617b208 --- /dev/null +++ b/dev-vcs/giggle/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>ikelos@gentoo.org</email> + <name>Mike Auty</name> + </maintainer> + <longdescription lang="en"> + GTK+ based frontend for GIT + </longdescription> +</pkgmetadata> + diff --git a/dev-vcs/git-annex/Manifest b/dev-vcs/git-annex/Manifest new file mode 100644 index 000000000000..b2a8cb7edc31 --- /dev/null +++ b/dev-vcs/git-annex/Manifest @@ -0,0 +1,8 @@ +DIST git-annex-5.20140927.tar.gz 4547006 SHA256 532b36a4a33909b9835a19888b1678251a0b99b1a1f82e94755bb5cc2e7af50b SHA512 7851b773a296efc3c4d3ae36ce240ca466b42d87d32f8635ae1dc8457064c20b2521c0fe3c123554e0d2e2e35346f03a3c25ae94f47f2a2d902a73629f0c6535 WHIRLPOOL bc30b2b7833f46a5633012f072a901142c2a6bc5fbca198c3d391fe336c2c88d3ae2491a439692fe32eb1b217d8a9c6b8baad931f462660b0c4a3cccb1ba44b0 +DIST git-annex-5.20141125.tar.gz 4580886 SHA256 ba26d0459d74d818b7ecc8153856ffccfcd7068dbea344334438a698dd689a66 SHA512 44feb1ecfe6c0f08c8c69b11efa9b81b5e420019321f27b825ae831c04e0e8ad307cea73e6c52ab1f73f2bebdd6476012e5eab1e823a9ded7d6c865e7fd24350 WHIRLPOOL 57ed46a1a8bd43fd12c05c2eee9da2bad529cde7ba424e7607858637e9394b280789edba5ae5c9e0547ad6d6a4ee48fd920c29cab87aacfebf4cf3b527aa58ce +DIST git-annex-5.20141203.tar.gz 4611768 SHA256 d36d07fe592b27e7e4e363de3ddccb5cc4a8f189c30c58cfdb4524837473f105 SHA512 a16cc0d000cde3cc7ebad1a8eac17ba2d3efed2ac11090c1d8247a30c341fcb38bc32dccf6a8f6fe05c31fd22dc50ea2a292711a2edb43ab96275fd157030481 WHIRLPOOL a4c393e29d441b36ca56c88f1690235fc1939af0ad1834239d2a80896ae8e8cb0dc1586d87b4493803d0984dc5666550a69f1d03f44488cadcb1430f7e003225 +DIST git-annex-5.20141231.tar.gz 4635173 SHA256 ce7f8e1a6f9049e9864a125a10672d577605ecbb45bb83401af6d6c128533c67 SHA512 d9b0db8084f08a8a2408ea1af1bc95c20591e573cddef866a9eed84319a7fff774d482d464a390c10468436dabb69fdd2cf177afb4600ef2300ae0f08b284e6e WHIRLPOOL 053b76ee765cc5b01900a7c3c115a736dff67e50b4847e552e6e1adae10344219698f59969509f2248e589ea7a6eb32991d2e4646c02b2b1a703c8269fdc1352 +DIST git-annex-5.20150219.tar.gz 4688334 SHA256 46c1d2a338a4f54774060b39fe5e864551d047b0d04eee158b3c2cb947085d5f SHA512 006ef74ba687bd97f93fb91f3ee675551abecfe019e45696bdc783523e8559ffeb9a8e521b488b695518b2fb001b2db2826ad53c5af2199d487cd664f2a9ee13 WHIRLPOOL 1e2f16af86915ec433c38eedad994538b13f56d7f0e3b35d648bc2872abef78acdac4b19b4983101f697dd138a3deaa60451196ad13a8b083dd0c6dc1c712de1 +DIST git-annex-5.20150327.tar.gz 4764485 SHA256 1e309466627eb634816805004391c5407dd9eee280e2f21a48de9617a35918fa SHA512 638ed0c97d0f67cd26699826c9ff5192fd2d089932e06fe8305c536fcbad06239f8d745c350938089827ae4b7058f1e2c3156ab7f5f133e7b4a38a2e6cd69544 WHIRLPOOL a03f2d28b36eff595ba2780ed70fee8204dceb8aef087871f650dd3482865e30d2644e29b9c7d5763cc79ffe8357e81b5b1b7fb1091fa3cb1d171634af37ac77 +DIST git-annex-5.20150617.tar.gz 5047577 SHA256 2d37c49866880803886fe77be17ac154c84acc0c344e4fefea577a59e55f8d54 SHA512 25f42ab403d3fd39a689af74cd8a26dc5de761d5a8a79c8d7050194c2094f65de9681b4189076c484fb5c644408918140cf1fcb0109a6a2195f1d547e307abfc WHIRLPOOL 89410f048f5773256cac6525f1a42e3845a5106a1d0b82e031d1f70136375479efc180b21907036e191243f55aee7d94b041cc1d994dea403a1640e7310f6f4d +DIST git-annex-5.20150710.tar.gz 5080419 SHA256 970f953a278401863fb1006679d216891ae556f80434b587deb08dfd6644f860 SHA512 35240f1d78561dab02ae014e4d00b8645c33c526b0d36a28253b9129198ea53b784949c7b47fd3b97f056842430a5e8b0d312b8ba6985bbb3228c73a4dfa21ea WHIRLPOOL 06b824031aeef38468e17ef239aa1501a2236a084a9c54e4c81001247c62b8621cdc6bc090f2b1a516df000823951acee784000aa6dc5b4de5dc4bcd5a2bda59 diff --git a/dev-vcs/git-annex/files/git-annex.xpm b/dev-vcs/git-annex/files/git-annex.xpm new file mode 100644 index 000000000000..781f21c5e9dc --- /dev/null +++ b/dev-vcs/git-annex/files/git-annex.xpm @@ -0,0 +1,47 @@ +/* XPM */ +static char * git_annex_42x42_xpm[] = { +"42 40 4 1", +" c None", +". c #40BF4C", +"+ c #D8382D", +"@ c #666666", +" . . ", +" ... ... ", +" ... ... ", +" ..... ..... ", +"....... .......", +" ... ... ", +" . . ", +" . . ", +" .. .. ", +" . .... . ", +" .. .... .. ", +" .... .... .... ", +" ..... .... ..... ", +" .... . ................ . .... ", +" .. . ................ . .. ", +" .. ................ .. ", +" .... ", +" .... ", +" .... ", +" .... ", +" ", +" ++++++++++++++++ ", +" ++++++++++++++++ ", +" ++++++++++++++++ ", +" ++++++++++++++++ ", +" ", +" @@ @@@@@@@@ ", +" @@@@ @@@@@@@@ ", +" @@@@ @@@@@@ ", +" @@@@@ @@@@@@@ ", +" @@@ @@ @@@ ", +" @@@@ @@ @@@@ ", +" @@@ @@ @@@ ", +" @@@@ @@@ ", +" @@@ @@@@ ", +" @@@@ @@@ ", +" @@@@@@ @@@@@@ ", +" @@@@@@@@@@@@ ", +" @@@@@@@@@@ ", +" @@@@@@ "}; diff --git a/dev-vcs/git-annex/git-annex-5.20140927.ebuild b/dev-vcs/git-annex/git-annex-5.20140927.ebuild new file mode 100644 index 000000000000..b5e0a877353c --- /dev/null +++ b/dev-vcs/git-annex/git-annex-5.20140927.ebuild @@ -0,0 +1,162 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +# ebuild generated by hackport 0.3.5 + +CABAL_FEATURES="bin" +inherit haskell-cabal + +DESCRIPTION="manage files with git, without checking their contents into git" +HOMEPAGE="http://git-annex.branchable.com/" +SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz" +RESTRICT="test" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~x86 ~amd64-linux" +IUSE="android androidsplice +assistant +cryptohash +dbus +dns doc +desktop-notify ekg +feed +inotify +pairing +production +quvi +s3 +tahoe +tdfa +testsuite +webapp +webapp-secure +webdav +xmpp" + +RDEPEND="dev-vcs/git +" +DEPEND="${RDEPEND} + dev-haskell/async + dev-haskell/bloomfilter + >=dev-haskell/cabal-1.8 + dev-haskell/case-insensitive + dev-haskell/dataenc + dev-haskell/data-default + dev-haskell/dlist + dev-haskell/edit-distance + >=dev-haskell/exceptions-0.6 + dev-haskell/hslogger + dev-haskell/http-conduit + dev-haskell/http-types + dev-haskell/ifelse + dev-haskell/json[generic] + dev-haskell/missingh + dev-haskell/monad-control + >=dev-haskell/mtl-2 + >=dev-haskell/network-2.0 + >=dev-haskell/quickcheck-2.1:2 + dev-haskell/random + dev-haskell/safesemaphore + dev-haskell/sha + >=dev-haskell/stm-2.3 + dev-haskell/text + dev-haskell/transformers + dev-haskell/unix-compat + dev-haskell/utf8-string + dev-haskell/uuid + >=dev-lang/ghc-7.4.1 + android? ( dev-haskell/data-endian ) + assistant? ( >=dev-haskell/stm-2.3 + inotify? ( dev-haskell/hinotify ) ) + cryptohash? ( >=dev-haskell/cryptohash-0.10.0 ) + dbus? ( >=dev-haskell/dbus-0.10.3 ) + dns? ( dev-haskell/dns ) + ekg? ( dev-haskell/aeson + dev-haskell/ekg + dev-haskell/http-types ) + feed? ( dev-haskell/feed ) + pairing? ( dev-haskell/network-info + dev-haskell/network-multicast ) + quvi? ( dev-haskell/aeson ) + s3? ( dev-haskell/hs3 ) + tdfa? ( dev-haskell/regex-tdfa ) + tahoe? ( dev-haskell/aeson ) + testsuite? ( + dev-haskell/crypto-api + >=dev-haskell/tasty-0.7 + dev-haskell/tasty-hunit + dev-haskell/tasty-quickcheck + dev-haskell/tasty-rerun + >=dev-haskell/optparse-applicative-0.9.1 + ) + webapp? ( dev-haskell/blaze-builder + dev-haskell/aeson + dev-haskell/clientsession + dev-haskell/crypto-api + dev-haskell/hamlet + dev-haskell/http-types + dev-haskell/path-pieces + dev-haskell/transformers + dev-haskell/shakespeare + dev-haskell/wai + dev-haskell/wai-extra + dev-haskell/warp + dev-haskell/warp-tls + dev-haskell/yesod + dev-haskell/yesod-core + dev-haskell/yesod-default + dev-haskell/yesod-form + dev-haskell/yesod-static + webapp-secure? ( dev-haskell/warp-tls + dev-haskell/securemem + dev-haskell/byteable ) ) + webdav? ( >=dev-haskell/dav-1.0 + dev-haskell/http-client + dev-haskell/xml-conduit ) + xmpp? ( >=dev-haskell/gnutls-0.1.4 + dev-haskell/network-protocol-xmpp + dev-haskell/xml-types ) + dev-lang/perl + doc? ( www-apps/ikiwiki net-misc/rsync ) +" + +src_configure() { + haskell-cabal_src_configure \ + $(cabal_flag android android) \ + $(cabal_flag androidsplice androidsplice) \ + $(cabal_flag assistant assistant) \ + $(cabal_flag cryptohash cryptohash) \ + $(cabal_flag dbus dbus) \ + $(cabal_flag desktop-notify desktop-notify) \ + $(cabal_flag dns dns) \ + $(cabal_flag ekg ekg) \ + $(cabal_flag feed feed) \ + $(cabal_flag inotify inotify) \ + $(cabal_flag pairing pairing) \ + $(cabal_flag production production) \ + $(cabal_flag quvi quvi) \ + $(cabal_flag s3 s3) \ + $(cabal_flag tahoe tahoe) \ + $(cabal_flag tdfa tdfa) \ + $(cabal_flag testsuite testsuite) \ + $(cabal_flag webapp webapp) \ + $(cabal_flag webapp-secure webapp-secure) \ + $(cabal_flag webdav webdav) \ + $(cabal_flag xmpp xmpp) +} + +src_compile() { + haskell-cabal_src_compile + use doc && emake docs +} + +src_test() { + if use webapp; then + export GIT_CONFIG=${T}/temp-git-config + git config user.email "git@src_test" + git config user.name "Mr. ${P} The Test" + + emake test + fi +} + +src_install() { + haskell-cabal_src_install + dosym git-annex /usr/bin/git-annex-shell # standard make install does more, than needed + + # install-mans wants ikiwiki. It returns 0 and builds the man pages without ikiwiki. + emake install-mans DESTDIR="${D}" PREFIX="${EPREFIX}/usr" + use doc && emake install-docs DESTDIR="${D}" PREFIX="${EPREFIX}/usr" + mv "${ED}"/usr/share/doc/{${PN},${PF}} + dodoc CHANGELOG README + if use webapp ; then + doicon "${FILESDIR}"/${PN}.xpm + make_desktop_entry "${PN} webapp" "git-annex" ${PN}.xpm "Office" + fi +} diff --git a/dev-vcs/git-annex/git-annex-5.20141125.ebuild b/dev-vcs/git-annex/git-annex-5.20141125.ebuild new file mode 100644 index 000000000000..b5e0a877353c --- /dev/null +++ b/dev-vcs/git-annex/git-annex-5.20141125.ebuild @@ -0,0 +1,162 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +# ebuild generated by hackport 0.3.5 + +CABAL_FEATURES="bin" +inherit haskell-cabal + +DESCRIPTION="manage files with git, without checking their contents into git" +HOMEPAGE="http://git-annex.branchable.com/" +SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz" +RESTRICT="test" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~x86 ~amd64-linux" +IUSE="android androidsplice +assistant +cryptohash +dbus +dns doc +desktop-notify ekg +feed +inotify +pairing +production +quvi +s3 +tahoe +tdfa +testsuite +webapp +webapp-secure +webdav +xmpp" + +RDEPEND="dev-vcs/git +" +DEPEND="${RDEPEND} + dev-haskell/async + dev-haskell/bloomfilter + >=dev-haskell/cabal-1.8 + dev-haskell/case-insensitive + dev-haskell/dataenc + dev-haskell/data-default + dev-haskell/dlist + dev-haskell/edit-distance + >=dev-haskell/exceptions-0.6 + dev-haskell/hslogger + dev-haskell/http-conduit + dev-haskell/http-types + dev-haskell/ifelse + dev-haskell/json[generic] + dev-haskell/missingh + dev-haskell/monad-control + >=dev-haskell/mtl-2 + >=dev-haskell/network-2.0 + >=dev-haskell/quickcheck-2.1:2 + dev-haskell/random + dev-haskell/safesemaphore + dev-haskell/sha + >=dev-haskell/stm-2.3 + dev-haskell/text + dev-haskell/transformers + dev-haskell/unix-compat + dev-haskell/utf8-string + dev-haskell/uuid + >=dev-lang/ghc-7.4.1 + android? ( dev-haskell/data-endian ) + assistant? ( >=dev-haskell/stm-2.3 + inotify? ( dev-haskell/hinotify ) ) + cryptohash? ( >=dev-haskell/cryptohash-0.10.0 ) + dbus? ( >=dev-haskell/dbus-0.10.3 ) + dns? ( dev-haskell/dns ) + ekg? ( dev-haskell/aeson + dev-haskell/ekg + dev-haskell/http-types ) + feed? ( dev-haskell/feed ) + pairing? ( dev-haskell/network-info + dev-haskell/network-multicast ) + quvi? ( dev-haskell/aeson ) + s3? ( dev-haskell/hs3 ) + tdfa? ( dev-haskell/regex-tdfa ) + tahoe? ( dev-haskell/aeson ) + testsuite? ( + dev-haskell/crypto-api + >=dev-haskell/tasty-0.7 + dev-haskell/tasty-hunit + dev-haskell/tasty-quickcheck + dev-haskell/tasty-rerun + >=dev-haskell/optparse-applicative-0.9.1 + ) + webapp? ( dev-haskell/blaze-builder + dev-haskell/aeson + dev-haskell/clientsession + dev-haskell/crypto-api + dev-haskell/hamlet + dev-haskell/http-types + dev-haskell/path-pieces + dev-haskell/transformers + dev-haskell/shakespeare + dev-haskell/wai + dev-haskell/wai-extra + dev-haskell/warp + dev-haskell/warp-tls + dev-haskell/yesod + dev-haskell/yesod-core + dev-haskell/yesod-default + dev-haskell/yesod-form + dev-haskell/yesod-static + webapp-secure? ( dev-haskell/warp-tls + dev-haskell/securemem + dev-haskell/byteable ) ) + webdav? ( >=dev-haskell/dav-1.0 + dev-haskell/http-client + dev-haskell/xml-conduit ) + xmpp? ( >=dev-haskell/gnutls-0.1.4 + dev-haskell/network-protocol-xmpp + dev-haskell/xml-types ) + dev-lang/perl + doc? ( www-apps/ikiwiki net-misc/rsync ) +" + +src_configure() { + haskell-cabal_src_configure \ + $(cabal_flag android android) \ + $(cabal_flag androidsplice androidsplice) \ + $(cabal_flag assistant assistant) \ + $(cabal_flag cryptohash cryptohash) \ + $(cabal_flag dbus dbus) \ + $(cabal_flag desktop-notify desktop-notify) \ + $(cabal_flag dns dns) \ + $(cabal_flag ekg ekg) \ + $(cabal_flag feed feed) \ + $(cabal_flag inotify inotify) \ + $(cabal_flag pairing pairing) \ + $(cabal_flag production production) \ + $(cabal_flag quvi quvi) \ + $(cabal_flag s3 s3) \ + $(cabal_flag tahoe tahoe) \ + $(cabal_flag tdfa tdfa) \ + $(cabal_flag testsuite testsuite) \ + $(cabal_flag webapp webapp) \ + $(cabal_flag webapp-secure webapp-secure) \ + $(cabal_flag webdav webdav) \ + $(cabal_flag xmpp xmpp) +} + +src_compile() { + haskell-cabal_src_compile + use doc && emake docs +} + +src_test() { + if use webapp; then + export GIT_CONFIG=${T}/temp-git-config + git config user.email "git@src_test" + git config user.name "Mr. ${P} The Test" + + emake test + fi +} + +src_install() { + haskell-cabal_src_install + dosym git-annex /usr/bin/git-annex-shell # standard make install does more, than needed + + # install-mans wants ikiwiki. It returns 0 and builds the man pages without ikiwiki. + emake install-mans DESTDIR="${D}" PREFIX="${EPREFIX}/usr" + use doc && emake install-docs DESTDIR="${D}" PREFIX="${EPREFIX}/usr" + mv "${ED}"/usr/share/doc/{${PN},${PF}} + dodoc CHANGELOG README + if use webapp ; then + doicon "${FILESDIR}"/${PN}.xpm + make_desktop_entry "${PN} webapp" "git-annex" ${PN}.xpm "Office" + fi +} diff --git a/dev-vcs/git-annex/git-annex-5.20141203.ebuild b/dev-vcs/git-annex/git-annex-5.20141203.ebuild new file mode 100644 index 000000000000..8fc0419ce801 --- /dev/null +++ b/dev-vcs/git-annex/git-annex-5.20141203.ebuild @@ -0,0 +1,165 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +# ebuild generated by hackport 0.3.5 + +CABAL_FEATURES="bin" +inherit haskell-cabal + +DESCRIPTION="manage files with git, without checking their contents into git" +HOMEPAGE="http://git-annex.branchable.com/" +SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz" +RESTRICT="test" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~x86 ~amd64-linux" +IUSE="android androidsplice +assistant +cryptohash +dbus +dns doc +desktop-notify ekg +feed +inotify +pairing +production +quvi +s3 +tahoe +tdfa +testsuite +webapp +webapp-secure +webdav +xmpp" + +RDEPEND="dev-vcs/git +" +DEPEND="${RDEPEND} + dev-haskell/async + dev-haskell/bloomfilter + >=dev-haskell/cabal-1.8 + dev-haskell/case-insensitive + dev-haskell/dataenc + dev-haskell/data-default + dev-haskell/dlist + dev-haskell/edit-distance + >=dev-haskell/exceptions-0.6 + dev-haskell/hslogger + dev-haskell/http-conduit + dev-haskell/http-types + dev-haskell/ifelse + dev-haskell/json[generic] + dev-haskell/missingh + dev-haskell/monad-control + >=dev-haskell/mtl-2 + >=dev-haskell/network-2.0 + >=dev-haskell/quickcheck-2.1:2 + dev-haskell/random + dev-haskell/safesemaphore + dev-haskell/sha + >=dev-haskell/stm-2.3 + dev-haskell/text + dev-haskell/transformers + dev-haskell/unix-compat + dev-haskell/utf8-string + dev-haskell/uuid + >=dev-lang/ghc-7.4.1 + android? ( dev-haskell/data-endian ) + assistant? ( >=dev-haskell/stm-2.3 + inotify? ( dev-haskell/hinotify ) ) + cryptohash? ( >=dev-haskell/cryptohash-0.10.0 ) + dbus? ( >=dev-haskell/dbus-0.10.3 ) + dns? ( dev-haskell/dns ) + ekg? ( dev-haskell/aeson + dev-haskell/ekg + dev-haskell/http-types ) + feed? ( dev-haskell/feed ) + pairing? ( dev-haskell/network-info + dev-haskell/network-multicast ) + quvi? ( dev-haskell/aeson ) + s3? ( >=dev-haskell/aws-0.9.2 + dev-haskell/conduit + dev-haskell/conduit-extra + dev-haskell/resourcet ) + tdfa? ( dev-haskell/regex-tdfa ) + tahoe? ( dev-haskell/aeson ) + testsuite? ( + dev-haskell/crypto-api + >=dev-haskell/tasty-0.7 + dev-haskell/tasty-hunit + dev-haskell/tasty-quickcheck + dev-haskell/tasty-rerun + >=dev-haskell/optparse-applicative-0.9.1 + ) + webapp? ( dev-haskell/blaze-builder + dev-haskell/aeson + dev-haskell/clientsession + dev-haskell/crypto-api + dev-haskell/hamlet + dev-haskell/http-types + dev-haskell/path-pieces + dev-haskell/transformers + dev-haskell/shakespeare + dev-haskell/wai + dev-haskell/wai-extra + dev-haskell/warp + dev-haskell/warp-tls + dev-haskell/yesod + dev-haskell/yesod-core + dev-haskell/yesod-default + dev-haskell/yesod-form + dev-haskell/yesod-static + webapp-secure? ( dev-haskell/warp-tls + dev-haskell/securemem + dev-haskell/byteable ) ) + webdav? ( >=dev-haskell/dav-1.0 + dev-haskell/http-client + dev-haskell/xml-conduit ) + xmpp? ( >=dev-haskell/gnutls-0.1.4 + dev-haskell/network-protocol-xmpp + dev-haskell/xml-types ) + dev-lang/perl + doc? ( www-apps/ikiwiki net-misc/rsync ) +" + +src_configure() { + haskell-cabal_src_configure \ + $(cabal_flag android android) \ + $(cabal_flag androidsplice androidsplice) \ + $(cabal_flag assistant assistant) \ + $(cabal_flag cryptohash cryptohash) \ + $(cabal_flag dbus dbus) \ + $(cabal_flag desktop-notify desktop-notify) \ + $(cabal_flag dns dns) \ + $(cabal_flag ekg ekg) \ + $(cabal_flag feed feed) \ + $(cabal_flag inotify inotify) \ + $(cabal_flag pairing pairing) \ + $(cabal_flag production production) \ + $(cabal_flag quvi quvi) \ + $(cabal_flag s3 s3) \ + $(cabal_flag tahoe tahoe) \ + $(cabal_flag tdfa tdfa) \ + $(cabal_flag testsuite testsuite) \ + $(cabal_flag webapp webapp) \ + $(cabal_flag webapp-secure webapp-secure) \ + $(cabal_flag webdav webdav) \ + $(cabal_flag xmpp xmpp) +} + +src_compile() { + haskell-cabal_src_compile + use doc && emake docs +} + +src_test() { + if use webapp; then + export GIT_CONFIG=${T}/temp-git-config + git config user.email "git@src_test" + git config user.name "Mr. ${P} The Test" + + emake test + fi +} + +src_install() { + haskell-cabal_src_install + dosym git-annex /usr/bin/git-annex-shell # standard make install does more, than needed + + # install-mans wants ikiwiki. It returns 0 and builds the man pages without ikiwiki. + emake install-mans DESTDIR="${D}" PREFIX="${EPREFIX}/usr" + use doc && emake install-docs DESTDIR="${D}" PREFIX="${EPREFIX}/usr" + mv "${ED}"/usr/share/doc/{${PN},${PF}} + dodoc CHANGELOG README + if use webapp ; then + doicon "${FILESDIR}"/${PN}.xpm + make_desktop_entry "${PN} webapp" "git-annex" ${PN}.xpm "Office" + fi +} diff --git a/dev-vcs/git-annex/git-annex-5.20141231.ebuild b/dev-vcs/git-annex/git-annex-5.20141231.ebuild new file mode 100644 index 000000000000..914cf061ba30 --- /dev/null +++ b/dev-vcs/git-annex/git-annex-5.20141231.ebuild @@ -0,0 +1,173 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +# ebuild generated by hackport 0.3.5 + +CABAL_FEATURES="bin" +inherit haskell-cabal + +DESCRIPTION="manage files with git, without checking their contents into git" +HOMEPAGE="http://git-annex.branchable.com/" +SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz" +RESTRICT="test" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~x86 ~amd64-linux" +IUSE="android androidsplice +assistant +cryptohash +dbus +dns doc +desktop-notify ekg +feed +inotify +pairing +production +quvi +s3 +tahoe +tdfa +testsuite torrentparser +webapp +webapp-secure +webdav +xmpp" + +RDEPEND="dev-vcs/git +" +DEPEND="${RDEPEND} + dev-haskell/async + dev-haskell/bloomfilter + >=dev-haskell/cabal-1.8 + dev-haskell/case-insensitive + dev-haskell/dataenc + dev-haskell/data-default + dev-haskell/dlist + dev-haskell/edit-distance + >=dev-haskell/exceptions-0.6 + dev-haskell/hslogger + dev-haskell/http-conduit + dev-haskell/http-types + dev-haskell/ifelse + dev-haskell/json[generic] + dev-haskell/missingh + dev-haskell/monad-control + >=dev-haskell/mtl-2 + >=dev-haskell/network-2.0 + dev-haskell/network-uri + >=dev-haskell/quickcheck-2.1:2 + dev-haskell/random + dev-haskell/safesemaphore + dev-haskell/sha + >=dev-haskell/stm-2.3 + dev-haskell/text + dev-haskell/transformers + dev-haskell/unix-compat + dev-haskell/utf8-string + dev-haskell/uuid + >=dev-lang/ghc-7.4.1 + android? ( dev-haskell/data-endian ) + assistant? ( >=dev-haskell/stm-2.3 + inotify? ( dev-haskell/hinotify ) ) + cryptohash? ( >=dev-haskell/cryptohash-0.10.0 ) + dbus? ( >=dev-haskell/dbus-0.10.3 ) + dns? ( dev-haskell/dns ) + ekg? ( dev-haskell/aeson + dev-haskell/ekg + dev-haskell/http-types ) + feed? ( dev-haskell/feed ) + pairing? ( dev-haskell/network-info + dev-haskell/network-multicast ) + quvi? ( dev-haskell/aeson ) + s3? ( >=dev-haskell/aws-0.9.2 + dev-haskell/conduit + dev-haskell/conduit-extra + dev-haskell/http-client + dev-haskell/resourcet ) + tdfa? ( dev-haskell/regex-tdfa ) + tahoe? ( dev-haskell/aeson ) + testsuite? ( + dev-haskell/crypto-api + >=dev-haskell/tasty-0.7 + dev-haskell/tasty-hunit + dev-haskell/tasty-quickcheck + dev-haskell/tasty-rerun + >=dev-haskell/optparse-applicative-0.9.1 + ) + torrentparser? ( >=dev-haskell/torrent-10000.0.0 ) + webapp? ( dev-haskell/blaze-builder + dev-haskell/aeson + dev-haskell/clientsession + dev-haskell/crypto-api + dev-haskell/hamlet + dev-haskell/http-types + dev-haskell/path-pieces + dev-haskell/transformers + dev-haskell/shakespeare + dev-haskell/wai + dev-haskell/wai-extra + dev-haskell/warp + dev-haskell/warp-tls + dev-haskell/yesod + dev-haskell/yesod-core + dev-haskell/yesod-default + dev-haskell/yesod-form + dev-haskell/yesod-static + webapp-secure? ( dev-haskell/warp-tls + dev-haskell/securemem + dev-haskell/byteable ) ) + webdav? ( >=dev-haskell/dav-1.0 + dev-haskell/http-client + dev-haskell/xml-conduit ) + xmpp? ( >=dev-haskell/gnutls-0.1.4 + dev-haskell/network-protocol-xmpp + dev-haskell/xml-types ) + dev-lang/perl + doc? ( www-apps/ikiwiki net-misc/rsync ) +" + +src_configure() { + haskell-cabal_src_configure \ + $(cabal_flag android android) \ + $(cabal_flag androidsplice androidsplice) \ + $(cabal_flag assistant assistant) \ + $(cabal_flag cryptohash cryptohash) \ + $(cabal_flag dbus dbus) \ + $(cabal_flag desktop-notify desktop-notify) \ + $(cabal_flag dns dns) \ + $(cabal_flag ekg ekg) \ + $(cabal_flag feed feed) \ + $(cabal_flag inotify inotify) \ + $(cabal_flag pairing pairing) \ + $(cabal_flag production production) \ + $(cabal_flag quvi quvi) \ + $(cabal_flag s3 s3) \ + $(cabal_flag tahoe tahoe) \ + $(cabal_flag tdfa tdfa) \ + $(cabal_flag testsuite testsuite) \ + $(cabal_flag webapp webapp) \ + $(cabal_flag webapp-secure webapp-secure) \ + $(cabal_flag webdav webdav) \ + $(cabal_flag xmpp xmpp) +} + +src_prepare() { + cabal_chdeps \ + ', aws (>= 0.9.2)' ', aws (>= 0.9.2), http-client' +} + +src_compile() { + haskell-cabal_src_compile + use doc && emake docs +} + +src_test() { + if use webapp; then + export GIT_CONFIG=${T}/temp-git-config + git config user.email "git@src_test" + git config user.name "Mr. ${P} The Test" + + emake test + fi +} + +src_install() { + haskell-cabal_src_install + dosym git-annex /usr/bin/git-annex-shell # standard make install does more, than needed + + # install-mans wants ikiwiki. It returns 0 and builds the man pages without ikiwiki. + emake install-mans DESTDIR="${D}" PREFIX="${EPREFIX}/usr" + use doc && emake install-docs DESTDIR="${D}" PREFIX="${EPREFIX}/usr" + mv "${ED}"/usr/share/doc/{${PN},${PF}} + dodoc CHANGELOG README + if use webapp ; then + doicon "${FILESDIR}"/${PN}.xpm + make_desktop_entry "${PN} webapp" "git-annex" ${PN}.xpm "Office" + fi +} diff --git a/dev-vcs/git-annex/git-annex-5.20150219.ebuild b/dev-vcs/git-annex/git-annex-5.20150219.ebuild new file mode 100644 index 000000000000..54c050fdb27e --- /dev/null +++ b/dev-vcs/git-annex/git-annex-5.20150219.ebuild @@ -0,0 +1,172 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +# ebuild generated by hackport 0.3.5 + +CABAL_FEATURES="bin" +inherit haskell-cabal + +DESCRIPTION="manage files with git, without checking their contents into git" +HOMEPAGE="http://git-annex.branchable.com/" +SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz" +RESTRICT="test" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~x86 ~amd64-linux" +IUSE="android androidsplice +assistant +dbus +dns doc +desktop-notify ekg +feed +inotify +pairing +production +quvi +s3 +tahoe +tdfa +testsuite torrentparser +webapp +webapp-secure +webdav +xmpp" + +RDEPEND="dev-vcs/git +" +DEPEND="${RDEPEND} + dev-haskell/async + dev-haskell/bloomfilter + >=dev-haskell/cabal-1.8 + dev-haskell/case-insensitive + >=dev-haskell/cryptohash-0.10.0 + dev-haskell/dataenc + dev-haskell/data-default + dev-haskell/dlist + dev-haskell/edit-distance + >=dev-haskell/exceptions-0.6 + dev-haskell/hslogger + dev-haskell/http-conduit + dev-haskell/http-types + dev-haskell/ifelse + dev-haskell/json[generic] + dev-haskell/missingh + dev-haskell/monad-control + >=dev-haskell/mtl-2 + >=dev-haskell/network-2.0 + dev-haskell/network-uri + >=dev-haskell/quickcheck-2.1:2 + dev-haskell/random + dev-haskell/safesemaphore + dev-haskell/sha + >=dev-haskell/stm-2.3 + dev-haskell/text + dev-haskell/transformers + dev-haskell/unix-compat + dev-haskell/utf8-string + dev-haskell/uuid + >=dev-lang/ghc-7.4.1 + android? ( dev-haskell/data-endian ) + assistant? ( >=dev-haskell/stm-2.3 + inotify? ( dev-haskell/hinotify ) ) + dbus? ( >=dev-haskell/dbus-0.10.3 ) + dns? ( dev-haskell/dns ) + ekg? ( dev-haskell/aeson + dev-haskell/ekg + dev-haskell/http-types ) + feed? ( dev-haskell/feed ) + pairing? ( dev-haskell/network-info + dev-haskell/network-multicast ) + quvi? ( dev-haskell/aeson ) + s3? ( >=dev-haskell/aws-0.9.2 + dev-haskell/conduit + dev-haskell/conduit-extra + dev-haskell/http-client + dev-haskell/resourcet ) + tdfa? ( dev-haskell/regex-tdfa ) + tahoe? ( dev-haskell/aeson ) + testsuite? ( + dev-haskell/crypto-api + >=dev-haskell/tasty-0.7 + dev-haskell/tasty-hunit + dev-haskell/tasty-quickcheck + dev-haskell/tasty-rerun + >=dev-haskell/optparse-applicative-0.9.1 + ) + torrentparser? ( >=dev-haskell/torrent-10000.0.0 ) + webapp? ( dev-haskell/blaze-builder + dev-haskell/aeson + dev-haskell/clientsession + dev-haskell/crypto-api + dev-haskell/hamlet + dev-haskell/http-types + dev-haskell/path-pieces + dev-haskell/transformers + dev-haskell/shakespeare + dev-haskell/wai + dev-haskell/wai-extra + dev-haskell/warp + dev-haskell/warp-tls + dev-haskell/yesod + dev-haskell/yesod-core + dev-haskell/yesod-default + dev-haskell/yesod-form + dev-haskell/yesod-static + webapp-secure? ( dev-haskell/warp-tls + dev-haskell/securemem + dev-haskell/byteable ) ) + webdav? ( >=dev-haskell/dav-1.0 + dev-haskell/http-client + dev-haskell/xml-conduit ) + xmpp? ( >=dev-haskell/gnutls-0.1.4 + dev-haskell/network-protocol-xmpp + dev-haskell/xml-types ) + dev-lang/perl + doc? ( www-apps/ikiwiki net-misc/rsync ) +" + +src_configure() { + haskell-cabal_src_configure \ + $(cabal_flag android android) \ + $(cabal_flag androidsplice androidsplice) \ + $(cabal_flag assistant assistant) \ + $(cabal_flag dbus dbus) \ + $(cabal_flag desktop-notify desktop-notify) \ + $(cabal_flag dns dns) \ + $(cabal_flag ekg ekg) \ + $(cabal_flag feed feed) \ + $(cabal_flag inotify inotify) \ + $(cabal_flag pairing pairing) \ + $(cabal_flag production production) \ + $(cabal_flag quvi quvi) \ + $(cabal_flag s3 s3) \ + $(cabal_flag tahoe tahoe) \ + $(cabal_flag tdfa tdfa) \ + $(cabal_flag testsuite testsuite) \ + $(cabal_flag webapp webapp) \ + $(cabal_flag webapp-secure webapp-secure) \ + $(cabal_flag webdav webdav) \ + $(cabal_flag xmpp xmpp) +} + +src_prepare() { + cabal_chdeps \ + ', aws (>= 0.9.2)' ', aws (>= 0.9.2), http-client' +} + +src_compile() { + haskell-cabal_src_compile + use doc && emake docs +} + +src_test() { + if use webapp; then + export GIT_CONFIG=${T}/temp-git-config + git config user.email "git@src_test" + git config user.name "Mr. ${P} The Test" + + emake test + fi +} + +src_install() { + haskell-cabal_src_install + dosym git-annex /usr/bin/git-annex-shell # standard make install does more, than needed + + # install-mans wants ikiwiki. It returns 0 and builds the man pages without ikiwiki. + emake install-mans DESTDIR="${D}" PREFIX="${EPREFIX}/usr" + use doc && emake install-docs DESTDIR="${D}" PREFIX="${EPREFIX}/usr" + mv "${ED}"/usr/share/doc/{${PN},${PF}} + dodoc CHANGELOG README + if use webapp ; then + doicon "${FILESDIR}"/${PN}.xpm + make_desktop_entry "${PN} webapp" "git-annex" ${PN}.xpm "Office" + fi +} diff --git a/dev-vcs/git-annex/git-annex-5.20150327.ebuild b/dev-vcs/git-annex/git-annex-5.20150327.ebuild new file mode 100644 index 000000000000..8a8fe431782c --- /dev/null +++ b/dev-vcs/git-annex/git-annex-5.20150327.ebuild @@ -0,0 +1,172 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +# ebuild generated by hackport 0.3.5 + +CABAL_FEATURES="bin" +inherit haskell-cabal + +DESCRIPTION="manage files with git, without checking their contents into git" +HOMEPAGE="http://git-annex.branchable.com/" +SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz" +RESTRICT="test" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~x86 ~amd64-linux" +IUSE="android androidsplice +assistant +dbus +dns doc +desktop-notify ekg +feed +inotify +pairing +production +quvi +s3 +tahoe +tdfa +testsuite torrentparser +webapp +webapp-secure +webdav +xmpp" + +RDEPEND="dev-vcs/git +" +DEPEND="${RDEPEND} + dev-haskell/async + dev-haskell/bloomfilter + >=dev-haskell/cabal-1.8 + dev-haskell/case-insensitive + >=dev-haskell/cryptohash-0.10.0 + dev-haskell/dataenc + dev-haskell/data-default + dev-haskell/dlist + dev-haskell/edit-distance + dev-haskell/esqueleto + >=dev-haskell/exceptions-0.6 + dev-haskell/hslogger + dev-haskell/http-conduit + dev-haskell/http-types + dev-haskell/ifelse + dev-haskell/json[generic] + dev-haskell/missingh + dev-haskell/monad-control + dev-haskell/monad-logger + >=dev-haskell/mtl-2 + >=dev-haskell/network-2.0 + dev-haskell/network-uri + dev-haskell/persistent + dev-haskell/persistent-sqlite + dev-haskell/persistent-template + >=dev-haskell/quickcheck-2.1:2 + dev-haskell/random + dev-haskell/resourcet + dev-haskell/safesemaphore + dev-haskell/sha + >=dev-haskell/stm-2.3 + dev-haskell/text + dev-haskell/transformers + dev-haskell/unix-compat + dev-haskell/utf8-string + dev-haskell/uuid + >=dev-lang/ghc-7.4.1 + android? ( dev-haskell/data-endian ) + assistant? ( >=dev-haskell/stm-2.3 + inotify? ( dev-haskell/hinotify ) ) + dbus? ( >=dev-haskell/dbus-0.10.3 ) + dns? ( dev-haskell/dns ) + ekg? ( dev-haskell/aeson + dev-haskell/ekg + dev-haskell/http-types ) + feed? ( >=dev-haskell/feed-0.3.4 ) + pairing? ( dev-haskell/network-info + dev-haskell/network-multicast ) + quvi? ( dev-haskell/aeson ) + s3? ( >=dev-haskell/aws-0.9.2 + dev-haskell/conduit + dev-haskell/conduit-extra + dev-haskell/http-client ) + tdfa? ( dev-haskell/regex-tdfa ) + tahoe? ( dev-haskell/aeson ) + testsuite? ( + dev-haskell/crypto-api + >=dev-haskell/tasty-0.7 + dev-haskell/tasty-hunit + dev-haskell/tasty-quickcheck + dev-haskell/tasty-rerun + >=dev-haskell/optparse-applicative-0.9.1 + ) + torrentparser? ( >=dev-haskell/torrent-10000.0.0 ) + webapp? ( dev-haskell/blaze-builder + dev-haskell/aeson + dev-haskell/clientsession + dev-haskell/crypto-api + dev-haskell/hamlet + dev-haskell/http-types + dev-haskell/path-pieces + dev-haskell/transformers + dev-haskell/shakespeare + dev-haskell/wai + dev-haskell/wai-extra + dev-haskell/warp + dev-haskell/warp-tls + dev-haskell/yesod + dev-haskell/yesod-core + dev-haskell/yesod-default + dev-haskell/yesod-form + dev-haskell/yesod-static + webapp-secure? ( dev-haskell/warp-tls + dev-haskell/securemem + dev-haskell/byteable ) ) + webdav? ( >=dev-haskell/dav-1.0 + dev-haskell/http-client + dev-haskell/xml-conduit ) + xmpp? ( >=dev-haskell/gnutls-0.1.4 + dev-haskell/network-protocol-xmpp + dev-haskell/xml-types ) + dev-lang/perl + doc? ( www-apps/ikiwiki net-misc/rsync ) +" + +src_configure() { + haskell-cabal_src_configure \ + $(cabal_flag android android) \ + $(cabal_flag androidsplice androidsplice) \ + $(cabal_flag assistant assistant) \ + $(cabal_flag dbus dbus) \ + $(cabal_flag desktop-notify desktop-notify) \ + $(cabal_flag dns dns) \ + $(cabal_flag ekg ekg) \ + $(cabal_flag feed feed) \ + $(cabal_flag inotify inotify) \ + $(cabal_flag pairing pairing) \ + $(cabal_flag production production) \ + $(cabal_flag quvi quvi) \ + $(cabal_flag s3 s3) \ + $(cabal_flag tahoe tahoe) \ + $(cabal_flag tdfa tdfa) \ + $(cabal_flag testsuite testsuite) \ + $(cabal_flag webapp webapp) \ + $(cabal_flag webapp-secure webapp-secure) \ + $(cabal_flag webdav webdav) \ + $(cabal_flag xmpp xmpp) +} + +src_compile() { + haskell-cabal_src_compile + use doc && emake docs +} + +src_test() { + if use webapp; then + export GIT_CONFIG=${T}/temp-git-config + git config user.email "git@src_test" + git config user.name "Mr. ${P} The Test" + + emake test + fi +} + +src_install() { + haskell-cabal_src_install + dosym git-annex /usr/bin/git-annex-shell # standard make install does more, than needed + + # install-mans wants ikiwiki. It returns 0 and builds the man pages without ikiwiki. + emake install-mans DESTDIR="${D}" PREFIX="${EPREFIX}/usr" + use doc && emake install-docs DESTDIR="${D}" PREFIX="${EPREFIX}/usr" + mv "${ED}"/usr/share/doc/{${PN},${PF}} + dodoc CHANGELOG README + if use webapp ; then + doicon "${FILESDIR}"/${PN}.xpm + make_desktop_entry "${PN} webapp" "git-annex" ${PN}.xpm "Office" + fi +} diff --git a/dev-vcs/git-annex/git-annex-5.20150617.ebuild b/dev-vcs/git-annex/git-annex-5.20150617.ebuild new file mode 100644 index 000000000000..f98fc6ee72ae --- /dev/null +++ b/dev-vcs/git-annex/git-annex-5.20150617.ebuild @@ -0,0 +1,178 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +# ebuild generated by hackport 0.3.5 + +CABAL_FEATURES="bin" +inherit haskell-cabal + +DESCRIPTION="manage files with git, without checking their contents into git" +HOMEPAGE="http://git-annex.branchable.com/" +SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz" +RESTRICT="test" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~x86 ~amd64-linux" +IUSE="android androidsplice asciiprogress +assistant +dbus +dns doc +desktop-notify ekg +feed +inotify +pairing +production +quvi +s3 +tahoe +tdfa +testsuite torrentparser +webapp +webapp-secure +webdav +xmpp" + +RDEPEND="dev-vcs/git +" +DEPEND="${RDEPEND} + dev-haskell/async + dev-haskell/bloomfilter + >=dev-haskell/cabal-1.8 + dev-haskell/case-insensitive + >=dev-haskell/cryptohash-0.11.0 + dev-haskell/data-default + dev-haskell/dlist + dev-haskell/edit-distance + dev-haskell/esqueleto + >=dev-haskell/exceptions-0.6 + dev-haskell/hslogger + dev-haskell/http-conduit + dev-haskell/http-types + dev-haskell/ifelse + dev-haskell/json[generic] + dev-haskell/missingh + dev-haskell/monad-control + dev-haskell/monad-logger + >=dev-haskell/mtl-2 + >=dev-haskell/network-2.0 + dev-haskell/network-uri + dev-haskell/persistent + dev-haskell/persistent-sqlite + dev-haskell/persistent-template + >=dev-haskell/quickcheck-2.1:2 + dev-haskell/random + dev-haskell/resourcet + dev-haskell/safesemaphore + dev-haskell/sandi + >=dev-haskell/stm-2.3 + dev-haskell/text + dev-haskell/transformers + dev-haskell/unix-compat + dev-haskell/utf8-string + dev-haskell/uuid + >=dev-lang/ghc-7.4.1 + android? ( dev-haskell/data-endian ) + asciiprogress? ( dev-haskell/ascii-progress + dev-haskell/terminal-size ) + assistant? ( >=dev-haskell/stm-2.3 + inotify? ( dev-haskell/hinotify ) ) + dbus? ( >=dev-haskell/dbus-0.10.3 ) + dns? ( dev-haskell/dns ) + ekg? ( dev-haskell/aeson + dev-haskell/ekg + dev-haskell/http-types ) + feed? ( >=dev-haskell/feed-0.3.4 ) + dev-haskell/old-locale + pairing? ( dev-haskell/network-info + dev-haskell/network-multicast ) + quvi? ( dev-haskell/aeson ) + s3? ( >=dev-haskell/aws-0.9.2 + dev-haskell/conduit + dev-haskell/conduit-extra + dev-haskell/http-client ) + tdfa? ( dev-haskell/regex-tdfa ) + tahoe? ( dev-haskell/aeson ) + testsuite? ( + dev-haskell/crypto-api + >=dev-haskell/tasty-0.7 + dev-haskell/tasty-hunit + dev-haskell/tasty-quickcheck + dev-haskell/tasty-rerun + >=dev-haskell/optparse-applicative-0.9.1 + ) + torrentparser? ( >=dev-haskell/torrent-10000.0.0 ) + webapp? ( dev-haskell/blaze-builder + dev-haskell/aeson + dev-haskell/clientsession + dev-haskell/crypto-api + dev-haskell/http-types + >=dev-haskell/path-pieces-0.1.4 + dev-haskell/transformers + >=dev-haskell/shakespeare-2 + dev-haskell/wai + dev-haskell/wai-extra + >=dev-haskell/warp-3.0.0.5 + dev-haskell/warp-tls + >=dev-haskell/yesod-1.2.6 + >=dev-haskell/yesod-core-1.2.19 + >=dev-haskell/yesod-default-1.2.0 + >=dev-haskell/yesod-form-1.3.15 + >=dev-haskell/yesod-static-1.2.4 + webapp-secure? ( dev-haskell/warp-tls + dev-haskell/securemem + dev-haskell/byteable ) ) + webdav? ( >=dev-haskell/dav-1.0 + dev-haskell/http-client ) + xmpp? ( >=dev-haskell/gnutls-0.1.4 + dev-haskell/network-protocol-xmpp + dev-haskell/xml-types ) + dev-lang/perl + doc? ( www-apps/ikiwiki net-misc/rsync ) +" + +src_prepare() { + cabal_chdeps \ + 'ascii-progress (<= 0.2.1.2)' 'ascii-progress' +} + +src_configure() { + haskell-cabal_src_configure \ + $(cabal_flag android android) \ + $(cabal_flag androidsplice androidsplice) \ + $(cabal_flag asciiprogress asciiprogress) \ + $(cabal_flag assistant assistant) \ + $(cabal_flag dbus dbus) \ + $(cabal_flag desktop-notify desktop-notify) \ + $(cabal_flag dns dns) \ + $(cabal_flag ekg ekg) \ + $(cabal_flag feed feed) \ + $(cabal_flag inotify inotify) \ + $(cabal_flag pairing pairing) \ + $(cabal_flag production production) \ + $(cabal_flag quvi quvi) \ + $(cabal_flag s3 s3) \ + $(cabal_flag tahoe tahoe) \ + $(cabal_flag tdfa tdfa) \ + $(cabal_flag testsuite testsuite) \ + $(cabal_flag webapp webapp) \ + $(cabal_flag webapp-secure webapp-secure) \ + $(cabal_flag webdav webdav) \ + $(cabal_flag xmpp xmpp) +} + +src_compile() { + haskell-cabal_src_compile + use doc && emake docs +} + +src_test() { + if use webapp; then + export GIT_CONFIG=${T}/temp-git-config + git config user.email "git@src_test" + git config user.name "Mr. ${P} The Test" + + emake test + fi +} + +src_install() { + haskell-cabal_src_install + dosym git-annex /usr/bin/git-annex-shell # standard make install does more, than needed + + # install-mans wants ikiwiki. It returns 0 and builds the man pages without ikiwiki. + emake install-mans DESTDIR="${D}" PREFIX="${EPREFIX}/usr" + use doc && emake install-docs DESTDIR="${D}" PREFIX="${EPREFIX}/usr" + mv "${ED}"/usr/share/doc/{${PN},${PF}} + dodoc CHANGELOG README + if use webapp ; then + doicon "${FILESDIR}"/${PN}.xpm + make_desktop_entry "${PN} webapp" "git-annex" ${PN}.xpm "Office" + fi +} diff --git a/dev-vcs/git-annex/git-annex-5.20150710.ebuild b/dev-vcs/git-annex/git-annex-5.20150710.ebuild new file mode 100644 index 000000000000..3f9f33f30372 --- /dev/null +++ b/dev-vcs/git-annex/git-annex-5.20150710.ebuild @@ -0,0 +1,178 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +# ebuild generated by hackport 0.3.5 + +CABAL_FEATURES="bin" +inherit haskell-cabal + +DESCRIPTION="manage files with git, without checking their contents into git" +HOMEPAGE="http://git-annex.branchable.com/" +SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz" +RESTRICT="test" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~x86 ~amd64-linux" +IUSE="android androidsplice asciiprogress +assistant +dbus +dns doc +desktop-notify ekg +feed +inotify +pairing +production +quvi +s3 +tahoe +tdfa +testsuite torrentparser +webapp +webapp-secure +webdav +xmpp" + +RDEPEND="dev-vcs/git +" +DEPEND="${RDEPEND} + dev-haskell/async + dev-haskell/bloomfilter + >=dev-haskell/cabal-1.8 + dev-haskell/case-insensitive + >=dev-haskell/cryptohash-0.11.0 + dev-haskell/data-default + dev-haskell/dlist + dev-haskell/edit-distance + dev-haskell/esqueleto + >=dev-haskell/exceptions-0.6 + dev-haskell/hslogger + dev-haskell/http-conduit + dev-haskell/http-types + dev-haskell/ifelse + dev-haskell/json[generic] + dev-haskell/missingh + dev-haskell/monad-control + dev-haskell/monad-logger + >=dev-haskell/mtl-2 + >=dev-haskell/network-2.0 + dev-haskell/network-uri + dev-haskell/persistent + dev-haskell/persistent-sqlite + dev-haskell/persistent-template + >=dev-haskell/quickcheck-2.1:2 + dev-haskell/random + dev-haskell/resourcet + dev-haskell/safesemaphore + dev-haskell/sandi + >=dev-haskell/stm-2.3 + dev-haskell/text + dev-haskell/transformers + dev-haskell/unix-compat + dev-haskell/utf8-string + dev-haskell/uuid + >=dev-lang/ghc-7.4.1 + android? ( dev-haskell/data-endian ) + asciiprogress? ( dev-haskell/ascii-progress + dev-haskell/terminal-size ) + assistant? ( >=dev-haskell/stm-2.3 + inotify? ( dev-haskell/hinotify ) ) + dbus? ( >=dev-haskell/dbus-0.10.3 ) + dns? ( dev-haskell/dns ) + ekg? ( dev-haskell/aeson + dev-haskell/ekg + dev-haskell/http-types ) + feed? ( >=dev-haskell/feed-0.3.4 ) + dev-haskell/old-locale + pairing? ( dev-haskell/network-info + dev-haskell/network-multicast ) + quvi? ( dev-haskell/aeson ) + s3? ( >=dev-haskell/aws-0.9.2 + dev-haskell/conduit + dev-haskell/conduit-extra + dev-haskell/http-client ) + tdfa? ( dev-haskell/regex-tdfa ) + tahoe? ( dev-haskell/aeson ) + testsuite? ( + dev-haskell/crypto-api + >=dev-haskell/tasty-0.7 + dev-haskell/tasty-hunit + dev-haskell/tasty-quickcheck + dev-haskell/tasty-rerun + >=dev-haskell/optparse-applicative-0.10 + ) + torrentparser? ( >=dev-haskell/torrent-10000.0.0 ) + webapp? ( dev-haskell/blaze-builder + dev-haskell/aeson + dev-haskell/clientsession + dev-haskell/crypto-api + dev-haskell/http-types + >=dev-haskell/path-pieces-0.1.4 + dev-haskell/transformers + >=dev-haskell/shakespeare-2 + dev-haskell/wai + dev-haskell/wai-extra + >=dev-haskell/warp-3.0.0.5 + dev-haskell/warp-tls + >=dev-haskell/yesod-1.2.6 + >=dev-haskell/yesod-core-1.2.19 + >=dev-haskell/yesod-default-1.2.0 + >=dev-haskell/yesod-form-1.3.15 + >=dev-haskell/yesod-static-1.2.4 + webapp-secure? ( dev-haskell/warp-tls + dev-haskell/securemem + dev-haskell/byteable ) ) + webdav? ( >=dev-haskell/dav-1.0 + dev-haskell/http-client ) + xmpp? ( >=dev-haskell/gnutls-0.1.4 + dev-haskell/network-protocol-xmpp + dev-haskell/xml-types ) + dev-lang/perl + doc? ( www-apps/ikiwiki net-misc/rsync ) +" + +src_prepare() { + cabal_chdeps \ + 'ascii-progress (<= 0.2.1.2)' 'ascii-progress' +} + +src_configure() { + haskell-cabal_src_configure \ + $(cabal_flag android android) \ + $(cabal_flag androidsplice androidsplice) \ + $(cabal_flag asciiprogress asciiprogress) \ + $(cabal_flag assistant assistant) \ + $(cabal_flag dbus dbus) \ + $(cabal_flag desktop-notify desktop-notify) \ + $(cabal_flag dns dns) \ + $(cabal_flag ekg ekg) \ + $(cabal_flag feed feed) \ + $(cabal_flag inotify inotify) \ + $(cabal_flag pairing pairing) \ + $(cabal_flag production production) \ + $(cabal_flag quvi quvi) \ + $(cabal_flag s3 s3) \ + $(cabal_flag tahoe tahoe) \ + $(cabal_flag tdfa tdfa) \ + $(cabal_flag testsuite testsuite) \ + $(cabal_flag webapp webapp) \ + $(cabal_flag webapp-secure webapp-secure) \ + $(cabal_flag webdav webdav) \ + $(cabal_flag xmpp xmpp) +} + +src_compile() { + haskell-cabal_src_compile + use doc && emake docs +} + +src_test() { + if use webapp; then + export GIT_CONFIG=${T}/temp-git-config + git config user.email "git@src_test" + git config user.name "Mr. ${P} The Test" + + emake test + fi +} + +src_install() { + haskell-cabal_src_install + dosym git-annex /usr/bin/git-annex-shell # standard make install does more, than needed + + # install-mans wants ikiwiki. It returns 0 and builds the man pages without ikiwiki. + emake install-mans DESTDIR="${D}" PREFIX="${EPREFIX}/usr" + use doc && emake install-docs DESTDIR="${D}" PREFIX="${EPREFIX}/usr" + mv "${ED}"/usr/share/doc/{${PN},${PF}} + dodoc CHANGELOG README + if use webapp ; then + doicon "${FILESDIR}"/${PN}.xpm + make_desktop_entry "${PN} webapp" "git-annex" ${PN}.xpm "Office" + fi +} diff --git a/dev-vcs/git-annex/metadata.xml b/dev-vcs/git-annex/metadata.xml new file mode 100644 index 000000000000..b36e0eee5dd1 --- /dev/null +++ b/dev-vcs/git-annex/metadata.xml @@ -0,0 +1,41 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>haskell</herd> + <longdescription> + git-annex allows managing files with git, without checking the file + contents into git. While that may seem paradoxical, it is useful when + dealing with files larger than git can currently easily handle, whether due + to limitations in memory, checksumming time, or disk space. + + Even without file content tracking, being able to manage files with git, + move files around and delete files with versioned directory trees, and use + branches and distributed clones, are all very handy reasons to use git. And + annexed files can co-exist in the same git repository with regularly + versioned files, which is convenient for maintaining documents, Makefiles, + etc that are associated with annexed files but that benefit from full + revision control. + </longdescription> + <use> + <flag name="assistant">Enable git-annex assistant and watch command</flag> + <flag name="android">Building for Android</flag> + <flag name="androidsplice">Get TH splices for Android.</flag> + <flag name="asciiprogress">Use ascii-progress library (experimental)</flag> + <flag name="cryptohash">Enable use of cryptohash for checksumming</flag> + <flag name="dns">Enable the haskell DNS library for DNS lookup</flag> + <flag name="desktop-notify">Enable desktop environment notifications</flag> + <flag name="ekg">Enable use of EKG to monitor git-annex as it runs.</flag> + <flag name="feed">Enable podcast feed support</flag> + <flag name="production">Enable production build (slower build; faster binary)</flag> + <flag name="pairing">Enable pairing of git annex repositories</flag> + <flag name="quvi">Enable use of quvi to download videos</flag> + <flag name="s3">Enable Amazon S3 remote</flag> + <flag name="tahoe">Enable the tahoe special remote</flag> + <flag name="tdfa">Use regex-tdfa for wildcards</flag> + <flag name="testsuite">Embed the test suite into git-annex</flag> + <flag name="torrentparser">Use haskell torrent library to parse torrent files</flag> + <flag name="webapp">Enable git-annex webapp</flag> + <flag name="webapp-secure">Secure webapp</flag> + <flag name="webdav">Enable webdav remote</flag> + </use> +</pkgmetadata> diff --git a/dev-vcs/git-bz/Manifest b/dev-vcs/git-bz/Manifest new file mode 100644 index 000000000000..50a890a5361b --- /dev/null +++ b/dev-vcs/git-bz/Manifest @@ -0,0 +1,2 @@ +DIST git-bz-0.12.04.26.tar.bz2 35224 SHA256 5b78df3972aace9de508329121861641517058a10f58d08f6ae6820cf32d0918 SHA512 1e216e8c583599c8c9633b6a02a205368aeab8746bc8eeb9a0347025cce689fccd8c157e66e0fafb33536fa52b1a97ed82467ce6ec9cb494bca2ad9ad18a7ed8 WHIRLPOOL df50ea90781b2a39618f40323efda44d259305cfc951bd1c8a133dd19584d869df8ad8e07eae3d97c5b16c36c4ec22041ea0ebba48b3ba6de8d6febdada0ca36 +DIST git-bz-0.12.12.15.tar.bz2 42590 SHA256 cb56dd495528c355f85a889506e98508ede4f41f20c431e4af36746b0b2a6b4f SHA512 b008a35a7d8e3902ade12aed3c8474fdde790cc1881c5e8133142cc438a4335c08a14b082e41d6dd2ac179425a576144d88212ff1ebe3322c27f98ebbac506d1 WHIRLPOOL 32f221dc33d39b054e885c30e721a110a4dfe1995df61982f2204a88cac003a44c8691a3c20d51953267f2f1896051777958607e05128372f7c0da4011738429 diff --git a/dev-vcs/git-bz/git-bz-0.12.04.26.ebuild b/dev-vcs/git-bz/git-bz-0.12.04.26.ebuild new file mode 100644 index 000000000000..a1d432fb13ec --- /dev/null +++ b/dev-vcs/git-bz/git-bz-0.12.04.26.ebuild @@ -0,0 +1,29 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=4 +PYTHON_DEPEND=2 + +inherit python + +DESCRIPTION="Bugzilla subcommand for git" +HOMEPAGE="http://www.fishsoup.net/software/git-bz/" +SRC_URI="https://www.bitbucket.org/mgorny/${PN}/downloads/${P}.tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="" + +RDEPEND="dev-vcs/git" + +src_compile() { + : +} + +src_install() { + dobin ${PN} + doman ${PN}.1 + dodoc TODO +} diff --git a/dev-vcs/git-bz/git-bz-0.12.12.15.ebuild b/dev-vcs/git-bz/git-bz-0.12.12.15.ebuild new file mode 100644 index 000000000000..3721162ed8fe --- /dev/null +++ b/dev-vcs/git-bz/git-bz-0.12.12.15.ebuild @@ -0,0 +1,25 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +PYTHON_COMPAT=( python2_7 pypy ) + +inherit python-r1 + +DESCRIPTION="Bugzilla subcommand for git" +HOMEPAGE="http://www.fishsoup.net/software/git-bz/" +SRC_URI="https://www.bitbucket.org/mgorny/${PN}/downloads/${P}.tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="" + +RDEPEND="dev-vcs/git" + +src_install() { + python_foreach_impl python_doscript ${PN} + doman ${PN}.1 + dodoc TODO +} diff --git a/dev-vcs/git-bz/git-bz-9999.ebuild b/dev-vcs/git-bz/git-bz-9999.ebuild new file mode 100644 index 000000000000..77259c0c3146 --- /dev/null +++ b/dev-vcs/git-bz/git-bz-9999.ebuild @@ -0,0 +1,49 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +PYTHON_COMPAT=( python2_7 pypy ) + +inherit python-single-r1 + +#if LIVE +EGIT_REPO_URI="git://git.fishsoup.net/${PN} + http://git.fishsoup.net/cgit/${PN}" +inherit git-r3 +#endif + +DESCRIPTION="Bugzilla subcommand for git" +HOMEPAGE="http://www.fishsoup.net/software/git-bz/" +SRC_URI="https://www.bitbucket.org/mgorny/${PN}/downloads/${P}.tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="" + +RDEPEND="dev-vcs/git" + +#if LIVE +DEPEND="app-text/asciidoc + app-text/xmlto" + +KEYWORDS= +SRC_URI= +#endif + +src_configure() { + # custom script + ./configure --prefix="${EPREFIX}/usr" || die +} + +#ifdef LIVE +src_compile() { + emake ${PN}.1 +} +#endif + +src_install() { + default + python_fix_shebang "${ED%/}"/usr/bin/${PN} +} diff --git a/dev-vcs/git-bz/metadata.xml b/dev-vcs/git-bz/metadata.xml new file mode 100644 index 000000000000..5cb9324943ab --- /dev/null +++ b/dev-vcs/git-bz/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>mgorny@gentoo.org</email> + <name>MichaÅ‚ Górny</name> + </maintainer> +</pkgmetadata> diff --git a/dev-vcs/git-bzr-ng/Manifest b/dev-vcs/git-bzr-ng/Manifest new file mode 100644 index 000000000000..fe1975188cbc --- /dev/null +++ b/dev-vcs/git-bzr-ng/Manifest @@ -0,0 +1,2 @@ +DIST git-bzr-ng-0_pre20120130.tar.xz 11596 SHA256 cdfee5b8a9d6bb5980123a00933f71de8e38fe36d3a3ce57a2a92eae1b4ba5fc SHA512 2621d60889fdae75d2fd291e4ef628f888524d6c5cd48b3fae8ac793984d3d58b47da2ca38477e1154714de7316992a879cae21103636e68f4ae0cd03de7bcc8 WHIRLPOOL e06dcf9caaa8cc455447d3956b311d7a69f5dc898e526b68abf0589ce371c956c8633935caa5554f1e9b2ec41c449e394b6815bff24452e13913c70456deff79 +DIST git-bzr-ng-0_pre20120822.tar.xz 11592 SHA256 315d7d567ef173d7a8e2f17304bd73a1f6779cd754e6d4ea67f48bd5d75a55ec SHA512 2652b76a1fbdfac7f7387b53167d0c76a0579e232f66be05c28a156eef638e40bd7548154e6c1853872cf6978b474b948396db176976f2ac15e7311fc731ba9b WHIRLPOOL 783da6136a4a4f1fb95ca39b285b58bac2499c23ddec82f11468fba7d4303700ac388c5decb023e61964cda8a06d77420518ffdbef0d6871081ba8be0dd8bf80 diff --git a/dev-vcs/git-bzr-ng/git-bzr-ng-0_pre20120130.ebuild b/dev-vcs/git-bzr-ng/git-bzr-ng-0_pre20120130.ebuild new file mode 100644 index 000000000000..1891c6aca569 --- /dev/null +++ b/dev-vcs/git-bzr-ng/git-bzr-ng-0_pre20120130.ebuild @@ -0,0 +1,39 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="4" + +PYTHON_DEPEND="2" + +inherit python + +DESCRIPTION="Git subcommand providing a bidirectional bridge to Bazaar repositories" +HOMEPAGE="https://github.com/termie/git-bzr-ng" +SRC_URI="http://dev.gentoo.org/~tetromino/distfiles/${PN}/${P}.tar.xz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="amd64 x86" +IUSE="" + +RDEPEND=">=dev-vcs/bzr-2.2 + dev-vcs/git + >=dev-vcs/bzr-fastimport-0.10 + dev-python/python-fastimport" +DEPEND="app-arch/xz-utils" + +pkg_setup() { + python_set_active_version 2 + python_pkg_setup +} + +src_prepare() { + python_convert_shebangs 2 git-bzr +} + +src_install() { + exeinto /usr/libexec/git-core + doexe git-bzr + dodoc README.rst +} diff --git a/dev-vcs/git-bzr-ng/git-bzr-ng-0_pre20120822.ebuild b/dev-vcs/git-bzr-ng/git-bzr-ng-0_pre20120822.ebuild new file mode 100644 index 000000000000..1891c6aca569 --- /dev/null +++ b/dev-vcs/git-bzr-ng/git-bzr-ng-0_pre20120822.ebuild @@ -0,0 +1,39 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="4" + +PYTHON_DEPEND="2" + +inherit python + +DESCRIPTION="Git subcommand providing a bidirectional bridge to Bazaar repositories" +HOMEPAGE="https://github.com/termie/git-bzr-ng" +SRC_URI="http://dev.gentoo.org/~tetromino/distfiles/${PN}/${P}.tar.xz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="amd64 x86" +IUSE="" + +RDEPEND=">=dev-vcs/bzr-2.2 + dev-vcs/git + >=dev-vcs/bzr-fastimport-0.10 + dev-python/python-fastimport" +DEPEND="app-arch/xz-utils" + +pkg_setup() { + python_set_active_version 2 + python_pkg_setup +} + +src_prepare() { + python_convert_shebangs 2 git-bzr +} + +src_install() { + exeinto /usr/libexec/git-core + doexe git-bzr + dodoc README.rst +} diff --git a/dev-vcs/git-bzr-ng/metadata.xml b/dev-vcs/git-bzr-ng/metadata.xml new file mode 100644 index 000000000000..42972bdb6b29 --- /dev/null +++ b/dev-vcs/git-bzr-ng/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>tetromino@gentoo.org</email> + <name>Alexandre Rostovtsev</name> + </maintainer> + <herd>bazaar</herd> + <upstream> + <remote-id type="github">termie/git-bzr-ng</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-vcs/git-cola/Manifest b/dev-vcs/git-cola/Manifest new file mode 100644 index 000000000000..25d590c0a2d5 --- /dev/null +++ b/dev-vcs/git-cola/Manifest @@ -0,0 +1,2 @@ +DIST git-cola-2.1.2.tar.gz 960514 SHA256 f0465f74858fc78b1b30e06856cdd6b5fa5f0cb9587b5c7e9b489f4d0e4d8f8d SHA512 79eae7937db148cde22b3d5dc1564180c3919965c35c11853270525be4eb19c7f223ddc215ba8122ed8bcb70e0e6ec57948f1e02aeeae1a9c3e7c98efef1e42d WHIRLPOOL 8797f0f0d02eaea1c7e1ef5544fc7e5e2bf6ca738cff721ce56db194de8cd94a3e825bf557f478237d75c5cf782ed43cdafc7a7afdaf1417fa4f3d8b65bcb756 +DIST git-cola-2.2.1.tar.gz 996484 SHA256 df0a3e1d3c49629926f2e30f55d635eca3c8da12e96232196b307613fa4b3aec SHA512 a91fe706ea150d9bd9a05a9d494c63d373cae0154deca8e40e30fc20e70be32d4fd1f021a971c067d46ab24f472965a12c115eeb4bd94e4f62c21e546d89c109 WHIRLPOOL ac68a558775bc5fdf3a168416132dedbeffe554f6f60f50b7e33f0d17d67aa829318b7a0df2607b47e41b8823d60e206e0544e03382eae7651b9ca1c3b9dfc09 diff --git a/dev-vcs/git-cola/files/README.gentoo b/dev-vcs/git-cola/files/README.gentoo new file mode 100644 index 000000000000..0f4af85d5ccc --- /dev/null +++ b/dev-vcs/git-cola/files/README.gentoo @@ -0,0 +1,3 @@ +Please make sure you have either a SSH key management installed and activated or +installed a SSH askpass app like net-misc/x11-ssh-askpass. +Otherwise git-cola may hang when pushing/pulling from remote git repositories via SSH. diff --git a/dev-vcs/git-cola/files/git-cola-1.9.1-system-ssh-askpass.patch b/dev-vcs/git-cola/files/git-cola-1.9.1-system-ssh-askpass.patch new file mode 100644 index 000000000000..0aa476fe83ea --- /dev/null +++ b/dev-vcs/git-cola/files/git-cola-1.9.1-system-ssh-askpass.patch @@ -0,0 +1,16 @@ +diff --git a/cola/app.py b/cola/app.py +index f9236de..4636c81 100644 +--- a/cola/app.py ++++ b/cola/app.py +@@ -66,9 +66,9 @@ def setup_environment(): + elif ssh_askpass: + askpass = ssh_askpass + elif sys.platform == 'darwin': +- askpass = resources.share('bin', 'ssh-askpass-darwin') ++ askpass = resources.prefix('bin', 'ssh-askpass-darwin') + else: +- askpass = resources.share('bin', 'ssh-askpass') ++ askpass = resources.prefix('bin', 'ssh-askpass') + + compat.setenv('GIT_ASKPASS', askpass) + compat.setenv('SSH_ASKPASS', askpass) diff --git a/dev-vcs/git-cola/files/git-cola-1.9.3-disable-tests.patch b/dev-vcs/git-cola/files/git-cola-1.9.3-disable-tests.patch new file mode 100644 index 000000000000..79f1ec2ff8bc --- /dev/null +++ b/dev-vcs/git-cola/files/git-cola-1.9.3-disable-tests.patch @@ -0,0 +1,21 @@ +diff -Naur cola-1.3.7.21.orig/test/git_test.py cola-1.3.7.21/test/git_test.py +--- cola-1.3.7.21.orig/test/git_test.py 2009-04-30 13:56:22.352319047 +0200 ++++ cola-1.3.7.21/test/git_test.py 2009-04-30 13:56:53.123149963 +0200 +@@ -24,17 +24,6 @@ + version = self.git.version()[STDOUT] + self.failUnless(version.startswith('git version')) + +- def test_tag(self): +- """Test running 'git tag'""" +- tags = self.git.tag()[STDOUT].splitlines() +- self.failUnless( 'v1.0.0' in tags ) +- +- def test_show(self): +- """Test running 'git show'""" +- sha = '1b9742bda5d26a4f250fa64657f66ed20624a084' +- contents = self.git.show(sha)[STDOUT].splitlines() +- self.failUnless(contents[0] == '/build') +- + def test_stdout(self): + """Test overflowing the stdout buffer""" + # Write to stdout only diff --git a/dev-vcs/git-cola/files/git-cola-2.2.1-disable-live-tests.patch b/dev-vcs/git-cola/files/git-cola-2.2.1-disable-live-tests.patch new file mode 100644 index 000000000000..2ebdc9880d1e --- /dev/null +++ b/dev-vcs/git-cola/files/git-cola-2.2.1-disable-live-tests.patch @@ -0,0 +1,22 @@ +diff --git a/test/git_test.py b/test/git_test.py +index 9f812b2..ff7da24 100644 +--- a/test/git_test.py ++++ b/test/git_test.py +@@ -53,17 +53,6 @@ class GitCommandTest(unittest.TestCase): + version = self.git.version()[STDOUT] + self.failUnless(version.startswith('git version')) + +- def test_tag(self): +- """Test running 'git tag'""" +- tags = self.git.tag()[STDOUT].splitlines() +- self.failUnless( 'v1.0.0' in tags ) +- +- def test_show(self): +- """Test running 'git show'""" +- sha = '1b9742bda5d26a4f250fa64657f66ed20624a084' +- contents = self.git.show(sha)[STDOUT].splitlines() +- self.failUnless(contents[0] == '/build') +- + def test_stdout(self): + """Test overflowing the stdout buffer""" + # Write to stdout only diff --git a/dev-vcs/git-cola/files/git-cola-2.2.1-update-git-config-in-tests.patch b/dev-vcs/git-cola/files/git-cola-2.2.1-update-git-config-in-tests.patch new file mode 100644 index 000000000000..96271d05548c --- /dev/null +++ b/dev-vcs/git-cola/files/git-cola-2.2.1-update-git-config-in-tests.patch @@ -0,0 +1,13 @@ +diff --git a/test/helper.py b/test/helper.py +index 006a5b1..64d0dfc 100644 +--- a/test/helper.py ++++ b/test/helper.py +@@ -87,6 +87,8 @@ class GitRepositoryTestCase(TmpPathTestCase): + + def initialize_repo(self): + self.git('init') ++ self.git('config', '--local', 'user.name', 'Your Name') ++ self.git('config', '--local', 'user.email', 'you@example.com') + self.touch('A', 'B') + self.git('add', 'A', 'B') + diff --git a/dev-vcs/git-cola/files/index.html b/dev-vcs/git-cola/files/index.html new file mode 100644 index 000000000000..7f1e814a0b51 --- /dev/null +++ b/dev-vcs/git-cola/files/index.html @@ -0,0 +1,15 @@ +<html> +<head> + <title>Missing documentation</title> +</head> +<body> +<div style="border: 4px double red; padding: 2em; margin: 4em; top: 4em; width: 20em;"> + This documentation is missing. Please reinstall dev-util/cola with the 'doc' useflag enabled. + + <p style="text-align: right;"> + Sincerely,<br/> + your package maintainer. + </p> +</div> +</body> +</html> diff --git a/dev-vcs/git-cola/git-cola-2.1.2.ebuild b/dev-vcs/git-cola/git-cola-2.1.2.ebuild new file mode 100644 index 000000000000..2de6715817e4 --- /dev/null +++ b/dev-vcs/git-cola/git-cola-2.1.2.ebuild @@ -0,0 +1,111 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +PYTHON_COMPAT=( python2_7 python3_{3,4} ) +DISTUTILS_SINGLE_IMPL=true + +inherit distutils-r1 readme.gentoo virtualx + +DESCRIPTION="The highly caffeinated git GUI" +HOMEPAGE="http://git-cola.github.com/" +SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux" +IUSE="doc test" + +REQUIRED_USE="doc? ( python_targets_python2_7 )" + +RDEPEND=" + dev-python/jsonpickle[${PYTHON_USEDEP}] + dev-python/pyinotify[${PYTHON_USEDEP}] + dev-python/PyQt4[${PYTHON_USEDEP}] + dev-vcs/git" +DEPEND="${RDEPEND} + app-text/asciidoc + app-text/xmlto + sys-devel/gettext + doc? ( + dev-python/sphinx[${PYTHON_USEDEP}] + dev-python/sphinxtogithub[$(python_gen_usedep 'python2*')] + ) + test? ( + dev-python/nose[${PYTHON_USEDEP}] + sys-apps/net-tools + )" + +PATCHES=( + "${FILESDIR}"/${PN}-1.9.3-disable-tests.patch + "${FILESDIR}"/${PN}-1.9.1-system-ssh-askpass.patch + ) + +pkg_pretend() { + if use test && [[ -z "$(hostname -d)" ]] ; then + die "Test will fail if no domain is set" + fi +} + +python_prepare_all() { + rm share/git-cola/bin/*askpass* || die + + # unfinished translate framework + rm test/i18n_test.py || die + + # don't install docs into wrong location + sed -i \ + -e '/doc/d' \ + setup.py || die "sed failed" + + sed -i \ + -e "s|'doc', 'git-cola'|'doc', '${PF}'|" \ + cola/resources.py || die "sed failed" + + distutils-r1_python_prepare_all +} + +python_compile_all() { + cd share/doc/${PN}/ + if use doc ; then + emake all + else + sed \ + -e '/^install:/s:install-html::g' \ + -e '/^install:/s:install-man::g' \ + -i Makefile || die + fi +} + +python_test() { + PYTHONPATH="${S}:${S}/build/lib:${PYTHONPATH}" LC_ALL="C" \ + VIRTUALX_COMMAND="nosetests --verbose \ + --with-id --with-doctest --exclude=sphinxtogithub" \ + virtualmake +} + +src_install() { + distutils-r1_src_install +} + +python_install_all() { + cd share/doc/${PN}/ || die + emake \ + DESTDIR="${D}" \ + docdir="${EPREFIX}/usr/share/doc/${PF}" \ + prefix="${EPREFIX}/usr" \ + install + + python_fix_shebang "${ED}/usr/share/git-cola/bin/git-xbase" + python_optimize "${ED}/usr/share/git-cola/lib/cola" + + if ! use doc ; then + HTML_DOCS=( "${FILESDIR}"/index.html ) + fi + + distutils-r1_python_install_all + readme.gentoo_create_doc + docompress /usr/share/doc/${PF}/git-cola.txt +} diff --git a/dev-vcs/git-cola/git-cola-2.2.1.ebuild b/dev-vcs/git-cola/git-cola-2.2.1.ebuild new file mode 100644 index 000000000000..0990e9db29c9 --- /dev/null +++ b/dev-vcs/git-cola/git-cola-2.2.1.ebuild @@ -0,0 +1,98 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +PYTHON_COMPAT=( python2_7 python3_{3,4} ) +DISTUTILS_SINGLE_IMPL=true + +inherit distutils-r1 readme.gentoo virtualx + +DESCRIPTION="The highly caffeinated git GUI" +HOMEPAGE="https://git-cola.github.io/" +SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" +IUSE="doc test" + +RDEPEND=" + dev-python/pyinotify[${PYTHON_USEDEP}] + dev-python/send2trash[${PYTHON_USEDEP}] + dev-python/PyQt4[${PYTHON_USEDEP}] + dev-vcs/git" +DEPEND="${RDEPEND} + sys-devel/gettext + doc? ( + dev-python/sphinx[${PYTHON_USEDEP}] + python_targets_python2_7? ( dev-python/sphinxtogithub[$(python_gen_usedep 'python2*')] ) + ) + test? ( dev-python/nose[${PYTHON_USEDEP}] ) +" + +PATCHES=( + "${FILESDIR}"/${P}-disable-live-tests.patch + "${FILESDIR}"/${P}-update-git-config-in-tests.patch +) + +python_prepare_all() { + rm share/git-cola/bin/*askpass* || die + + # remove broken tests + rm test/i18n_test.py || die + + # don't install docs into wrong location + sed -i -e '/doc/d' setup.py || die + + # fix doc directory reference + sed -i \ + -e "s/'doc', 'git-cola'/'doc', '${PF}'/" \ + cola/resources.py || die + + # fix ssh-askpass directory reference + sed -i -e 's/resources\.share/resources\.prefix/' cola/app.py || die + + distutils-r1_python_prepare_all +} + +python_compile_all() { + cd share/doc/${PN}/ || die + if use doc; then + emake all + else + sed \ + -e '/^install:/s:install-html::g' \ + -e '/^install:/s:install-man::g' \ + -i Makefile || die + fi +} + +python_test() { + PYTHONPATH="${S}:${S}/build/lib:${PYTHONPATH}" LC_ALL="C" \ + VIRTUALX_COMMAND="nosetests --verbose --with-id --with-doctest \ + --exclude=sphinxtogithub" \ + virtualmake +} + +src_install() { + distutils-r1_src_install +} + +python_install_all() { + cd share/doc/${PN}/ || die + emake \ + DESTDIR="${D}" \ + docdir="${EPREFIX}/usr/share/doc/${PF}" \ + prefix="${EPREFIX}/usr" \ + install + + python_fix_shebang "${ED}/usr/share/git-cola/bin/git-xbase" + python_optimize "${ED}/usr/share/git-cola/lib/cola" + + use doc || HTML_DOCS=( "${FILESDIR}"/index.html ) + + distutils-r1_python_install_all + readme.gentoo_create_doc +} diff --git a/dev-vcs/git-cola/metadata.xml b/dev-vcs/git-cola/metadata.xml new file mode 100644 index 000000000000..7ee28e37558e --- /dev/null +++ b/dev-vcs/git-cola/metadata.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>dev-zero@gentoo.org</email> + <name>Tiziano Müller</name> + </maintainer> + <maintainer> + <email>jlec@gentoo.org</email> + <name>Justin Lecher</name> + </maintainer> + <upstream> + <remote-id type="github">git-cola/git-cola</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-vcs/git-crypt/Manifest b/dev-vcs/git-crypt/Manifest new file mode 100644 index 000000000000..81dded219cd1 --- /dev/null +++ b/dev-vcs/git-crypt/Manifest @@ -0,0 +1,3 @@ +DIST git-crypt-0.3.tar.gz 20660 SHA256 6b2a03d28240c06ce4c06c3fc73ecd88f61b638e42f8534a9f2d1dbd17132755 SHA512 526630e58a2e74bffe954bc2f489311fb2261337092a1c4462788d9412b7fa7b1aa744402558bba39fe776cfa6333700c4e0ad651d262a7ca14d920485192adc WHIRLPOOL 80a2c9129a0c6bba05418469163a6c32242e84fff1bef4179cf8b60b2bea3f01c6921fa97459e23c3bd08223cfe18f6cf1363f01b5244f0f94689d55954cfa90 +DIST git-crypt-0.4.tar.gz 44146 SHA256 8825200a353ba9fe5f972c67e2ca4f1e7194cd3ad369ba14fddb1ba840dc2140 SHA512 aa146d922258c4a68ad1a211b58e3b1e1b1135661ebecf3ede1b344fc93401eb9d0aa51cfa068f76fab3ab7c936ad6cf46e61e0e9505aaf4f338e54826ae88f6 WHIRLPOOL 8bd32cc735416a2eb3df1f144ccf7e86b09bcdd475f766df4d83885f47ead097614641df95d52e8afbb8c5935bffa7716eeab67b4ee73134c790745bc45d1027 +DIST git-crypt-0.5.0.tar.gz 56694 SHA256 5150144a528bc74eeb47a2884cf2fefe978a1d1dc0223bbfcac395fa6a73a410 SHA512 0ed75e6962d8e8260811e048c22d724bdd63d461615e8f99c1d65a07f931f9630c1b853112f202b612dc69746a9ad03995f2947ad6fa39af56a878d993d65d77 WHIRLPOOL 0fc57344d3a0996572db5b0184611d27f8e6574733d0b7d39f52db17c06f1a2403358ac3da2f0e46cbf0c004446f82c5bedf9082f627f6ce18f5e99462e8b559 diff --git a/dev-vcs/git-crypt/git-crypt-0.3.ebuild b/dev-vcs/git-crypt/git-crypt-0.3.ebuild new file mode 100644 index 000000000000..2f454f18ff74 --- /dev/null +++ b/dev-vcs/git-crypt/git-crypt-0.3.ebuild @@ -0,0 +1,21 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +DESCRIPTION="transparent file encryption in git" +HOMEPAGE="https://www.agwa.name/projects/git-crypt/" +SRC_URI="https://github.com/AGWA/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" +LICENSE="GPL-3" +SLOT="0" + +KEYWORDS="~amd64 ~x86" + +RDEPEND="dev-vcs/git" +DEPEND="${RDEPEND}" + +src_install() { + mkdir -p "${D}"/usr/bin + emake PREFIX="${D}"/usr install +} diff --git a/dev-vcs/git-crypt/git-crypt-0.4.ebuild b/dev-vcs/git-crypt/git-crypt-0.4.ebuild new file mode 100644 index 000000000000..2f454f18ff74 --- /dev/null +++ b/dev-vcs/git-crypt/git-crypt-0.4.ebuild @@ -0,0 +1,21 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +DESCRIPTION="transparent file encryption in git" +HOMEPAGE="https://www.agwa.name/projects/git-crypt/" +SRC_URI="https://github.com/AGWA/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" +LICENSE="GPL-3" +SLOT="0" + +KEYWORDS="~amd64 ~x86" + +RDEPEND="dev-vcs/git" +DEPEND="${RDEPEND}" + +src_install() { + mkdir -p "${D}"/usr/bin + emake PREFIX="${D}"/usr install +} diff --git a/dev-vcs/git-crypt/git-crypt-0.5.0.ebuild b/dev-vcs/git-crypt/git-crypt-0.5.0.ebuild new file mode 100644 index 000000000000..7413d6813ac4 --- /dev/null +++ b/dev-vcs/git-crypt/git-crypt-0.5.0.ebuild @@ -0,0 +1,21 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +DESCRIPTION="transparent file encryption in git" +HOMEPAGE="https://www.agwa.name/projects/git-crypt/" +SRC_URI="https://github.com/AGWA/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" +LICENSE="GPL-3" +SLOT="0" + +KEYWORDS="~amd64 ~x86" + +RDEPEND="dev-vcs/git" +DEPEND="${RDEPEND}" + +src_install() { + mkdir -p "${D}"/usr/bin + emake PREFIX="${D}"/usr install +} diff --git a/dev-vcs/git-crypt/metadata.xml b/dev-vcs/git-crypt/metadata.xml new file mode 100644 index 000000000000..6536a3256f44 --- /dev/null +++ b/dev-vcs/git-crypt/metadata.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>patrick@gentoo.org</email> + <name>Patrick Lauer</name> + </maintainer> + <upstream> + <remote-id type="github">AGWA/git-crypt</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-vcs/git-deploy/Manifest b/dev-vcs/git-deploy/Manifest new file mode 100644 index 000000000000..b503b904800a --- /dev/null +++ b/dev-vcs/git-deploy/Manifest @@ -0,0 +1 @@ +DIST git-deploy-6.0.1_p20131024.tar.gz 55394 SHA256 fe5b810ed3a9595f1d2c733d1fd42f83ff8a1f1995f3d4a11f1f9b006d0a94a1 SHA512 cf3504b8f40d86cd8322ed93f2fe43593bcbf2db37685d3337b89501f39b38298dfb6d6cd51dd3f518f6048b680446a1660b85887ef73647829608e77b497634 WHIRLPOOL 0a6a1e8178d771f6d32967ce748fde883c5604da75a9c37fed06291e183dfe5a90321be0d23a593a72e68882ed44b0d7abba3a85264642f057f962b476115c0c diff --git a/dev-vcs/git-deploy/git-deploy-6.0.1_p20131024.ebuild b/dev-vcs/git-deploy/git-deploy-6.0.1_p20131024.ebuild new file mode 100644 index 000000000000..8e714ea8e17b --- /dev/null +++ b/dev-vcs/git-deploy/git-deploy-6.0.1_p20131024.ebuild @@ -0,0 +1,68 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit perl-app + +COMMIT="e9ef93debd12d85e70676dd79b4bd78ac2b05271" + +DESCRIPTION="make deployments so easy that you'll let new hires do them on their +first day" +HOMEPAGE="https://github.com/git-deploy/git-deploy" +SRC_URI="https://github.com/${PN}/${PN}/archive/${COMMIT}.tar.gz -> ${P}.tar.gz" + +LICENSE="|| ( Artistic GPL-1 GPL-2 GPL-3 )" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="test" + +COMMON_DEPEND="dev-vcs/git + virtual/perl-File-Spec + virtual/perl-Getopt-Long + virtual/perl-Term-ANSIColor + virtual/perl-Time-HiRes + virtual/perl-Memoize + virtual/perl-Data-Dumper" +DEPEND="dev-lang/perl + test? ( + ${COMMON_DEPEND} + virtual/perl-File-Temp + )" +RDEPEND="dev-lang/perl +${COMMON_DEPEND}" + +S="${WORKDIR}/${PN}-${COMMIT}" + +src_prepare() { + pod2man -n git-deploy README.pod > git-deploy.1 || die +} + +src_test() { + local testdir=${TMPDIR}/git-deploy-test + + # Prepare for tests + cp -a "${S}/" $testdir || die + cd $testdir || die + + git config --global user.name "git-deploy" || die + git config --global user.email "git-deploy@localhost" || die + + git init . || die + git add . || die + git commit -a -m 'git-deploy testing' || die + + USER="git-deploy" perl t/run.t || die +} + +src_install() { + dobin git-deploy + + insinto $VENDOR_LIB + doins -r lib/Git + + doman git-deploy.1 + + newdoc Changes ChangeLog +} diff --git a/dev-vcs/git-deploy/metadata.xml b/dev-vcs/git-deploy/metadata.xml new file mode 100644 index 000000000000..e63c222cb509 --- /dev/null +++ b/dev-vcs/git-deploy/metadata.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>idl0r@gentoo.org</email> + <name>Christian Ruppert</name> + </maintainer> + <upstream> + <remote-id type="github">git-deploy/git-deploy</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-vcs/git-flow/Manifest b/dev-vcs/git-flow/Manifest new file mode 100644 index 000000000000..8e83d604b8bd --- /dev/null +++ b/dev-vcs/git-flow/Manifest @@ -0,0 +1,4 @@ +DIST git-flow-0.4.1.tar.gz 16732 SHA256 c1271b0ba2c6655e4ad4d79562f6a910c3b884f3d4e16985e227e67f8d95c180 SHA512 f86edb2867ed55127a34c711f5e6b11daeb6a738e92005fe27879c9ede40cb4130ff1de35e9f69560c4c845e063a8d2c1a76ad52eb5eacb7312a087f77d2698b WHIRLPOOL 9ad859237cab91209acfa87ddcc70f975af1b5816e202f8b867de903e05a755174803e286a5e8d595edb1612b7b321f7fe21b405fb388b8bef155ece82cb4ccf +DIST git-flow-1.8.0.tar.gz 56304 SHA256 8239131b8dac160d7e929eab376fa14de44a55cbd5c5545e0ad4464d3a57adef SHA512 677bfb0c379eb91bfaf8ef676593d39a8306ff063251e1e638166c7101c24ce2eac59490bab85d0c76b712c1905f15d3a14a3ecc020df376848d3b1ea5ee7b0a WHIRLPOOL 6bf654329b941989a8b646ab8218c072b7bf455b0ec6a8441d43de10b9b480a5619bca931606acdd743b0f3f86e9b67f119ff07957eaa106fd17f5cddc96a328 +DIST git-flow-completion-0.4.2.2.tar.gz 5421 SHA256 1e82d039596c0e73bfc8c59d945ded34e4fce777d9b9bb45c3586ee539048ab9 SHA512 609653b6eaedabc4f31bb19d93b50bc48746876a2c351f139b79b48599104d49ba281400e8708a83411610cf57ce08a9ae941b0611216c11d80f8c01e0fa8409 WHIRLPOOL 9d2f4ec100932c2e349924620a4dbe3a98e9b6d93fcfbeb0ee065e13873da74af8e059dae5acf158088c541bfdb3aa49446ee789576aab5532e8322ab9530c15 +DIST git-flow-completion-0.5.1.tar.gz 6916 SHA256 5c8547a549dc623a8d57cfc22c3fa88588f5630da9dc6de9638e5b69da9d47d0 SHA512 c1fc0000889faff8189cd985b077cb64b81ae13e17f02c9df27675f428c6edf8f00627effdf6ebdae7a7f0641ec4ac621a9ecd0a53f14be7d95ec7e124ab8c1b WHIRLPOOL fd59f799d944752eab06b35f05c1f1309ef589014a0378f292e4dde206578f0c0aeb3685e16ea8d2f810e93b77abb7a2bc42c3c335ef9057b9c3ee1dd6df9982 diff --git a/dev-vcs/git-flow/files/git-flow-0.4.1-unbundle-shflags.patch b/dev-vcs/git-flow/files/git-flow-0.4.1-unbundle-shflags.patch new file mode 100644 index 000000000000..93ecb7248c21 --- /dev/null +++ b/dev-vcs/git-flow/files/git-flow-0.4.1-unbundle-shflags.patch @@ -0,0 +1,32 @@ +diff --git a/Makefile b/Makefile +index fbbfd2c..b0e2490 100644 +--- a/Makefile ++++ b/Makefile +@@ -40,14 +40,12 @@ SCRIPT_FILES+=git-flow-release + SCRIPT_FILES+=git-flow-support + SCRIPT_FILES+=git-flow-version + SCRIPT_FILES+=gitflow-common +-SCRIPT_FILES+=gitflow-shFlags + + all: + @echo "usage: make install" + @echo " make uninstall" + + install: +- @test -f gitflow-shFlags || (echo "Run 'git submodule init && git submodule update' first." ; exit 1 ) + install -d -m 0755 $(prefix)/bin + install -m 0755 $(EXEC_FILES) $(prefix)/bin + install -m 0644 $(SCRIPT_FILES) $(prefix)/bin +diff --git a/git-flow b/git-flow +index 93e9f0f..7b643d3 100755 +--- a/git-flow ++++ b/git-flow +@@ -78,7 +78,7 @@ main() { + export POSIXLY_CORRECT=1 + + # use the shFlags project to parse the command line arguments +- . "$GITFLOW_DIR/gitflow-shFlags" ++ . /usr/share/misc/shflags + FLAGS_PARENT="git flow" + FLAGS "$@" || exit $? + eval set -- "${FLAGS_ARGV}" diff --git a/dev-vcs/git-flow/files/git-flow-1.8.0-unbundle-shflags.patch b/dev-vcs/git-flow/files/git-flow-1.8.0-unbundle-shflags.patch new file mode 100644 index 000000000000..6e96d541d411 --- /dev/null +++ b/dev-vcs/git-flow/files/git-flow-1.8.0-unbundle-shflags.patch @@ -0,0 +1,25 @@ +diff --git a/Makefile b/Makefile +index 0718bbb..f488922 100644 +--- a/Makefile ++++ b/Makefile +@@ -43,7 +43,6 @@ SCRIPT_FILES+=git-flow-version + SCRIPT_FILES+=git-flow-log + SCRIPT_FILES+=git-flow-config + SCRIPT_FILES+=gitflow-common +-SCRIPT_FILES+=gitflow-shFlags + + # Hook files + HOOK_FILES=$(wildcard hooks/*) +diff --git a/git-flow b/git-flow +index 7a962d2..2ba70ba 100755 +--- a/git-flow ++++ b/git-flow +@@ -111,7 +111,7 @@ main() { + fi + + # Use the shFlags project to parse the command line arguments +- . "$GITFLOW_DIR/gitflow-shFlags" ++ . /usr/share/misc/shflags + FLAGS_PARENT="git flow" + + # Load common functionality diff --git a/dev-vcs/git-flow/git-flow-0.4.1.ebuild b/dev-vcs/git-flow/git-flow-0.4.1.ebuild new file mode 100644 index 000000000000..e03b7e5b0523 --- /dev/null +++ b/dev-vcs/git-flow/git-flow-0.4.1.ebuild @@ -0,0 +1,51 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +MY_PN="${PN/-/}" +COMP_PN="${PN}-completion" +COMP_PV="0.4.2.2" +COMP_P="${COMP_PN}-${COMP_PV}" +inherit eutils bash-completion-r1 + +DESCRIPTION="Git extensions to provide high-level repository operations for Vincent Driessen's branching model" +HOMEPAGE="https://github.com/nvie/gitflow" +SRC_URI="https://github.com/nvie/${MY_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz +https://github.com/bobthecow/${COMP_PN}/archive/${COMP_PV}.tar.gz -> ${COMP_P}.tar.gz" + +LICENSE="BSD MIT" +SLOT="0" +KEYWORDS="amd64 x86" +IUSE="" + +DEPEND="" +RDEPEND="${DEPEND} + dev-util/shflags + dev-vcs/git +" + +DOCS=( AUTHORS Changes.mdown README.mdown ) + +PATCHES=( "${FILESDIR}/${P}-unbundle-shflags.patch" ) + +S="${WORKDIR}/${MY_PN}-${PV}" + +src_prepare() { + [[ ${PATCHES[@]} ]] && epatch "${PATCHES[@]}" + debug-print "$FUNCNAME: applying user patches" + epatch_user +} + +src_compile() { + true +} + +src_install() { + emake prefix="${D}/usr" install + + [[ ${DOCS[@]} ]] && dodoc "${DOCS[@]}" + + newbashcomp "${WORKDIR}/${COMP_P}/${COMP_PN}.bash" ${PN} +} diff --git a/dev-vcs/git-flow/git-flow-1.8.0.ebuild b/dev-vcs/git-flow/git-flow-1.8.0.ebuild new file mode 100644 index 000000000000..c852e1ad4ea8 --- /dev/null +++ b/dev-vcs/git-flow/git-flow-1.8.0.ebuild @@ -0,0 +1,51 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +MY_PN="${PN/-/}" +COMP_PN="${PN}-completion" +COMP_PV="0.5.1" +COMP_P="${COMP_PN}-${COMP_PV}" +inherit eutils bash-completion-r1 + +DESCRIPTION="Git extensions to provide high-level repository operations for Vincent Driessen's branching model" +HOMEPAGE="https://github.com/petervanderdoes/gitflow" +SRC_URI="https://github.com/petervanderdoes/${MY_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz +https://github.com/petervanderdoes/${COMP_PN}/archive/${COMP_PV}.tar.gz -> ${COMP_P}.tar.gz" + +LICENSE="BSD MIT" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="" + +DEPEND="" +RDEPEND="${DEPEND} + dev-util/shflags + dev-vcs/git +" + +DOCS=( AUTHORS Changes.mdown README.mdown ) + +PATCHES=( "${FILESDIR}/${P}-unbundle-shflags.patch" ) + +S="${WORKDIR}/${MY_PN}-${PV}" + +src_prepare() { + [[ ${PATCHES[@]} ]] && epatch "${PATCHES[@]}" + debug-print "$FUNCNAME: applying user patches" + epatch_user +} + +src_compile() { + true +} + +src_install() { + emake prefix="${D}/usr" install + + [[ ${DOCS[@]} ]] && dodoc "${DOCS[@]}" + + newbashcomp "${WORKDIR}/${COMP_P}/${COMP_PN}.bash" ${PN} +} diff --git a/dev-vcs/git-flow/metadata.xml b/dev-vcs/git-flow/metadata.xml new file mode 100644 index 000000000000..b0bdac33b655 --- /dev/null +++ b/dev-vcs/git-flow/metadata.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>johu@gentoo.org</email> + <name>Johannes Huber</name> + </maintainer> + <upstream> + <remote-id type="github">petervanderdoes/gitflow</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-vcs/git-mailz/Manifest b/dev-vcs/git-mailz/Manifest new file mode 100644 index 000000000000..e6c4fd00ef52 --- /dev/null +++ b/dev-vcs/git-mailz/Manifest @@ -0,0 +1,2 @@ +DIST git-mailz-0.12.tar.gz 7957 SHA256 15608ae026a31f6fc0e89b386edeee5c7b1d2de210d796264eb735f17de3b20c SHA512 811f646e5d89fa3e870fbd59e79e350329097f5533b42e7830409f97bfc35248cf1965591df40300bd6ef5a44c71928504dc0b8aba1037126df3b5bd7a427b51 WHIRLPOOL d6e90451c49a4f81e9422e5e1e09b127f84ee3b905e5678025a410dc0ae2a7de6e96f40ae769be628dabdc23aa8a843ee289282133f3f943db7f7f89ec82e195 +DIST git-mailz-0.14.tar.gz 8204 SHA256 422cd5828d285d595e9ae8657d09b20298cb30561b288a5c8e343b89c8107f31 SHA512 fd6c518de135113482f2f3a4e9d89b41b1797c8219e1ed9f424a5c4ae575400e7ccd9f835b40be5d74a5eb4e1bc7d3dfedd2412a317baea7e20494169399b70c WHIRLPOOL 361c4fa0f6c0ae7e9a9aa3b7fa40904387bf9cee49e095660bd4258d62bfb061573a2272f3b097c2fc87ec2a2970b3dc060fd3d7ce4cafebb976bcf4b257daf1 diff --git a/dev-vcs/git-mailz/git-mailz-0.12.ebuild b/dev-vcs/git-mailz/git-mailz-0.12.ebuild new file mode 100644 index 000000000000..8e2e6b433760 --- /dev/null +++ b/dev-vcs/git-mailz/git-mailz-0.12.ebuild @@ -0,0 +1,29 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit eutils + +DESCRIPTION="Send a collection of patches as emails" +HOMEPAGE="https://github.com/roman-neuhauser/git-mailz/" + +SRC_URI="http://codex.sigpipe.cz/${PN}/${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" + +KEYWORDS="~x86 ~amd64" + +DEPEND="" + +RDEPEND=" + virtual/mta + dev-vcs/git + app-shells/zsh +" + +src_install(){ + emake PREFIX="${ED}/usr" install +} diff --git a/dev-vcs/git-mailz/git-mailz-0.14.ebuild b/dev-vcs/git-mailz/git-mailz-0.14.ebuild new file mode 100644 index 000000000000..8e2e6b433760 --- /dev/null +++ b/dev-vcs/git-mailz/git-mailz-0.14.ebuild @@ -0,0 +1,29 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit eutils + +DESCRIPTION="Send a collection of patches as emails" +HOMEPAGE="https://github.com/roman-neuhauser/git-mailz/" + +SRC_URI="http://codex.sigpipe.cz/${PN}/${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" + +KEYWORDS="~x86 ~amd64" + +DEPEND="" + +RDEPEND=" + virtual/mta + dev-vcs/git + app-shells/zsh +" + +src_install(){ + emake PREFIX="${ED}/usr" install +} diff --git a/dev-vcs/git-mailz/metadata.xml b/dev-vcs/git-mailz/metadata.xml new file mode 100644 index 000000000000..2edcc4239e88 --- /dev/null +++ b/dev-vcs/git-mailz/metadata.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>yac@gentoo.org</email> + <name>Jan Matejka</name> + </maintainer> + <longdescription lang="en"> +</longdescription> + <upstream> + <remote-id type="github">roman-neuhauser/git-mailz</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-vcs/git-mantle/Manifest b/dev-vcs/git-mantle/Manifest new file mode 100644 index 000000000000..fb7d7ac3160b --- /dev/null +++ b/dev-vcs/git-mantle/Manifest @@ -0,0 +1 @@ +DIST git-mantle-0.6.tar.gz 9896 SHA256 c812a0bb2dbd3a3c14b118fda1e71d8aee803cfe3136bf020137e4ecba516c11 SHA512 2498ed29884a8ac48bfb413c39e5bc9f232d47736ea4c0045404bd5f7268c7009a770c5c58c5449f843d8962bea9f288248a61308c4a71eed1b39d0c4b3375c0 WHIRLPOOL 99aff52c7ff505131e6bbd0478f2fdec1a6994e45229a717f276a2ce0fc233b91312ef7daf68cbea6cafa7e626526a5ccfbe02abb678115ddb2e635c574c7719 diff --git a/dev-vcs/git-mantle/git-mantle-0.6.ebuild b/dev-vcs/git-mantle/git-mantle-0.6.ebuild new file mode 100644 index 000000000000..b085ee6f7e01 --- /dev/null +++ b/dev-vcs/git-mantle/git-mantle-0.6.ebuild @@ -0,0 +1,27 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit eutils + +DESCRIPTION="Generate an overview of changes on a branch" +HOMEPAGE="https://github.com/roman-neuhauser/git-mantle" + +SRC_URI="http://codex.sigpipe.cz/${PN}/${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" + +KEYWORDS="~x86 ~amd64" + +DEPEND="" +RDEPEND=" + dev-vcs/git + app-shells/zsh +" + +src_install(){ + emake PREFIX="${ED}/usr" install +} diff --git a/dev-vcs/git-mantle/metadata.xml b/dev-vcs/git-mantle/metadata.xml new file mode 100644 index 000000000000..bc827ed4ac76 --- /dev/null +++ b/dev-vcs/git-mantle/metadata.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>yac@gentoo.org</email> + <name>Jan Matejka</name> + </maintainer> + <longdescription lang="en"> +</longdescription> + <upstream> + <remote-id type="github">roman-neuhauser/git-mantle</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-vcs/git-merge-changelog/Manifest b/dev-vcs/git-merge-changelog/Manifest new file mode 100644 index 000000000000..0c0b8e722927 --- /dev/null +++ b/dev-vcs/git-merge-changelog/Manifest @@ -0,0 +1,2 @@ +DIST git-merge-changelog-20140103.tar.xz 299628 SHA256 d3f0694ca65c765a39b5d2381a2c9d735d16d29bef1737fdf38e9d44bcd3ef29 SHA512 cc3287424313f3c3590bbc67ac2615c69154001019915163b59d4600b320abeaf1e72baac7fd53dd2906be16149ce9a325db0b8966bb024db18f4d11b86fd405 WHIRLPOOL 1689456ebc076bbc3e97beb6f63f91bf857a5493ce29b2fd3dea5667891cd6db01f5b30dbdbea510701c153949f1f0287e966af419846be1df06f493523d8fe5 +DIST git-merge-changelog-20140223.tar.xz 298332 SHA256 75a584cee054cafcb1ab7b71dc3beee33b39ea30b50dace48f044ee788560482 SHA512 ea5fcb0a0839e37976e333dc773d0bca43a1fce4821af08c5baba8e5783e129f8b4de4efd4b1b3399a7c1d3796e4094916843ac2d360d81396d67f571e020638 WHIRLPOOL 41182891e268e0ade060cac261d230fda2534fa53aebb40ea2b44e62cef1d5bef69ba9d7a7f6839c4b24135b1012d29f43886b9729fdd801173c2a8c240b3809 diff --git a/dev-vcs/git-merge-changelog/git-merge-changelog-20140103.ebuild b/dev-vcs/git-merge-changelog/git-merge-changelog-20140103.ebuild new file mode 100644 index 000000000000..042ff976d50f --- /dev/null +++ b/dev-vcs/git-merge-changelog/git-merge-changelog-20140103.ebuild @@ -0,0 +1,23 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +DESCRIPTION="Git merge driver for GNU style ChangeLog files" +HOMEPAGE="http://www.gnu.org/software/gnulib/" +# snapshot extracted from git://git.savannah.gnu.org/gnulib.git using +# ./gnulib-tool --create-testdir --without-tests --dir=${PN} ${PN}; +# cd ${PN}; ./configure; make maintainer-clean +SRC_URI="http://dev.gentoo.org/~ulm/distfiles/${P}.tar.xz" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +S="${WORKDIR}/${PN}" + +src_prepare() { + sed -n '/README/{h;:x;n;/^#/!{H;bx};g;s/\n*$//;s:/usr/local:/usr:g;p;q}' \ + gllib/git-merge-changelog.c >README || die +} diff --git a/dev-vcs/git-merge-changelog/git-merge-changelog-20140223.ebuild b/dev-vcs/git-merge-changelog/git-merge-changelog-20140223.ebuild new file mode 100644 index 000000000000..af48bbd91497 --- /dev/null +++ b/dev-vcs/git-merge-changelog/git-merge-changelog-20140223.ebuild @@ -0,0 +1,25 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +# snapshot extracted from git://git.savannah.gnu.org/gnulib.git using +# ./gnulib-tool --create-testdir --without-tests --dir=${PN} ${PN}; +# cd ${PN}; ./configure; make maintainer-clean + +EAPI=5 + +DESCRIPTION="Git merge driver for GNU style ChangeLog files" +HOMEPAGE="http://www.gnu.org/software/gnulib/" +SRC_URI="http://dev.gentoo.org/~ulm/distfiles/${P}.tar.xz" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="" + +S="${WORKDIR}/${PN}" + +src_prepare() { + sed -n "/README/{h;:x;n;/^#/!{H;bx};g;s/\n*$//;s:/usr/local:${EPREFIX}/usr:g;p;q}" \ + gllib/git-merge-changelog.c >README || die +} diff --git a/dev-vcs/git-merge-changelog/metadata.xml b/dev-vcs/git-merge-changelog/metadata.xml new file mode 100644 index 000000000000..e153d85b2356 --- /dev/null +++ b/dev-vcs/git-merge-changelog/metadata.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<maintainer> + <email>ulm@gentoo.org</email> +</maintainer> +</pkgmetadata> diff --git a/dev-vcs/git-pimp/Manifest b/dev-vcs/git-pimp/Manifest new file mode 100644 index 000000000000..23b203495822 --- /dev/null +++ b/dev-vcs/git-pimp/Manifest @@ -0,0 +1 @@ +DIST git-pimp-0.8.tar.gz 10555 SHA256 fa3778fc3c67906814a31421d5bb7c2889dca6ebaaaaf669ab9e56e744391c08 SHA512 124b61001c088685d5d9d6f848d37ca170413fda08074a273a4c1bccd233fe606028d8de82c66ae7847f42008b82a6030fa47a493ddc47b65d02b69a1acbd7df WHIRLPOOL a880d9e73ef950ec3c76ed25efbf566b5ce2468bded1ae59d3709dc9b2efeef266d7285e9cb0fd0d4db02c8a62fa4d62d3184b740e325e20eeab67f1151c5526 diff --git a/dev-vcs/git-pimp/git-pimp-0.8.ebuild b/dev-vcs/git-pimp/git-pimp-0.8.ebuild new file mode 100644 index 000000000000..189d2f1c897c --- /dev/null +++ b/dev-vcs/git-pimp/git-pimp-0.8.ebuild @@ -0,0 +1,29 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +inherit eutils + +DESCRIPTION="Code review or pull requests as patch email series" +HOMEPAGE="https://github.com/roman-neuhauser/git-mailz/" + +SRC_URI="http://codex.sigpipe.cz/${PN}/${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" + +KEYWORDS="~x86 ~amd64" + +DEPEND="" + +RDEPEND=" + dev-vcs/git + app-shells/zsh + dev-vcs/git-mailz + dev-vcs/git-mantle +" + +src_install(){ + emake PREFIX="${ED}/usr" install +} diff --git a/dev-vcs/git-pimp/metadata.xml b/dev-vcs/git-pimp/metadata.xml new file mode 100644 index 000000000000..2edcc4239e88 --- /dev/null +++ b/dev-vcs/git-pimp/metadata.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>yac@gentoo.org</email> + <name>Jan Matejka</name> + </maintainer> + <longdescription lang="en"> +</longdescription> + <upstream> + <remote-id type="github">roman-neuhauser/git-mailz</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-vcs/git-sh/Manifest b/dev-vcs/git-sh/Manifest new file mode 100644 index 000000000000..14811dbd282e --- /dev/null +++ b/dev-vcs/git-sh/Manifest @@ -0,0 +1,2 @@ +DIST git-sh-1.1.tar.gz 26616 SHA256 2947304d328c9db77268840e29eb19abba7252f84b98f1d5ea957c8b906638ab SHA512 c6704b7340b2da5ca1a0484461cbf6f51c2428254f036254aa6bd2577b8e492ab65dbf7b2c7b2e6c944e3f9df9f3fb8bdca768ed7ce7a26554c821bc3f231882 WHIRLPOOL 22b578c631130bf3f951daf20258b356dfed48a69595383dbf0cbe6ecd6861940a721c03763511b45cf3f25d6334df9f4b85f63b989990343f8618c715bbfcb0 +DIST git-sh-1.3.tar.gz 26757 SHA256 461848dfa52ea6dd6cd0a374c52404b632204dc637cde17c0532529107d52358 SHA512 8ab742d0ff86e8387d03e2e190eec8ffd4725b1bfa58940f6673f5eac8c749931e3b3f8f20b898d933db36f56b323f800dba47a35294f865f456512f19a7846c WHIRLPOOL 01cd40187e0fe5930c1f53fba9708bc56ed14db20a5ecda897bdef1fe8a36bcfddda317a6cddef9297deb8956592c5003f15516afe22b9175354d4f0ac9b4aa4 diff --git a/dev-vcs/git-sh/git-sh-1.1.ebuild b/dev-vcs/git-sh/git-sh-1.1.ebuild new file mode 100644 index 000000000000..8c8bc46bc2f5 --- /dev/null +++ b/dev-vcs/git-sh/git-sh-1.1.ebuild @@ -0,0 +1,32 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=4 + +inherit vcs-snapshot + +DESCRIPTION="A customized bash environment suitable for git work" +HOMEPAGE="http://github.com/rtomayko/git-sh" +SRC_URI="http://github.com/rtomayko/${PN}/tarball/${PV} -> ${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="" + +DEPEND="" +RDEPEND="dev-vcs/git" + +src_prepare() { + sed \ + -e 's/git-completion\.bash //' \ + -e 's:/local::' -i Makefile || die "sed failed" +} + +pkg_postinst() { + echo + einfo "For bash completion in git commands emerge dev-vcs/git" + einfo "with bash-completion USE flag." + echo +} diff --git a/dev-vcs/git-sh/git-sh-1.3.ebuild b/dev-vcs/git-sh/git-sh-1.3.ebuild new file mode 100644 index 000000000000..aa5998fb69ab --- /dev/null +++ b/dev-vcs/git-sh/git-sh-1.3.ebuild @@ -0,0 +1,32 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit vcs-snapshot + +DESCRIPTION="A customized bash environment suitable for git work" +HOMEPAGE="http://github.com/rtomayko/git-sh" +SRC_URI="https://github.com/rtomayko/git-sh/archive/${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="" + +DEPEND="" +RDEPEND="dev-vcs/git" + +src_prepare() { + sed \ + -e 's/git-completion\.bash //' \ + -e 's:/local::' -i Makefile || die "sed failed" +} + +pkg_postinst() { + echo + einfo "For bash completion in git commands emerge dev-vcs/git" + einfo "with bash-completion USE flag." + echo +} diff --git a/dev-vcs/git-sh/metadata.xml b/dev-vcs/git-sh/metadata.xml new file mode 100644 index 000000000000..cca713b1b431 --- /dev/null +++ b/dev-vcs/git-sh/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>jlec@gentoo.org</email> + </maintainer> + <longdescription lang="en"> + </longdescription> + <upstream> + <remote-id type="github">rtomayko/git-sh</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-vcs/git/Manifest b/dev-vcs/git/Manifest new file mode 100644 index 000000000000..2fa775dd0dc3 --- /dev/null +++ b/dev-vcs/git/Manifest @@ -0,0 +1,33 @@ +DIST git-1.8.5.6.tar.gz 4765390 SHA256 6a68455cc0cb96aa9cae44ac7afcb5b63a47e9da7c0ff6012bb78d184be41af5 SHA512 fd004a5a99e8ff80556e669ef6e297a4eea9c9f9c58ef9162eef1c66580c4156165c81371ff5832e56ad729d6ed3fb1459a14d682cfd2b8c37c9ceb298be2ef3 WHIRLPOOL 665c9380314abc85cb1e3a114fd60a4f535d7a8aa25437c8c3ff8bc0a3ebedaeef4aa7a6259108ab2f79c3344810b5c2f86f85546fc9015d031c89762bfc4f33 +DIST git-1.9.5.tar.gz 4851532 SHA256 44efbc76edb50103e0d1b549dac006ee6f275fbd62491d7473e21127601f55c1 SHA512 0fa0a1fd636ed29ef54885ecbacc239c2b6edd4820a633fd88a8f62dd7e50ead1676aa0c3cf0df88a49dd5e1364f6b8da3ec9c115d1bc55bba4bf413539bedb0 WHIRLPOOL a860d6b194e27d9a5ba086d665c0b31870d4fc71380a44ec55f0b7f19c6bf973ab0d628e531c175138fce54dfa7d799ed9ab276dffaf9bec66c45cd885e324f2 +DIST git-2.0.5.tar.xz 3437996 SHA256 f5a63f5073c7f10d0676d0dabb46df48f2af77624fe24e1c6047b0e047af8ca1 SHA512 a2de101462cb7cf79ae596a5c7a77746fca430d6ae819731eb025a784b38b48b98964aca3db251e1a598ff17ff26b3711b044bd9c579d01346a8e1e77f7aa6de WHIRLPOOL b317f7b57a8a568b8a63ddbb44d6734dce01034c1b50491e3aedbb8a4ad2dc0f781b9edfad07e73ff050684f05734ee5f8b5483646967cbcd0a3cf7c600394eb +DIST git-2.1.4.tar.xz 3544804 SHA256 a04968b9b10cbcb31a7054aa3a0d11ac47c83556ecd270ddef1987df5d3d053e SHA512 17333eda9600287be1f366271f314619354f6bc9b7f867d59a9493441e71a963340cedf728b5954ac6311f5426a928a2beacfa7775e1a4d439b58e0dcf310a0b WHIRLPOOL fc20c64e0d494a13834c71ffa5c727018fc3940f4dc65ae4eda6ba14af2faf2864d779e706b503c69a16858ca051878e27bcfe1883c3c206dda6129a1bc5aceb +DIST git-2.2.2.tar.xz 3592264 SHA256 aa6d2efcc0c7bb9b9edc6d56d90921706b833972f1d2abe70f71be7838f22d05 SHA512 e3ca6f40de04ed940f521fff4c7e92446e40ad1627acc5b4c090ebf114dcf279d4b1f3efe1189ffa43192fce412165621fc12ea90e2f7d02a6a9ccda655dc69b WHIRLPOOL 9e20def83bbb9b11cb5982fc5f19b09767657ff80f02a237dff6ddaddd3209b4cfb9288bec1b6dc80c6a6db1869cfcaa90e2374279012fc8215771c1a58a1fc2 +DIST git-2.3.6.tar.xz 3621716 SHA256 3ce01c54e92b47366756f57742280e052412efde65344e31f51ad8a48a7c60fc SHA512 53ad21db0fa6bb48ee24302c35ee929b1bd1fae3b646845523e7105b8539700cef23e2425170dec0311c7e746c41b743cfd78f192613b586291e44b49c3c284d WHIRLPOOL 12cf33fc19efea4f885a9b5c6d7099893b92742ffaad8e407016abfc5232ddd4763db95fc657a185830e2f904cdb2b04e8ad1c4305f09d77ff8f7db07c139799 +DIST git-2.3.8.tar.xz 3622512 SHA256 cb4d9228f63b7a9500d55383878bb4bbb60b80deb7ae1a5858c7103ba14de5a6 SHA512 bf693fbe7fc16a240470501af2a7736ebfdbf027c0cc8adbd601d2b1c98ec7d968959e06dd8a3d0e206dc351e83a161475191d59d76f9e2da3e13b4de8716fb4 WHIRLPOOL 93aa2d832e57181de25035952a566c9d3330105e277930f088eb10e2073120c296b6dd87375437c9e9b7880c9b56e2c0de0fda5f77f0da9d2f96840c2fe8eda8 +DIST git-2.4.6.tar.xz 3690432 SHA256 bdd944571c03474517b6c9941d6f1fd735eccbb164e59fd133d38644b69453b6 SHA512 2c95a00af81d6fbd8f4984e89d7cb23396caacadd684466aeb5a11f1b3acfbc625f832060cbef5aee0748e36c1fddcd88b3b9c26c4d7aec1d185e5f7311346ef WHIRLPOOL 1ae191666bf27a7e18686b910cbe610f85b5b7a43266232359615fa2a22b80bc659277b71b21394eab53df0c912d9ad911c7793c2a041cd6c7d768a5f0416f5b +DIST git-2.4.7.tar.xz 3691752 SHA256 6763f5ad1dfe29770aa0c523e08d53a0c7b9d32989bfbf2f39f368c7f61094de SHA512 7772d6e6466b6f835f506def455399fdfc81153975d9b259b1572cd332444187d61a19216f88476300c2030ff7a8baef794b6fe06203776e25f3f702bd31e5de WHIRLPOOL 75e630a448f6a94b179841e072900a68b57d6d9025535ff7a9e31db1591fd3290c4dda3a1a65a4ec91ad8f48fd9ad40b669a67d2d2ce0aff78831e6b41eda93d +DIST git-2.4.8.tar.xz 3692460 SHA256 c7d2019d3c3b742862b252dcabb3d870b649e1af3fc8a132a0c0149f9e91dfcb SHA512 b1af6bf03dec006ed99601e66dda5b70e576c47d755d8fe5ca3cd974acc33cf2a6b76901549b56f6b4d3d3697f43c84dca35fc21c2cf5e8daad026f1bcc5b263 WHIRLPOOL e00d8e04c86ba611457547c71fb22ebef04b3a7e4316145b29cf073e4e58849bb62963b41660176f6d4e78b492c3b2ac513e80e8db42a91a4dcc31207718f012 +DIST git-2.5.0.tar.xz 3740620 SHA256 cc59b1bac6c1c67a9159872863f6c5bbe0d9404cac2a85c3e9d9fa49923ce45c SHA512 ef7538c9f5ba5b2ac08962401c30e5fd51323b54b9fb5315d259adccec346e8fae9362815832dc2b5ce63a259b315c40e419bb2385dde04d84b992e62f6789b6 WHIRLPOOL 653e7aeb966dec44631bbd257a41935b2e957be9324311a4fd91f3a0ba6f1f674e2e59b4c564d70c4eeaea3788f0af9273a1d0a753b3bc820e687f0d63bddf5d +DIST git-htmldocs-1.8.5.6.tar.gz 2242475 SHA256 7c8e955d0798686fa030ba7b7b384a2eab2b74d5bd695d82faecac2e247bd211 SHA512 c9b2752bcdd7f8f817b14e99ab2743d153e3e7549bffb2aa98999e46d1e965d045850ec6a3e9f6bc83e6e4820ce20f281c33f946ebd2be16d275b85a5ddaee36 WHIRLPOOL 7db3fb74e6b51618890acfef8fb89ab09adf653d3196e82624671194bdb2b564b903429ffecf68b28faf96ce3ebb83b534459738d48ace048d873c158621d31c +DIST git-htmldocs-1.9.5.tar.gz 2262251 SHA256 4fa289e259d6b922a51d11a687203612aa1aad5696eb83b4e67c0de8a785700f SHA512 2df975c33d3411a97ab5a684b03998b7cd188d05bae6813c753fe2092b0acf463dec49a7a546d315f520fd9c71281da41998d0f36f64f48d4f95507a034a083b WHIRLPOOL edc252ce58b31f001c0d225f0b40b3689028bd34b1cbbdd889d645d37a2931e9039f76f12e5a0f918579a0b9c5dd1f3171af2bb58ee42972411ca33ec0ebe8f2 +DIST git-htmldocs-2.0.5.tar.xz 944792 SHA256 90eaf745d6ee197718fdde9c98919918ad1e4e3576608e4522b84c612cd9ef2a SHA512 e9b3d92d466762c9c7e164e9c30ff0046b262bf4707ea057e3a682f7b15a4f8149a9aaf2630f117dc3b508744cd688c6c0087cc94ff3477e7f3b85513160d7f3 WHIRLPOOL 35970d099304a5ab174fc93f8496a0c651a259dcaa3d23a2dd0233f8db214ae94a26e28044a87460d4654e61440427d331ceeac290335d6ae3fcf0423175bba9 +DIST git-htmldocs-2.1.4.tar.xz 959144 SHA256 7665daecd77c2f9be8b316eb69a1fda3f383f759e71d346a137c8cf39501d886 SHA512 7734d671ab6ca8374f54546b0987821d0c66d136d50f9cbb1ff7c06da25330e46a10ede41d10a60c80847afa68999298c2f90dfe99d51bd862590f02344e1cbd WHIRLPOOL 97326a00a1f613cf95dbeaf8938842855299d21e6963e2040b3bf9ee02a745c8156ea552e2b87248a98d5f0ecd6560a546a4a49b6635ca034ff2e92504bbb00a +DIST git-htmldocs-2.2.2.tar.xz 976312 SHA256 41179ff0816189d583f290a227a73788002a319c7ff8c5cada970878c50b901d SHA512 b51b7d619e82d83b4f0b90d31bfccc30291a5beb48b2f5e5e59e75e91e5d772e89b560534a683648cd5480f4bf241f733efc87b30062ef5bb003bf0b5dbeed7f WHIRLPOOL c9dc7ac1a40559e4306d7d97a1619a272faf83d8b05c5a11f5f7b010566cd02fe853fee7eb550c6ccf744db446966a9696f9eb6feeee7ce4f976c6aa88b097d2 +DIST git-htmldocs-2.3.6.tar.xz 987292 SHA256 b37439087ae465534588a65380e3acb66d3e6949904ede720febeed1dc5d8b49 SHA512 ccb836c3df4bfb96174500295c630aa1ac3bea475460434e4d097c3e178bec5a0b5037ff17281fe6a6bc7bb3ae6bcac03ee4009611bb222eccaebc3ae6aac81f WHIRLPOOL 8c58f108d1ea95bf552604b956e727dcf7a8f0eed8979239b0b6ab931aceffc76434137b5f76054563a09985bcaad0a03359da8791469adae71a3a8821084d58 +DIST git-htmldocs-2.3.8.tar.xz 987840 SHA256 54b8d98e34bceeac906ffa8b7c93e8a2cd2cf3c7f4d0c0334e9d5e0c704ca23f SHA512 7aa72d55a6a2687a3ecb26f9db76f69e4003c87864b8239068b029a9d63f99a023bf76ec3ea60952ecf11608d2d684f4ad1b2ac76942cd44ec67bdf8f497330f WHIRLPOOL 60145b5a48a6780b0edb3a7ef50b3649193818e3aa8199de94dd9bf1cca110d7411902c8e7e3df881eec77aa59208780b60b946aeb5f13960de954af6fd88fbe +DIST git-htmldocs-2.4.6.tar.xz 994712 SHA256 5213e8b882293ec3cda247dabbc75c6ee5243b9d330a8fafec004952fae91a88 SHA512 782fbc38a611380c0af2631bd6123d568b02159fb46159c763d97d75bd84debe43105d83ac3f321cd8383e1334806857bce1a48563fd0c19b43f527fe18615a8 WHIRLPOOL 170e4ecc8255e6d5d562274e6e3fb75c2fc62e415586d61498b680a076c74248664fca35bb7c532009f7f22be4ad14d1fe047e14791991fa32373bd7053e0396 +DIST git-htmldocs-2.4.7.tar.xz 995972 SHA256 ce0d1603f097b89c895613c864a7ac1ed8be36283b98298fff4fcafc2133dbc1 SHA512 1ea356f57299f41cfcb54baac17faf4f12ebb0b992769b0bf36dece800cb07d0b15b5b059d29a7e2469e885da1fa53f899e31e3c9cf58fd7fde4b2168ae19c41 WHIRLPOOL 3ffa7fc366e3a0855ecd6cc3af4577635072082236affc2079caaae2273d0965b0ea2e7fe2fb0d2bbc6b1c44b295325ca19065a4b9ba811bfc95bae94323245d +DIST git-htmldocs-2.4.8.tar.xz 996004 SHA256 73c9ac3b42da1d3427bfa91c3266c6b7df332137d6ce92217c43db8f479a74ea SHA512 fcd93a76b19bd559ccb28829fa78ae0a2840a70e0c59a2709b2f089f1127b8452ee2f4e8e74128766f50eeeb560d924248d73336f2b5746305823834a9311db2 WHIRLPOOL 249390556106b13e4c02112085bd527720edcb67c85c61e429bea67bc252e7be3b6f4f641534bc342e534d154a9531379e3717d32e5109e48f886174022dce02 +DIST git-htmldocs-2.5.0.tar.xz 1008428 SHA256 0924b290834e2a361a489cbc845a9bf04e56117597dc9c1a40e879cce655e4e2 SHA512 921ae8dd482719912f79f5affb6fa239290a954fb40625ac9fae2edf902989e5126ae7ca5c367b2b55c5387fb3cc3035ddf4e8b360743dbdee0f1b55ec33653c WHIRLPOOL e355781b06fba48d9ada859fe6fb515ddbfbac5a1d5c0918e8570e4566f68d644456606b5b0eb8e3e4cdc7c8b27a96b72cc1907008dff567cae71f0953968843 +DIST git-manpages-1.8.5.6.tar.gz 569061 SHA256 58ef7cb3121639b8d78e2e4c4f7f886bab57af9e9e137b10f372dfad573872c1 SHA512 a524a1c7e8bdc73ffe04bebb5c7050a18c8649b98714bf255c8e3c32a2443d8d5abf33e3ca2eb108d601f01e0bda50fed1e134ffdae87bcf6f551cbbd250c4ba WHIRLPOOL 2db62b96e972dbcbec1ac59d7244bf2c2ff7140c941d1d3c6b9062bd79b80541d7fa3982c5a3bc55a18fc9112ab3fa648966be5c3e1135ab7b5c89080bee82b6 +DIST git-manpages-1.9.5.tar.gz 571625 SHA256 37cc735c4ced6574e8e93349d52d30372fc6f9fe3de3d6b9934a14857d6aade8 SHA512 e3df3e933fed6ff2845989a0146b28789452e9583bc19dd4a9ad335f64b15feffbdc4dd7cdb9d6b5216f7f85837318cf9b10df033f8022777f91c2b0894fb231 WHIRLPOOL e25d77fd8d9cacb92d45fd50640bc65189d02d7e23b276ccaf3b35ba1fe64ab0c49045d1fb8983b7b2b5bd996e767508446ac76506b074ded10feef1f9256918 +DIST git-manpages-2.0.5.tar.xz 359000 SHA256 3cf1581da2a19c0651df445ee5f801e108619befe8965e01d61faa46ca57b642 SHA512 b3981565a34a203283801b86717386971ef53c2f5c47bdde290aa0df4d62045ecbcab1ff1b4d1d8ddf7d489e74d65b0208d87ace7ca8c8be9525be548e445425 WHIRLPOOL e8c78eb38cb3192455ccb991a4ce5cd3988d06f1f06cdf0722e4ce6fb1d4e57f618058cf07d312bcab4f5821a1b1dfc016c03626d4f3429d3e5ef089607a2801 +DIST git-manpages-2.1.4.tar.xz 361252 SHA256 01070bc96e88231f6f279b031fed2919efea8b442fe724f37349ad951d010b04 SHA512 35fe0dd9e0fe9547362abc0e9c5b066abc13a4137b4ea62569fa5b1ae93831da0686e8783be946a9b87274fbc2322ef93425b9d3fc1257023176c772b21b79b2 WHIRLPOOL 9f199eb94657149b51cb20fb55878cb1cf83fa3741906ce37a66b0157df9ca4dae66754fe264019e6bd8e7d286040fec718b89ca4b40b803c059c46521a5cc61 +DIST git-manpages-2.2.2.tar.xz 369876 SHA256 d30688bb62763bf1b87f5eaf4c0a66c68999e479ccd2963108a5f6f82138147c SHA512 5c2220bb09f199ad4fe5c1bc20a813a6c62daab5e6e7fa87bf24861d25b7f7e0fdde215c4f59d8895badd7c361ed202e7837de48d2d54a155d24759db39dd4e1 WHIRLPOOL 45acc45663f13faf5b8197516bb934723bf84cd6db929443e2bd9fc3a915baf258ee93e782741e088a5f799115ea4ee6043225fc9ea9ec954feed21ba54c9be4 +DIST git-manpages-2.3.6.tar.xz 371620 SHA256 b1356f5cb3e7bf53445b08f24ea6950ef1f80031aedd6cd90e3ec60ff1f06b02 SHA512 c7ff2e6aea8c0c12009f29724c899e606b6620e7d408ee3c536fb5239ebcaa0b790a6ee1287dccd88df8776fbc2e72e799124426dbacd82e12f05e3f9f3c909a WHIRLPOOL 7117ba84d888ea448807f3bf51f958b86de011afed1bbad78abf4390c1a77f799f77781f4d9bf1e9287ab903b912b7ca270433c1f4a1f112a4cb4840dde3d400 +DIST git-manpages-2.3.8.tar.xz 371528 SHA256 4d38de9decf80864480fcd5cc58783e3bff4e22383b281193acd82ffa3751fe2 SHA512 8c6aaf60e4b6505ae6789fa658ff15534cf5dfa51c03fdf47a624723b75a8448d71faa9f4ee61c5c243b775c4047dd2ffffc664b37e7f38b60c90fc56252ed93 WHIRLPOOL c6068de21f53e20ec17cd724059d91781e81abf617c2169c1099997afdeac371a59927d9db0b98c1f64c66b3de016b351b08a2f37a43038a924137f6f139a72e +DIST git-manpages-2.4.6.tar.xz 373408 SHA256 f32d267bdaab75812dbd116d2b329d6dc7287a974e929e380e8cbf96e3822b8e SHA512 fa0562b8cc3e0421f7b45940f8cd4b58a5e58a1eb8571e2de85babf8ffd932fd210baa82aefe3c6090cb7dc51f64f299143be51beaacb37be97832b4a8e2a869 WHIRLPOOL 595beed93c621ffd9b7e0b507fc2941156975190eca8b638826ac32b6ea761bbb08f05e152dc88a7a3dbd168ab083a0128d61e72fae51cd0e94a8c91a1adb3ee +DIST git-manpages-2.4.7.tar.xz 373568 SHA256 cbf3171d93edea466325809c26c6946716402f7f9ae32e31e97384b2a96377f9 SHA512 e3c59ef02824d553257d5cc78e727ceca75cf1c6ba68375fe6482812ec5ff8684319ada2c38c00574509958bff0f3af732c509726f02e48517c6a8f84ea4f154 WHIRLPOOL 1be4ef465d3446ec8ae4c5ddb25f2fe66ec4b9d116a5789176e83513606cbcd70ecf07038d86903acc93a52a187d99a7c62d3593bc0d7b43a4a7af4ccac6c7ac +DIST git-manpages-2.4.8.tar.xz 373596 SHA256 47558ec88776e66e6f3e3625b7efdaf2e8ad447cb7af199d60d0788d7f4438c4 SHA512 bb5dc6d7a9af05f2f5a3665f0bac29e5a08919412d69cc756981c88eaa6cf5b8cbe93e04e1aa10d2a48706178eb33a547f416ee191bdb8d25483212aa7e30e5e WHIRLPOOL 0b4ab3099b6604f17a6ff741a9d752c76772ca4f7a02e55db4cbff1e14878c3bdcb25d5e4a71dd2f7a81525475aea35d9ef09d203d949984d95ef02f9865f33c +DIST git-manpages-2.5.0.tar.xz 377856 SHA256 1a6ea7220b1693eb384af0978a990ea8c0c634a7869d1ef63a2c8e427fc7f6ea SHA512 b3a5f2e8107c529ce81c1570a82472195e205ff1a8ddc75f4f0cbbf25f37a916700156df4418888c8a8a153ab58d5507a31027fb31faadeb5d4ba242847ab28d WHIRLPOOL 09f13622fff6a2b04a8ad584dab54c0b17cbfc6e803ca9e2deadab18071e50b50b37e395bb4746aff2e013f5b0025f8cdb1d439d8e6f3a659fad32646b30f4c7 diff --git a/dev-vcs/git/files/50git-gentoo.el b/dev-vcs/git/files/50git-gentoo.el new file mode 100644 index 000000000000..1646a391c53c --- /dev/null +++ b/dev-vcs/git/files/50git-gentoo.el @@ -0,0 +1,13 @@ + +;;; dev-vcs/git site-lisp configuration + +(add-to-list 'load-path "@SITELISP@") +(autoload 'git-status "git" "Entry point into git-status mode." t) +;;(autoload 'git-blame-mode "git-blame" +;; "Minor mode for incremental blame for Git." t) + +;; GNU Emacs >=22.2 already includes vc-git.el. +;; Enable the following only if Emacs has no GIT support. +(unless (fboundp 'vc-git-registered) + (add-to-list 'load-path "@SITELISP@/compat") + (add-to-list 'vc-handled-backends 'GIT)) diff --git a/dev-vcs/git/files/git-1.8.5-mw-destdir.patch b/dev-vcs/git/files/git-1.8.5-mw-destdir.patch new file mode 100644 index 000000000000..ea4f1758059f --- /dev/null +++ b/dev-vcs/git/files/git-1.8.5-mw-destdir.patch @@ -0,0 +1,37 @@ +diff --git a/contrib/mw-to-git/Makefile b/contrib/mw-to-git/Makefile +index f206f96..a4b6f7a 100644 +--- a/contrib/mw-to-git/Makefile ++++ b/contrib/mw-to-git/Makefile +@@ -18,9 +18,13 @@ SCRIPT_PERL+=git-mw.perl + GIT_ROOT_DIR=../.. + HERE=contrib/mw-to-git/ + ++INSTALL = install ++ + SCRIPT_PERL_FULL=$(patsubst %,$(HERE)/%,$(SCRIPT_PERL)) + INSTLIBDIR=$(shell $(MAKE) -C $(GIT_ROOT_DIR)/perl \ + -s --no-print-directory instlibdir) ++DESTDIR_SQ = $(subst ','\'',$(DESTDIR)) ++INSTLIBDIR_SQ = $(subst ','\'',$(INSTLIBDIR)) + + all: build + +@@ -30,7 +34,9 @@ test: all + check: perlcritic test + + install_pm: +- install $(GIT_MEDIAWIKI_PM) $(INSTLIBDIR)/$(GIT_MEDIAWIKI_PM) ++ $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(INSTLIBDIR_SQ)/Git' ++ $(INSTALL) -m 644 $(GIT_MEDIAWIKI_PM) \ ++ '$(DESTDIR_SQ)$(INSTLIBDIR_SQ)/$(GIT_MEDIAWIKI_PM)' + + build: + $(MAKE) -C $(GIT_ROOT_DIR) SCRIPT_PERL="$(SCRIPT_PERL_FULL)" \ +@@ -43,7 +49,6 @@ install: install_pm + clean: + $(MAKE) -C $(GIT_ROOT_DIR) SCRIPT_PERL="$(SCRIPT_PERL_FULL)" \ + clean-perl-script +- rm $(INSTLIBDIR)/$(GIT_MEDIAWIKI_PM) + + perlcritic: + perlcritic -5 $(SCRIPT_PERL) diff --git a/dev-vcs/git/files/git-1.8.5-mw-vendor.patch b/dev-vcs/git/files/git-1.8.5-mw-vendor.patch new file mode 100644 index 000000000000..54302ef26c91 --- /dev/null +++ b/dev-vcs/git/files/git-1.8.5-mw-vendor.patch @@ -0,0 +1,39 @@ +diff --git a/contrib/mw-to-git/Makefile b/contrib/mw-to-git/Makefile +index a4b6f7a..d83df2c 100644 +--- a/contrib/mw-to-git/Makefile ++++ b/contrib/mw-to-git/Makefile +@@ -22,7 +22,7 @@ INSTALL = install + + SCRIPT_PERL_FULL=$(patsubst %,$(HERE)/%,$(SCRIPT_PERL)) + INSTLIBDIR=$(shell $(MAKE) -C $(GIT_ROOT_DIR)/perl \ +- -s --no-print-directory instlibdir) ++ -s --no-print-directory instvendorlibdir) + DESTDIR_SQ = $(subst ','\'',$(DESTDIR)) + INSTLIBDIR_SQ = $(subst ','\'',$(INSTLIBDIR)) + +diff --git a/perl/Makefile b/perl/Makefile +index 15d96fc..91348c6 100644 +--- a/perl/Makefile ++++ b/perl/Makefile +@@ -12,7 +12,7 @@ ifndef V + QUIET = @ + endif + +-all install instlibdir: $(makfile) ++all install instlibdir instvendorlibdir: $(makfile) + $(QUIET)$(MAKE) -f $(makfile) $@ + + clean: +diff --git a/perl/Makefile.PL b/perl/Makefile.PL +index 3f29ba9..c0b3508 100644 +--- a/perl/Makefile.PL ++++ b/perl/Makefile.PL +@@ -17,6 +17,8 @@ sub MY::postamble { + return <<'MAKE_FRAG'; + instlibdir: + @echo '$(INSTALLSITELIB)' ++instvendorlibdir: ++ @echo '$(INSTALLVENDORLIB)' + + ifneq (,$(DESTDIR)) + ifeq (0,$(shell expr '$(MM_VERSION)' '>' 6.10)) diff --git a/dev-vcs/git/files/git-1.8.5-optional-cvs.patch b/dev-vcs/git/files/git-1.8.5-optional-cvs.patch new file mode 100644 index 000000000000..aef03d842183 --- /dev/null +++ b/dev-vcs/git/files/git-1.8.5-optional-cvs.patch @@ -0,0 +1,362 @@ +From eadb20b065c33d46b49c8c95d8cde0c9fe7c62a4 Mon Sep 17 00:00:00 2001 +From: Robin Johnson <robbat2@gentoo.org> +Date: Wed, 22 Aug 2012 04:25:06 +0000 +Subject: [PATCH] Makefile: Add NO_CVS define to disable all CVS interface + utilities + +Forward-ported from 1.7.12 to current git.git v1.8.4 +Forward-ported from v1.8.4 to v1.8.5.1 + +--- git-1.8.5.1/Makefile ++++ git-1.8.5.1/Makefile +@@ -263,6 +263,8 @@ + # + # Define NO_TCLTK if you do not want Tcl/Tk GUI. + # ++# Define NO_CVS if you do not want any CVS interface utilities. ++# + # The TCL_PATH variable governs the location of the Tcl interpreter + # used to optimize git-gui for your system. Only used if NO_TCLTK + # is not set. Defaults to the bare 'tclsh'. +@@ -437,6 +439,7 @@ + PROGRAM_OBJS = + PROGRAMS = + SCRIPT_PERL = ++SCRIPT_PERL_CVS = + SCRIPT_PYTHON = + SCRIPT_SH = + SCRIPT_LIB = +@@ -477,20 +480,21 @@ + SCRIPT_PERL += git-add--interactive.perl + SCRIPT_PERL += git-difftool.perl + SCRIPT_PERL += git-archimport.perl +-SCRIPT_PERL += git-cvsexportcommit.perl +-SCRIPT_PERL += git-cvsimport.perl +-SCRIPT_PERL += git-cvsserver.perl + SCRIPT_PERL += git-relink.perl + SCRIPT_PERL += git-send-email.perl + SCRIPT_PERL += git-svn.perl + ++SCRIPT_PERL_CVS += git-cvsexportcommit.perl ++SCRIPT_PERL_CVS += git-cvsimport.perl ++SCRIPT_PERL_CVS += git-cvsserver.perl ++ + SCRIPT_PYTHON += git-p4.py + + NO_INSTALL += git-remote-testgit + + # Generated files for scripts + SCRIPT_SH_GEN = $(patsubst %.sh,%,$(SCRIPT_SH)) +-SCRIPT_PERL_GEN = $(patsubst %.perl,%,$(SCRIPT_PERL)) ++SCRIPT_PERL_GEN = $(patsubst %.perl,%,$(SCRIPT_PERL) $(SCRIPT_PERL_CVS)) + SCRIPT_PYTHON_GEN = $(patsubst %.py,%,$(SCRIPT_PYTHON)) + + SCRIPT_SH_INS = $(filter-out $(NO_INSTALL),$(SCRIPT_SH_GEN)) +@@ -1779,8 +1783,18 @@ + $(join -DMAJOR= -DMINOR= -DPATCH=, $(wordlist 1,3,$(subst -, ,$(subst ., ,$(GIT_VERSION))))) \ + -DGIT_VERSION="\\\"$(GIT_VERSION)\\\"" $< -o $@ + ++_SCRIPT_PERL_BUILD = ++_SCRIPT_PERL_NOBUILD = ++ + ifndef NO_PERL +-$(patsubst %.perl,%,$(SCRIPT_PERL)): perl/perl.mak ++ ++_SCRIPT_PERL_BUILD += $(SCRIPT_PERL) ++ ++ifndef NO_CVS ++_SCRIPT_PERL_BUILD += $(SCRIPT_PERL_CVS) ++else # NO_CVS ++_SCRIPT_PERL_NOBUILD += $(SCRIPT_PERL_CVS) ++endif # NO_CVS + + perl/perl.mak: perl/PM.stamp + +@@ -1792,7 +1806,7 @@ + perl/perl.mak: GIT-CFLAGS GIT-PREFIX perl/Makefile perl/Makefile.PL + $(QUIET_SUBDIR0)perl $(QUIET_SUBDIR1) PERL_PATH='$(PERL_PATH_SQ)' prefix='$(prefix_SQ)' $(@F) + +-$(patsubst %.perl,%,$(SCRIPT_PERL)): % : %.perl GIT-VERSION-FILE ++$(patsubst %.perl,%,$(_SCRIPT_PERL_BUILD)): % : %.perl GIT-VERSION-FILE + $(QUIET_GEN)$(RM) $@ $@+ && \ + INSTLIBDIR=`MAKEFLAGS= $(MAKE) -C perl -s --no-print-directory instlibdir` && \ + sed -e '1{' \ +@@ -1817,14 +1831,17 @@ + chmod +x $@+ && \ + mv $@+ $@ + else # NO_PERL +-$(patsubst %.perl,%,$(SCRIPT_PERL)) git-instaweb: % : unimplemented.sh ++_SCRIPT_PERL_NOBUILD += $(SCRIPT_PERL) $(SCRIPT_PERL_CVS) git-instaweb ++endif # NO_PERL ++ ++# This is any perl scripts that were disabled it might be empty... ++$(patsubst %.perl,%,$(_SCRIPT_PERL_NOBUILD)): % : unimplemented.sh + $(QUIET_GEN)$(RM) $@ $@+ && \ + sed -e '1s|#!.*/sh|#!$(SHELL_PATH_SQ)|' \ + -e 's|@@REASON@@|NO_PERL=$(NO_PERL)|g' \ + unimplemented.sh >$@+ && \ + chmod +x $@+ && \ + mv $@+ $@ +-endif # NO_PERL + + ifndef NO_PYTHON + $(SCRIPT_PYTHON_GEN): GIT-CFLAGS GIT-PREFIX GIT-PYTHON-VARS +--- git-1.8.5.1/t/t9200-git-cvsexportcommit.sh ++++ git-1.8.5.1/t/t9200-git-cvsexportcommit.sh +@@ -12,6 +12,11 @@ + test_done + fi + ++if ! test_have_prereq CVS; then ++ skip_all='skipping git cvsexportcommit tests, cvs not available' ++ test_done ++fi ++ + cvs >/dev/null 2>&1 + if test $? -ne 1 + then +--- git-1.8.5.1/t/t9400-git-cvsserver-server.sh ++++ git-1.8.5.1/t/t9400-git-cvsserver-server.sh +@@ -11,9 +11,15 @@ + . ./test-lib.sh + + if ! test_have_prereq PERL; then +- skip_all='skipping git cvsserver tests, perl not available' ++ skip_all='skipping git-cvsserver tests, perl not available' + test_done + fi ++ ++if ! test_have_prereq CVS; then ++ skip_all='skipping git-cvsserver tests, cvs not available' ++ test_done ++fi ++ + cvs >/dev/null 2>&1 + if test $? -ne 1 + then +--- git-1.8.5.1/t/t9401-git-cvsserver-crlf.sh ++++ git-1.8.5.1/t/t9401-git-cvsserver-crlf.sh +@@ -57,15 +57,20 @@ + return $stat + } + +-cvs >/dev/null 2>&1 +-if test $? -ne 1 ++if ! test_have_prereq PERL + then +- skip_all='skipping git-cvsserver tests, cvs not found' ++ skip_all='skipping git-cvsserver tests, perl not available' + test_done + fi +-if ! test_have_prereq PERL ++if ! test_have_prereq CVS + then +- skip_all='skipping git-cvsserver tests, perl not available' ++ skip_all='skipping git-cvsserver tests, cvs not available' ++ test_done ++fi ++cvs >/dev/null 2>&1 ++if test $? -ne 1 ++then ++ skip_all='skipping git-cvsserver tests, cvs not found' + test_done + fi + perl -e 'use DBI; use DBD::SQLite' >/dev/null 2>&1 || { +--- git-1.8.5.1/t/t9600-cvsimport.sh ++++ git-1.8.5.1/t/t9600-cvsimport.sh +@@ -3,14 +3,25 @@ + test_description='git cvsimport basic tests' + . ./lib-cvs.sh + +-test_expect_success PERL 'setup cvsroot environment' ' ++if ! test_have_prereq PERL ++then ++ skip_all='skipping git cvsimport tests, perl not available' ++ test_done ++fi ++if ! test_have_prereq CVS ++then ++ skip_all='skipping git cvsimport tests, cvs not available' ++ test_done ++fi ++ ++test_expect_success 'setup cvsroot environment' ' + CVSROOT=$(pwd)/cvsroot && + export CVSROOT + ' + +-test_expect_success PERL 'setup cvsroot' '$CVS init' ++test_expect_success 'setup cvsroot' '$CVS init' + +-test_expect_success PERL 'setup a cvs module' ' ++test_expect_success 'setup a cvs module' ' + + mkdir "$CVSROOT/module" && + $CVS co -d module-cvs module && +@@ -42,23 +53,23 @@ + ) + ' + +-test_expect_success PERL 'import a trivial module' ' ++test_expect_success 'import a trivial module' ' + + git cvsimport -a -R -z 0 -C module-git module && + test_cmp module-cvs/o_fortuna module-git/o_fortuna + + ' + +-test_expect_success PERL 'pack refs' '(cd module-git && git gc)' ++test_expect_success 'pack refs' '(cd module-git && git gc)' + +-test_expect_success PERL 'initial import has correct .git/cvs-revisions' ' ++test_expect_success 'initial import has correct .git/cvs-revisions' ' + + (cd module-git && + git log --format="o_fortuna 1.1 %H" -1) > expected && + test_cmp expected module-git/.git/cvs-revisions + ' + +-test_expect_success PERL 'update cvs module' ' ++test_expect_success 'update cvs module' ' + (cd module-cvs && + cat <<EOF >o_fortuna && + O Fortune, +@@ -86,7 +97,7 @@ + ) + ' + +-test_expect_success PERL 'update git module' ' ++test_expect_success 'update git module' ' + + (cd module-git && + git config cvsimport.trackRevisions true && +@@ -97,7 +108,7 @@ + + ' + +-test_expect_success PERL 'update has correct .git/cvs-revisions' ' ++test_expect_success 'update has correct .git/cvs-revisions' ' + + (cd module-git && + git log --format="o_fortuna 1.1 %H" -1 HEAD^ && +@@ -105,7 +116,7 @@ + test_cmp expected module-git/.git/cvs-revisions + ' + +-test_expect_success PERL 'update cvs module' ' ++test_expect_success 'update cvs module' ' + + (cd module-cvs && + echo 1 >tick && +@@ -114,7 +125,7 @@ + ) + ' + +-test_expect_success PERL 'cvsimport.module config works' ' ++test_expect_success 'cvsimport.module config works' ' + + (cd module-git && + git config cvsimport.module module && +@@ -126,7 +137,7 @@ + + ' + +-test_expect_success PERL 'second update has correct .git/cvs-revisions' ' ++test_expect_success 'second update has correct .git/cvs-revisions' ' + + (cd module-git && + git log --format="o_fortuna 1.1 %H" -1 HEAD^^ && +@@ -135,7 +146,7 @@ + test_cmp expected module-git/.git/cvs-revisions + ' + +-test_expect_success PERL 'import from a CVS working tree' ' ++test_expect_success 'import from a CVS working tree' ' + + $CVS co -d import-from-wt module && + (cd import-from-wt && +@@ -148,12 +159,12 @@ + + ' + +-test_expect_success PERL 'no .git/cvs-revisions created by default' ' ++test_expect_success 'no .git/cvs-revisions created by default' ' + + ! test -e import-from-wt/.git/cvs-revisions + + ' + +-test_expect_success PERL 'test entire HEAD' 'test_cmp_branch_tree master' ++test_expect_success 'test entire HEAD' 'test_cmp_branch_tree master' + + test_done +--- git-1.8.5.1/t/t9601-cvsimport-vendor-branch.sh ++++ git-1.8.5.1/t/t9601-cvsimport-vendor-branch.sh +@@ -34,6 +34,17 @@ + test_description='git cvsimport handling of vendor branches' + . ./lib-cvs.sh + ++if ! test_have_prereq PERL ++then ++ skip_all='skipping git cvsimport tests, perl not available' ++ test_done ++fi ++if ! test_have_prereq CVS ++then ++ skip_all='skipping git cvsimport tests, cvs not available' ++ test_done ++fi ++ + setup_cvs_test_repository t9601 + + test_expect_success PERL 'import a module with a vendor branch' ' +--- git-1.8.5.1/t/t9602-cvsimport-branches-tags.sh ++++ git-1.8.5.1/t/t9602-cvsimport-branches-tags.sh +@@ -6,6 +6,17 @@ + test_description='git cvsimport handling of branches and tags' + . ./lib-cvs.sh + ++if ! test_have_prereq PERL ++then ++ skip_all='skipping git cvsimport tests, perl not available' ++ test_done ++fi ++if ! test_have_prereq CVS ++then ++ skip_all='skipping git cvsimport tests, cvs not available' ++ test_done ++fi ++ + setup_cvs_test_repository t9602 + + test_expect_success PERL 'import module' ' +--- git-1.8.5.1/t/t9603-cvsimport-patchsets.sh ++++ git-1.8.5.1/t/t9603-cvsimport-patchsets.sh +@@ -14,6 +14,17 @@ + test_description='git cvsimport testing for correct patchset estimation' + . ./lib-cvs.sh + ++if ! test_have_prereq PERL ++then ++ skip_all='skipping git cvsimport tests, perl not available' ++ test_done ++fi ++if ! test_have_prereq CVS ++then ++ skip_all='skipping git cvsimport tests, cvs not available' ++ test_done ++fi ++ + setup_cvs_test_repository t9603 + + test_expect_failure 'import with criss cross times on revisions' ' +--- git-1.8.5.1/t/test-lib.sh ++++ git-1.8.5.1/t/test-lib.sh +@@ -772,6 +772,7 @@ + esac + + ( COLUMNS=1 && test $COLUMNS = 1 ) && test_set_prereq COLUMNS_CAN_BE_1 ++test -z "$NO_CVS" && test_set_prereq CVS + test -z "$NO_PERL" && test_set_prereq PERL + test -z "$NO_PYTHON" && test_set_prereq PYTHON + test -n "$USE_LIBPCRE" && test_set_prereq LIBPCRE diff --git a/dev-vcs/git/files/git-1.9.0_rc3-optional-cvs.patch b/dev-vcs/git/files/git-1.9.0_rc3-optional-cvs.patch new file mode 100644 index 000000000000..1f0796083230 --- /dev/null +++ b/dev-vcs/git/files/git-1.9.0_rc3-optional-cvs.patch @@ -0,0 +1,372 @@ +From eadb20b065c33d46b49c8c95d8cde0c9fe7c62a4 Mon Sep 17 00:00:00 2001 +From: Robin Johnson <robbat2@gentoo.org> +Date: Wed, 22 Aug 2012 04:25:06 +0000 +Subject: [PATCH] Makefile: Add NO_CVS define to disable all CVS interface + utilities + +Forward-ported from 1.7.12 to current git.git v1.8.4 +Forward-ported from v1.8.4 to v1.8.5.1 +Forward-ported from v1.8.5.3 to v1.9.0_rc3 + +diff -Nuar git-1.9.0.rc3.orig/Makefile git-1.9.0.rc3/Makefile +--- git-1.9.0.rc3.orig/Makefile 2014-02-07 12:45:45.000000000 -0800 ++++ git-1.9.0.rc3/Makefile 2014-02-08 11:50:21.219488765 -0800 +@@ -263,6 +263,8 @@ + # + # Define NO_TCLTK if you do not want Tcl/Tk GUI. + # ++# Define NO_CVS if you do not want any CVS interface utilities. ++# + # The TCL_PATH variable governs the location of the Tcl interpreter + # used to optimize git-gui for your system. Only used if NO_TCLTK + # is not set. Defaults to the bare 'tclsh'. +@@ -437,6 +439,7 @@ + PROGRAM_OBJS = + PROGRAMS = + SCRIPT_PERL = ++SCRIPT_PERL_CVS = + SCRIPT_PYTHON = + SCRIPT_SH = + SCRIPT_LIB = +@@ -476,20 +479,21 @@ + SCRIPT_PERL += git-add--interactive.perl + SCRIPT_PERL += git-difftool.perl + SCRIPT_PERL += git-archimport.perl +-SCRIPT_PERL += git-cvsexportcommit.perl +-SCRIPT_PERL += git-cvsimport.perl +-SCRIPT_PERL += git-cvsserver.perl + SCRIPT_PERL += git-relink.perl + SCRIPT_PERL += git-send-email.perl + SCRIPT_PERL += git-svn.perl + ++SCRIPT_PERL_CVS += git-cvsexportcommit.perl ++SCRIPT_PERL_CVS += git-cvsimport.perl ++SCRIPT_PERL_CVS += git-cvsserver.perl ++ + SCRIPT_PYTHON += git-p4.py + + NO_INSTALL += git-remote-testgit + + # Generated files for scripts + SCRIPT_SH_GEN = $(patsubst %.sh,%,$(SCRIPT_SH)) +-SCRIPT_PERL_GEN = $(patsubst %.perl,%,$(SCRIPT_PERL)) ++SCRIPT_PERL_GEN = $(patsubst %.perl,%,$(SCRIPT_PERL) $(SCRIPT_PERL_CVS)) + SCRIPT_PYTHON_GEN = $(patsubst %.py,%,$(SCRIPT_PYTHON)) + + SCRIPT_SH_INS = $(filter-out $(NO_INSTALL),$(SCRIPT_SH_GEN)) +@@ -1776,8 +1780,18 @@ + $(join -DMAJOR= -DMINOR=, $(wordlist 1,2,$(subst -, ,$(subst ., ,$(GIT_VERSION))))) \ + -DGIT_VERSION="\\\"$(GIT_VERSION)\\\"" $< -o $@ + ++_SCRIPT_PERL_BUILD = ++_SCRIPT_PERL_NOBUILD = ++ + ifndef NO_PERL +-$(patsubst %.perl,%,$(SCRIPT_PERL)): perl/perl.mak ++ ++_SCRIPT_PERL_BUILD += $(SCRIPT_PERL) ++ ++ifndef NO_CVS ++_SCRIPT_PERL_BUILD += $(SCRIPT_PERL_CVS) ++else # NO_CVS ++_SCRIPT_PERL_NOBUILD += $(SCRIPT_PERL_CVS) ++endif # NO_CVS + + perl/perl.mak: perl/PM.stamp + +@@ -1790,7 +1804,7 @@ + $(QUIET_SUBDIR0)perl $(QUIET_SUBDIR1) PERL_PATH='$(PERL_PATH_SQ)' prefix='$(prefix_SQ)' $(@F) + + PERL_DEFINES = $(PERL_PATH_SQ):$(PERLLIB_EXTRA_SQ) +-$(patsubst %.perl,%,$(SCRIPT_PERL)): % : %.perl perl/perl.mak GIT-PERL-DEFINES GIT-VERSION-FILE ++$(patsubst %.perl,%,$(_SCRIPT_PERL_BUILD)): % : %.perl perl/perl.mak GIT-PERL-DEFINES GIT-VERSION-FILE + $(QUIET_GEN)$(RM) $@ $@+ && \ + INSTLIBDIR=`MAKEFLAGS= $(MAKE) -C perl -s --no-print-directory instlibdir` && \ + INSTLIBDIR_EXTRA='$(PERLLIB_EXTRA_SQ)' && \ +@@ -1824,14 +1838,17 @@ + chmod +x $@+ && \ + mv $@+ $@ + else # NO_PERL +-$(patsubst %.perl,%,$(SCRIPT_PERL)) git-instaweb: % : unimplemented.sh ++_SCRIPT_PERL_NOBUILD += $(SCRIPT_PERL) $(SCRIPT_PERL_CVS) git-instaweb ++endif # NO_PERL ++ ++# This is any perl scripts that were disabled it might be empty... ++$(patsubst %.perl,%,$(_SCRIPT_PERL_NOBUILD)): % : unimplemented.sh + $(QUIET_GEN)$(RM) $@ $@+ && \ + sed -e '1s|#!.*/sh|#!$(SHELL_PATH_SQ)|' \ + -e 's|@@REASON@@|NO_PERL=$(NO_PERL)|g' \ + unimplemented.sh >$@+ && \ + chmod +x $@+ && \ + mv $@+ $@ +-endif # NO_PERL + + ifndef NO_PYTHON + $(SCRIPT_PYTHON_GEN): GIT-CFLAGS GIT-PREFIX GIT-PYTHON-VARS +diff -Nuar git-1.9.0.rc3.orig/t/t9200-git-cvsexportcommit.sh git-1.9.0.rc3/t/t9200-git-cvsexportcommit.sh +--- git-1.9.0.rc3.orig/t/t9200-git-cvsexportcommit.sh 2014-02-07 12:45:45.000000000 -0800 ++++ git-1.9.0.rc3/t/t9200-git-cvsexportcommit.sh 2014-02-08 11:49:12.243179483 -0800 +@@ -11,6 +11,11 @@ + test_done + fi + ++if ! test_have_prereq CVS; then ++ skip_all='skipping git cvsexportcommit tests, cvs not available' ++ test_done ++fi ++ + cvs >/dev/null 2>&1 + if test $? -ne 1 + then +diff -Nuar git-1.9.0.rc3.orig/t/t9400-git-cvsserver-server.sh git-1.9.0.rc3/t/t9400-git-cvsserver-server.sh +--- git-1.9.0.rc3.orig/t/t9400-git-cvsserver-server.sh 2014-02-07 12:45:45.000000000 -0800 ++++ git-1.9.0.rc3/t/t9400-git-cvsserver-server.sh 2014-02-08 11:49:12.244179502 -0800 +@@ -11,9 +11,15 @@ + . ./test-lib.sh + + if ! test_have_prereq PERL; then +- skip_all='skipping git cvsserver tests, perl not available' ++ skip_all='skipping git-cvsserver tests, perl not available' + test_done + fi ++ ++if ! test_have_prereq CVS; then ++ skip_all='skipping git-cvsserver tests, cvs not available' ++ test_done ++fi ++ + cvs >/dev/null 2>&1 + if test $? -ne 1 + then +diff -Nuar git-1.9.0.rc3.orig/t/t9401-git-cvsserver-crlf.sh git-1.9.0.rc3/t/t9401-git-cvsserver-crlf.sh +--- git-1.9.0.rc3.orig/t/t9401-git-cvsserver-crlf.sh 2014-02-07 12:45:45.000000000 -0800 ++++ git-1.9.0.rc3/t/t9401-git-cvsserver-crlf.sh 2014-02-08 11:49:12.244179502 -0800 +@@ -57,15 +57,20 @@ + return $stat + } + +-cvs >/dev/null 2>&1 +-if test $? -ne 1 ++if ! test_have_prereq PERL + then +- skip_all='skipping git-cvsserver tests, cvs not found' ++ skip_all='skipping git-cvsserver tests, perl not available' + test_done + fi +-if ! test_have_prereq PERL ++if ! test_have_prereq CVS + then +- skip_all='skipping git-cvsserver tests, perl not available' ++ skip_all='skipping git-cvsserver tests, cvs not available' ++ test_done ++fi ++cvs >/dev/null 2>&1 ++if test $? -ne 1 ++then ++ skip_all='skipping git-cvsserver tests, cvs not found' + test_done + fi + perl -e 'use DBI; use DBD::SQLite' >/dev/null 2>&1 || { +diff -Nuar git-1.9.0.rc3.orig/t/t9600-cvsimport.sh git-1.9.0.rc3/t/t9600-cvsimport.sh +--- git-1.9.0.rc3.orig/t/t9600-cvsimport.sh 2014-02-07 12:45:45.000000000 -0800 ++++ git-1.9.0.rc3/t/t9600-cvsimport.sh 2014-02-08 11:49:12.244179502 -0800 +@@ -3,14 +3,25 @@ + test_description='git cvsimport basic tests' + . ./lib-cvs.sh + +-test_expect_success PERL 'setup cvsroot environment' ' ++if ! test_have_prereq PERL ++then ++ skip_all='skipping git cvsimport tests, perl not available' ++ test_done ++fi ++if ! test_have_prereq CVS ++then ++ skip_all='skipping git cvsimport tests, cvs not available' ++ test_done ++fi ++ ++test_expect_success 'setup cvsroot environment' ' + CVSROOT=$(pwd)/cvsroot && + export CVSROOT + ' + +-test_expect_success PERL 'setup cvsroot' '$CVS init' ++test_expect_success 'setup cvsroot' '$CVS init' + +-test_expect_success PERL 'setup a cvs module' ' ++test_expect_success 'setup a cvs module' ' + + mkdir "$CVSROOT/module" && + $CVS co -d module-cvs module && +@@ -42,23 +53,23 @@ + ) + ' + +-test_expect_success PERL 'import a trivial module' ' ++test_expect_success 'import a trivial module' ' + + git cvsimport -a -R -z 0 -C module-git module && + test_cmp module-cvs/o_fortuna module-git/o_fortuna + + ' + +-test_expect_success PERL 'pack refs' '(cd module-git && git gc)' ++test_expect_success 'pack refs' '(cd module-git && git gc)' + +-test_expect_success PERL 'initial import has correct .git/cvs-revisions' ' ++test_expect_success 'initial import has correct .git/cvs-revisions' ' + + (cd module-git && + git log --format="o_fortuna 1.1 %H" -1) > expected && + test_cmp expected module-git/.git/cvs-revisions + ' + +-test_expect_success PERL 'update cvs module' ' ++test_expect_success 'update cvs module' ' + (cd module-cvs && + cat <<EOF >o_fortuna && + O Fortune, +@@ -86,7 +97,7 @@ + ) + ' + +-test_expect_success PERL 'update git module' ' ++test_expect_success 'update git module' ' + + (cd module-git && + git config cvsimport.trackRevisions true && +@@ -97,7 +108,7 @@ + + ' + +-test_expect_success PERL 'update has correct .git/cvs-revisions' ' ++test_expect_success 'update has correct .git/cvs-revisions' ' + + (cd module-git && + git log --format="o_fortuna 1.1 %H" -1 HEAD^ && +@@ -105,7 +116,7 @@ + test_cmp expected module-git/.git/cvs-revisions + ' + +-test_expect_success PERL 'update cvs module' ' ++test_expect_success 'update cvs module' ' + + (cd module-cvs && + echo 1 >tick && +@@ -114,7 +125,7 @@ + ) + ' + +-test_expect_success PERL 'cvsimport.module config works' ' ++test_expect_success 'cvsimport.module config works' ' + + (cd module-git && + git config cvsimport.module module && +@@ -126,7 +137,7 @@ + + ' + +-test_expect_success PERL 'second update has correct .git/cvs-revisions' ' ++test_expect_success 'second update has correct .git/cvs-revisions' ' + + (cd module-git && + git log --format="o_fortuna 1.1 %H" -1 HEAD^^ && +@@ -135,7 +146,7 @@ + test_cmp expected module-git/.git/cvs-revisions + ' + +-test_expect_success PERL 'import from a CVS working tree' ' ++test_expect_success 'import from a CVS working tree' ' + + $CVS co -d import-from-wt module && + (cd import-from-wt && +@@ -148,12 +159,12 @@ + + ' + +-test_expect_success PERL 'no .git/cvs-revisions created by default' ' ++test_expect_success 'no .git/cvs-revisions created by default' ' + + ! test -e import-from-wt/.git/cvs-revisions + + ' + +-test_expect_success PERL 'test entire HEAD' 'test_cmp_branch_tree master' ++test_expect_success 'test entire HEAD' 'test_cmp_branch_tree master' + + test_done +diff -Nuar git-1.9.0.rc3.orig/t/t9601-cvsimport-vendor-branch.sh git-1.9.0.rc3/t/t9601-cvsimport-vendor-branch.sh +--- git-1.9.0.rc3.orig/t/t9601-cvsimport-vendor-branch.sh 2014-02-07 12:45:45.000000000 -0800 ++++ git-1.9.0.rc3/t/t9601-cvsimport-vendor-branch.sh 2014-02-08 11:49:12.244179502 -0800 +@@ -34,6 +34,17 @@ + test_description='git cvsimport handling of vendor branches' + . ./lib-cvs.sh + ++if ! test_have_prereq PERL ++then ++ skip_all='skipping git cvsimport tests, perl not available' ++ test_done ++fi ++if ! test_have_prereq CVS ++then ++ skip_all='skipping git cvsimport tests, cvs not available' ++ test_done ++fi ++ + setup_cvs_test_repository t9601 + + test_expect_success PERL 'import a module with a vendor branch' ' +diff -Nuar git-1.9.0.rc3.orig/t/t9602-cvsimport-branches-tags.sh git-1.9.0.rc3/t/t9602-cvsimport-branches-tags.sh +--- git-1.9.0.rc3.orig/t/t9602-cvsimport-branches-tags.sh 2014-02-07 12:45:45.000000000 -0800 ++++ git-1.9.0.rc3/t/t9602-cvsimport-branches-tags.sh 2014-02-08 11:49:12.244179502 -0800 +@@ -6,6 +6,17 @@ + test_description='git cvsimport handling of branches and tags' + . ./lib-cvs.sh + ++if ! test_have_prereq PERL ++then ++ skip_all='skipping git cvsimport tests, perl not available' ++ test_done ++fi ++if ! test_have_prereq CVS ++then ++ skip_all='skipping git cvsimport tests, cvs not available' ++ test_done ++fi ++ + setup_cvs_test_repository t9602 + + test_expect_success PERL 'import module' ' +diff -Nuar git-1.9.0.rc3.orig/t/t9603-cvsimport-patchsets.sh git-1.9.0.rc3/t/t9603-cvsimport-patchsets.sh +--- git-1.9.0.rc3.orig/t/t9603-cvsimport-patchsets.sh 2014-02-07 12:45:45.000000000 -0800 ++++ git-1.9.0.rc3/t/t9603-cvsimport-patchsets.sh 2014-02-08 11:49:12.244179502 -0800 +@@ -14,6 +14,17 @@ + test_description='git cvsimport testing for correct patchset estimation' + . ./lib-cvs.sh + ++if ! test_have_prereq PERL ++then ++ skip_all='skipping git cvsimport tests, perl not available' ++ test_done ++fi ++if ! test_have_prereq CVS ++then ++ skip_all='skipping git cvsimport tests, cvs not available' ++ test_done ++fi ++ + setup_cvs_test_repository t9603 + + test_expect_failure 'import with criss cross times on revisions' ' +diff -Nuar git-1.9.0.rc3.orig/t/test-lib.sh git-1.9.0.rc3/t/test-lib.sh +--- git-1.9.0.rc3.orig/t/test-lib.sh 2014-02-07 12:45:45.000000000 -0800 ++++ git-1.9.0.rc3/t/test-lib.sh 2014-02-08 11:49:12.244179502 -0800 +@@ -772,6 +772,7 @@ + esac + + ( COLUMNS=1 && test $COLUMNS = 1 ) && test_set_prereq COLUMNS_CAN_BE_1 ++test -z "$NO_CVS" && test_set_prereq CVS + test -z "$NO_PERL" && test_set_prereq PERL + test -z "$NO_PYTHON" && test_set_prereq PYTHON + test -n "$USE_LIBPCRE" && test_set_prereq LIBPCRE diff --git a/dev-vcs/git/files/git-2.0.0-r2-optional-cvs.patch b/dev-vcs/git/files/git-2.0.0-r2-optional-cvs.patch new file mode 100644 index 000000000000..b2d8e5c01c85 --- /dev/null +++ b/dev-vcs/git/files/git-2.0.0-r2-optional-cvs.patch @@ -0,0 +1,375 @@ +From e19ad5a8492d83db79a09b459cb17ccee78e0001 Mon Sep 17 00:00:00 2001 +From: Robin Johnson <robbat2@gentoo.org> +Date: Fri, 25 Apr 2014 12:30:42 +0200 +Subject: [PATCH] Makefile: Add NO_CVS define to disable all CVS interface + utilities + +Forward-ported from 1.7.12 to current git.git v1.8.4 +Forward-ported from v1.8.4 to v1.8.5.1 +Forward-ported from v1.8.5.3 to v1.9.0_rc3 +Forward-ported from 1.9.0_rc3 to current git.git v2.0.0_rc0 +Forward-ported from v2.0.0_rc0 to v2.0.0 + +diff -Nuar --exclude '*.orig' --exclude '*.rej' git-2.0.0.orig/Makefile git-2.0.0/Makefile +--- git-2.0.0.orig/Makefile 2014-05-28 12:10:36.000000000 -0700 ++++ git-2.0.0/Makefile 2014-05-28 16:50:10.148376954 -0700 +@@ -255,6 +255,8 @@ + # + # Define NO_TCLTK if you do not want Tcl/Tk GUI. + # ++# Define NO_CVS if you do not want any CVS interface utilities. ++# + # The TCL_PATH variable governs the location of the Tcl interpreter + # used to optimize git-gui for your system. Only used if NO_TCLTK + # is not set. Defaults to the bare 'tclsh'. +@@ -436,6 +438,7 @@ + PROGRAM_OBJS = + PROGRAMS = + SCRIPT_PERL = ++SCRIPT_PERL_CVS = + SCRIPT_PYTHON = + SCRIPT_SH = + SCRIPT_LIB = +@@ -475,20 +478,21 @@ + SCRIPT_PERL += git-add--interactive.perl + SCRIPT_PERL += git-difftool.perl + SCRIPT_PERL += git-archimport.perl +-SCRIPT_PERL += git-cvsexportcommit.perl +-SCRIPT_PERL += git-cvsimport.perl +-SCRIPT_PERL += git-cvsserver.perl + SCRIPT_PERL += git-relink.perl + SCRIPT_PERL += git-send-email.perl + SCRIPT_PERL += git-svn.perl + ++SCRIPT_PERL_CVS += git-cvsexportcommit.perl ++SCRIPT_PERL_CVS += git-cvsimport.perl ++SCRIPT_PERL_CVS += git-cvsserver.perl ++ + SCRIPT_PYTHON += git-p4.py + + NO_INSTALL += git-remote-testgit + + # Generated files for scripts + SCRIPT_SH_GEN = $(patsubst %.sh,%,$(SCRIPT_SH)) +-SCRIPT_PERL_GEN = $(patsubst %.perl,%,$(SCRIPT_PERL)) ++SCRIPT_PERL_GEN = $(patsubst %.perl,%,$(SCRIPT_PERL) $(SCRIPT_PERL_CVS)) + SCRIPT_PYTHON_GEN = $(patsubst %.py,%,$(SCRIPT_PYTHON)) + + SCRIPT_SH_INS = $(filter-out $(NO_INSTALL),$(SCRIPT_SH_GEN)) +@@ -1779,8 +1783,18 @@ + $(join -DMAJOR= -DMINOR=, $(wordlist 1,2,$(subst -, ,$(subst ., ,$(GIT_VERSION))))) \ + -DGIT_VERSION="\\\"$(GIT_VERSION)\\\"" $< -o $@ + ++_SCRIPT_PERL_BUILD = ++_SCRIPT_PERL_NOBUILD = ++ + ifndef NO_PERL +-$(patsubst %.perl,%,$(SCRIPT_PERL)): perl/perl.mak ++ ++_SCRIPT_PERL_BUILD += $(SCRIPT_PERL) ++ ++ifndef NO_CVS ++_SCRIPT_PERL_BUILD += $(SCRIPT_PERL_CVS) ++else # NO_CVS ++_SCRIPT_PERL_NOBUILD += $(SCRIPT_PERL_CVS) ++endif # NO_CVS + + perl/perl.mak: perl/PM.stamp + +@@ -1793,7 +1807,7 @@ + $(QUIET_SUBDIR0)perl $(QUIET_SUBDIR1) PERL_PATH='$(PERL_PATH_SQ)' prefix='$(prefix_SQ)' $(@F) + + PERL_DEFINES = $(PERL_PATH_SQ):$(PERLLIB_EXTRA_SQ) +-$(patsubst %.perl,%,$(SCRIPT_PERL)): % : %.perl perl/perl.mak GIT-PERL-DEFINES GIT-VERSION-FILE ++$(patsubst %.perl,%,$(_SCRIPT_PERL_BUILD)): % : %.perl perl/perl.mak GIT-PERL-DEFINES GIT-VERSION-FILE + $(QUIET_GEN)$(RM) $@ $@+ && \ + INSTLIBDIR=`MAKEFLAGS= $(MAKE) -C perl -s --no-print-directory instlibdir` && \ + INSTLIBDIR_EXTRA='$(PERLLIB_EXTRA_SQ)' && \ +@@ -1826,15 +1840,18 @@ + $(QUIET_GEN)$(cmd_munge_script) && \ + chmod +x $@+ && \ + mv $@+ $@ + else # NO_PERL +-$(patsubst %.perl,%,$(SCRIPT_PERL)) git-instaweb: % : unimplemented.sh ++_SCRIPT_PERL_NOBUILD += $(SCRIPT_PERL) $(SCRIPT_PERL_CVS) git-instaweb ++endif # NO_PERL ++ ++# This is any perl scripts that were disabled it might be empty... ++$(patsubst %.perl,%,$(_SCRIPT_PERL_NOBUILD)): % : unimplemented.sh + $(QUIET_GEN)$(RM) $@ $@+ && \ + sed -e '1s|#!.*/sh|#!$(SHELL_PATH_SQ)|' \ + -e 's|@@REASON@@|NO_PERL=$(NO_PERL)|g' \ + unimplemented.sh >$@+ && \ + chmod +x $@+ && \ + mv $@+ $@ +-endif # NO_PERL + + ifndef NO_PYTHON + $(SCRIPT_PYTHON_GEN): GIT-CFLAGS GIT-PREFIX GIT-PYTHON-VARS +diff -Nuar --exclude '*.orig' --exclude '*.rej' git-2.0.0.orig/t/t9200-git-cvsexportcommit.sh git-2.0.0/t/t9200-git-cvsexportcommit.sh +--- git-2.0.0.orig/t/t9200-git-cvsexportcommit.sh 2014-05-28 12:10:36.000000000 -0700 ++++ git-2.0.0/t/t9200-git-cvsexportcommit.sh 2014-05-28 16:47:41.812727825 -0700 +@@ -11,6 +11,11 @@ + test_done + fi + ++if ! test_have_prereq CVS; then ++ skip_all='skipping git cvsexportcommit tests, cvs not available' ++ test_done ++fi ++ + cvs >/dev/null 2>&1 + if test $? -ne 1 + then +diff -Nuar --exclude '*.orig' --exclude '*.rej' git-2.0.0.orig/t/t9400-git-cvsserver-server.sh git-2.0.0/t/t9400-git-cvsserver-server.sh +--- git-2.0.0.orig/t/t9400-git-cvsserver-server.sh 2014-05-28 12:10:36.000000000 -0700 ++++ git-2.0.0/t/t9400-git-cvsserver-server.sh 2014-05-28 16:47:41.812727825 -0700 +@@ -11,9 +11,15 @@ + . ./test-lib.sh + + if ! test_have_prereq PERL; then +- skip_all='skipping git cvsserver tests, perl not available' ++ skip_all='skipping git-cvsserver tests, perl not available' + test_done + fi ++ ++if ! test_have_prereq CVS; then ++ skip_all='skipping git-cvsserver tests, cvs not available' ++ test_done ++fi ++ + cvs >/dev/null 2>&1 + if test $? -ne 1 + then +diff -Nuar --exclude '*.orig' --exclude '*.rej' git-2.0.0.orig/t/t9401-git-cvsserver-crlf.sh git-2.0.0/t/t9401-git-cvsserver-crlf.sh +--- git-2.0.0.orig/t/t9401-git-cvsserver-crlf.sh 2014-05-28 12:10:36.000000000 -0700 ++++ git-2.0.0/t/t9401-git-cvsserver-crlf.sh 2014-05-28 16:47:41.812727825 -0700 +@@ -57,15 +57,20 @@ + return $stat + } + +-cvs >/dev/null 2>&1 +-if test $? -ne 1 ++if ! test_have_prereq PERL + then +- skip_all='skipping git-cvsserver tests, cvs not found' ++ skip_all='skipping git-cvsserver tests, perl not available' + test_done + fi +-if ! test_have_prereq PERL ++if ! test_have_prereq CVS + then +- skip_all='skipping git-cvsserver tests, perl not available' ++ skip_all='skipping git-cvsserver tests, cvs not available' ++ test_done ++fi ++cvs >/dev/null 2>&1 ++if test $? -ne 1 ++then ++ skip_all='skipping git-cvsserver tests, cvs not found' + test_done + fi + perl -e 'use DBI; use DBD::SQLite' >/dev/null 2>&1 || { +diff -Nuar --exclude '*.orig' --exclude '*.rej' git-2.0.0.orig/t/t9600-cvsimport.sh git-2.0.0/t/t9600-cvsimport.sh +--- git-2.0.0.orig/t/t9600-cvsimport.sh 2014-05-28 12:10:36.000000000 -0700 ++++ git-2.0.0/t/t9600-cvsimport.sh 2014-05-28 16:47:41.813727843 -0700 +@@ -3,14 +3,25 @@ + test_description='git cvsimport basic tests' + . ./lib-cvs.sh + +-test_expect_success PERL 'setup cvsroot environment' ' ++if ! test_have_prereq PERL ++then ++ skip_all='skipping git cvsimport tests, perl not available' ++ test_done ++fi ++if ! test_have_prereq CVS ++then ++ skip_all='skipping git cvsimport tests, cvs not available' ++ test_done ++fi ++ ++test_expect_success 'setup cvsroot environment' ' + CVSROOT=$(pwd)/cvsroot && + export CVSROOT + ' + +-test_expect_success PERL 'setup cvsroot' '$CVS init' ++test_expect_success 'setup cvsroot' '$CVS init' + +-test_expect_success PERL 'setup a cvs module' ' ++test_expect_success 'setup a cvs module' ' + + mkdir "$CVSROOT/module" && + $CVS co -d module-cvs module && +@@ -42,23 +53,23 @@ + ) + ' + +-test_expect_success PERL 'import a trivial module' ' ++test_expect_success 'import a trivial module' ' + + git cvsimport -a -R -z 0 -C module-git module && + test_cmp module-cvs/o_fortuna module-git/o_fortuna + + ' + +-test_expect_success PERL 'pack refs' '(cd module-git && git gc)' ++test_expect_success 'pack refs' '(cd module-git && git gc)' + +-test_expect_success PERL 'initial import has correct .git/cvs-revisions' ' ++test_expect_success 'initial import has correct .git/cvs-revisions' ' + + (cd module-git && + git log --format="o_fortuna 1.1 %H" -1) > expected && + test_cmp expected module-git/.git/cvs-revisions + ' + +-test_expect_success PERL 'update cvs module' ' ++test_expect_success 'update cvs module' ' + (cd module-cvs && + cat <<EOF >o_fortuna && + O Fortune, +@@ -86,7 +97,7 @@ + ) + ' + +-test_expect_success PERL 'update git module' ' ++test_expect_success 'update git module' ' + + (cd module-git && + git config cvsimport.trackRevisions true && +@@ -97,7 +108,7 @@ + + ' + +-test_expect_success PERL 'update has correct .git/cvs-revisions' ' ++test_expect_success 'update has correct .git/cvs-revisions' ' + + (cd module-git && + git log --format="o_fortuna 1.1 %H" -1 HEAD^ && +@@ -105,7 +116,7 @@ + test_cmp expected module-git/.git/cvs-revisions + ' + +-test_expect_success PERL 'update cvs module' ' ++test_expect_success 'update cvs module' ' + + (cd module-cvs && + echo 1 >tick && +@@ -114,7 +125,7 @@ + ) + ' + +-test_expect_success PERL 'cvsimport.module config works' ' ++test_expect_success 'cvsimport.module config works' ' + + (cd module-git && + git config cvsimport.module module && +@@ -126,7 +137,7 @@ + + ' + +-test_expect_success PERL 'second update has correct .git/cvs-revisions' ' ++test_expect_success 'second update has correct .git/cvs-revisions' ' + + (cd module-git && + git log --format="o_fortuna 1.1 %H" -1 HEAD^^ && +@@ -135,7 +146,7 @@ + test_cmp expected module-git/.git/cvs-revisions + ' + +-test_expect_success PERL 'import from a CVS working tree' ' ++test_expect_success 'import from a CVS working tree' ' + + $CVS co -d import-from-wt module && + (cd import-from-wt && +@@ -148,12 +159,12 @@ + + ' + +-test_expect_success PERL 'no .git/cvs-revisions created by default' ' ++test_expect_success 'no .git/cvs-revisions created by default' ' + + ! test -e import-from-wt/.git/cvs-revisions + + ' + +-test_expect_success PERL 'test entire HEAD' 'test_cmp_branch_tree master' ++test_expect_success 'test entire HEAD' 'test_cmp_branch_tree master' + + test_done +diff -Nuar --exclude '*.orig' --exclude '*.rej' git-2.0.0.orig/t/t9601-cvsimport-vendor-branch.sh git-2.0.0/t/t9601-cvsimport-vendor-branch.sh +--- git-2.0.0.orig/t/t9601-cvsimport-vendor-branch.sh 2014-05-28 12:10:36.000000000 -0700 ++++ git-2.0.0/t/t9601-cvsimport-vendor-branch.sh 2014-05-28 16:47:41.813727843 -0700 +@@ -34,6 +34,17 @@ + test_description='git cvsimport handling of vendor branches' + . ./lib-cvs.sh + ++if ! test_have_prereq PERL ++then ++ skip_all='skipping git cvsimport tests, perl not available' ++ test_done ++fi ++if ! test_have_prereq CVS ++then ++ skip_all='skipping git cvsimport tests, cvs not available' ++ test_done ++fi ++ + setup_cvs_test_repository t9601 + + test_expect_success PERL 'import a module with a vendor branch' ' +diff -Nuar --exclude '*.orig' --exclude '*.rej' git-2.0.0.orig/t/t9602-cvsimport-branches-tags.sh git-2.0.0/t/t9602-cvsimport-branches-tags.sh +--- git-2.0.0.orig/t/t9602-cvsimport-branches-tags.sh 2014-05-28 12:10:36.000000000 -0700 ++++ git-2.0.0/t/t9602-cvsimport-branches-tags.sh 2014-05-28 16:47:41.813727843 -0700 +@@ -6,6 +6,17 @@ + test_description='git cvsimport handling of branches and tags' + . ./lib-cvs.sh + ++if ! test_have_prereq PERL ++then ++ skip_all='skipping git cvsimport tests, perl not available' ++ test_done ++fi ++if ! test_have_prereq CVS ++then ++ skip_all='skipping git cvsimport tests, cvs not available' ++ test_done ++fi ++ + setup_cvs_test_repository t9602 + + test_expect_success PERL 'import module' ' +diff -Nuar --exclude '*.orig' --exclude '*.rej' git-2.0.0.orig/t/t9603-cvsimport-patchsets.sh git-2.0.0/t/t9603-cvsimport-patchsets.sh +--- git-2.0.0.orig/t/t9603-cvsimport-patchsets.sh 2014-05-28 12:10:36.000000000 -0700 ++++ git-2.0.0/t/t9603-cvsimport-patchsets.sh 2014-05-28 16:47:41.813727843 -0700 +@@ -14,6 +14,17 @@ + test_description='git cvsimport testing for correct patchset estimation' + . ./lib-cvs.sh + ++if ! test_have_prereq PERL ++then ++ skip_all='skipping git cvsimport tests, perl not available' ++ test_done ++fi ++if ! test_have_prereq CVS ++then ++ skip_all='skipping git cvsimport tests, cvs not available' ++ test_done ++fi ++ + setup_cvs_test_repository t9603 + + test_expect_failure 'import with criss cross times on revisions' ' +diff -Nuar --exclude '*.orig' --exclude '*.rej' git-2.0.0.orig/t/test-lib.sh git-2.0.0/t/test-lib.sh +--- git-2.0.0.orig/t/test-lib.sh 2014-05-28 12:10:36.000000000 -0700 ++++ git-2.0.0/t/test-lib.sh 2014-05-28 16:47:41.813727843 -0700 +@@ -777,6 +777,7 @@ + esac + + ( COLUMNS=1 && test $COLUMNS = 1 ) && test_set_prereq COLUMNS_CAN_BE_1 ++test -z "$NO_CVS" && test_set_prereq CVS + test -z "$NO_PERL" && test_set_prereq PERL + test -z "$NO_PYTHON" && test_set_prereq PYTHON + test -n "$USE_LIBPCRE" && test_set_prereq LIBPCRE diff --git a/dev-vcs/git/files/git-2.2.0-svn-fe-linking.patch b/dev-vcs/git/files/git-2.2.0-svn-fe-linking.patch new file mode 100644 index 000000000000..b20b889110eb --- /dev/null +++ b/dev-vcs/git/files/git-2.2.0-svn-fe-linking.patch @@ -0,0 +1,11 @@ +--- git-2.2.0/contrib/svn-fe/Makefile ++++ git-2.2.0/contrib/svn-fe/Makefile +@@ -74,7 +74,7 @@ + endif + + svn-fe$X: svn-fe.o $(VCSSVN_LIB) $(XDIFF_LIB) $(GIT_LIB) +- $(QUIET_LINK)$(CC) $(CFLAGS) $(LDFLAGS) $(EXTLIBS) -o $@ svn-fe.o $(LIBS) ++ $(QUIET_LINK)$(CC) $(CFLAGS) $(LDFLAGS) -o $@ svn-fe.o $(LIBS) $(EXTLIBS) + + svn-fe.o: svn-fe.c ../../vcs-svn/svndump.h + $(QUIET_CC)$(CC) $(CFLAGS) -I../../vcs-svn -o $*.o -c $< diff --git a/dev-vcs/git/files/git-2.2.2-optional-cvs.patch b/dev-vcs/git/files/git-2.2.2-optional-cvs.patch new file mode 100644 index 000000000000..af815e239480 --- /dev/null +++ b/dev-vcs/git/files/git-2.2.2-optional-cvs.patch @@ -0,0 +1,454 @@ +From 12b82e03b971da618f19d0194dcf19a77b273766 Mon Sep 17 00:00:00 2001 +From: Robin Johnson <robbat2@gentoo.org> +Date: Wed, 21 Jan 2015 20:48:03 +0100 +Subject: [PATCH] Makefile: Add NO_CVS define to disable all CVS interface + utilities + +Forward-ported from 1.7.12 to current git.git v1.8.4 +Forward-ported from v1.8.4 to v1.8.5.1 +Forward-ported from v1.8.5.3 to v1.9.0_rc3 +Forward-ported from 1.9.0_rc3 to current git.git v2.0.0_rc0 +Forward-ported from v2.0.0_rc0 to v2.0.0 +Forward-ported from v2.0.0 to v2.2.2 + +Signed-off-by: Lars Wendler <polynomial-c@gentoo.org> +--- + Makefile | 51 ++++++++++++++++++++++++++++---------- + t/t9200-git-cvsexportcommit.sh | 5 ++++ + t/t9400-git-cvsserver-server.sh | 8 +++++- + t/t9401-git-cvsserver-crlf.sh | 15 +++++++---- + t/t9600-cvsimport.sh | 41 +++++++++++++++++++----------- + t/t9601-cvsimport-vendor-branch.sh | 11 ++++++++ + t/t9602-cvsimport-branches-tags.sh | 11 ++++++++ + t/t9603-cvsimport-patchsets.sh | 11 ++++++++ + t/test-lib.sh | 1 + + 9 files changed, 120 insertions(+), 34 deletions(-) + +diff --git a/Makefile b/Makefile +index 7482a4d..a644c8d 100644 +--- a/Makefile ++++ b/Makefile +@@ -254,6 +254,8 @@ all:: + # + # Define NO_TCLTK if you do not want Tcl/Tk GUI. + # ++# Define NO_CVS if you do not want any CVS interface utilities. ++# + # The TCL_PATH variable governs the location of the Tcl interpreter + # used to optimize git-gui for your system. Only used if NO_TCLTK + # is not set. Defaults to the bare 'tclsh'. +@@ -433,6 +435,7 @@ LIB_OBJS = + PROGRAM_OBJS = + PROGRAMS = + SCRIPT_PERL = ++SCRIPT_PERL_CVS = + SCRIPT_PYTHON = + SCRIPT_SH = + SCRIPT_LIB = +@@ -472,13 +475,14 @@ SCRIPT_LIB += git-sh-i18n + SCRIPT_PERL += git-add--interactive.perl + SCRIPT_PERL += git-difftool.perl + SCRIPT_PERL += git-archimport.perl +-SCRIPT_PERL += git-cvsexportcommit.perl +-SCRIPT_PERL += git-cvsimport.perl +-SCRIPT_PERL += git-cvsserver.perl + SCRIPT_PERL += git-relink.perl + SCRIPT_PERL += git-send-email.perl + SCRIPT_PERL += git-svn.perl + ++SCRIPT_PERL_CVS += git-cvsexportcommit.perl ++SCRIPT_PERL_CVS += git-cvsimport.perl ++SCRIPT_PERL_CVS += git-cvsserver.perl ++ + SCRIPT_PYTHON += git-p4.py + + NO_INSTALL += git-remote-testgit +@@ -486,24 +490,26 @@ NO_INSTALL += git-remote-testgit + # Generated files for scripts + SCRIPT_SH_GEN = $(patsubst %.sh,%,$(SCRIPT_SH)) + SCRIPT_PERL_GEN = $(patsubst %.perl,%,$(SCRIPT_PERL)) ++SCRIPT_PERL_CVS_GEN = $(patsubst %.perl,%,$(SCRIPT_PERL_CVS)) + SCRIPT_PYTHON_GEN = $(patsubst %.py,%,$(SCRIPT_PYTHON)) + + SCRIPT_SH_INS = $(filter-out $(NO_INSTALL),$(SCRIPT_SH_GEN)) + SCRIPT_PERL_INS = $(filter-out $(NO_INSTALL),$(SCRIPT_PERL_GEN)) ++SCRIPT_PERL_CVS_INS = $(filter-out $(NO_INSTALL),$(SCRIPT_PERL_CVS_GEN)) + SCRIPT_PYTHON_INS = $(filter-out $(NO_INSTALL),$(SCRIPT_PYTHON_GEN)) + + # Individual rules to allow e.g. + # "make -C ../.. SCRIPT_PERL=contrib/foo/bar.perl build-perl-script" + # from subdirectories like contrib/*/ + .PHONY: build-perl-script build-sh-script build-python-script +-build-perl-script: $(SCRIPT_PERL_GEN) ++build-perl-script: $(SCRIPT_PERL_GEN) $(SCRIPT_PERL_CVS_GEN) + build-sh-script: $(SCRIPT_SH_GEN) + build-python-script: $(SCRIPT_PYTHON_GEN) + + .PHONY: install-perl-script install-sh-script install-python-script + install-sh-script: $(SCRIPT_SH_INS) + $(INSTALL) $^ '$(DESTDIR_SQ)$(gitexec_instdir_SQ)' +-install-perl-script: $(SCRIPT_PERL_INS) ++install-perl-script: $(SCRIPT_PERL_INS) $(SCRIPT_PERL_CVS_INS) + $(INSTALL) $^ '$(DESTDIR_SQ)$(gitexec_instdir_SQ)' + install-python-script: $(SCRIPT_PYTHON_INS) + $(INSTALL) $^ '$(DESTDIR_SQ)$(gitexec_instdir_SQ)' +@@ -512,12 +518,13 @@ install-python-script: $(SCRIPT_PYTHON_INS) + clean-sh-script: + $(RM) $(SCRIPT_SH_GEN) + clean-perl-script: +- $(RM) $(SCRIPT_PERL_GEN) ++ $(RM) $(SCRIPT_PERL_GEN) $(SCRIPT_PERL_CVS_GEN) + clean-python-script: + $(RM) $(SCRIPT_PYTHON_GEN) + + SCRIPTS = $(SCRIPT_SH_INS) \ + $(SCRIPT_PERL_INS) \ ++ $(SCRIPT_PERL_CVS_INS) \ + $(SCRIPT_PYTHON_INS) \ + git-instaweb + +@@ -1677,10 +1684,24 @@ git.res: git.rc GIT-VERSION-FILE + -DGIT_VERSION="\\\"$(GIT_VERSION)\\\"" $< -o $@ + + # This makes sure we depend on the NO_PERL setting itself. +-$(SCRIPT_PERL_GEN): GIT-BUILD-OPTIONS ++$(SCRIPT_PERL_GEN) $(SCRIPT_PERL_CVS_GEN): GIT-BUILD-OPTIONS ++ ++_SCRIPT_PERL_GEN = ++_SCRIPT_PERL_NOGEN = + + ifndef NO_PERL +-$(SCRIPT_PERL_GEN): perl/perl.mak ++ ++_SCRIPT_PERL_GEN = $(SCRIPT_PERL_GEN) ++ ++ifndef NO_CVS ++_SCRIPT_PERL_GEN += $(SCRIPT_PERL_CVS_GEN) ++else ++_SCRIPT_PERL_NOGEN += $(SCRIPT_PERL_CVS_GEN) ++_REASON = NO_CVS ++_REASON_CONTENT = $(NO_CVS) ++endif # NO_CVS ++ ++$(_SCRIPT_PERL_GEN): perl/perl.mak + + perl/perl.mak: perl/PM.stamp + +@@ -1693,7 +1714,7 @@ perl/perl.mak: GIT-CFLAGS GIT-PREFIX perl/Makefile perl/Makefile.PL + $(QUIET_SUBDIR0)perl $(QUIET_SUBDIR1) PERL_PATH='$(PERL_PATH_SQ)' prefix='$(prefix_SQ)' $(@F) + + PERL_DEFINES = $(PERL_PATH_SQ):$(PERLLIB_EXTRA_SQ) +-$(SCRIPT_PERL_GEN): % : %.perl perl/perl.mak GIT-PERL-DEFINES GIT-VERSION-FILE ++$(_SCRIPT_PERL_GEN): % : %.perl perl/perl.mak GIT-PERL-DEFINES GIT-VERSION-FILE + $(QUIET_GEN)$(RM) $@ $@+ && \ + INSTLIBDIR=`MAKEFLAGS= $(MAKE) -C perl -s --no-print-directory instlibdir` && \ + INSTLIBDIR_EXTRA='$(PERLLIB_EXTRA_SQ)' && \ +@@ -1727,14 +1748,18 @@ git-instaweb: git-instaweb.sh gitweb GIT-SCRIPT-DEFINES + chmod +x $@+ && \ + mv $@+ $@ + else # NO_PERL +-$(SCRIPT_PERL_GEN) git-instaweb: % : unimplemented.sh ++_SCRIPT_PERL_NOGEN += $(SCRIPT_PERL_GEN) $(SCRIPT_PERL_CVS_GEN) git-instaweb ++_REASON = NO_PERL ++_REASON_CONTENT = $(NO_PERL) ++endif # NO_PERL ++ ++$(_SCRIPT_PERL_NOGEN): % : unimplemented.sh + $(QUIET_GEN)$(RM) $@ $@+ && \ + sed -e '1s|#!.*/sh|#!$(SHELL_PATH_SQ)|' \ +- -e 's|@@REASON@@|NO_PERL=$(NO_PERL)|g' \ ++ -e 's|@@REASON@@|$(_REASON)=$(_REASON_CONTENT)|g' \ + unimplemented.sh >$@+ && \ + chmod +x $@+ && \ + mv $@+ $@ +-endif # NO_PERL + + # This makes sure we depend on the NO_PYTHON setting itself. + $(SCRIPT_PYTHON_GEN): GIT-BUILD-OPTIONS +@@ -1964,7 +1989,7 @@ XGETTEXT_FLAGS_SH = $(XGETTEXT_FLAGS) --language=Shell \ + XGETTEXT_FLAGS_PERL = $(XGETTEXT_FLAGS) --keyword=__ --language=Perl + LOCALIZED_C = $(C_OBJ:o=c) $(LIB_H) $(GENERATED_H) + LOCALIZED_SH = $(SCRIPT_SH) +-LOCALIZED_PERL = $(SCRIPT_PERL) ++LOCALIZED_PERL = $(SCRIPT_PERL) $(SCRIPT_PERL_CVS) + + ifdef XGETTEXT_INCLUDE_TESTS + LOCALIZED_C += t/t0200/test.c +diff --git a/t/t9200-git-cvsexportcommit.sh b/t/t9200-git-cvsexportcommit.sh +index 812c9cd..906532a 100755 +--- a/t/t9200-git-cvsexportcommit.sh ++++ b/t/t9200-git-cvsexportcommit.sh +@@ -11,6 +11,11 @@ if ! test_have_prereq PERL; then + test_done + fi + ++if ! test_have_prereq CVS; then ++ skip_all='skipping git cvsexportcommit tests, cvs not available' ++ test_done ++fi ++ + cvs >/dev/null 2>&1 + if test $? -ne 1 + then +diff --git a/t/t9400-git-cvsserver-server.sh b/t/t9400-git-cvsserver-server.sh +index 6146c3f..2a675e3 100755 +--- a/t/t9400-git-cvsserver-server.sh ++++ b/t/t9400-git-cvsserver-server.sh +@@ -11,9 +11,15 @@ cvs CLI client via git-cvsserver server' + . ./test-lib.sh + + if ! test_have_prereq PERL; then +- skip_all='skipping git cvsserver tests, perl not available' ++ skip_all='skipping git-cvsserver tests, perl not available' + test_done + fi ++ ++if ! test_have_prereq CVS; then ++ skip_all='skipping git-cvsserver tests, cvs not available' ++ test_done ++fi ++ + cvs >/dev/null 2>&1 + if test $? -ne 1 + then +diff --git a/t/t9401-git-cvsserver-crlf.sh b/t/t9401-git-cvsserver-crlf.sh +index 5a4ed28..04814cb 100755 +--- a/t/t9401-git-cvsserver-crlf.sh ++++ b/t/t9401-git-cvsserver-crlf.sh +@@ -57,15 +57,20 @@ check_status_options() { + return $stat + } + +-cvs >/dev/null 2>&1 +-if test $? -ne 1 ++if ! test_have_prereq PERL + then +- skip_all='skipping git-cvsserver tests, cvs not found' ++ skip_all='skipping git-cvsserver tests, perl not available' + test_done + fi +-if ! test_have_prereq PERL ++if ! test_have_prereq CVS + then +- skip_all='skipping git-cvsserver tests, perl not available' ++ skip_all='skipping git-cvsserver tests, cvs not available' ++ test_done ++fi ++cvs >/dev/null 2>&1 ++if test $? -ne 1 ++then ++ skip_all='skipping git-cvsserver tests, cvs not found' + test_done + fi + perl -e 'use DBI; use DBD::SQLite' >/dev/null 2>&1 || { +diff --git a/t/t9600-cvsimport.sh b/t/t9600-cvsimport.sh +index 4c384ff..d601f32 100755 +--- a/t/t9600-cvsimport.sh ++++ b/t/t9600-cvsimport.sh +@@ -3,14 +3,25 @@ + test_description='git cvsimport basic tests' + . ./lib-cvs.sh + +-test_expect_success PERL 'setup cvsroot environment' ' ++if ! test_have_prereq PERL ++then ++ skip_all='skipping git cvsimport tests, perl not available' ++ test_done ++fi ++if ! test_have_prereq CVS ++then ++ skip_all='skipping git cvsimport tests, cvs not available' ++ test_done ++fi ++ ++test_expect_success 'setup cvsroot environment' ' + CVSROOT=$(pwd)/cvsroot && + export CVSROOT + ' + +-test_expect_success PERL 'setup cvsroot' '$CVS init' ++test_expect_success 'setup cvsroot' '$CVS init' + +-test_expect_success PERL 'setup a cvs module' ' ++test_expect_success 'setup a cvs module' ' + + mkdir "$CVSROOT/module" && + $CVS co -d module-cvs module && +@@ -42,23 +53,23 @@ EOF + ) + ' + +-test_expect_success PERL 'import a trivial module' ' ++test_expect_success 'import a trivial module' ' + + git cvsimport -a -R -z 0 -C module-git module && + test_cmp module-cvs/o_fortuna module-git/o_fortuna + + ' + +-test_expect_success PERL 'pack refs' '(cd module-git && git gc)' ++test_expect_success 'pack refs' '(cd module-git && git gc)' + +-test_expect_success PERL 'initial import has correct .git/cvs-revisions' ' ++test_expect_success 'initial import has correct .git/cvs-revisions' ' + + (cd module-git && + git log --format="o_fortuna 1.1 %H" -1) > expected && + test_cmp expected module-git/.git/cvs-revisions + ' + +-test_expect_success PERL 'update cvs module' ' ++test_expect_success 'update cvs module' ' + (cd module-cvs && + cat <<EOF >o_fortuna && + O Fortune, +@@ -86,7 +97,7 @@ EOF + ) + ' + +-test_expect_success PERL 'update git module' ' ++test_expect_success 'update git module' ' + + (cd module-git && + git config cvsimport.trackRevisions true && +@@ -97,7 +108,7 @@ test_expect_success PERL 'update git module' ' + + ' + +-test_expect_success PERL 'update has correct .git/cvs-revisions' ' ++test_expect_success 'update has correct .git/cvs-revisions' ' + + (cd module-git && + git log --format="o_fortuna 1.1 %H" -1 HEAD^ && +@@ -105,7 +116,7 @@ test_expect_success PERL 'update has correct .git/cvs-revisions' ' + test_cmp expected module-git/.git/cvs-revisions + ' + +-test_expect_success PERL 'update cvs module' ' ++test_expect_success 'update cvs module' ' + + (cd module-cvs && + echo 1 >tick && +@@ -114,7 +125,7 @@ test_expect_success PERL 'update cvs module' ' + ) + ' + +-test_expect_success PERL 'cvsimport.module config works' ' ++test_expect_success 'cvsimport.module config works' ' + + (cd module-git && + git config cvsimport.module module && +@@ -126,7 +137,7 @@ test_expect_success PERL 'cvsimport.module config works' ' + + ' + +-test_expect_success PERL 'second update has correct .git/cvs-revisions' ' ++test_expect_success 'second update has correct .git/cvs-revisions' ' + + (cd module-git && + git log --format="o_fortuna 1.1 %H" -1 HEAD^^ && +@@ -135,7 +146,7 @@ test_expect_success PERL 'second update has correct .git/cvs-revisions' ' + test_cmp expected module-git/.git/cvs-revisions + ' + +-test_expect_success PERL 'import from a CVS working tree' ' ++test_expect_success 'import from a CVS working tree' ' + + $CVS co -d import-from-wt module && + (cd import-from-wt && +@@ -148,12 +159,12 @@ test_expect_success PERL 'import from a CVS working tree' ' + + ' + +-test_expect_success PERL 'no .git/cvs-revisions created by default' ' ++test_expect_success 'no .git/cvs-revisions created by default' ' + + ! test -e import-from-wt/.git/cvs-revisions + + ' + +-test_expect_success PERL 'test entire HEAD' 'test_cmp_branch_tree master' ++test_expect_success 'test entire HEAD' 'test_cmp_branch_tree master' + + test_done +diff --git a/t/t9601-cvsimport-vendor-branch.sh b/t/t9601-cvsimport-vendor-branch.sh +index 827d39f..d730a41 100755 +--- a/t/t9601-cvsimport-vendor-branch.sh ++++ b/t/t9601-cvsimport-vendor-branch.sh +@@ -34,6 +34,17 @@ + test_description='git cvsimport handling of vendor branches' + . ./lib-cvs.sh + ++if ! test_have_prereq PERL ++then ++ skip_all='skipping git cvsimport tests, perl not available' ++ test_done ++fi ++if ! test_have_prereq CVS ++then ++ skip_all='skipping git cvsimport tests, cvs not available' ++ test_done ++fi ++ + setup_cvs_test_repository t9601 + + test_expect_success PERL 'import a module with a vendor branch' ' +diff --git a/t/t9602-cvsimport-branches-tags.sh b/t/t9602-cvsimport-branches-tags.sh +index e1db323..68f0974 100755 +--- a/t/t9602-cvsimport-branches-tags.sh ++++ b/t/t9602-cvsimport-branches-tags.sh +@@ -6,6 +6,17 @@ + test_description='git cvsimport handling of branches and tags' + . ./lib-cvs.sh + ++if ! test_have_prereq PERL ++then ++ skip_all='skipping git cvsimport tests, perl not available' ++ test_done ++fi ++if ! test_have_prereq CVS ++then ++ skip_all='skipping git cvsimport tests, cvs not available' ++ test_done ++fi ++ + setup_cvs_test_repository t9602 + + test_expect_success PERL 'import module' ' +diff --git a/t/t9603-cvsimport-patchsets.sh b/t/t9603-cvsimport-patchsets.sh +index c4c3c49..9b2957d 100755 +--- a/t/t9603-cvsimport-patchsets.sh ++++ b/t/t9603-cvsimport-patchsets.sh +@@ -14,6 +14,17 @@ + test_description='git cvsimport testing for correct patchset estimation' + . ./lib-cvs.sh + ++if ! test_have_prereq PERL ++then ++ skip_all='skipping git cvsimport tests, perl not available' ++ test_done ++fi ++if ! test_have_prereq CVS ++then ++ skip_all='skipping git cvsimport tests, cvs not available' ++ test_done ++fi ++ + setup_cvs_test_repository t9603 + + test_expect_failure PERL 'import with criss cross times on revisions' ' +diff --git a/t/test-lib.sh b/t/test-lib.sh +index 79e8a33..c7c4b48 100644 +--- a/t/test-lib.sh ++++ b/t/test-lib.sh +@@ -929,6 +929,7 @@ case $(uname -s) in + esac + + ( COLUMNS=1 && test $COLUMNS = 1 ) && test_set_prereq COLUMNS_CAN_BE_1 ++test -z "$NO_CVS" && test_set_prereq CVS + test -z "$NO_PERL" && test_set_prereq PERL + test -z "$NO_PYTHON" && test_set_prereq PYTHON + test -n "$USE_LIBPCRE" && test_set_prereq LIBPCRE +-- +2.2.1 + diff --git a/dev-vcs/git/files/git-daemon-r1.initd b/dev-vcs/git/files/git-daemon-r1.initd new file mode 100644 index 000000000000..b6ecfd9c508c --- /dev/null +++ b/dev-vcs/git/files/git-daemon-r1.initd @@ -0,0 +1,13 @@ +#!/sbin/runscript +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +pidfile="/var/run/git-daemon.pid" +command="/usr/bin/git" +command_args="daemon ${GITDAEMON_OPTS}" +start_stop_daemon_args="-e HOME= -e XDG_CONFIG_HOME= -b -m -p ${pidfile} -u ${GIT_USER:-nobody}:${GIT_GROUP:-nobody}" + +depend() { + use logger +} diff --git a/dev-vcs/git/files/git-daemon.confd b/dev-vcs/git/files/git-daemon.confd new file mode 100644 index 000000000000..69b209ff18cc --- /dev/null +++ b/dev-vcs/git/files/git-daemon.confd @@ -0,0 +1,19 @@ +# conf.d file for git-daemon +# +# Please check man 1 git-daemon for more information about the options +# git-daemon accepts. You MUST edit this to include your repositories you wish +# to serve. +# +# Some of the meaningful options are: +# --syslog --- Enables syslog logging +# --verbose --- Enables verbose logging +# --export-all --- Exports all repositories +# --port=XXXX --- Starts in port XXXX instead of 9418 +# +GITDAEMON_OPTS="--syslog --base-path=/var/git" + +# To run an anonymous git safely, the following user should be able to only +# read your Git repositories. It should not be able to write to anywhere on +# your system, esp. not the repositories. +GIT_USER="nobody" +GIT_GROUP="nobody" diff --git a/dev-vcs/git/files/git-daemon.socket b/dev-vcs/git/files/git-daemon.socket new file mode 100644 index 000000000000..3dec01d21653 --- /dev/null +++ b/dev-vcs/git/files/git-daemon.socket @@ -0,0 +1,9 @@ +[Unit] +Description=Git Activation Socket + +[Socket] +ListenStream=9418 +Accept=true + +[Install] +WantedBy=sockets.target diff --git a/dev-vcs/git/files/git-daemon.xinetd b/dev-vcs/git/files/git-daemon.xinetd new file mode 100644 index 000000000000..02c938d4bd6c --- /dev/null +++ b/dev-vcs/git/files/git-daemon.xinetd @@ -0,0 +1,13 @@ +service git-daemon +{ + disable = yes + socket_type = stream + wait = no + user = nobody + type = UNLISTED + protocol = tcp + log_on_failure += USERID + port = 9418 + server = /usr/bin/git + server_args = daemon --inetd --syslog --export-all --base-path=/var/git +} diff --git a/dev-vcs/git/files/git-daemon_at.service b/dev-vcs/git/files/git-daemon_at.service new file mode 100644 index 000000000000..2a080d4e7d8f --- /dev/null +++ b/dev-vcs/git/files/git-daemon_at.service @@ -0,0 +1,13 @@ +[Unit] +Description=Git Repositories Server Daemon +Documentation=man:git-daemon(1) + +[Service] +User=nobody +Group=nobody +EnvironmentFile=/etc/conf.d/git-daemon +# Ignore non-zero exit status, access error makes git-daemon return them +ExecStart=-/usr/libexec/git-core/git-daemon --inetd --base-path=/var/git --verbose $GITDAEMON_OPTS +StandardInput=socket +StandardOutput=inherit +StandardError=journal diff --git a/dev-vcs/git/git-1.8.5.6.ebuild b/dev-vcs/git/git-1.8.5.6.ebuild new file mode 100644 index 000000000000..35cb3cba4fb3 --- /dev/null +++ b/dev-vcs/git/git-1.8.5.6.ebuild @@ -0,0 +1,641 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +GENTOO_DEPEND_ON_PERL=no + +# bug #329479: git-remote-testgit is not multiple-version aware +PYTHON_COMPAT=( python2_7 ) +[[ ${PV} == *9999 ]] && SCM="git-2" +EGIT_REPO_URI="git://git.kernel.org/pub/scm/git/git.git" + +inherit toolchain-funcs eutils elisp-common perl-module bash-completion-r1 python-single-r1 systemd ${SCM} + +MY_PV="${PV/_rc/.rc}" +MY_P="${PN}-${MY_PV}" + +DOC_VER=${MY_PV} + +DESCRIPTION="GIT - the stupid content tracker, the revision control system heavily used by the Linux kernel team" +HOMEPAGE="http://www.git-scm.com/" +if [[ ${PV} != *9999 ]]; then + SRC_URI_SUFFIX="gz" + SRC_URI_GOOG="http://git-core.googlecode.com/files" + SRC_URI_KORG="mirror://kernel/software/scm/git" + SRC_URI="${SRC_URI_GOOG}/${MY_P}.tar.${SRC_URI_SUFFIX} + ${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX} + ${SRC_URI_GOOG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX} + ${SRC_URI_KORG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX} + doc? ( + ${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX} + ${SRC_URI_GOOG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX} + )" + KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~ia64-hpux ~x86-interix ~amd64-linux ~arm-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +fi + +LICENSE="GPL-2" +SLOT="0" +IUSE="+blksha1 +curl cgi doc emacs gnome-keyring +gpg gtk highlight +iconv mediawiki +nls +pcre +perl +python ppcsha1 tk +threads +webdav xinetd cvs subversion test" + +# Common to both DEPEND and RDEPEND +CDEPEND=" + dev-libs/openssl + sys-libs/zlib + pcre? ( dev-libs/libpcre ) + perl? ( dev-lang/perl:=[-build(-)] ) + tk? ( dev-lang/tk ) + curl? ( + net-misc/curl + webdav? ( dev-libs/expat ) + ) + emacs? ( virtual/emacs ) + gnome-keyring? ( gnome-base/libgnome-keyring )" + +RDEPEND="${CDEPEND} + gpg? ( app-crypt/gnupg ) + mediawiki? ( + dev-perl/HTML-Tree + dev-perl/MediaWiki-API + ) + perl? ( dev-perl/Error + dev-perl/Net-SMTP-SSL + dev-perl/Authen-SASL + cgi? ( dev-perl/CGI highlight? ( app-text/highlight ) ) + cvs? ( >=dev-vcs/cvsps-2.1:0 dev-perl/DBI dev-perl/DBD-SQLite ) + subversion? ( dev-vcs/subversion[-dso,perl] dev-perl/libwww-perl dev-perl/TermReadKey ) + ) + python? ( gtk? + ( + >=dev-python/pygtk-2.8[${PYTHON_USEDEP}] + >=dev-python/pygtksourceview-2.10.1-r1:2[${PYTHON_USEDEP}] + ) + ${PYTHON_DEPS} )" + +# This is how info docs are created with Git: +# .txt/asciidoc --(asciidoc)---------> .xml/docbook +# .xml/docbook --(docbook2texi.pl)--> .texi +# .texi --(makeinfo)---------> .info +DEPEND="${CDEPEND} + app-arch/cpio + doc? ( + app-text/asciidoc + app-text/docbook2X + sys-apps/texinfo + app-text/xmlto + ) + nls? ( sys-devel/gettext ) + test? ( app-crypt/gnupg )" + +# Live ebuild builds man pages and HTML docs, additionally +if [[ ${PV} == *9999 ]]; then + DEPEND="${DEPEND} + app-text/asciidoc" +fi + +SITEFILE=50${PN}-gentoo.el +S="${WORKDIR}/${MY_P}" + +REQUIRED_USE=" + cgi? ( perl ) + cvs? ( perl ) + mediawiki? ( perl ) + subversion? ( perl ) + webdav? ( curl ) + gtk? ( python ) + python? ( ${PYTHON_REQUIRED_USE} ) +" + +pkg_setup() { + if use subversion && has_version "dev-vcs/subversion[dso]"; then + ewarn "Per Gentoo bugs #223747, #238586, when subversion is built" + ewarn "with USE=dso, there may be weird crashes in git-svn. You" + ewarn "have been warned." + fi + if use python ; then + python-single-r1_pkg_setup + fi +} + +# This is needed because for some obscure reasons future calls to make don't +# pick up these exports if we export them in src_unpack() +exportmakeopts() { + local myopts + + if use blksha1 ; then + myopts="${myopts} BLK_SHA1=YesPlease" + elif use ppcsha1 ; then + myopts="${myopts} PPC_SHA1=YesPlease" + fi + + if use curl ; then + use webdav || myopts="${myopts} NO_EXPAT=YesPlease" + else + myopts="${myopts} NO_CURL=YesPlease" + fi + + # broken assumptions, because of broken build system ... + myopts="${myopts} NO_FINK=YesPlease NO_DARWIN_PORTS=YesPlease" + myopts="${myopts} INSTALL=install TAR=tar" + myopts="${myopts} SHELL_PATH=${EPREFIX}/bin/sh" + myopts="${myopts} SANE_TOOL_PATH=" + myopts="${myopts} OLD_ICONV=" + myopts="${myopts} NO_EXTERNAL_GREP=" + + # For svn-fe + extlibs="-lz -lssl ${S}/xdiff/lib.a $(usex threads -lpthread '')" + + # can't define this to null, since the entire makefile depends on it + sed -i -e '/\/usr\/local/s/BASIC_/#BASIC_/' Makefile + + use iconv \ + || myopts="${myopts} NO_ICONV=YesPlease" + use nls \ + || myopts="${myopts} NO_GETTEXT=YesPlease" + use tk \ + || myopts="${myopts} NO_TCLTK=YesPlease" + use pcre \ + && myopts="${myopts} USE_LIBPCRE=yes" \ + && extlibs="${extlibs} -lpcre" + use perl \ + && myopts="${myopts} INSTALLDIRS=vendor" \ + || myopts="${myopts} NO_PERL=YesPlease" + use python \ + || myopts="${myopts} NO_PYTHON=YesPlease" + use subversion \ + || myopts="${myopts} NO_SVN_TESTS=YesPlease" + use threads \ + && myopts="${myopts} THREADED_DELTA_SEARCH=YesPlease" \ + || myopts="${myopts} NO_PTHREADS=YesPlease" + use cvs \ + || myopts="${myopts} NO_CVS=YesPlease" +# Disabled until ~m68k-mint can be keyworded again +# if [[ ${CHOST} == *-mint* ]] ; then +# myopts="${myopts} NO_MMAP=YesPlease" +# myopts="${myopts} NO_IPV6=YesPlease" +# myopts="${myopts} NO_STRLCPY=YesPlease" +# myopts="${myopts} NO_MEMMEM=YesPlease" +# myopts="${myopts} NO_MKDTEMP=YesPlease" +# myopts="${myopts} NO_MKSTEMPS=YesPlease" +# fi + if [[ ${CHOST} == ia64-*-hpux* ]]; then + myopts="${myopts} NO_NSEC=YesPlease" + fi + if [[ ${CHOST} == *-*-aix* ]]; then + myopts="${myopts} NO_FNMATCH_CASEFOLD=YesPlease" + fi + if [[ ${CHOST} == *-solaris* ]]; then + myopts="${myopts} NEEDS_LIBICONV=YesPlease" + fi + + has_version '>=app-text/asciidoc-8.0' \ + && myopts="${myopts} ASCIIDOC8=YesPlease" + myopts="${myopts} ASCIIDOC_NO_ROFF=YesPlease" + + # Bug 290465: + # builtin-fetch-pack.c:816: error: 'struct stat' has no member named 'st_mtim' + [[ "${CHOST}" == *-uclibc* ]] && \ + myopts="${myopts} NO_NSEC=YesPlease" + + export MY_MAKEOPTS="${myopts}" + export EXTLIBS="${extlibs}" +} + +src_unpack() { + if [[ ${PV} != *9999 ]]; then + unpack ${MY_P}.tar.${SRC_URI_SUFFIX} + cd "${S}" + unpack ${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX} + use doc && \ + cd "${S}"/Documentation && \ + unpack ${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX} + cd "${S}" + else + git-2_src_unpack + cd "${S}" + #cp "${FILESDIR}"/GIT-VERSION-GEN . + fi + +} + +src_prepare() { + # bug #350330 - automagic CVS when we don't want it is bad. + epatch "${FILESDIR}"/git-1.8.5-optional-cvs.patch + + # honor and correctly quote DISTDIR (from upstream git master) + epatch "${FILESDIR}"/git-1.8.5-mw-destdir.patch + + # install mediawiki perl modules also in vendor_dir + # hack, needs better upstream solution + epatch "${FILESDIR}"/git-1.8.5-mw-vendor.patch + + epatch_user + + sed -i \ + -e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \ + -e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \ + -e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \ + -e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \ + -e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \ + -e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \ + Makefile contrib/svn-fe/Makefile || die "sed failed" + + # Never install the private copy of Error.pm (bug #296310) + sed -i \ + -e '/private-Error.pm/s,^,#,' \ + perl/Makefile.PL + + # Fix docbook2texi command + sed -r -i 's/DOCBOOK2X_TEXI[[:space:]]*=[[:space:]]*docbook2x-texi/DOCBOOK2X_TEXI = docbook2texi.pl/' \ + Documentation/Makefile || die "sed failed" + + # Fix git-subtree missing DESTDIR + sed -i \ + -e '/$(INSTALL)/s/ $(libexecdir)/ $(DESTDIR)$(libexecdir)/g' \ + -e '/$(INSTALL)/s/ $(man1dir)/ $(DESTDIR)$(man1dir)/g' \ + contrib/subtree/Makefile +} + +git_emake() { + # bug #326625: PERL_PATH, PERL_MM_OPT + # bug #320647: PYTHON_PATH + PYTHON_PATH="" + use python && PYTHON_PATH="${PYTHON}" + emake ${MY_MAKEOPTS} \ + DESTDIR="${D}" \ + OPTCFLAGS="${CFLAGS}" \ + OPTLDFLAGS="${LDFLAGS}" \ + OPTCC="$(tc-getCC)" \ + OPTAR="$(tc-getAR)" \ + prefix="${EPREFIX}"/usr \ + htmldir="${EPREFIX}"/usr/share/doc/${PF}/html \ + sysconfdir="${EPREFIX}"/etc \ + PYTHON_PATH="${PYTHON_PATH}" \ + PERL_MM_OPT="" \ + GIT_TEST_OPTS="--no-color" \ + V=1 \ + "$@" + # This is the fix for bug #326625, but it also causes breakage, see bug + # #352693. + # PERL_PATH="${EPREFIX}/usr/bin/env perl" \ +} + +src_configure() { + exportmakeopts +} + +src_compile() { + if use perl ; then + git_emake perl/PM.stamp || die "emake perl/PM.stamp failed" + git_emake perl/perl.mak || die "emake perl/perl.mak failed" + fi + git_emake || die "emake failed" + + if use emacs ; then + elisp-compile contrib/emacs/git{,-blame}.el + fi + + if use perl && use cgi ; then + git_emake \ + gitweb/gitweb.cgi \ + || die "emake gitweb/gitweb.cgi failed" + fi + + if [[ ${CHOST} == *-darwin* ]]; then + cd "${S}"/contrib/credential/osxkeychain || die "cd credential/osxkeychain" + git_emake || die "emake credential-osxkeychain" + fi + + cd "${S}"/Documentation + if [[ ${PV} == *9999 ]] ; then + git_emake man \ + || die "emake man failed" + if use doc ; then + git_emake info html \ + || die "emake info html failed" + fi + else + if use doc ; then + git_emake info \ + || die "emake info html failed" + fi + fi + + if use subversion ; then + cd "${S}"/contrib/svn-fe + git_emake EXTLIBS="${EXTLIBS}" || die "emake svn-fe failed" + if use doc ; then + git_emake svn-fe.{1,html} || die "emake svn-fe.1 svn-fe.html failed" + fi + cd "${S}" + fi + + if use gnome-keyring ; then + cd "${S}"/contrib/credential/gnome-keyring + git_emake || die "emake git-credential-gnome-keyring failed" + fi + + cd "${S}"/contrib/subtree + git_emake + use doc && git_emake doc + + if use mediawiki ; then + cd "${S}"/contrib/mw-to-git + git_emake + fi +} + +src_install() { + git_emake \ + install || \ + die "make install failed" + + if [[ ${CHOST} == *-darwin* ]]; then + dobin contrib/credential/osxkeychain/git-credential-osxkeychain + fi + + # Depending on the tarball and manual rebuild of the documentation, the + # manpages may exist in either OR both of these directories. + find man?/*.[157] >/dev/null 2>&1 && doman man?/*.[157] + find Documentation/*.[157] >/dev/null 2>&1 && doman Documentation/*.[157] + + dodoc README Documentation/{SubmittingPatches,CodingGuidelines} + use doc && dodir /usr/share/doc/${PF}/html + for d in / /howto/ /technical/ ; do + docinto ${d} + dodoc Documentation${d}*.txt + use doc && dohtml -p ${d} Documentation${d}*.html + done + docinto / + # Upstream does not ship this pre-built :-( + use doc && doinfo Documentation/{git,gitman}.info + + newbashcomp contrib/completion/git-completion.bash ${PN} + # Not really a bash-completion file (bug #477920) + dodoc contrib/completion/git-prompt.sh + + if use emacs ; then + elisp-install ${PN} contrib/emacs/git.{el,elc} + elisp-install ${PN} contrib/emacs/git-blame.{el,elc} + #elisp-install ${PN}/compat contrib/emacs/vc-git.{el,elc} + # don't add automatically to the load-path, so the sitefile + # can do a conditional loading + touch "${ED}${SITELISP}/${PN}/compat/.nosearch" + elisp-site-file-install "${FILESDIR}"/${SITEFILE} + fi + + if use python && use gtk ; then + python_doscript "${S}"/contrib/gitview/gitview + dodoc "${S}"/contrib/gitview/gitview.txt + fi + + #dobin contrib/fast-import/git-p4 # Moved upstream + #dodoc contrib/fast-import/git-p4.txt # Moved upstream + newbin contrib/fast-import/import-tars.perl import-tars + exeinto /usr/libexec/git-core/ + newexe contrib/git-resurrect.sh git-resurrect + + # git-subtree + cd "${S}"/contrib/subtree + git_emake install || die "Failed to emake install git-subtree" + if use doc ; then + git_emake install-man install-doc || die "Failed to emake install-doc install-mangit-subtree" + fi + newdoc README README.git-subtree + dodoc git-subtree.txt + cd "${S}" + + if use mediawiki ; then + cd "${S}"/contrib/mw-to-git + git_emake install + cd "${S}" + fi + + # git-diffall + dobin contrib/diffall/git-diffall + newdoc contrib/diffall/README git-diffall.txt + + # diff-highlight + dobin contrib/diff-highlight/diff-highlight + newdoc contrib/diff-highlight/README README.diff-highlight + + # git-jump + exeinto /usr/libexec/git-core/ + doexe contrib/git-jump/git-jump + newdoc contrib/git-jump/README git-jump.txt + + # git-contacts + exeinto /usr/libexec/git-core/ + doexe contrib/contacts/git-contacts + dodoc contrib/contacts/git-contacts.txt + + if use gnome-keyring ; then + cd "${S}"/contrib/credential/gnome-keyring + dobin git-credential-gnome-keyring + fi + + if use subversion ; then + cd "${S}"/contrib/svn-fe + dobin svn-fe + dodoc svn-fe.txt + use doc && doman svn-fe.1 && dohtml svn-fe.html + cd "${S}" + fi + + # remote-helpers + if use python ; then + python_scriptinto /usr/libexec/git-core/ + python_doscript "${S}"/contrib/remote-helpers/git-remote-{bzr,hg} + python_optimize + fi + + dodir /usr/share/${PN}/contrib + # The following are excluded: + # completion - installed above + # credential/gnome-keyring TODO + # diff-highlight - done above + # diffall - done above + # emacs - installed above + # examples - these are stuff that is not used in Git anymore actually + # git-jump - done above + # gitview - installed above + # p4import - excluded because fast-import has a better one + # patches - stuff the Git guys made to go upstream to other places + # persistent-https - TODO + # mw-to-git - TODO + # subtree - build seperately + # svnimport - use git-svn + # thunderbird-patch-inline - fixes thunderbird + for i in \ + buildsystems convert-objects fast-import \ + hg-to-git hooks remotes2config.sh rerere-train.sh \ + stats vim workdir \ + ; do + cp -rf \ + "${S}"/contrib/${i} \ + "${ED}"/usr/share/${PN}/contrib \ + || die "Failed contrib ${i}" + done + + if use perl && use cgi ; then + # We used to install in /usr/share/${PN}/gitweb + # but upstream installs in /usr/share/gitweb + # so we will install a symlink and use their location for compat with other + # distros + dosym /usr/share/gitweb /usr/share/${PN}/gitweb + + # INSTALL discusses configuration issues, not just installation + docinto / + newdoc "${S}"/gitweb/INSTALL INSTALL.gitweb + newdoc "${S}"/gitweb/README README.gitweb + + find "${ED}"/usr/lib64/perl5/ \ + -name .packlist \ + -exec rm \{\} \; + else + rm -rf "${ED}"/usr/share/gitweb + fi + + if ! use subversion ; then + rm -f "${ED}"/usr/libexec/git-core/git-svn \ + "${ED}"/usr/share/man/man1/git-svn.1* + fi + + if use xinetd ; then + insinto /etc/xinetd.d + newins "${FILESDIR}"/git-daemon.xinetd git-daemon + fi + + if use !prefix ; then + newinitd "${FILESDIR}"/git-daemon-r1.initd git-daemon + newconfd "${FILESDIR}"/git-daemon.confd git-daemon + systemd_newunit "${FILESDIR}/git-daemon_at.service" "git-daemon@.service" + systemd_dounit "${FILESDIR}/git-daemon.socket" + fi + + perl_delete_localpod +} + +src_test() { + local disabled="" + local tests_cvs="t9200-git-cvsexportcommit.sh \ + t9400-git-cvsserver-server.sh \ + t9401-git-cvsserver-crlf.sh \ + t9402-git-cvsserver-refs.sh \ + t9600-cvsimport.sh \ + t9601-cvsimport-vendor-branch.sh \ + t9602-cvsimport-branches-tags.sh \ + t9603-cvsimport-patchsets.sh \ + t9604-cvsimport-timestamps.sh" + local tests_perl="t3701-add-interactive.sh \ + t5502-quickfetch.sh \ + t5512-ls-remote.sh \ + t5520-pull.sh \ + t7106-reset-unborn-branch.sh \ + t7501-commit.sh" + # Bug #225601 - t0004 is not suitable for root perm + # Bug #219839 - t1004 is not suitable for root perm + # t0001-init.sh - check for init notices EPERM* fails + local tests_nonroot="t0001-init.sh \ + t0004-unwritable.sh \ + t0070-fundamental.sh \ + t1004-read-tree-m-u-wf.sh \ + t3700-add.sh \ + t7300-clean.sh" + # t9100 still fails with symlinks in SVN 1.7 + local test_svn="t9100-git-svn-basic.sh" + + # Unzip is used only for the testcase code, not by any normal parts of Git. + if ! has_version app-arch/unzip ; then + einfo "Disabling tar-tree tests" + disabled="${disabled} t5000-tar-tree.sh" + fi + + cvs=0 + use cvs && let cvs=$cvs+1 + if [[ ${EUID} -eq 0 ]]; then + if [[ $cvs -eq 1 ]]; then + ewarn "Skipping CVS tests because CVS does not work as root!" + ewarn "You should retest with FEATURES=userpriv!" + disabled="${disabled} ${tests_cvs}" + fi + einfo "Skipping other tests that require being non-root" + disabled="${disabled} ${tests_nonroot}" + else + [[ $cvs -gt 0 ]] && \ + has_version dev-vcs/cvs && \ + let cvs=$cvs+1 + [[ $cvs -gt 1 ]] && \ + has_version "dev-vcs/cvs[server]" && \ + let cvs=$cvs+1 + if [[ $cvs -lt 3 ]]; then + einfo "Disabling CVS tests (needs dev-vcs/cvs[USE=server])" + disabled="${disabled} ${tests_cvs}" + fi + fi + + if ! use perl ; then + einfo "Disabling tests that need Perl" + disabled="${disabled} ${tests_perl}" + fi + + einfo "Disabling tests that fail with SVN 1.7" + disabled="${disabled} ${test_svn}" + + # Reset all previously disabled tests + cd "${S}/t" + for i in *.sh.DISABLED ; do + [[ -f "${i}" ]] && mv -f "${i}" "${i%.DISABLED}" + done + einfo "Disabled tests:" + for i in ${disabled} ; do + [[ -f "${i}" ]] && mv -f "${i}" "${i}.DISABLED" && einfo "Disabled $i" + done + + # Avoid the test system removing the results because we want them ourselves + sed -e '/^[[:space:]]*$(MAKE) clean/s,^,#,g' \ + -i "${S}"/t/Makefile + + # Clean old results first, must always run + cd "${S}/t" + nonfatal git_emake clean + + # Now run the tests, keep going if we hit an error, and don't terminate on + # failure + cd "${S}" + einfo "Start test run" + #MAKEOPTS=-j1 + nonfatal git_emake --keep-going test + rc=$? + + # Display nice results, now print the results + cd "${S}/t" + nonfatal git_emake aggregate-results + + # And bail if there was a problem + [ $rc -eq 0 ] || die "tests failed. Please file a bug." +} + +showpkgdeps() { + local pkg=$1 + shift + elog " $(printf "%-17s:" ${pkg}) ${@}" +} + +pkg_postinst() { + use emacs && elisp-site-regen + einfo "Please read /usr/share/bash-completion/git for Git bash command completion" + einfo "Please read /usr/share/bash-completion/git-prompt for Git bash prompt" + einfo "Note that the prompt bash code is now in the seperate script" + elog "These additional scripts need some dependencies:" + echo + showpkgdeps git-quiltimport "dev-util/quilt" + showpkgdeps git-instaweb \ + "|| ( www-servers/lighttpd www-servers/apache www-servers/nginx )" + echo +} + +pkg_postrm() { + use emacs && elisp-site-regen +} diff --git a/dev-vcs/git/git-1.9.5.ebuild b/dev-vcs/git/git-1.9.5.ebuild new file mode 100644 index 000000000000..a6dbd35c558c --- /dev/null +++ b/dev-vcs/git/git-1.9.5.ebuild @@ -0,0 +1,640 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +GENTOO_DEPEND_ON_PERL=no + +# bug #329479: git-remote-testgit is not multiple-version aware +PYTHON_COMPAT=( python2_7 ) +[[ ${PV} == *9999 ]] && SCM="git-2" +EGIT_REPO_URI="git://git.kernel.org/pub/scm/git/git.git" + +inherit toolchain-funcs eutils elisp-common perl-module bash-completion-r1 python-single-r1 systemd ${SCM} + +MY_PV="${PV/_rc/.rc}" +MY_P="${PN}-${MY_PV}" + +DOC_VER=${MY_PV} + +DESCRIPTION="GIT - the stupid content tracker, the revision control system heavily used by the Linux kernel team" +HOMEPAGE="http://www.git-scm.com/" +if [[ ${PV} != *9999 ]]; then + SRC_URI_SUFFIX="gz" + SRC_URI_GOOG="http://git-core.googlecode.com/files" + SRC_URI_KORG="mirror://kernel/software/scm/git" + SRC_URI="${SRC_URI_GOOG}/${MY_P}.tar.${SRC_URI_SUFFIX} + ${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX} + ${SRC_URI_GOOG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX} + ${SRC_URI_KORG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX} + doc? ( + ${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX} + ${SRC_URI_GOOG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX} + )" + KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~ia64-hpux ~x86-interix ~amd64-linux ~arm-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +fi + +LICENSE="GPL-2" +SLOT="0" +IUSE="+blksha1 +curl cgi doc emacs gnome-keyring +gpg gtk highlight +iconv mediawiki +nls +pcre +perl +python ppcsha1 tk +threads +webdav xinetd cvs subversion test" + +# Common to both DEPEND and RDEPEND +CDEPEND=" + dev-libs/openssl + sys-libs/zlib + pcre? ( dev-libs/libpcre ) + perl? ( dev-lang/perl:=[-build(-)] ) + tk? ( dev-lang/tk ) + curl? ( + net-misc/curl + webdav? ( dev-libs/expat ) + ) + emacs? ( virtual/emacs ) + gnome-keyring? ( gnome-base/libgnome-keyring )" + +RDEPEND="${CDEPEND} + gpg? ( app-crypt/gnupg ) + mediawiki? ( + dev-perl/HTML-Tree + dev-perl/MediaWiki-API + ) + perl? ( dev-perl/Error + dev-perl/Net-SMTP-SSL + dev-perl/Authen-SASL + cgi? ( dev-perl/CGI highlight? ( app-text/highlight ) ) + cvs? ( >=dev-vcs/cvsps-2.1:0 dev-perl/DBI dev-perl/DBD-SQLite ) + subversion? ( dev-vcs/subversion[-dso,perl] dev-perl/libwww-perl dev-perl/TermReadKey ) + ) + python? ( gtk? + ( + >=dev-python/pygtk-2.8[${PYTHON_USEDEP}] + >=dev-python/pygtksourceview-2.10.1-r1:2[${PYTHON_USEDEP}] + ) + ${PYTHON_DEPS} )" + +# This is how info docs are created with Git: +# .txt/asciidoc --(asciidoc)---------> .xml/docbook +# .xml/docbook --(docbook2texi.pl)--> .texi +# .texi --(makeinfo)---------> .info +DEPEND="${CDEPEND} + app-arch/cpio + doc? ( + app-text/asciidoc + app-text/docbook2X + sys-apps/texinfo + app-text/xmlto + ) + nls? ( sys-devel/gettext ) + test? ( app-crypt/gnupg )" + +# Live ebuild builds man pages and HTML docs, additionally +if [[ ${PV} == *9999 ]]; then + DEPEND="${DEPEND} + app-text/asciidoc" +fi + +SITEFILE=50${PN}-gentoo.el +S="${WORKDIR}/${MY_P}" + +REQUIRED_USE=" + cgi? ( perl ) + cvs? ( perl ) + mediawiki? ( perl ) + subversion? ( perl ) + webdav? ( curl ) + gtk? ( python ) + python? ( ${PYTHON_REQUIRED_USE} ) +" + +pkg_setup() { + if use subversion && has_version "dev-vcs/subversion[dso]"; then + ewarn "Per Gentoo bugs #223747, #238586, when subversion is built" + ewarn "with USE=dso, there may be weird crashes in git-svn. You" + ewarn "have been warned." + fi + if use python ; then + python-single-r1_pkg_setup + fi +} + +# This is needed because for some obscure reasons future calls to make don't +# pick up these exports if we export them in src_unpack() +exportmakeopts() { + local myopts + + if use blksha1 ; then + myopts="${myopts} BLK_SHA1=YesPlease" + elif use ppcsha1 ; then + myopts="${myopts} PPC_SHA1=YesPlease" + fi + + if use curl ; then + use webdav || myopts="${myopts} NO_EXPAT=YesPlease" + else + myopts="${myopts} NO_CURL=YesPlease" + fi + + # broken assumptions, because of broken build system ... + myopts="${myopts} NO_FINK=YesPlease NO_DARWIN_PORTS=YesPlease" + myopts="${myopts} INSTALL=install TAR=tar" + myopts="${myopts} SHELL_PATH=${EPREFIX}/bin/sh" + myopts="${myopts} SANE_TOOL_PATH=" + myopts="${myopts} OLD_ICONV=" + myopts="${myopts} NO_EXTERNAL_GREP=" + + # For svn-fe + extlibs="-lz -lssl ${S}/xdiff/lib.a $(usex threads -lpthread '')" + + # can't define this to null, since the entire makefile depends on it + sed -i -e '/\/usr\/local/s/BASIC_/#BASIC_/' Makefile + + use iconv \ + || myopts="${myopts} NO_ICONV=YesPlease" + use nls \ + || myopts="${myopts} NO_GETTEXT=YesPlease" + use tk \ + || myopts="${myopts} NO_TCLTK=YesPlease" + use pcre \ + && myopts="${myopts} USE_LIBPCRE=yes" \ + && extlibs="${extlibs} -lpcre" + use perl \ + && myopts="${myopts} INSTALLDIRS=vendor" \ + || myopts="${myopts} NO_PERL=YesPlease" + use python \ + || myopts="${myopts} NO_PYTHON=YesPlease" + use subversion \ + || myopts="${myopts} NO_SVN_TESTS=YesPlease" + use threads \ + && myopts="${myopts} THREADED_DELTA_SEARCH=YesPlease" \ + || myopts="${myopts} NO_PTHREADS=YesPlease" + use cvs \ + || myopts="${myopts} NO_CVS=YesPlease" +# Disabled until ~m68k-mint can be keyworded again +# if [[ ${CHOST} == *-mint* ]] ; then +# myopts="${myopts} NO_MMAP=YesPlease" +# myopts="${myopts} NO_IPV6=YesPlease" +# myopts="${myopts} NO_STRLCPY=YesPlease" +# myopts="${myopts} NO_MEMMEM=YesPlease" +# myopts="${myopts} NO_MKDTEMP=YesPlease" +# myopts="${myopts} NO_MKSTEMPS=YesPlease" +# fi + if [[ ${CHOST} == ia64-*-hpux* ]]; then + myopts="${myopts} NO_NSEC=YesPlease" + fi + if [[ ${CHOST} == *-*-aix* ]]; then + myopts="${myopts} NO_FNMATCH_CASEFOLD=YesPlease" + fi + if [[ ${CHOST} == *-solaris* ]]; then + myopts="${myopts} NEEDS_LIBICONV=YesPlease" + fi + + has_version '>=app-text/asciidoc-8.0' \ + && myopts="${myopts} ASCIIDOC8=YesPlease" + myopts="${myopts} ASCIIDOC_NO_ROFF=YesPlease" + + # Bug 290465: + # builtin-fetch-pack.c:816: error: 'struct stat' has no member named 'st_mtim' + [[ "${CHOST}" == *-uclibc* ]] && \ + myopts="${myopts} NO_NSEC=YesPlease" + + export MY_MAKEOPTS="${myopts}" + export EXTLIBS="${extlibs}" +} + +src_unpack() { + if [[ ${PV} != *9999 ]]; then + unpack ${MY_P}.tar.${SRC_URI_SUFFIX} + cd "${S}" + unpack ${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX} + use doc && \ + cd "${S}"/Documentation && \ + unpack ${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX} + cd "${S}" + else + git-2_src_unpack + cd "${S}" + #cp "${FILESDIR}"/GIT-VERSION-GEN . + fi + +} + +src_prepare() { + # bug #350330 - automagic CVS when we don't want it is bad. + epatch "${FILESDIR}"/git-1.9.0_rc3-optional-cvs.patch + + # install mediawiki perl modules also in vendor_dir + # hack, needs better upstream solution + epatch "${FILESDIR}"/git-1.8.5-mw-vendor.patch + + epatch_user + + sed -i \ + -e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \ + -e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \ + -e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \ + -e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \ + -e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \ + -e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \ + Makefile contrib/svn-fe/Makefile || die "sed failed" + + # Never install the private copy of Error.pm (bug #296310) + sed -i \ + -e '/private-Error.pm/s,^,#,' \ + perl/Makefile.PL + + # Fix docbook2texi command + sed -r -i 's/DOCBOOK2X_TEXI[[:space:]]*=[[:space:]]*docbook2x-texi/DOCBOOK2X_TEXI = docbook2texi.pl/' \ + Documentation/Makefile || die "sed failed" + + # Fix git-subtree missing DESTDIR + sed -i \ + -e '/$(INSTALL)/s/ $(libexecdir)/ $(DESTDIR)$(libexecdir)/g' \ + -e '/$(INSTALL)/s/ $(man1dir)/ $(DESTDIR)$(man1dir)/g' \ + contrib/subtree/Makefile +} + +git_emake() { + # bug #326625: PERL_PATH, PERL_MM_OPT + # bug #320647: PYTHON_PATH + PYTHON_PATH="" + use python && PYTHON_PATH="${PYTHON}" + emake ${MY_MAKEOPTS} \ + DESTDIR="${D}" \ + OPTCFLAGS="${CFLAGS}" \ + OPTLDFLAGS="${LDFLAGS}" \ + OPTCC="$(tc-getCC)" \ + OPTAR="$(tc-getAR)" \ + prefix="${EPREFIX}"/usr \ + htmldir="${EPREFIX}"/usr/share/doc/${PF}/html \ + sysconfdir="${EPREFIX}"/etc \ + PYTHON_PATH="${PYTHON_PATH}" \ + PERL_MM_OPT="" \ + GIT_TEST_OPTS="--no-color" \ + V=1 \ + "$@" + # This is the fix for bug #326625, but it also causes breakage, see bug + # #352693. + # PERL_PATH="${EPREFIX}/usr/bin/env perl" \ +} + +src_configure() { + exportmakeopts +} + +src_compile() { + if use perl ; then + git_emake perl/PM.stamp || die "emake perl/PM.stamp failed" + git_emake perl/perl.mak || die "emake perl/perl.mak failed" + fi + git_emake || die "emake failed" + + if use emacs ; then + elisp-compile contrib/emacs/git{,-blame}.el + fi + + if use perl && use cgi ; then + git_emake \ + gitweb/gitweb.cgi \ + || die "emake gitweb/gitweb.cgi failed" + fi + + if [[ ${CHOST} == *-darwin* ]]; then + cd "${S}"/contrib/credential/osxkeychain || die "cd credential/osxkeychain" + git_emake || die "emake credential-osxkeychain" + fi + + cd "${S}"/Documentation + if [[ ${PV} == *9999 ]] ; then + git_emake man \ + || die "emake man failed" + if use doc ; then + git_emake info html \ + || die "emake info html failed" + fi + else + if use doc ; then + git_emake info \ + || die "emake info html failed" + fi + fi + + if use subversion ; then + cd "${S}"/contrib/svn-fe + git_emake EXTLIBS="${EXTLIBS}" || die "emake svn-fe failed" + if use doc ; then + git_emake svn-fe.{1,html} || die "emake svn-fe.1 svn-fe.html failed" + fi + cd "${S}" + fi + + if use gnome-keyring ; then + cd "${S}"/contrib/credential/gnome-keyring + git_emake || die "emake git-credential-gnome-keyring failed" + fi + + cd "${S}"/contrib/subtree + git_emake + use doc && git_emake doc + + if use mediawiki ; then + cd "${S}"/contrib/mw-to-git + git_emake + fi +} + +src_install() { |