dev-php/pecl-svn: Revbump to remove php 5.5 support; add upstream patch
authorBrian Evans <grknight@gentoo.org>
Wed, 7 Dec 2016 15:25:38 +0000 (10:25 -0500)
committerBrian Evans <grknight@gentoo.org>
Wed, 7 Dec 2016 15:25:38 +0000 (10:25 -0500)
Package-Manager: portage-2.3.2

dev-php/pecl-svn/files/1.0.3-c99-fixes.patch [new file with mode: 0644]
dev-php/pecl-svn/pecl-svn-1.0.3-r1.ebuild [new file with mode: 0644]

diff --git a/dev-php/pecl-svn/files/1.0.3-c99-fixes.patch b/dev-php/pecl-svn/files/1.0.3-c99-fixes.patch
new file mode 100644 (file)
index 0000000..a1214ff
--- /dev/null
@@ -0,0 +1,68 @@
+--- a/svn.c    2016/05/04 04:14:33     339123
++++ b/svn.c    2016/05/04 07:32:45     339129
+@@ -977,6 +977,7 @@
+       apr_pool_t *subpool;
+       svn_opt_revision_t peg_revision;
+       const char *true_path;
++      apr_hash_index_t *hi;
+       if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s|lbb",
+                       &repos_url, &repos_url_len, &revision.value.number, &recurse, &peg) == FAILURE) {
+@@ -1021,7 +1022,7 @@
+       array_init(return_value);
+-      for (apr_hash_index_t *hi = apr_hash_first(subpool, dirents); hi; hi = apr_hash_next(hi)) {
++      for (hi = apr_hash_first(subpool, dirents); hi; hi = apr_hash_next(hi)) {
+               const char *utf8_entryname;
+               svn_dirent_t *dirent;
+               apr_time_t now = apr_time_now();
+@@ -1031,9 +1032,10 @@
+               char timestr[20];
+               const char   *utf8_timestr;
+               zval    *row;
++              const char *key;
+-              svn_utf_cstring_to_utf8 (&utf8_entryname, apr_hash_this_key(hi), subpool);
+-              dirent = apr_hash_this_val(hi);
++              apr_hash_this(hi, &key, NULL, &dirent);
++              svn_utf_cstring_to_utf8 (&utf8_entryname, key, subpool);
+               /* svn_time_to_human_cstring gives us something *way* too long
+               to use for this, so we have to roll our own.  We include
+@@ -1101,6 +1103,7 @@
+ {
+       struct php_svn_log_receiver_baton *baton = (struct php_svn_log_receiver_baton*) ibaton;
+       zval  *row, *paths;
++      apr_hash_index_t *hi;
+       TSRMLS_FETCH();
+       if (rev == 0) {
+@@ -1127,7 +1130,7 @@
+               MAKE_STD_ZVAL(paths);
+               array_init(paths);
+-              for (apr_hash_index_t *hi = apr_hash_first(pool, changed_paths); hi; hi = apr_hash_next(hi)) {
++              for (hi = apr_hash_first(pool, changed_paths); hi; hi = apr_hash_next(hi)) {
+                       svn_log_changed_path_t *log_item;
+                       zval *zpaths;
+                       const char *path;
+@@ -1135,8 +1138,7 @@
+                       MAKE_STD_ZVAL(zpaths);
+                       array_init(zpaths);
+-                      path = apr_hash_this_key(hi);
+-                      log_item = apr_hash_this_val(hi);
++                      apr_hash_this(hi, &path, NULL, &log_item);
+                       add_assoc_stringl(zpaths, "action", &(log_item->action), 1,1);
+                       add_assoc_string(zpaths, "path", path, 1);
+@@ -1152,7 +1154,7 @@
+                       add_assoc_zval(paths, path, zpaths);
+               }
+-              zend_hash_sort(Z_ARRVAL_P(paths), zend_qsort, compare_keys_as_paths, 1);
++              zend_hash_sort(Z_ARRVAL_P(paths), zend_qsort, compare_keys_as_paths, 1 TSRMLS_CC);
+               add_assoc_zval(row,"paths",paths);
+       }
diff --git a/dev-php/pecl-svn/pecl-svn-1.0.3-r1.ebuild b/dev-php/pecl-svn/pecl-svn-1.0.3-r1.ebuild
new file mode 100644 (file)
index 0000000..f5f51f2
--- /dev/null
@@ -0,0 +1,23 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+PHP_EXT_NAME="svn"
+
+USE_PHP="php5-6"
+
+inherit php-ext-pecl-r3
+
+KEYWORDS="~amd64 ~x86"
+
+DESCRIPTION="PHP Bindings for the Subversion Revision control system"
+LICENSE="PHP-3.01"
+SLOT="0"
+IUSE=""
+
+DEPEND="dev-vcs/subversion"
+RDEPEND="${DEPEND}"
+
+PATCHES=( "${FILESDIR}/1.0.3-c99-fixes.patch" )