diff options
author | Remi Collet <remi@remirepo.net> | 2023-11-29 14:52:38 +0100 |
---|---|---|
committer | Remi Collet <remi@php.net> | 2023-11-29 14:52:38 +0100 |
commit | fdc9550d92560084a63523a970bdb02f9476bc13 (patch) | |
tree | 9a4c2721b73039f0e129c6e750f0947694d08bab |
update to 2.0.13
-rw-r--r-- | .gitignore | 9 | ||||
-rw-r--r-- | Makefile | 4 | ||||
-rw-r--r-- | composer.json | 46 | ||||
-rw-r--r-- | php-tecnickcom-tc-lib-pdf-font-rpm.patch | 33 | ||||
-rw-r--r-- | php-tecnickcom-tc-lib-pdf-font.spec | 171 |
5 files changed, 263 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..01f0400 --- /dev/null +++ b/.gitignore @@ -0,0 +1,9 @@ +clog +package-*.xml +*.tgz +*.tar.bz2 +*.tar.gz +*.tar.xz +*.tar.xz.asc +*.src.rpm +*/*rpm diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..13af741 --- /dev/null +++ b/Makefile @@ -0,0 +1,4 @@ +SRCDIR := $(shell pwd) +NAME := $(shell basename $(SRCDIR)) +include ../../../common/Makefile + diff --git a/composer.json b/composer.json new file mode 100644 index 0000000..96d17df --- /dev/null +++ b/composer.json @@ -0,0 +1,46 @@ +{ + "name": "tecnickcom/tc-lib-pdf-font", + "description": "PHP library containing PDF page formats and definitions", + "type": "library", + "homepage": "http://www.tecnick.com", + "license": "LGPL-3.0-or-later", + "keywords": [ + "tc-lib-pdf-font", + "PDF", + "font", + "TTF", + "AFM", + "PFB", + "import" + ], + "authors": [ + { + "name": "Nicola Asuni", + "email": "info@tecnick.com", + "role": "lead" + } + ], + "require": { + "php": ">=5.4.0", + "ext-json": "*", + "ext-pcre": "*", + "ext-zlib": "*", + "tecnickcom/tc-lib-file": "^2.0", + "tecnickcom/tc-lib-unicode-data": "^2.0", + "tecnickcom/tc-lib-pdf-encrypt": "^2.0" + }, + "require-dev": { + "pdepend/pdepend": "2.13.0", + "phpmd/phpmd": "2.13.0", + "phpunit/phpunit": "10.1.2 || 9.6.13", + "squizlabs/php_codesniffer": "3.7.2" + }, + "autoload": { + "psr-4": { + "Com\\Tecnick\\Pdf\\Font\\": "src" + } + }, + "autoload-dev": { + "psr-4": { "Test\\": "test" } + } +} diff --git a/php-tecnickcom-tc-lib-pdf-font-rpm.patch b/php-tecnickcom-tc-lib-pdf-font-rpm.patch new file mode 100644 index 0000000..2ef076e --- /dev/null +++ b/php-tecnickcom-tc-lib-pdf-font-rpm.patch @@ -0,0 +1,33 @@ +diff -up util/bulk_convert.php.rpm util/bulk_convert.php +--- util/bulk_convert.php.rpm 2023-11-29 08:34:27.788544032 +0100 ++++ util/bulk_convert.php 2023-11-29 08:36:54.124053746 +0100 +@@ -86,7 +86,7 @@ if (!is_writable($options['outpath'])) { + exit(2); + } + +-$ttfdir = __DIR__.'/vendor/tecnickcom/tc-font-mirror/'; ++$ttfdir = dirname(__DIR__).'/tc-font-mirror-2.1.0/'; + if (!is_dir($ttfdir)) { + fwrite(STDERR, 'ERROR: The '.$ttfdir.' directory is empty, please execute \'make build\' before this command.'."\n\n"); + exit(3); +@@ -98,7 +98,7 @@ fwrite(STDOUT, "\n".'>>> Converting font + $convert_errors = 0; + $convert_success = 0; + +-require_once (dirname(__DIR__).'/vendor/autoload.php'); ++require_once (dirname(__DIR__).'/src/autoload.php'); + + $fontdir = array_diff(scandir($ttfdir), array('.', '..', '.git')); + +diff -up util/convert.php.rpm util/convert.php +--- util/convert.php.rpm 2023-11-29 13:46:32.380588175 +0100 ++++ util/convert.php 2023-11-29 13:46:34.960688370 +0100 +@@ -224,7 +224,7 @@ fwrite(STDOUT, "\n".'>>> Converting font + $convert_errors = 0; + $convert_success = 0; + +-require_once (dirname(dirname(__DIR__)).'/vendor/autoload.php'); ++require_once ('/usr/share/php/Com/Tecnick/Pdf/Font/autoload.php'); + + foreach ($options['fonts'] as $font) { + try { diff --git a/php-tecnickcom-tc-lib-pdf-font.spec b/php-tecnickcom-tc-lib-pdf-font.spec new file mode 100644 index 0000000..d95b1d8 --- /dev/null +++ b/php-tecnickcom-tc-lib-pdf-font.spec @@ -0,0 +1,171 @@ +# remirepo/fedora spec file for php-tecnickcom-tc-lib-pdf-font +# +# Copyright (c) 2023 Remi Collet +# License: CC-BY-SA-4.0 +# http://creativecommons.org/licenses/by-sa/4.0/ +# +# Please, preserve the changelog entries +# +%global gh_commit f5bbbfeefb648ae87e6b9ed267cdab45c76052da +%global gh_short %(c=%{gh_commit}; echo ${c:0:7}) +%global c_vendor tecnickcom +%global gh_owner tecnickcom +%global gh_project tc-lib-pdf-font +%global php_project %{_datadir}/php/Com/Tecnick/Pdf/Font +%global with_tests 0%{!?_without_tests:1} +%global font_version 2.1.0 + +Name: php-%{gh_owner}-%{gh_project} +Version: 2.0.13 +Release: 1%{?dist} +Summary: PHP library containing PDF page formats and definitions + +License: LGPL-3.0-or-later +URL: https://github.com/%{gh_owner}/%{gh_project} +Source0: https://github.com/%{gh_owner}/%{gh_project}/archive/%{gh_commit}/%{name}-%{version}-%{?gh_short}.tar.gz +Source1: https://github.com/tecnickcom/tc-font-mirror/archive/refs/tags/%{font_version}.tar.gz + +# Fix path +Patch0: %{name}-rpm.patch + +BuildArch: noarch +%if %{with_tests} +# For tests +%global phpunit %{_bindir}/phpunit10 +BuildRequires: phpunit10 >= 10.1.2 +BuildRequires: php(language) >= 5.4 +BuildRequires: php-json +BuildRequires: php-pcre +BuildRequires: php-spl +BuildRequires: php-zlib +%if 0%{?fedora} >= 27 || 0%{?rhel} >= 8 +BuildRequires: (php-composer(%{c_vendor}/tc-lib-file) >= 2.0 with php-composer(%{c_vendor}/tc-lib-file) < 3) +BuildRequires: (php-composer(%{c_vendor}/tc-lib-unicode-data) >= 2.0 with php-composer(%{c_vendor}/tc-lib-unicode-data) < 3) +BuildRequires: (php-composer(%{c_vendor}/tc-lib-pdf-encrypt) >= 2.0 with php-composer(%{c_vendor}/tc-lib-pdf-encrypt) < 3) +%else +BuildRequires: php-%{c_vendor}-tc-lib-file < 3 +BuildRequires: php-%{c_vendor}-tc-lib-file >= 2.0 +BuildRequires: php-%{c_vendor}-tc-lib-unicode-data < 3 +BuildRequires: php-%{c_vendor}-tc-lib-unicode-data >= 2.0 +BuildRequires: php-%{c_vendor}-tc-lib-pdf-encrypt < 3 +BuildRequires: php-%{c_vendor}-tc-lib-pdf-encrypt >= 2.0 +%endif +%endif +BuildRequires: php-fedora-autoloader-devel + +# From composer.json, "require": { +# "php": ">=5.4.0", +# "ext-json": "*", +# "ext-pcre": "*", +# "ext-zlib": "*", +# "tecnickcom/tc-lib-file": "^2.0", +# "tecnickcom/tc-lib-unicode-data": "^2.0", +# "tecnickcom/tc-lib-pdf-encrypt": "^2.0" +Requires: php(language) >= 5.4 +Requires: php-json +Requires: php-pcre +Requires: php-spl +Requires: php-zlib +%if 0%{?fedora} >= 27 || 0%{?rhel} >= 8 +Requires: (php-composer(%{c_vendor}/tc-lib-file) >= 2.0 with php-composer(%{c_vendor}/tc-lib-file) < 3) +Requires: (php-composer(%{c_vendor}/tc-lib-unicode-data) >= 2.0 with php-composer(%{c_vendor}/tc-lib-unicode-data) < 3) +Requires: (php-composer(%{c_vendor}/tc-lib-pdf-encrypt) >= 2.0 with php-composer(%{c_vendor}/tc-lib-pdf-encrypt) < 3) +%else +Requires: php-%{c_vendor}-tc-lib-file < 3 +Requires: php-%{c_vendor}-tc-lib-file >= 2.0 +Requires: php-%{c_vendor}-tc-lib-unicode-data < 3 +Requires: php-%{c_vendor}-tc-lib-unicode-data >= 2.0 +Requires: php-%{c_vendor}-tc-lib-pdf-encrypt) < 3 +Requires: php-%{c_vendor}-tc-lib-pdf-encrypt) >= 2.0 +%endif +# From phpcompatinfo report for version 2.0.8 +# none +Requires: php-composer(fedora/autoloader) + +# Composer +Provides: php-composer(%{c_vendor}/%{gh_project}) = %{version} +# Upstream package name +Provides: php-%{gh_project} = %{version} + + +%description +PHP library containing PDF page formats and definitions. + +The initial source code has been extracted from TCPDF (http://www.tcpdf.org). + + +%prep +%setup -q -n %{gh_project}-%{gh_commit} -a 1 +%patch -P0 -p0 -b .rpm + +: Sanity check +grep -q '^%{version}$' VERSION +grep -q 'tc-font-mirror/archive/refs/tags/%{font_version}' util/composer.json + + +%build +phpab --template fedora --output src/autoload.php src +cat << 'EOF' | tee -a src/autoload.php +\Fedora\Autoloader\Dependencies::required([ + '%{_datadir}/php/Com/Tecnick/File/autoload.php', + '%{_datadir}/php/Com/Tecnick/Unicode/Data/autoload.php', + '%{_datadir}/php/Com/Tecnick/Pdf/Encrypt/autoload.php', +]); +EOF + + +%install +mkdir -p $(dirname %{buildroot}%{php_project}) +cp -pr src %{buildroot}%{php_project} + +cd util +mkdir -p %{buildroot}/%{_datadir}/%{name} +php bulk_convert.php --outpath=%{buildroot}%{_datadir}/%{name}/ + +install -Dpm 755 convert.php %{buildroot}%{_bindir}/%{name}-convert + + +%check +%if %{with_tests} +mkdir vendor +cat << 'EOF' | tee vendor/autoload.php +<?php +require '%{buildroot}%{php_project}/autoload.php'; +\Fedora\Autoloader\Autoload::addPsr4('Test\\', dirname(__DIR__) . '/test'); +EOF + +sed -e 's:/util/vendor/tecnickcom/tc-font-mirror/:/tc-font-mirror-2.1.0/:' -i test/*php + +ret=0 +for cmdarg in php php81 php82 php83; do + if which $cmdarg; then + set $cmdarg + cp phpunit.xml.dist phpunit.xml + $1 ${2:-%{phpunit}} --migrate-configuration || : + $1 -d memory_limit=1G ${2:-%{phpunit}} --no-coverage || ret=1 + fi +done +exit $ret +%else +: Test suite disabled +%endif + + +%files +# remirepo:1 +%{!?_licensedir:%global license %%doc} +%license LICENSE +%doc composer.json +%doc *.md +%{php_project} +%{_datadir}/%{name} +%{_bindir}/%{name}-convert + + +%changelog +* Wed Nov 29 2023 Remi Collet <remi@remirepo.net> - 2.0.13-1 +- update to 2.0.13 + +* Tue Nov 28 2023 Remi Collet <remi@remirepo.net> - 2.0.11-1 +- initial package, version 2.0.11 + |