Bug 1350620
Summary: | redland-bindings: FTBFS in rawhide: 'rsrc' undeclared | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Shawn Iwinski <shawn> |
Component: | redland-bindings | Assignee: | Petr Pisar <ppisar> |
Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | unspecified | Docs Contact: | |
Priority: | unspecified | ||
Version: | 25 | CC: | jplesnik, ppisar, releng, thomas |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
URL: | http://bugs.librdf.org/mantis/view.php?id=622 | ||
Whiteboard: | |||
Fixed In Version: | redland-bindings-1.0.16.1-20.fc27 redland-bindings-1.0.16.1-19.fc26 redland-bindings-1.0.16.1-18.fc25 | Doc Type: | If docs needed, set a value |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2017-06-19 14:34:33 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: | |||
Bug Depends On: | 1356985 | ||
Bug Blocks: | 1423041 |
Description
Shawn Iwinski
2016-06-27 21:45:38 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 25 development cycle. Changing version to '25'. It fails in build phase: gcc -DHAVE_CONFIG_H -I. -DREDLAND_POST_I -DREDLAND_INIT_I -DREDLAND_DECL_I -DREDLAND_TYPEMAP_I -UHAVE_CONFIG_H -I/usr/include/rasqal -I/usr/include/raptor2 -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend -I/usr/include/php/ext -I/usr/include/php/ext/date/lib -DREDLAND_BINDINGS_VERSION=\"1.0.16.1\" -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -I/usr/include/rasqal -I/usr/include/raptor2 -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -fPIC -DPIC redland_wrap.c -c -o redland_wrap.o redland_wrap.c: In function 'SWIG_landfill': redland_wrap.c:811:51: error: 'rsrc' undeclared (first use in this function) static ZEND_RSRC_DTOR_FUNC(SWIG_landfill) { (void)rsrc; } ^~~~ A difference between working and failing build root is: php-devel 5.6.23-1.fc25 > 7.0.8-1.fc25 php-cli 5.6.23-1.fc25 > 7.0.8-1.fc25 php-common 5.6.23-1.fc25 > 7.0.8-1.fc25 openssl-libs 1:1.0.2h-1.fc25 > 1:1.0.2h-2.fc25 nss 3.24.0-3.fc25 > 3.25.0-3.fc25 libselinux 2.5-8.fc25 > 2.5-9.fc25 php-json > 7.0.8-1.fc25 php-pecl-jsonc-devel 1.3.10-1.fc25 < php-pecl-jsonc 1.3.10-1.fc25 < libnghttp2 1.11.1-1.fc25 > 1.12.0-1.fc25 nss-tools 3.24.0-3.fc25 > 3.25.0-3.fc25 file-libs 5.28-1.fc25 > 5.28-2.fc25 nss-sysinit 3.24.0-3.fc25 > 3.25.0-3.fc25 file 5.28-1.fc25 > 5.28-2.fc25 This is very probably caused by upgrading PHP. swig doesn't support php7 yet. Note: Removed blocked bug 1350621 as I removed the redland dependency from php-EasyRdf *** Bug 1424251 has been marked as a duplicate of this bug. *** swig already supports PHP 7, but this package uses pregenerated sources and the build fails with: gcc -DHAVE_CONFIG_H -I. -DREDLAND_POST_I -DREDLAND_INIT_I -DREDLAND_DECL_I -DREDLAND_TYPE MAP_I -UHAVE_CONFIG_H -I/usr/include/raptor2 -I/usr/include/rasqal -I/usr/include/php - I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend -I/usr/include/php/ ext -I/usr/include/php/ext/date/lib -DREDLAND_BINDINGS_VERSION=\"1.0.16.1\" -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-stron g --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-harden ed-cc1 -m64 -mtune=generic -I/usr/include/raptor2 -I/usr/include/rasqal -O2 -g -pipe -W all -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened -cc1 -m64 -mtune=generic -fPIC -DPIC redland_wrap.c -c -o redland_wrap.o redland_wrap.c:730:3: error: #error These bindings need PHP5 - to generate PHP7 bindings use: swig -php7 # error These bindings need PHP5 - to generate PHP7 bindings use: swig -php7 ^~~~~ I was told that's its impossible to regenerate the sources. If this is true I will try to disable the PHP support in this package. After patching these two files: --- a/configure.ac +++ b/configure.ac @@ -165,7 +165,9 @@ if test "X$PHP_CONFIG" != X ; then PHP_INCLUDES=`$PHP_CONFIG --includes` PHP_EXTENSION_DIR=`$PHP_CONFIG --extension-dir` - if test $PHP_VERSION '>' 5.0.0; then + if test $PHP_VERSION '>' 7; then + PHP_SWIG="-php7" + elif test $PHP_VERSION '>' 5.0.0; then PHP_SWIG="-php5" else PHP_SWIG="-php4" diff --git a/php/redland-post.i b/php/redland-post.i index 2ab09dd..6b16e0a 100644 --- a/php/redland-post.i +++ b/php/redland-post.i @@ -132,8 +132,11 @@ librdf_php_world_init(void) exception_ce = zend_exception_get_default(); INIT_CLASS_ENTRY(ee_ce, "RedlandException", NULL); redland_exception_ptr = zend_register_internal_class_ex(&ee_ce, - exception_ce, - NULL TSRMLS_CC); + exception_ce +#if PHP_MAJOR_VERSION < 7 + ,NULL TSRMLS_CC +#endif + ); #endif memset(&librdf_php_locator, '\0', sizeof(raptor_locator)); I get tons of these errors: redland_wrap.c: In function ‘_wrap_librdf_world_get_feature’: redland_wrap.c:1700:22: error: invalid type argument of unary ‘*’ (have ‘zval {aka struct _zval_struct}’) if(SWIG_ConvertPtr(*args[1], (void **) &arg2, SWIGTYPE_p_librdf_uri_s, 0) < 0) { ^~~~~~~~ It's probably related to this PHP change <https://nikic.github.io/2015/05/05/Internal-value-representation-in-PHP-7-part-1.html>. I patched the code and submitted it to upstream in <http://bugs.librdf.org/mantis/view.php?id=622>. redland-bindings-1.0.16.1-19.fc26 has been submitted as an update to Fedora 26. https://bodhi.fedoraproject.org/updates/FEDORA-2017-51d9681974 redland-bindings-1.0.16.1-18.fc25 has been submitted as an update to Fedora 25. https://bodhi.fedoraproject.org/updates/FEDORA-2017-d7dd086849 redland-bindings-1.0.16.1-18.fc25 has been pushed to the Fedora 25 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-d7dd086849 redland-bindings-1.0.16.1-19.fc26 has been pushed to the Fedora 26 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-51d9681974 redland-bindings-1.0.16.1-19.fc26 has been pushed to the Fedora 26 stable repository. If problems still persist, please make note of it in this bug report. redland-bindings-1.0.16.1-18.fc25 has been pushed to the Fedora 25 stable repository. If problems still persist, please make note of it in this bug report. |