From 8ba20caa351c537ad6b3a332bf604a80bdacf3f4 Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Wed, 15 Nov 2017 18:52:55 +0100 Subject: New package --- php-phpmailer6.spec | 198 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 198 insertions(+) create mode 100644 php-phpmailer6.spec (limited to 'php-phpmailer6.spec') diff --git a/php-phpmailer6.spec b/php-phpmailer6.spec new file mode 100644 index 0000000..618aa2c --- /dev/null +++ b/php-phpmailer6.spec @@ -0,0 +1,198 @@ +# remirepo/fedora spec file for php-phpmailer6 +# +# Copyright (c) 2017 Remi Collet +# License: CC-BY-SA +# http://creativecommons.org/licenses/by-sa/4.0/ +# +# Please preserve changelog entries +# +# Github +%global gh_commit 992392437c2e2784e0dc41446024fe411d293c96 +%global gh_short %(c=%{gh_commit}; echo ${c:0:7}) +%global gh_owner PHPMailer +%global gh_project PHPMailer +# Packagist +%global pk_vendor phpmailer +%global pk_project phpmailer +# Namespace +%global ns_vendor PHPMailer +%global ns_project PHPMailer +# don't change major version used in package name +%global major 6 +%global with_tests 0%{!?_without_tests:1} +%global php_home %{_datadir}/php + +Name: php-%{pk_project}%{major} +Version: 6.0.1 +Release: 1%{?dist} +Summary: Full-featured email creation and transfer class for PHP + +Group: Development/Libraries +License: LGPLv2+ +URL: https://github.com/%{gh_owner}/%{gh_project} +# git snapshot to get upstream test suite +Source0: %{name}-%{version}-%{gh_short}.tgz +Source1: makesrc.sh +# Simple unit test for packaging +Source2: PHPMailerRpmTest.php + +BuildArch: noarch +%if %{with_tests} +BuildRequires: php(language) >= 5.5 +BuildRequires: php-ctype +BuildRequires: php-date +BuildRequires: php-filter +BuildRequires: php-hash +BuildRequires: php-imap +BuildRequires: php-intl +BuildRequires: php-mbstring +BuildRequires: php-openssl +BuildRequires: php-pcre +BuildRequires: php-fedora-autoloader-devel +# From composer.json, "require-dev": { +# "friendsofphp/php-cs-fixer": "^2.2", +# "phpdocumentor/phpdocumentor": "2.*", +# "phpunit/phpunit": "^4.8 || ^5.7", +# "zendframework/zend-serializer": "2.7.*", +# "doctrine/annotations": "1.2.*", +# "zendframework/zend-eventmanager": "3.0.*", +# "zendframework/zend-i18n": "2.7.3" +BuildRequires: php-phpunit-PHPUnit >= 4.8 +BuildRequires: %{_sbindir}/smtp-sink +%endif + +# From composer.json, "require": { +# "require": { +# "php": ">=5.5.0", +# "ext-ctype": "*" +Requires: php(language) >= 5.5 +Requires: php-ctype +# from phpcompatinfo report on version 6.0.1 +Requires: php-date +Requires: php-filter +Requires: php-hash +Requires: php-imap +Requires: php-intl +Requires: php-mbstring +Requires: php-openssl +Requires: php-pcre +# From composer.json, "suggest": { +# "psr/log": "For optional PSR-3 debug logging", +# "league/oauth2-google": "Needed for Google XOAUTH2 authentication", +# "hayageek/oauth2-yahoo": "Needed for Yahoo XOAUTH2 authentication", +# "stevenmaguire/oauth2-microsoft": "Needed for Microsoft XOAUTH2 authentication", +# "ext-mbstring": "Needed to send email in multibyte encoding charset", +# "symfony/polyfill-mbstring": "To support UTF-8 if the Mbstring PHP extension is not enabled (^1.2)" +%if 0%{?fedora} +Suggests: php-composer(psr/log) +%endif + +Provides: php-composer(%{pk_vendor}/%{pk_project}) = %{version} + + +%description +PHPMailer - A full-featured email creation and transfer class for PHP + +Class Features +* Probably the world's most popular code for sending email from PHP! +* Used by many open-source projects: + WordPress, Drupal, 1CRM, SugarCRM, Yii, Joomla! and many more +* Integrated SMTP support - send without a local mail server +* Send emails with multiple To, CC, BCC and Reply-to addresses +* Multipart/alternative emails for mail clients that do not read HTML email +* Add attachments, including inline +* Support for UTF-8 content and 8bit, base64, binary, and quoted-printable + encodings +* SMTP authentication with LOGIN, PLAIN, CRAM-MD5 and XOAUTH2 mechanisms + over SSL and SMTP+STARTTLS transports +* Validates email addresses automatically +* Protect against header injection attacks +* Error messages in 47 languages! +* DKIM and S/MIME signing support +* Compatible with PHP 5.5 and later +* Namespaced to prevent name clashes +* Much more! + + +Autoloader: %{php_home}/%{ns_vendor}/%{ns_project}%{major}/autoload.php + + + +%prep +%setup -q -n %{gh_project}-%{gh_commit} +cp %{SOURCE2} test/PHPMailerRpmTest.php + +cat << 'EOF' | tee src/autoload.php + phpunit.xml + +: Start fake MTA and test environment +PORT=$(expr 2500 + %{?fedora}%{?rhel}) +sed -e "s/2500/$PORT/" test/testbootstrap-dist.php > test/testbootstrap.php + +mkdir -p build/logs +chmod +x test/fakesendmail.sh + +pushd build + smtp-sink -d "%d.%H.%M.%S" localhost:$PORT 1000 &>/dev/null & + SMTPPID=$! +popd + +: Run upstream test suite +ret=0 +for cmd in php php56 php70 php71 php72; do + if which $cmd; then + $cmd -d "sendmail_path=$PWD/test/fakesendmail.sh -t -i " \ + %{_bindir}/phpunit --exclude slow,pop3,languages --verbose || ret=1 + fi +done + +: Cleanup +kill $SMTPPID + +exit $ret +%endif + + +%files +%{!?_licensedir:%global license %%doc} +%license LICENSE +%doc *.md +%doc examples +%doc composer.json +%{php_home}/%{ns_vendor} + + +%changelog +* Wed Nov 15 2017 Remi Collet - 6.0.1-1 +- initial rpm, version 6.0.1 +- open https://github.com/PHPMailer/PHPMailer/issues/1243 for FSF address -- cgit