Skip to content

Commit

Permalink
php build fixes
Browse files Browse the repository at this point in the history
  • Loading branch information
NattyNarwhal committed Apr 30, 2020
1 parent 2912702 commit 36345e9
Show file tree
Hide file tree
Showing 3 changed files with 72 additions and 2 deletions.
44 changes: 44 additions & 0 deletions php/php-freetype-pkgconfig.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
From c2355f2b6f193f26ee0c6e0479c760e8bd3daf9b Mon Sep 17 00:00:00 2001
From: Calvin Buckley <[email protected]>
Date: Sat, 25 Apr 2020 14:57:25 -0300
Subject: [PATCH] Don't use freetype-config, use pkg-config for freetype

Proper fix is in #3632, but might be too dependent on 7.4 changes.
---
ext/gd/config.m4 | 17 +++++------------
1 file changed, 5 insertions(+), 12 deletions(-)

diff --git a/ext/gd/config.m4 b/ext/gd/config.m4
index 498d870785..695ee75efb 100644
--- a/ext/gd/config.m4
+++ b/ext/gd/config.m4
@@ -183,21 +183,14 @@ AC_DEFUN([PHP_GD_XPM],[

AC_DEFUN([PHP_GD_FREETYPE2],[
if test "$PHP_FREETYPE_DIR" != "no"; then
+ AC_PATH_PROG(PKG_CONFIG, pkg-config, no)

- for i in $PHP_FREETYPE_DIR /usr/local /usr; do
- if test -f "$i/bin/freetype-config"; then
- FREETYPE2_DIR=$i
- FREETYPE2_CONFIG="$i/bin/freetype-config"
- break
- fi
- done
-
- if test -z "$FREETYPE2_DIR"; then
- AC_MSG_ERROR([freetype-config not found.])
+ if ! $PKG_CONFIG --exists freetype2; then
+ AC_MSG_ERROR(freetype2 is not installed)
fi

- FREETYPE2_CFLAGS=`$FREETYPE2_CONFIG --cflags`
- FREETYPE2_LIBS=`$FREETYPE2_CONFIG --libs`
+ FREETYPE2_CFLAGS=`$PKG_CONFIG --cflags freetype2`
+ FREETYPE2_LIBS=`$PKG_CONFIG --libs freetype2`

PHP_EVAL_INCLINE($FREETYPE2_CFLAGS)
PHP_EVAL_LIBLINE($FREETYPE2_LIBS, GD_SHARED_LIBADD)
--
2.25.1

14 changes: 14 additions & 0 deletions php/php-pear-xml.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
diff --git a/pear/Makefile.frag b/pear/Makefile.frag
index 528683ba1b..57188c8288 100644
--- a/pear/Makefile.frag
+++ b/pear/Makefile.frag
@@ -3,7 +3,7 @@
peardir=$(PEAR_INSTALLDIR)

# Skip all php.ini files altogether
-PEAR_INSTALL_FLAGS = -n -dshort_open_tag=0 -dopen_basedir= -derror_reporting=1803 -dmemory_limit=-1 -ddetect_unicode=0
+PEAR_INSTALL_FLAGS = -n -dshort_open_tag=0 -dopen_basedir= -derror_reporting=1803 -dmemory_limit=-1 -ddetect_unicode=0 -dextension_dir=$(top_builddir)/modules -dextension=xml.so

WGET = `which wget 2>/dev/null`
FETCH = `which fetch 2>/dev/null`

16 changes: 14 additions & 2 deletions php/php.spec
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,11 @@

%define major 7
%define minor 3
%define fix 17
%define fix 18

Name: php
Version: %{major}.%{minor}.%{fix}
Release: 0qsecofr
Release: 1qsecofr
License: PHP-3.01
Summary: PHP programming language
Url: https://www.php.net
Expand All @@ -36,6 +36,8 @@ Patch0: php-ini.patch
Patch1: php-opcache-flock.patch
Patch2: php-no-sigprof-on-pase.patch
Patch3: php-fpm-allow-non-root.patch
Patch4: php-freetype-pkgconfig.patch
Patch5: php-pear-xml.patch

BuildRequires: pkg-config

Expand All @@ -59,7 +61,9 @@ BuildRequires: libwebp-devel
BuildRequires: xz-devel
BuildRequires: zlib-devel
BuildRequires: openldap-devel
%if %{rpm_xpm}
BuildRequires: libXpm-devel
%endif

%if %{with reconf}
BuildRequires: autoconf
Expand Down Expand Up @@ -301,6 +305,8 @@ zip extension for PHP
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1

# PHP extensions expect to find include files in some_dir/include and
# libraries to be in some_dir/lib so that you can pass --with-ext=some_dir
Expand All @@ -319,6 +325,8 @@ ln -s %{_libdir}/libiconv.so* libiconv/lib
autoreconf -fi
%else
%define _host powerpc64-ibm-aix6
# Some patches make us regenerate the build system
./buildconf --force
%endif

%define sysconfdir_php %{_sysconfdir}/php
Expand Down Expand Up @@ -781,6 +789,10 @@ rm %{buildroot}%{sysconfdir_php}/php-fpm.d/www.conf.default
%endif

%changelog
* Thu Apr 30 2020 Calvin Buckley <[email protected]> - 7.3.17-1qsecofr
- Build fixes (ft2, pear w/o existing PHP) for newer packages
- libXpm RPM isn't required if not using it

* Fri Apr 17 2020 Calvin Buckley <[email protected]> - 7.3.17-0qsecofr
- Bump

Expand Down

0 comments on commit 36345e9

Please sign in to comment.