summaryrefslogtreecommitdiff
path: root/dev-php/pecl-ncurses
diff options
context:
space:
mode:
Diffstat (limited to 'dev-php/pecl-ncurses')
-rw-r--r--dev-php/pecl-ncurses/Manifest3
-rw-r--r--dev-php/pecl-ncurses/files/pecl-ncurses-1.0.2-php7.3.patch175
-rw-r--r--dev-php/pecl-ncurses/pecl-ncurses-1.0.2-r5.ebuild (renamed from dev-php/pecl-ncurses/pecl-ncurses-1.0.2-r4.ebuild)8
3 files changed, 181 insertions, 5 deletions
diff --git a/dev-php/pecl-ncurses/Manifest b/dev-php/pecl-ncurses/Manifest
index 92ae23d02bfd..868a42598d71 100644
--- a/dev-php/pecl-ncurses/Manifest
+++ b/dev-php/pecl-ncurses/Manifest
@@ -1,4 +1,5 @@
+AUX pecl-ncurses-1.0.2-php7.3.patch 4739 BLAKE2B f12e64c0f3615ee9b58ca7d410031fdde63d08cb8221e71826136fdb98005f6ee4552e9e46ae4085cd00a563e47807728d93c20f4b03277d3a8f866af1b3504b SHA512 731ed4e80f248dffffb675f96b9137abc7734fa32540014e0660810f95a82c4b785ca4c01628705556b7516be942da8ce37d66f6f4abf1788ce9514b881430ac
DIST ncurses-1.0.2.tgz 16226 BLAKE2B 2b50fb953594f71e8ba2c93cc8ac1443168ea360c5c752eb4ebb941cdbd4e576bd6d5516722bbe06f31a5dd4732bf47c6fd740599af161cb33cbcb45493bbc5d SHA512 e1f684dcab2aa4dd3fded79fed02c78de1525f0384027fe64ad08759617f13ca6fb11742e3407723eecc431ed99847c0c98ae559797dc98ce373a01ba8413bf2
DIST pecl-ncurses-1.0.2-php7.patch.xz 5096 BLAKE2B 8034121b97cc1769534923570c929444c0cd01238615e51c47845b9b10db4b62353a853a17d8ddd44c8ad47e68c44363321f7d08c2dfdd0e2948ddc7d33b2b9d SHA512 1f1dcaaa61033d7db55048f97e48029a335d5d191447038324eb170c9877da62a7b03cec20ea7496c073b76d7ba1009b4374b088c87e1838ee2dc433749c41fa
-EBUILD pecl-ncurses-1.0.2-r4.ebuild 507 BLAKE2B 275b0b12f0bc566b2a79146a41f096f5d1b8637c2c8ce92101ff342580459e7f44637dd99cf2e86df23bdf1d63a871647e0fd6873fb7b14962715c47f07885ea SHA512 8369d7f22e6209d7d4d6917a531bacb9ed8a98afc2613f767bcca390ead79036fec5fd1dcfd23cf024c20343fa2c45d44c2213e6235182708b93433e4b6273c3
+EBUILD pecl-ncurses-1.0.2-r5.ebuild 536 BLAKE2B ec27a61d9bbc8e946357cc720b348a1182134946610a5b5a7e87d672782576dc9cc4e126f7bdb92f4142cef1c8289f2a12f536ca69405b107ca1c7b117b59b3c SHA512 fd900683d8199365c9c5fcec2993d25e85cd1374eff1548e42a36738ce74e57c083febf2701e134e796f359f2cf303728961ee458e635f9c35e7713aaa5e9974
MISC metadata.xml 239 BLAKE2B 9b7c5dcb74289073481cf07031b7a92f32496cc1097becb074d74a8fbb8133de429ce1baf284e446e44132943c8b32e6b824570f15828588e42ea49ef5661f00 SHA512 2181b874bfe8cd31e7730d8207e26cfd2f272eaf2d1b57ae0faff126347a5298fa1c506d9107e1da9736c8a0ed9c8c339e4d9509a8726b79dbe86e073c12dee0
diff --git a/dev-php/pecl-ncurses/files/pecl-ncurses-1.0.2-php7.3.patch b/dev-php/pecl-ncurses/files/pecl-ncurses-1.0.2-php7.3.patch
new file mode 100644
index 000000000000..9b4f8a6274b5
--- /dev/null
+++ b/dev-php/pecl-ncurses/files/pecl-ncurses-1.0.2-php7.3.patch
@@ -0,0 +1,175 @@
+diff -aurN a/ncurses_fe.c b/ncurses_fe.c
+--- a/ncurses_fe.c 2012-06-16 13:05:19.000000000 -0400
++++ b/ncurses_fe.c 2019-02-06 10:41:09.000000000 -0500
+@@ -123,7 +123,9 @@
+ PHP_FE(ncurses_savetty, NULL)
+ PHP_FE(ncurses_termattrs, NULL)
+ PHP_FE(ncurses_use_default_colors, NULL)
++#ifdef HAVE_NCURSES_SLK_ATTR
+ PHP_FE(ncurses_slk_attr, NULL)
++#endif
+ PHP_FE(ncurses_slk_clear, NULL)
+ PHP_FE(ncurses_slk_noutrefresh, NULL)
+ PHP_FE(ncurses_slk_refresh, NULL)
+@@ -191,7 +193,9 @@
+ #ifdef HAVE_NCURSES_ASSUME_DEFAULT_COLORS
+ PHP_FE(ncurses_assume_default_colors, NULL)
+ #endif
++#ifdef HAVE_NCURSES_DEFINE_KEY
+ PHP_FE(ncurses_define_key, NULL)
++#endif
+ PHP_FE(ncurses_hline, NULL)
+ PHP_FE(ncurses_vline, NULL)
+ PHP_FE(ncurses_keyok, NULL)
+@@ -205,6 +209,10 @@
+ PHP_FE(ncurses_waddstr, NULL)
+ PHP_FE(ncurses_wnoutrefresh, NULL)
+ PHP_FE(ncurses_wclear, NULL)
++ PHP_FE(ncurses_wscrl, NULL)
++ PHP_FE(ncurses_wsetscrreg, NULL)
++ PHP_FE(ncurses_scrollok, NULL)
++
+ #ifdef HAVE_NCURSES_COLOR_SET
+ PHP_FE(ncurses_wcolor_set, NULL)
+ #endif
+diff -aurN a/ncurses_functions.c b/ncurses_functions.c
+--- a/ncurses_functions.c 2019-06-07 11:00:54.713250845 -0400
++++ b/ncurses_functions.c 2019-02-06 10:41:09.000000000 -0500
+@@ -163,16 +163,25 @@
+ *pscr = stdscr;
+ zscr = zend_register_resource(pscr, le_ncurses_windows);
+ ZVAL_RES(&c.value, zscr);
++#if PHP_VERSION_ID < 70300
+ c.flags = CONST_CS;
++#endif
+ c.name = zend_string_init("STDSCR", sizeof("STDSCR")-1, 0);
+ zend_register_constant(&c);
+
++#if PHP_VERSION_ID < 70300
+ #define PHP_NCURSES_DEF_CONST(x) \
+ ZVAL_LONG(&c.value, x); \
+ c.flags = CONST_CS; \
+ c.name = zend_string_init("NCURSES_" #x, sizeof("NCURSES_" #x)-1, 0); \
+ zend_register_constant(&c)
+ #else
++#define PHP_NCURSES_DEF_CONST(x) \
++ ZVAL_LONG(&c.value, x); \
++ c.name = zend_string_init("NCURSES_" #x, sizeof("NCURSES_" #x)-1, 0); \
++ zend_register_constant(&c)
++#endif
++#else
+ zval *zscr;
+
+ *pscr = stdscr;
+@@ -188,7 +197,6 @@
+ /* we need this "interesting" arrangement because the
+ * underlying values of the ACS_XXX defines are not
+ * initialized until after ncurses has been initialized */
+-
+ #define PHP_NCURSES_DEF_CONST(x) \
+ ZVAL_LONG(zscr, x); \
+ c.value = *zscr; \
+@@ -1904,6 +1912,66 @@
+ }
+ /* }}} */
+
++/* {{{ proto int ncurses_wscrl(resource window, int count)
++ Scrolls window content up or down without changing current position */
++PHP_FUNCTION(ncurses_wscrl)
++{
++ zval *handle;
++ zend_long intarg;
++ WINDOW **w;
++
++ if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rl", &handle, &intarg) == FAILURE) {
++ return;
++ }
++
++ IS_NCURSES_INITIALIZED();
++
++ FETCH_WINRES(w, &handle);
++
++ RETURN_LONG(wscrl(*w, intarg));
++}
++/* }}} */
++
++/* {{{ proto int ncurses_wsetscrreg(resource window, int top, int bot)
++ Set region for scrolling */
++PHP_FUNCTION(ncurses_wsetscrreg)
++{
++ zval *handle;
++ zend_long top, bot;
++ WINDOW **w;
++
++ if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rll", &handle, &top, &bot) == FAILURE) {
++ return;
++ }
++
++ IS_NCURSES_INITIALIZED();
++
++ FETCH_WINRES(w, &handle);
++
++ RETURN_LONG(wsetscrreg(*w, top, bot));
++}
++/* }}} */
++
++/* {{{ proto int ncurses_scrollok(resource window, bool bf)
++ Enable or disable scrolling of window content */
++PHP_FUNCTION(ncurses_scrollok)
++{
++ zval *handle;
++ zend_bool bf;
++ WINDOW **w;
++
++ if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rb", &handle, &bf) == FAILURE) {
++ return;
++ }
++
++ IS_NCURSES_INITIALIZED();
++
++ FETCH_WINRES(w, &handle);
++
++ RETURN_LONG(scrollok(*w, bf));
++}
++/* }}} */
++
+ /* {{{ proto string ncurses_termname(void)
+ Returns terminal name */
+ PHP_FUNCTION(ncurses_termname)
+@@ -2609,7 +2677,11 @@
+ if (above) {
+ #if PHP_MAJOR_VERSION >= 7
+ zend_resource *id = (zend_resource *)panel_userptr(above);
++#if PHP_VERSION_ID < 70300
+ GC_REFCOUNT(id)++;
++#else
++ GC_ADDREF(id);
++#endif
+ RETURN_RES(id);
+ #else
+ long id = (long)panel_userptr(above);
+@@ -2643,7 +2715,11 @@
+ if (below) {
+ #if PHP_MAJOR_VERSION >= 7
+ zend_resource *id = (zend_resource *)panel_userptr(below);
++#if PHP_VERSION_ID < 70300
+ GC_REFCOUNT(id)++;
++#else
++ GC_ADDREF(id);
++#endif
+ RETURN_RES(id);
+ #else
+ long id = (long)panel_userptr(below);
+diff -aurN a/php_ncurses_fe.h b/php_ncurses_fe.h
+--- a/php_ncurses_fe.h 2012-06-16 13:05:19.000000000 -0400
++++ b/php_ncurses_fe.h 2019-02-06 10:41:09.000000000 -0500
+@@ -158,6 +158,9 @@
+ PHP_FUNCTION(ncurses_prefresh);
+ PHP_FUNCTION(ncurses_pnoutrefresh);
+
++PHP_FUNCTION(ncurses_wscrl);
++PHP_FUNCTION(ncurses_wsetscrreg);
++PHP_FUNCTION(ncurses_scrollok);
+ PHP_FUNCTION(ncurses_wstandout);
+ PHP_FUNCTION(ncurses_wstandend);
+ PHP_FUNCTION(ncurses_wattrset);
diff --git a/dev-php/pecl-ncurses/pecl-ncurses-1.0.2-r4.ebuild b/dev-php/pecl-ncurses/pecl-ncurses-1.0.2-r5.ebuild
index eb953b941e90..929d4af52969 100644
--- a/dev-php/pecl-ncurses/pecl-ncurses-1.0.2-r4.ebuild
+++ b/dev-php/pecl-ncurses/pecl-ncurses-1.0.2-r5.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
-USE_PHP="php5-6 php7-0 php7-1 php7-2"
+USE_PHP="php5-6 php7-1 php7-2 php7-3"
inherit php-ext-pecl-r3
@@ -20,4 +20,4 @@ DEPEND="sys-libs/ncurses:0="
RDEPEND="${DEPEND}"
PHP_EXT_ECONF_ARGS=( --enable-ncursesw )
-PATCHES=( "${WORKDIR}/${P}-php7.patch" )
+PATCHES=( "${WORKDIR}/${P}-php7.patch" "${FILESDIR}/${P}-php7.3.patch" )