[gentoo-dev] EAPI 7 changes for php-ext-source-r3.eclass

2019-01-17 Thread Brian Evans
Here are the proposed changes (please excuse any mail client line wrapping):

$ git diff -- php-ext-source-r3.eclass
diff --git a/eclass/php-ext-source-r3.eclass
b/eclass/php-ext-source-r3.eclass
index 66d32d5c5eb..fd45317e63d 100644
--- a/eclass/php-ext-source-r3.eclass
+++ b/eclass/php-ext-source-r3.eclass
@@ -1,10 +1,10 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2019 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2

 # @ECLASS: php-ext-source-r3.eclass
 # @MAINTAINER:
 # Gentoo PHP team 
-# @SUPPORTED_EAPIS: 6
+# @SUPPORTED_EAPIS: 6 7
 # @BLURB: Compile and install standalone PHP extensions.
 # @DESCRIPTION:
 # A unified interface for compiling and installing standalone PHP
@@ -14,8 +14,8 @@ inherit autotools

 EXPORT_FUNCTIONS src_prepare src_configure src_compile src_install src_test

-case ${EAPI} in
-   6) ;;
+case ${EAPI:-0} in
+   6|7) ;;
*)
die "${ECLASS} is not compatible with EAPI=${EAPI}"
 esac
@@ -106,6 +106,7 @@ esac
 # conditional like "php?", but only when PHP_EXT_OPTIONAL_USE is
 # non-null. The option group "|| (..." is always started here.
 REQUIRED_USE="${PHP_EXT_OPTIONAL_USE}${PHP_EXT_OPTIONAL_USE:+? ( }|| ( "
+PHPDEPEND="${PHP_EXT_OPTIONAL_USE}${PHP_EXT_OPTIONAL_USE:+? ( } "
 for _php_target in ${USE_PHP}; do
# Now loop through each USE_PHP target and add the corresponding
# dev-lang/php slot to PHPDEPEND.
@@ -125,19 +126,17 @@ unset _php_slot _php_target
 # Finally, end the optional group that we started before the loop. Close
 # the USE-conditional if PHP_EXT_OPTIONAL_USE is non-null.
 REQUIRED_USE+=") ${PHP_EXT_OPTIONAL_USE:+ )}"
+PHPDEPEND+=" ${PHP_EXT_OPTIONAL_USE:+ )}"
+TOOLDEPS="sys-devel/m4 sys-devel/libtool"

-RDEPEND="${RDEPEND}
-   ${PHP_EXT_OPTIONAL_USE}${PHP_EXT_OPTIONAL_USE:+? ( }
-   ${PHPDEPEND}
-   ${PHP_EXT_OPTIONAL_USE:+ )}"
-
-DEPEND="${DEPEND}
-   sys-devel/m4
-   sys-devel/libtool
-   ${PHP_EXT_OPTIONAL_USE}${PHP_EXT_OPTIONAL_USE:+? ( }
-   ${PHPDEPEND}
-   ${PHP_EXT_OPTIONAL_USE:+ )}
-"
+RDEPEND="${PHPDEPEND}"
+
+case ${EAPI:-0} in
+   6) DEPEND="${TOOLDEPS} ${PHPDEPEND}" ;;
+   7) DEPEND="${PHPDEPEND}" ; BDEPEND="${TOOLDEPS} ${PHPDEPEND}" ;;
+esac
+
+unset PHPDEPEND TOOLDEPS

 # @ECLASS-VARIABLE: PHP_EXT_SKIP_PHPIZE
 # @DEFAULT_UNSET
$ git diff -- php-ext-source-r3.eclass
diff --git a/eclass/php-ext-source-r3.eclass b/eclass/php-ext-source-r3.eclass
index 66d32d5c5eb..fd45317e63d 100644
--- a/eclass/php-ext-source-r3.eclass
+++ b/eclass/php-ext-source-r3.eclass
@@ -1,10 +1,10 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2019 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: php-ext-source-r3.eclass
 # @MAINTAINER:
 # Gentoo PHP team 
-# @SUPPORTED_EAPIS: 6
+# @SUPPORTED_EAPIS: 6 7
 # @BLURB: Compile and install standalone PHP extensions.
 # @DESCRIPTION:
 # A unified interface for compiling and installing standalone PHP
@@ -14,8 +14,8 @@ inherit autotools
 
 EXPORT_FUNCTIONS src_prepare src_configure src_compile src_install src_test
 
-case ${EAPI} in
-	6) ;;
+case ${EAPI:-0} in
+	6|7) ;;
 	*)
 		die "${ECLASS} is not compatible with EAPI=${EAPI}"
 esac
@@ -106,6 +106,7 @@ esac
 # conditional like "php?", but only when PHP_EXT_OPTIONAL_USE is
 # non-null. The option group "|| (..." is always started here.
 REQUIRED_USE="${PHP_EXT_OPTIONAL_USE}${PHP_EXT_OPTIONAL_USE:+? ( }|| ( "
+PHPDEPEND="${PHP_EXT_OPTIONAL_USE}${PHP_EXT_OPTIONAL_USE:+? ( } "
 for _php_target in ${USE_PHP}; do
 	# Now loop through each USE_PHP target and add the corresponding
 	# dev-lang/php slot to PHPDEPEND.
@@ -125,19 +126,17 @@ unset _php_slot _php_target
 # Finally, end the optional group that we started before the loop. Close
 # the USE-conditional if PHP_EXT_OPTIONAL_USE is non-null.
 REQUIRED_USE+=") ${PHP_EXT_OPTIONAL_USE:+ )}"
+PHPDEPEND+=" ${PHP_EXT_OPTIONAL_USE:+ )}"
+TOOLDEPS="sys-devel/m4 sys-devel/libtool"
 
-RDEPEND="${RDEPEND}
-	${PHP_EXT_OPTIONAL_USE}${PHP_EXT_OPTIONAL_USE:+? ( }
-	${PHPDEPEND}
-	${PHP_EXT_OPTIONAL_USE:+ )}"
-
-DEPEND="${DEPEND}
-	sys-devel/m4
-	sys-devel/libtool
-	${PHP_EXT_OPTIONAL_USE}${PHP_EXT_OPTIONAL_USE:+? ( }
-	${PHPDEPEND}
-	${PHP_EXT_OPTIONAL_USE:+ )}
-"
+RDEPEND="${PHPDEPEND}"
+
+case ${EAPI:-0} in
+	6) DEPEND="${TOOLDEPS} ${PHPDEPEND}" ;;
+	7) DEPEND="${PHPDEPEND}" ; BDEPEND="${TOOLDEPS} ${PHPDEPEND}" ;;
+esac
+
+unset PHPDEPEND TOOLDEPS
 
 # @ECLASS-VARIABLE: PHP_EXT_SKIP_PHPIZE
 # @DEFAULT_UNSET

signature.asc
Description: OpenPGP digital signature


[gentoo-dev] Call for GSoC 2019 ideas and mentors

2019-01-17 Thread Andrew Savchenko
Hi all!

As always, Gentoo plans to participate in the Google Summer of Code
2019. We are looking for new project ideas and are always open for
new mentors.

1. Project ideas

GSoC projects should be suitable for 3 months worth of work for
a student, taking into account time required for students to get in
touch with the project, to learn some details, to fix mistakes and
make improvements. Most students are not yet seasoned developers,
so their coding rate will be likely slower than yours.

Usually projects are something more complicated than just writing
some ebuilds, however if non-trivial ebuild related work is
required, e.g. to write new eclasses and adapt existing packages to
use them (or add new ones), this should do too.

Ideas from previous years may be reused, but this should not be
abused, since Gentoo moves forward and we have new stuff to do.

If you have an idea, but can't be a mentor, please still tell us
about it, we'll try to find a mentor later.

Ideas should be put to our wiki: [1].
The page contains ideas adding howto.

2. Mentors

If you want to be a mentor, welcome! It is not necessary to be a
Gentoo developer in order to be a mentor, but project must be
Gentoo related.

Mentoring requires some time. It depends much on a student, but is
usually within 4-10 hours per week. If you don't have that much
time, but still want to help, you may become a backup mentor.
Students often have 2 mentors to eliminate bus factor and to
improve expertise in a project.

Please keep in mind that GSoC is not just about new code, but about
bringing new people to community and we have developers which where
GSoC students in the past. So time invested in students will result
not only in some problems solved, but into bringing new people to
our community and strengthening ties with existing participants.

Mentors should enlist themselves on the wiki: [2].

If you have any questions or proposals, feel free to reply to this
e-mail, or contact us via #gentoo-soc IRC channel on FreeNode[3],
or by writing to project's alias[4].

[1] https://wiki.gentoo.org/wiki/Google_Summer_of_Code/2019/Ideas
[2] https://wiki.gentoo.org/wiki/Google_Summer_of_Code/2019/Mentors
[3] http://webchat.freenode.net/?channels=gentoo-soc
[4] mailto:soc-ment...@gentoo.org

Best regards,
Andrew Savchenko


pgpYAAeaTFWcc.pgp
Description: PGP signature