diff --git a/.gitignore b/.gitignore index c258b1c..3a6cade 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ mailparse-2.1.5.tgz +/mailparse-2.1.6.tgz diff --git a/mailparse-php54.patch b/mailparse-php54.patch deleted file mode 100644 index 36bc067..0000000 --- a/mailparse-php54.patch +++ /dev/null @@ -1,111 +0,0 @@ -diff -up mailparse-2.1.5/mailparse.c.php54 mailparse-2.1.5/mailparse.c ---- mailparse-2.1.5/mailparse.c.php54 2009-03-03 23:24:04.000000000 +0100 -+++ mailparse-2.1.5/mailparse.c 2011-11-18 17:57:46.036409192 +0100 -@@ -56,7 +56,7 @@ static size_t mailparse_do_uudecode(php_ - static int le_mime_part; - - --static function_entry mimemessage_methods[] = { -+static zend_function_entry mimemessage_methods[] = { - PHP_NAMED_FE(mimemessage, PHP_FN(mailparse_mimemessage), NULL) - PHP_NAMED_FE(get_child, PHP_FN(mailparse_mimemessage_get_child), NULL) - PHP_NAMED_FE(get_child_count, PHP_FN(mailparse_mimemessage_get_child_count), NULL) -@@ -72,7 +72,7 @@ static function_entry mimemessage_method - - static zend_class_entry *mimemsg_class_entry; - --function_entry mailparse_functions[] = { -+zend_function_entry mailparse_functions[] = { - PHP_FE(mailparse_msg_parse_file, NULL) - PHP_FE(mailparse_msg_get_part, NULL) - PHP_FE(mailparse_msg_get_structure, NULL) -@@ -240,7 +240,7 @@ PHP_FUNCTION(mailparse_mimemessage) - RETURN_FALSE; - - /* prepare the mime part for this object */ -- part = php_mimepart_alloc(); -+ part = php_mimepart_alloc(TSRMLS_C); - MAKE_STD_ZVAL(zpart); - php_mimepart_to_zval(zpart, part); - -@@ -1074,7 +1074,7 @@ PHP_FUNCTION(mailparse_msg_parse_file) - - filebuf = emalloc(MAILPARSE_BUFSIZ); - -- part = php_mimepart_alloc(); -+ part = php_mimepart_alloc(TSRMLS_C); - php_mimepart_to_zval(return_value, part); - - while(!php_stream_eof(stream)) { -@@ -1113,7 +1113,7 @@ PHP_FUNCTION(mailparse_msg_free) - Returns a handle that can be used to parse a message */ - PHP_FUNCTION(mailparse_msg_create) - { -- php_mimepart *part = php_mimepart_alloc(); -+ php_mimepart *part = php_mimepart_alloc(TSRMLS_C); - - php_mimepart_to_zval(return_value, part); - } -diff -up mailparse-2.1.5/php_mailparse_mime.c.php54 mailparse-2.1.5/php_mailparse_mime.c ---- mailparse-2.1.5/php_mailparse_mime.c.php54 2011-11-18 17:55:38.630980580 +0100 -+++ mailparse-2.1.5/php_mailparse_mime.c 2011-11-18 17:59:03.735671654 +0100 -@@ -305,7 +305,7 @@ static void php_mimepart_free_child(php_ - php_mimepart_free(*part TSRMLS_CC); - } - --PHP_MAILPARSE_API php_mimepart *php_mimepart_alloc(void) -+PHP_MAILPARSE_API php_mimepart *php_mimepart_alloc(TSRMLS_D) - { - php_mimepart *part = ecalloc(1, sizeof(php_mimepart)); - -@@ -508,9 +508,9 @@ static int php_mimepart_process_header(p - return SUCCESS; - } - --static php_mimepart *alloc_new_child_part(php_mimepart *parentpart, size_t startpos, int inherit) -+static php_mimepart *alloc_new_child_part(php_mimepart *parentpart, size_t startpos, int inherit TSRMLS_DC) - { -- php_mimepart *child = php_mimepart_alloc(); -+ php_mimepart *child = php_mimepart_alloc(TSRMLS_C); - int ret; - - parentpart->parsedata.lastpart = child; -@@ -599,7 +599,7 @@ static int php_mimepart_process_line(php - return SUCCESS; - } - -- newpart = alloc_new_child_part(workpart, workpart->endpos + origcount, 1); -+ newpart = alloc_new_child_part(workpart, workpart->endpos + origcount, 1 TSRMLS_CC); - php_mimepart_update_positions(workpart, workpart->endpos + origcount, workpart->endpos + linelen, 1); - newpart->mime_version = estrdup(workpart->mime_version); - newpart->parsedata.in_header = 1; -@@ -688,7 +688,7 @@ static int php_mimepart_process_line(php - } - - if (CONTENT_TYPE_IS(workpart, "message/rfc822")) { -- workpart = alloc_new_child_part(workpart, workpart->bodystart, 0); -+ workpart = alloc_new_child_part(workpart, workpart->bodystart, 0 TSRMLS_CC); - workpart->parsedata.in_header = 1; - return SUCCESS; - -@@ -696,7 +696,7 @@ static int php_mimepart_process_line(php - - /* create a section for the preamble that precedes the first boundary */ - if (workpart->boundary) { -- workpart = alloc_new_child_part(workpart, workpart->bodystart, 1); -+ workpart = alloc_new_child_part(workpart, workpart->bodystart, 1 TSRMLS_CC); - workpart->parsedata.in_header = 0; - workpart->parsedata.is_dummy = 1; - return SUCCESS; -diff -up mailparse-2.1.5/php_mailparse_mime.h.php54 mailparse-2.1.5/php_mailparse_mime.h ---- mailparse-2.1.5/php_mailparse_mime.h.php54 2011-11-18 17:55:45.702004867 +0100 -+++ mailparse-2.1.5/php_mailparse_mime.h 2011-11-18 17:56:51.954226501 +0100 -@@ -81,7 +81,7 @@ struct _php_mimepart { - - }; - --PHP_MAILPARSE_API php_mimepart *php_mimepart_alloc(void); -+PHP_MAILPARSE_API php_mimepart *php_mimepart_alloc(TSRMLS_D); - PHP_MAILPARSE_API void php_mimepart_free(php_mimepart *part TSRMLS_DC); - PHP_MAILPARSE_API int php_mimepart_parse(php_mimepart *part, const char *buf, size_t bufsize TSRMLS_DC); - PHP_MAILPARSE_API void php_mimepart_get_offsets(php_mimepart *part, off_t *start, off_t *end, off_t *start_body, int *nlines, int *nbodylines); diff --git a/php-pecl-mailparse.spec b/php-pecl-mailparse.spec index 60b7306..352e621 100644 --- a/php-pecl-mailparse.spec +++ b/php-pecl-mailparse.spec @@ -1,19 +1,16 @@ %{!?__pecl: %{expand: %%global __pecl %{_bindir}/pecl}} -%{!?php_extdir: %{expand: %%global php_extdir %(php-config --extension-dir)}} %global pecl_name mailparse Summary: PHP PECL package for parsing and working with email messages Name: php-pecl-mailparse -Version: 2.1.5 -Release: 6%{?dist} +Version: 2.1.6 +Release: 1%{?dist} License: PHP Group: Development/Languages URL: http://pecl.php.net/package/mailparse Source0: http://pecl.php.net/get/mailparse-%{version}.tgz -# https://bugs.php.net/60331 -Patch0: mailparse-php54.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root BuildRequires: php-devel, php-pear @@ -31,10 +28,10 @@ Provides: php-pecl(%{pecl_name}) = %{version}-%{release} # RPM 4.8 -%{?filter_provides_in: %filter_provides_in %{php_extdir}/.*\.so$} +%{?filter_provides_in: %filter_provides_in %{_libdir}/.*\.so$} %{?filter_setup} # RPM 4.9 -%global __provides_exclude_from %{?__provides_exclude_from:%__provides_exclude_from|}%{php_extdir}/.*\\.so$ +%global __provides_exclude_from %{?__provides_exclude_from:%__provides_exclude_from|}%{_libdir}/.*\\.so$ %description @@ -61,39 +58,68 @@ extension = mailparse.so ;mailparse.def_charset = us-ascii EOF -%patch0 -p0 -b .php54 - chmod -x %{pecl_name}-%{version}/*.{php,c,h} +%if 0%{?__ztsphp:1} +cp -pr %{pecl_name}-%{version} %{pecl_name}-%{version}-zts +%endif + %build cd %{pecl_name}-%{version} phpize -%configure +%configure --with-php-config=%{_bindir}/php-config make %{?_smp_mflags} +%if 0%{?__ztsphp:1} +cd ../%{pecl_name}-%{version}-zts +zts-phpize +%configure --with-php-config=%{_bindir}/zts-php-config +make %{?_smp_mflags} +%endif + %install rm -rf %{buildroot} make -C %{pecl_name}-%{version} \ install INSTALL_ROOT=%{buildroot} - -# Install XML package description -install -Dpm 644 package2.xml %{buildroot}%{pecl_xmldir}/%{name}.xml - # Drop in the bit of configuration install -Dpm 644 %{pecl_name}.ini %{buildroot}%{_sysconfdir}/php.d/z-%{pecl_name}.ini +%if 0%{?__ztsphp:1} +make -C %{pecl_name}-%{version}-zts \ + install INSTALL_ROOT=%{buildroot} +# Drop in the bit of configuration +install -Dpm 644 %{pecl_name}.ini %{buildroot}%{php_ztsinidir}/z-%{pecl_name}.ini +%endif + +# Install XML package description +install -Dpm 644 package.xml %{buildroot}%{pecl_xmldir}/%{name}.xml + %check cd %{pecl_name}-%{version} ln -s %{php_extdir}/mbstring.so modules -TEST_PHP_EXECUTABLE=$(which php) php run-tests.php \ +TEST_PHP_EXECUTABLE=$(which php) \ +NO_INTERACTION=1 \ +php run-tests.php \ -n -q -d extension_dir=modules \ -d extension=mbstring.so \ -d extension=%{pecl_name}.so \ +%if 0%{?__ztsphp:1} +cd ../%{pecl_name}-%{version}-zts +ln -s %{php_ztsextdir}/mbstring.so modules + +TEST_PHP_EXECUTABLE=%{__ztsphp} \ +NO_INTERACTION=1 \ +php run-tests.php \ + -n -q -d extension_dir=modules \ + -d extension=mbstring.so \ + -d extension=%{pecl_name}.so \ +%endif + %clean rm -rf %{buildroot} @@ -121,8 +147,16 @@ fi %{php_extdir}/mailparse.so %{pecl_xmldir}/%{name}.xml +%if 0%{?__ztsphp:1} +%config(noreplace) %{php_ztsinidir}/z-mailparse.ini +%{php_ztsextdir}/mailparse.so +%endif %changelog +* Sat Mar 10 2012 Remi Collet - 2.1.6-1 +- update to 2.1.6 +- enable ZTS build + * Thu Jan 19 2012 Remi Collet - 2.1.5-6 - rebuild against PHP 5.4, with patch - fix filters diff --git a/sources b/sources index 2243086..6afaf69 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -0c0134fb6f5903c8fb6c9e2205263d2c mailparse-2.1.5.tgz +0f84e1da1d074a4915a9bcfe2319ce84 mailparse-2.1.6.tgz