diff options
-rw-r--r-- | dev-vcs/cvsps/ChangeLog | 9 | ||||
-rw-r--r-- | dev-vcs/cvsps/cvsps-2.2_beta1.ebuild | 38 | ||||
-rw-r--r-- | dev-vcs/cvsps/files/cvsps-2.2_beta1-solaris.patch | 135 | ||||
-rw-r--r-- | dev-vcs/cvsps/metadata.xml | 4 |
4 files changed, 185 insertions, 1 deletions
diff --git a/dev-vcs/cvsps/ChangeLog b/dev-vcs/cvsps/ChangeLog index 9fd64e06fa8d..4e097d155c10 100644 --- a/dev-vcs/cvsps/ChangeLog +++ b/dev-vcs/cvsps/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for dev-vcs/cvsps # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-vcs/cvsps/ChangeLog,v 1.11 2012/08/26 18:26:41 armin76 Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-vcs/cvsps/ChangeLog,v 1.12 2012/10/02 15:58:59 slyfox Exp $ + +*cvsps-2.2_beta1 (02 Oct 2012) + + 02 Oct 2012; Sergei Trofimovich <slyfox@gentoo.org> +cvsps-2.2_beta1.ebuild, + +files/cvsps-2.2_beta1-solaris.patch, metadata.xml: + Version bump by Jonas Bernoulli (stable versions are known to crash on real- + world repositories). 26 Aug 2012; Raúl Porcel <armin76@gentoo.org> cvsps-2.1-r1.ebuild: alpha/ia64/s390/sh/sparc stable wrt #419894 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..eaab35c7f22e --- /dev/null +++ b/dev-vcs/cvsps/cvsps-2.2_beta1.ebuild @@ -0,0 +1,38 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-vcs/cvsps/cvsps-2.2_beta1.ebuild,v 1.1 2012/10/02 15:58:59 slyfox Exp $ + +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 ~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="" + +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/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/metadata.xml b/dev-vcs/cvsps/metadata.xml index 45023270b146..83cb5286d04e 100644 --- a/dev-vcs/cvsps/metadata.xml +++ b/dev-vcs/cvsps/metadata.xml @@ -1,5 +1,9 @@ <?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> </pkgmetadata> |