%define _disable_ld_no_undefined 1 %define mod_name mod_php %define load_order 70 %define build_test 0 %{?_with_test: %{expand: %%global build_test 1}} %{?_without_test: %{expand: %%global build_test 0}} %define build_libmagic 0 %{?_with_libmagic: %{expand: %%global build_libmagic 1}} %{?_without_libmagic: %{expand: %%global build_libmagic 0}} %global __requires_exclude BEGIN|mkinstalldirs|pear\\(|/usr/bin/tclsh %define php_common_major 7 %define libname %mklibname php_common %{php_common_major} # enforce versioned postgresql dependencies because of multiple version # availability in the distribution %define postgresql_version %(pg_config &>/dev/null && pg_config 2>/dev/null | awk '/^VERSION/ { print $4 }' | sed -re 's/rc[0-9]+$//'|| echo 0) %define _RC %nil Summary: The PHP scripting language Name: php Epoch: 3 Version: 7.3.10 Release: %mkrel 2 Source0: http://fr2.php.net/distributions/php-%{version}.tar.xz Group: Development/PHP License: PHP License URL: http://www.php.net Source1: php-test-ini Source2: maxlifetime Source3: php.crond Source4: php-fpm.service Source5: php-fpm.sysconf Source6: php-fpm.logrotate # S7 comes from ext/fileinfo/create_data_file.php but could be removed someday Source7: create_data_file.php # ini based on production version Source8: php-ini Source9: php-fpm-tmpfiles.conf Source10: 70_php-fpm.conf Source11: php.ini-production-orig Source12: php.ini-development-orig #automatic adding does not work on build server Source101: 05_assertion.ini Source102: 05_date.ini Source103: 05_mail.ini Source104: 05_pcre.ini Source105: 10_bz2.ini Source106: 11_calendar.ini Source107: 12_ctype.ini Source108: 13_curl.ini Source109: 14_dba.ini Source1010: 18_dom.ini Source1011: 19_exif.ini Source1012: 21_openssl.ini Source1013: 21_zlib.ini Source1014: 22_ftp.ini Source1015: 23_gd.ini Source1016: 24_gettext.ini Source1017: 25_gmp.ini Source1018: 26_iconv.ini Source1019: 27_imap.ini Source1020: 27_intl.ini Source1021: 28_ldap.ini Source1022: 29_mbstring.ini Source1023: 32_fileinfo.ini Source1024: 33_mysqlnd.ini Source1025: 37_mysqli.ini Source1026: 38_enchant.ini Source1027: 39_odbc.ini Source1028: 40_pcntl.ini Source1029: 42_interbase.ini Source1030: 42_pgsql.ini Source1031: 43_posix.ini Source1032: 45_readline.ini Source1033: 46_recode.ini Source1034: 47_session.ini Source1035: 48_shmop.ini Source1036: 50_snmp.ini Source1037: 51_soap.ini Source1038: 52_sockets.ini Source1039: 21_hash.ini Source1040: 56_sysvmsg.ini Source1041: 57_sysvsem.ini Source1042: 58_sysvshm.ini Source1043: 59_tidy.ini Source1044: 60_tokenizer.ini Source1045: 62_xml.ini Source1046: 62_xmlrpc.ini Source1047: 63_wddx.ini Source1048: 63_xmlreader.ini Source1049: 63_xsl.ini Source1050: 64_xmlwriter.ini Source1051: 66_bcmath.ini Source1052: 70_pdo.ini Source1053: 71_pdo_dblib.ini Source1054: 73_pdo_mysql.ini Source1055: 75_pdo_odbc.ini Source1056: 76_pdo_pgsql.ini Source1057: 77_pdo_sqlite.ini Source1058: 78_pdo_firebird.ini Source1059: 78_sqlite3.ini Source1060: 81_filter.ini Source1061: 82_json.ini Source1062: 83_zip.ini Source1063: 84_phar.ini Source1064: 99_opcache.ini Source1065: 85_sodium.ini #Patch0: php-init.diff # not sure what kind of patch this should be.... Patch1: php-shared.diff Patch2: php-7.1-mga_php.ini.diff Patch5: php-phpbuilddir.diff # remove libedit once and for all Patch7: php-no_libedit.diff Patch8: php-xmlrpc_epi.patch Patch9: php-xmlrpc_no_rpath.diff Patch11: php-7.0.2RC1-libdb.diff ##################################################################### # Stolen from PLD Patch21: php-filter-shared.diff Patch22: php-dba-link.patch Patch23: php-zlib-for-getimagesize.patch #(spuhler) taken from Mandriva Patch29: php-7.0.0RC5-fpm-0.6.5-shared.diff Patch30: php-7.0.0RC5-fpm-0.6.5-mdv_conf.diff ##################################################################### # stolen from debian Patch50: php-session.save_path.diff Patch51: php-exif_nesting_level.diff ##################################################################### # Stolen from fedora # Functional changes Patch115: php-dlopen.diff # Fix bugs Patch120: php-tests-wddx.diff #why do we want to have them public? Patch226: php-no-fvisibility_hidden_fix.diff Patch228: php-5.3.0RC2-xmlrpc-epi_fix.diff Patch229: php-7.0.2RC1-session.use_strict_mode.diff # apache-mod_php Patch400: php-7.0.0RC5-apache-mod_php.diff # Arch patch Patch500: enchant-2.patch BuildRequires: apache-devel >= 2.2 BuildRequires: autoconf BuildRequires: automake BuildRequires: libtool BuildRequires: bison BuildRequires: mercurial BuildRequires: python2 BuildRequires: byacc BuildRequires: bzip2-devel BuildRequires: c-client-devel >= 2007 BuildRequires: pkgconfig(libcurl) >= 7.9.8 BuildRequires: db-devel BuildRequires: elfutils-devel BuildRequires: pkgconfig(enchant-2) BuildRequires: pkgconfig(expat) BuildRequires: file BuildRequires: pkgconfig(fbclient) BuildRequires: flex BuildRequires: freetds-devel >= 0.63 BuildRequires: freetype2-devel BuildRequires: gdbm-devel BuildRequires: pkgconfig(gdlib) >= 2.1 BuildRequires: gettext-devel BuildRequires: gmp-devel BuildRequires: gpm-devel BuildRequires: icu-devel >= 49.0 BuildRequires: lemon BuildRequires: pkgconfig(libjpeg) BuildRequires: libldap-devel BuildRequires: pkgconfig(libpng) BuildRequires: pkgconfig(libsasl2) BuildRequires: libtool-devel BuildRequires: pkgconfig(x11) BuildRequires: pkgconfig(libxml-2.0) >= 2.6 BuildRequires: pkgconfig(xpm) BuildRequires: pkgconfig(libxslt) >= 1.1.0 BuildRequires: pkgconfig(libwebp) >= 0.4 BuildRequires: pkgconfig(libzip) >= 0.10.1 BuildRequires: mbfl-devel >= 1.2.0-2 # for mysql_config BuildRequires: mysql-devel BuildRequires: pkgconfig(ncurses) BuildRequires: net-snmp-devel BuildRequires: net-snmp-mibs BuildRequires: pkgconfig(oniguruma) >= 5.9.2 BuildRequires: openssl BuildRequires: pkgconfig(openssl) BuildRequires: pam-devel BuildRequires: pkgconfig(libpcre2-posix) >= 10.30 BuildRequires: postgresql-devel BuildRequires: re2c >= 0.13.4 BuildRequires: readline-devel BuildRequires: recode-devel BuildRequires: pkgconfig(sqlite3) BuildRequires: pkgconfig(systemd) BuildRequires: pkgconfig(libsodium) BuildRequires: tidy-devel BuildRequires: unixODBC-devel >= 2.2.1 BuildRequires: xmlrpc-epi-devel %if %{build_libmagic} BuildRequires: file-devel >= 5.14 %endif %description PHP is an HTML-embeddable scripting language. PHP offers built-in database integration for several commercial and non-commercial database management systems, so writing a database-enabled script with PHP is fairly simple. The most common use of PHP coding is probably as a replacement for CGI scripts. %package ini Summary: INI files for PHP Group: Development/PHP Requires: php >= %{epoch}:%{version} %description ini The php-ini package contains the ini file required for PHP. %package -n apache-mod_php Summary: The PHP HTML-embedded scripting language for use with apache Group: System/Servers Requires(pre): rpm-helper Requires(postun): rpm-helper Requires: apache >= 2.2 #add all common requirements to the lib as a central Requires: %{libname} >= %{epoch}:%{version} # php is not fully thread safe # http://www.php.net/manual/en/faq.installation.php#faq.installation.apache2 # http://stackoverflow.com/questions/681081/is-php-thread-safe Provides: php-webinterface = %{epoch}:%{version}-%{release} Epoch: %{epoch} %description -n apache-mod_php PHP is an HTML-embeddable scripting language. PHP offers built-in database integration for several commercial and non-commercial database management systems, so writing a database-enabled script with PHP is fairly simple. The most common use of PHP coding is probably as a replacement for CGI scripts. This package contains the PHP apache module. %package cli Summary: PHP CLI interface Group: Development/PHP URL: http://www.php.net/cli #add all common requirements to the lib as a central Requires: %{libname} >= %{epoch}:%{version} Provides: php = %{epoch}:%{version} Provides: /usr/bin/php %description cli PHP is an HTML-embeddable scripting language. PHP offers built-in database integration for several commercial and non-commercial database management systems, so writing a database-enabled script with PHP is fairly simple. The most common use of PHP coding is probably as a replacement for CGI scripts. This package contains a command-line (CLI) version of php. You must also install %{libname}. If you need apache module support, you also need to install the apache-mod_php package. %package cgi Summary: PHP CGI interface Group: Development/PHP #add all common requirements to the lib as a central Requires: %{libname} >= %{epoch}:%{version} Requires: webserver-base Provides: php = %{epoch}:%{version} Provides: php-fcgi = %{epoch}:%{version}-%{release} Provides: php-webinterface = %{epoch}:%{version}-%{release} # because of a added compat softlink Obsoletes: php-fcgi < %{epoch}:%{version}-%{release} %description cgi PHP is an HTML-embeddable scripting language. PHP offers built-in database integration for several commercial and non-commercial database management systems, so writing a database-enabled script with PHP is fairly simple. The most common use of PHP coding is probably as a replacement for CGI scripts. This package contains a standalone (CGI) version of php with FastCGI support. You must also install %{libname}. If you need apache module support, you also need to install the apache-mod_php package. %package -n %{libname} Summary: Shared library for PHP Group: Development/PHP Provides: php-pcre = %{epoch}:%{version} Provides: php-simplexml = %{epoch}:%{version} #TODO are theses really required ? # no, but removing them gives a bugstorm, so please don't. Requires: php >= %{epoch}:%{version} Requires: php-ctype >= %{epoch}:%{version} Requires: php-filter >= %{epoch}:%{version} Requires: php-ftp >= %{epoch}:%{version} Requires: php-gettext >= %{epoch}:%{version} Requires: php-hash >= %{epoch}:%{version} Requires: php-ini >= %{version} Requires: php-json >= %{epoch}:%{version} Requires: php-openssl >= %{epoch}:%{version} Requires: php-pcre >= %{epoch}:%{version} Requires: php-posix >= %{epoch}:%{version} Requires: php-session >= %{epoch}:%{version} Requires: php-sysvsem >= %{epoch}:%{version} Requires: php-sysvshm >= %{epoch}:%{version} Requires: php-tokenizer >= %{epoch}:%{version} Requires: php-xmlreader >= %{epoch}:%{version} Requires: php-xmlwriter >= %{epoch}:%{version} Requires: php-zlib >= %{epoch}:%{version} Requires: php-xml >= %{epoch}:%{version} #obsoletes added for #2017 Obsoletes: php-mcal < 0.6-51 Obsoletes: php-pear-Horde Obsoletes: php-docblock Obsoletes: php-pear-PHP_Parser_DocblockParser Obsoletes: php-pear-PHP_Parser Obsoletes: php-amf Obsoletes: php-apacheaccessor Obsoletes: php-auth_nds Obsoletes: php-awl Obsoletes: php-bbcode Obsoletes: php-bloomy Obsoletes: php-braille Obsoletes: php-cairo Obsoletes: php-cairo_wrapper Obsoletes: php-cyrus Obsoletes: php-dav Obsoletes: php-dbx Obsoletes: php-docblock Obsoletes: php-doublemetaphone Obsoletes: php-ecasound Obsoletes: php-esmtp Obsoletes: php-fam Obsoletes: php-gearman < 1.1.3 Obsoletes: php-gnutls Obsoletes: php-haru Obsoletes: php-hidef Obsoletes: php-htscanner Obsoletes: php-pear-Date_Holidays Obsoletes: php-id3 Obsoletes: php-inclued Obsoletes: php-layersmenu Obsoletes: php-libevent Obsoletes: php-magickwand Obsoletes: php-mcal Obsoletes: php-mdbtools Obsoletes: php-ming Obsoletes: php-mongo Obsoletes: php-mssql Obsoletes: php-netools Obsoletes: php-newt Obsoletes: php-oggvorbis Obsoletes: php-optimizer Obsoletes: php-pam Obsoletes: php-pluf Obsoletes: php-sasl Obsoletes: php-suhosin Obsoletes: php-swish Obsoletes: php-sybase_ct Obsoletes: php-symfony-YAML Obsoletes: php-syslog-ng Obsoletes: php-tclink Obsoletes: php-timezonedb Obsoletes: php-txforward Obsoletes: php-uploadprogress Obsoletes: php-wbxml Obsoletes: php-ZendFramework Obsoletes: php-apm < 2.1.3 Obsoletes: php-mailparse < 3.0.2 Obsoletes: php-rar < 4.0.0 %description -n %{libname} This package provides the common files to run with different implementations of PHP. You need this package if you install the php standalone package or a webserver with php support (ie: apache-mod_php). %package devel Summary: Development package for PHP Group: Development/C Requires: %{libname} >= %{epoch}:%{version} Requires: autoconf automake libtool Requires: bison Requires: byacc Requires: chrpath Requires: dos2unix Requires: flex Requires: libxml2-devel >= 2.6 Requires: libxslt-devel >= 1.1.0 Requires: openssl >= 0.9.8 Requires: openssl-devel >= 0.9.8 Requires: pam-devel Requires: pcre-devel >= 6.6 Requires: re2c >= 0.9.11 Requires: tcl %description devel The php-devel package lets you compile dynamic extensions to PHP. Included here is the source for the php extensions. Instead of recompiling the whole php binary to add support for, say, oracle, install this package and use the new self-contained extensions support. For more information, read the file SELF-CONTAINED-EXTENSIONS. %package openssl Summary: OpenSSL extension module for PHP Group: Development/PHP URL: http://www.php.net/openssl Requires: %{libname} >= %{epoch}:%{version} %description openssl This is a dynamic shared object (DSO) for PHP that will add OpenSSL support. %package zlib Summary: Zlib extension module for PHP Group: Development/PHP URL: http://www.php.net/zlib Requires: %{libname} >= %{epoch}:%{version} %description zlib This is a dynamic shared object (DSO) for PHP that will add zlib compression support to PHP. %package doc Summary: Documentation for PHP Group: Development/PHP BuildArch: noarch %description doc Documentation for php. %package bcmath Summary: The bcmath module for PHP Group: Development/PHP URL: http://www.php.net/bcmath Requires: %{libname} >= %{epoch}:%{version} %description bcmath This is a dynamic shared object (DSO) for PHP that will add bc style precision math functions support. For arbitrary precision mathematics PHP offers the Binary Calculator which supports numbers of any size and precision, represented as strings. %package bz2 Summary: Bzip2 extension module for PHP Group: Development/PHP URL: http://www.php.net/bzip2 Requires: %{libname} >= %{epoch}:%{version} %description bz2 This is a dynamic shared object (DSO) for PHP that will add bzip2 compression support to PHP. The bzip2 functions are used to transparently read and write bzip2 (.bz2) compressed files. %package calendar Summary: Calendar extension module for PHP Group: Development/PHP URL: http://www.php.net/calendar Requires: %{libname} >= %{epoch}:%{version} %description calendar This is a dynamic shared object (DSO) for PHP that will add calendar support. The calendar extension presents a series of functions to simplify converting between different calendar formats. The intermediary or standard it is based on is the Julian Day Count. The Julian Day Count is a count of days starting from January 1st, 4713 B.C. To convert between calendar systems, you must first convert to Julian Day Count, then to the calendar system of your choice. Julian Day Count is very different from the Julian Calendar! For more information on Julian Day Count, visit http://www.hermetic.ch/cal_stud/jdn.htm. For more information on calendar systems visit http://www.boogle.com/info/cal-overview.html. Excerpts from this page are included in these instructions, and are in quotes. %package ctype Summary: Ctype extension module for PHP Group: Development/PHP URL: http://www.php.net/ctype Requires: %{libname} >= %{epoch}:%{version} %description ctype This is a dynamic shared object (DSO) for PHP that will add ctype support. The functions provided by this extension check whether a character or string falls into a certain character class according to the current locale (see also setlocale()). %package curl Summary: Curl extension module for PHP Group: Development/PHP URL: http://www.php.net/curl Requires: %{libname} >= %{epoch}:%{version} %description curl This is a dynamic shared object (DSO) for PHP that will add curl support. PHP supports libcurl, a library created by Daniel Stenberg, that allows you to connect and communicate to many different types of servers with many different types of protocols. libcurl currently supports the http, https, ftp, gopher, telnet, dict, file, and ldap protocols. libcurl also supports HTTPS certificates, HTTP POST, HTTP PUT, FTP uploading (this can also be done with PHP's ftp extension), HTTP form based upload, proxies, cookies, and user+password authentication. %package dba Summary: DBA extension module for PHP Group: Development/PHP URL: http://www.php.net/dba Requires: %{libname} >= %{epoch}:%{version} %description dba This is a dynamic shared object (DSO) for PHP that will add flat-file databases (DBA) support. These functions build the foundation for accessing Berkeley DB style databases. This is a general abstraction layer for several file-based databases. As such, functionality is limited to a common subset of features supported by modern databases such as Sleepycat Software's DB2. (This is not to be confused with IBM's DB2 software, which is supported through the ODBC functions.) %package dom Summary: Dom extension module for PHP Group: Development/PHP URL: http://www.php.net/dom Requires: %{libname} >= %{epoch}:%{version} %description dom This is a dynamic shared object (DSO) for PHP that will add dom support. The DOM extension is the replacement for the DOM XML extension from PHP 4. The extension still contains many old functions, but they should no longer be used. In particular, functions that are not object-oriented should be avoided. The extension allows you to operate on an XML document with the DOM API. %package enchant Summary: Libenchant binder, support near all spelling tools Group: Development/PHP URL: http://www.php.net/ Requires: %{libname} >= %{epoch}:%{version} %description enchant Enchant is a binder for libenchant. Libenchant provides a common API for many spell libraries: - aspell/pspell (intended to replace ispell) - hspell (hebrew) - ispell - hunspell (OpenOffice project, mozilla) - uspell (primarily Yiddish, Hebrew, and Eastern European languages) A plugin system allows to add custom spell support. see www.abisource.com/enchant/ %package exif Summary: EXIF extension module for PHP Group: Development/PHP URL: http://www.php.net/exif Requires: %{libname} >= %{epoch}:%{version} Requires: php-mbstring >= %{epoch}:%{version} %description exif This is a dynamic shared object (DSO) for PHP that will add EXIF tags support in image files. With the exif extension you are able to work with image meta data. For example, you may use exif functions to read meta data of pictures taken from digital cameras by working with information stored in the headers of the JPEG and TIFF images. %package fileinfo Summary: Fileinfo extension module for PHP Group: Development/PHP URL: http://www.php.net/fileinfo Requires: %{libname} >= %{epoch}:%{version} %description fileinfo This extension allows retrieval of information regarding vast majority of file. This information may include dimensions, quality, length etc... Additionally it can also be used to retrieve the mime type for a particular file and for text files proper language encoding. %package filter Summary: Extension for safely dealing with input parameters Group: Development/PHP URL: http://www.php.net/filter Requires: %{libname} >= %{epoch}:%{version} %description filter The Input Filter extension is meant to address this issue by implementing a set of filters and mechanisms that users can use to safely access their input data. %package ftp Summary: FTP extension module for PHP Group: Development/PHP URL: http://www.php.net/ftp Requires: %{libname} >= %{epoch}:%{version} %description ftp This is a dynamic shared object (DSO) for PHP that will add FTP support. The functions in this extension implement client access to file servers speaking the File Transfer Protocol (FTP) as defined in http://www.faqs.org/rfcs/rfc959. This extension is meant for detailed access to an FTP server providing a wide range of control to the executing script. If you only wish to read from or write to a file on an FTP server, consider using the ftp:// wrapper with the filesystem functions which provide a simpler and more intuitive interface. %package gd Summary: GD extension module for PHP Group: Development/PHP URL: http://www.php.net/gd Requires: %{libname} >= %{epoch}:%{version} Provides: php-gd-bundled = %{epoch}:%{version} %description gd This is a dynamic shared object (DSO) for PHP that will add GD support, allowing you to create and manipulate images with PHP using the gd library. PHP is not limited to creating just HTML output. It can also be used to create and manipulate image files in a variety of different image formats, including gif, png, jpg, wbmp, and xpm. Even more convenient, PHP can output image streams directly to a browser. You will need to compile PHP with the GD library of image functions for this to work. GD and PHP may also require other libraries, depending on which image formats you want to work with. You can use the image functions in PHP to get the size of JPEG, GIF, PNG, SWF, TIFF and JPEG2000 images. %package gettext Summary: Gettext extension module for PHP Group: Development/PHP URL: http://www.php.net/gettext Requires: %{libname} >= %{epoch}:%{version} %description gettext This is a dynamic shared object (DSO) for PHP that will add gettext support. The gettext functions implement an NLS (Native Language Support) API which can be used to internationalize your PHP applications. Please see the gettext documentation for your system for a thorough explanation of these functions or view the docs at http://www.gnu.org/software/gettext/manual/gettext.html. %package gmp Summary: Gmp extension module for PHP Group: Development/PHP URL: http://www.php.net/gmp Requires: %{libname} >= %{epoch}:%{version} %description gmp This is a dynamic shared object (DSO) for PHP that will add arbitrary length number support using the GNU MP library. %package hash Summary: HASH Message Digest Framework Group: Development/PHP URL: http://www.php.net/hash Requires: %{libname} >= %{epoch}:%{version} %description hash Native implementations of common message digest algorithms using a generic factory method. Message Digest (hash) engine. Allows direct or incremental processing of arbitrary length messages using a variety of hashing algorithms. %package iconv Summary: Iconv extension module for PHP Group: Development/PHP URL: http://www.php.net/iconv Requires: %{libname} >= %{epoch}:%{version} %description iconv This is a dynamic shared object (DSO) for PHP that will add iconv support. This module contains an interface to iconv character set conversion facility. With this module, you can turn a string represented by a local character set into the one represented by another character set, which may be the Unicode character set. Supported character sets depend on the iconv implementation of your system. Note that the iconv function on some systems may not work as you expect. In such case, it'd be a good idea to install the GNU libiconv library. It will most likely end up with more consistent results. %package imap Summary: IMAP extension module for PHP Group: Development/PHP URL: http://www.php.net/iamp Requires: %{libname} >= %{epoch}:%{version} %description imap This is a dynamic shared object (DSO) for PHP that will add IMAP support. These functions are not limited to the IMAP protocol, despite their name. The underlying c-client library also supports NNTP, POP3 and local mailbox access methods. %package interbase Summary: Interbase/Firebird database module for PHP Group: Development/PHP URL: http://www.php.net/ibase Requires: %{libname} >= %{epoch}:%{version} Provides: php-firebird = %{epoch}:%{version} %description interbase This is a dynamic shared object (DSO) for PHP that will add Firebird database support. %package intl Summary: Internationalization extension module for PHP Group: Development/PHP URL: http://www.php.net/intl Requires: %{libname} >= %{epoch}:%{version} %description intl This is a dynamic shared object (DSO) for PHP that will add Internationalization support. Internationalization extension implements ICU library functionality in PHP. %package json Summary: JavaScript Object Notation Group: Development/PHP URL: http://www.php.net/json Requires: %{libname} >= %{epoch}:%{version} %description json Support for JSON (JavaScript Object Notation) serialization. %package ldap Summary: LDAP extension module for PHP Group: Development/PHP URL: http://www.php.net/ldap Requires: %{libname} >= %{epoch}:%{version} %description ldap This is a dynamic shared object (DSO) for PHP that will add LDAP support. LDAP is the Lightweight Directory Access Protocol, and is a protocol used to access "Directory Servers". The Directory is a special kind of database that holds information in a tree structure. The concept is similar to your hard disk directory structure, except that in this context, the root directory is "The world" and the first level subdirectories are "countries". Lower levels of the directory structure contain entries for companies, organisations or places, while yet lower still we find directory entries for people, and perhaps equipment or documents. %package mbstring Summary: MBstring extension module for PHP Group: Development/PHP URL: http://www.php.net/mbstring Requires: %{libname} >= %{epoch}:%{version} %description mbstring This is a dynamic shared object (DSO) for PHP that will add multibyte string support. mbstring provides multibyte specific string functions that help you deal with multibyte encodings in PHP. In addition to that, mbstring handles character encoding conversion between the possible encoding pairs. mbstring is designed to handle Unicode-based encodings such as UTF-8 and UCS-2 and many single-byte encodings for convenience. %package mysqli Summary: MySQL database module for PHP Group: Development/PHP URL: http://www.php.net/mysqli Requires: %{libname} >= %{epoch}:%{version} Requires: %{name}-mysqlnd = %{epoch}:%{version} %description mysqli This is a dynamic shared object (DSO) for PHP that will add MySQL database support. The mysqli extension allows you to access the functionality provided by MySQL 4.1 and above. It is an improved version of the older PHP MySQL driver, offering various benefits. The developers of the PHP programming language recommend using MySQLi when dealing with MySQL server versions 4.1.3 and newer (takes advantage of new functionality) More information about the MySQL Database server can be found at http://www.mysql.com/ Documentation for MySQL can be found at http://dev.mysql.com/doc/. Documentation for MySQLi can be found at http://www.php.net/manual/en/mysqli.overview.php. %package mysqlnd Summary: MySQL native database module for PHP Group: Development/PHP URL: http://www.php.net/mysqlnd Requires: %{libname} >= %{epoch}:%{version} Requires: php-hash Provides: php-mysql = %{epoch}:%{version}-%{release} Obsoletes: php-mysql < 7.0 %description mysqlnd This is a dynamic shared object (DSO) for PHP that will add MySQL native database support. These functions allow you to access MySQL database servers. More information about MySQL can be found at http://www.mysql.com/. Documentation for MySQL can be found at http://dev.mysql.com/doc/. %package odbc Summary: ODBC extension module for PHP Group: Development/PHP URL: http://www.php.net/odbc Requires: %{libname} >= %{epoch}:%{version} %description odbc This is a dynamic shared object (DSO) for PHP that will add ODBC support. In addition to normal ODBC support, the Unified ODBC functions in PHP allow you to access several databases that have borrowed the semantics of the ODBC API to implement their own API. Instead of maintaining multiple database drivers that were all nearly identical, these drivers have been unified into a single set of ODBC functions. %package opcache Summary: Zend OPcache for PHP Group: Development/PHP URL: http://www.php.net/opcache Requires: %{libname} >= %{epoch}:%{version} Obsoletes: php-xcache < 3.2.1 Obsoletes: php-xcache-admin < 3.2.1 %description opcache This is a dynamic shared object (DSO) for PHP that will add OPcache support. The Zend OPcache provides faster PHP execution through opcode caching and optimization. It improves PHP performance by storing precompiled script bytecode in the shared memory. This eliminates the stages of reading code from the disk and compiling it on future access. In addition, it applies a few bytecode optimization patterns that make code execution faster. %package pcntl Summary: Process Control extension module for PHP Group: Development/PHP URL: http://www.php.net/pcntl Requires: %{libname} >= %{epoch}:%{version} %description pcntl This is a dynamic shared object (DSO) for PHP that will add process spawning and control support. It supports functions like fork(), waitpid(), signal() etc. Process Control support in PHP implements the Unix style of process creation, program execution, signal handling and process termination. Process Control should not be enabled within a webserver environment and unexpected results may happen if any Process Control functions are used within a webserver environment. %package pdo Summary: PHP Data Objects Interface Group: Development/PHP URL: http://www.php.net/pdo Requires: %{libname} >= %{epoch}:%{version} %description pdo PDO provides a uniform data access interface, sporting advanced features such as prepared statements and bound parameters. PDO drivers are dynamically loadable and may be developed independently from the core, but still accessed using the same API. Read the documentation at http://www.php.net/pdo for more information. %package pdo_dblib Summary: Sybase Interface driver for PDO Group: Development/PHP URL: http://www.php.net/pdo_dblib Requires: freetds >= 0.63 Requires: php-pdo >= %{epoch}:%{version} Requires: %{libname} >= %{epoch}:%{version} %description pdo_dblib PDO_DBLIB is a driver that implements the PHP Data Objects (PDO) interface to enable access from PHP to Microsoft SQL Server and Sybase databases through the FreeTDS libary. %package pdo_firebird Summary: Firebird/InterBase driver for PDO Group: Development/PHP URL: http://www.php.net/pdo_firebird Requires: php-pdo >= %{epoch}:%{version} Requires: %{libname} >= %{epoch}:%{version} %description pdo_firebird PDO_Firebird is a driver that implements the PHP Data Objects (PDO) interface to enable access from PHP to Firebird databases. %package pdo_mysql Summary: MySQL Interface driver for PDO Group: Development/PHP URL: http://www.php.net/pdo_mysql Requires: php-pdo >= %{epoch}:%{version} Requires: %{libname} >= %{epoch}:%{version} Requires: %{name}-mysqlnd = %{epoch}:%{version} %description pdo_mysql PDO_MYSQL is a driver that implements the PHP Data Objects (PDO) interface to enable access from PHP to MySQL 3.x, 4.x and 5.x databases. PDO_MYSQL will take advantage of native prepared statement support present in MySQL 4.1 and higher. If you're using an older version of the mysql client libraries, PDO will emulate them for you. Please note that this build does NOT support compression protocol because it is built with MySQL Native Driver (mysqlnd). %package pdo_odbc Summary: ODBC v3 Interface driver for PDO Group: Development/PHP URL: http://www.php.net/pdo_odbc Requires: php-pdo >= %{epoch}:%{version} Requires: %{libname} >= %{epoch}:%{version} %description pdo_odbc PDO_ODBC is a driver that implements the PHP Data Objects (PDO) interface to enable access from PHP to databases through ODBC drivers or through the IBM DB2 Call Level Interface (DB2 CLI) library. PDO_ODBC currently supports three different "flavours" of database drivers: o ibm-db2 - Supports access to IBM DB2 Universal Database, Cloudscape, and Apache Derby servers through the free DB2 client. ibm-db2 is not supported in Mageia. o unixODBC - Supports access to database servers through the unixODBC driver manager and the database's own ODBC drivers. o generic - Offers a compile option for ODBC driver managers that are not explicitly supported by PDO_ODBC. %package pdo_pgsql Summary: PostgreSQL interface driver for PDO Group: Development/PHP URL: http://www.php.net/pdo_pgsql Requires: php-pdo >= %{epoch}:%{version} Requires: %{libname} >= %{epoch}:%{version} Requires: postgresql-libs >= %{postgresql_version} %description pdo_pgsql PDO_PGSQL is a driver that implements the PHP Data Objects (PDO) interface to enable access from PHP to PostgreSQL databases. %package pdo_sqlite Summary: SQLite v3 Interface driver for PDO Group: Development/PHP URL: http://www.php.net/pdo_sqlite Requires: php-pdo >= %{epoch}:%{version} Requires: %{libname} >= %{epoch}:%{version} %description pdo_sqlite PDO_SQLITE is a driver that implements the PHP Data Objects (PDO) interface to enable access to SQLite 3 databases. This extension provides an SQLite v3 driver for PDO. SQLite V3 is NOT compatible with the bundled SQLite 2 in PHP 5, but is a significant step forwards, featuring complete utf-8 support, native support for blobs, native support for prepared statements with bound parameters and improved concurrency. %package pgsql Summary: PostgreSQL database module for PHP Group: Development/PHP URL: http://www.php.net/pgsql Requires: %{libname} >= %{epoch}:%{version} Requires: postgresql-libs >= %{postgresql_version} %description pgsql This is a dynamic shared object (DSO) for PHP that will add PostgreSQL database support. PostgreSQL database is Open Source product and available without cost. Postgres, developed originally in the UC Berkeley Computer Science Department, pioneered many of the object-relational concepts now becoming available in some commercial databases. It provides SQL92/SQL99 language support, transactions, referential integrity, stored procedures and type extensibility. PostgreSQL is an open source descendant of this original Berkeley code. %package phar Summary: Allows running of complete applications out of .phar files Group: Development/PHP URL: http://www.php.net/phar Requires: %{libname} >= %{epoch}:%{version} Requires: php-bz2 Requires: php-hash %description phar This is the extension version of PEAR's PHP_Archive package. Support for zlib, bz2 and crc32 is achieved without any dependency other than the external zlib or bz2 extension. .phar files can be read using the phar stream, or with the Phar class. If the SPL extension is available, a Phar object can be used as an array to iterate over a phar's contents or to read files directly from the phar. Phar archives can be created using the streams API or with the Phar class, if the phar.readonly ini variable is set to false. Full support for MD5 and SHA1 signatures is possible. Signatures can be required if the ini variable phar.require_hash is set to true. When PECL extension hash is avaiable then SHA-256 and SHA-512 signatures are supported as well. %package posix Summary: POSIX extension module for PHP Group: Development/PHP URL: http://www.php.net/posix Requires: %{libname} >= %{epoch}:%{version} %description posix This is a dynamic shared object (DSO) for PHP that will add POSIX functions support to PHP. This module contains an interface to those functions defined in the IEEE 1003.1 (POSIX.1) standards document which are not accessible through other means. POSIX.1 for example defined the open(), read(), write() and close() functions, too, which traditionally have been part of PHP 3 for a long time. Some more system specific functions have not been available before, though, and this module tries to remedy this by providing easy access to these functions. %package readline Summary: Readline extension module for PHP Group: Development/PHP URL: http://www.php.net/readline Requires: %{libname} >= %{epoch}:%{version} %description readline This PHP module adds support for readline functions (only for cli and cgi SAPIs). The readline() functions implement an interface to the GNU Readline library. These are functions that provide editable command lines. An example being the way Bash allows you to use the arrow keys to insert characters or scroll through command history. Because of the interactive nature of this library, it will be of little use for writing Web applications, but may be useful when writing scripts used from a command line. %package recode Summary: Recode extension module for PHP Group: Development/PHP URL: http://www.php.net/recode Requires: %{libname} >= %{epoch}:%{version} %description recode This is a dynamic shared object (DSO) for PHP that will add recode support using the recode library. This module contains an interface to the GNU Recode library. The GNU Recode library converts files between various coded character sets and surface encodings. When this cannot be achieved exactly, it may get rid of the offending characters or fall back on approximations. The library recognises or produces nearly 150 different character sets and is able to convert files between almost any pair. Most RFC 1345 character sets are supported. %package session Summary: Session extension module for PHP Group: Development/PHP URL: http://www.php.net/session Requires(pre): rpm-helper Requires(postun): rpm-helper Requires: %{libname} >= %{epoch}:%{version} Requires: webserver-base %description session This is a dynamic shared object (DSO) for PHP that will add session support. Session support in PHP consists of a way to preserve certain data across subsequent accesses. This enables you to build more customized applications and increase the appeal of your web site. A visitor accessing your web site is assigned a unique id, the so-called session id. This is either stored in a cookie on the user side or is propagated in the URL. %package shmop Summary: Shared Memory Operations extension module for PHP Group: Development/PHP URL: http://www.php.net/shmop Requires: %{libname} >= %{epoch}:%{version} %description shmop This is a dynamic shared object (DSO) for PHP that will add Shared Memory Operations support. Shmop is an easy to use set of functions that allows PHP to read, write, create and delete Unix shared memory segments. %package snmp Summary: NET-SNMP extension module for PHP Group: Development/PHP URL: http://www.php.net/snmp Requires: net-snmp-mibs Requires: %{libname} >= %{epoch}:%{version} %description snmp This is a dynamic shared object (DSO) for PHP that will add SNMP support using the NET-SNMP libraries. In order to use the SNMP functions you need to install the NET-SNMP package. %package soap Summary: Soap extension module for PHP Group: Development/PHP URL: http://www.php.net/soap Requires: %{libname} >= %{epoch}:%{version} %description soap This is a dynamic shared object (DSO) for PHP that will add soap support. The SOAP extension can be used to write SOAP Servers and Clients. It supports subsets of SOAP 1.1, SOAP 1.2 and WSDL 1.1 specifications. %package sockets Summary: Sockets extension module for PHP Group: Development/PHP URL: http://www.php.net/sockets Requires: %{libname} >= %{epoch}:%{version} %description sockets This is a dynamic shared object (DSO) for PHP that will add sockets support. The socket extension implements a low-level interface to the socket communication functions based on the popular BSD sockets, providing the possibility to act as a socket server as well as a client. %package sodium Summary: Wrapper for the Sodium cryptographic library Group: Development/PHP URL: http://php.net/manual/en/book.sodium.php Requires: %{libname} >= %{epoch}:%{version} %description sodium This is a dynamic shared object (DSO) for PHP that will add libsodium support. %package sqlite3 Summary: SQLite database bindings for PHP Group: Development/PHP URL: http://www.php.net/sqlite3 Requires: php-pdo >= %{epoch}:%{version} Requires: %{libname} >= %{epoch}:%{version} Obsoletes: php-sqlite < 4:1.0.4 %description sqlite3 This is an extension for the SQLite Embeddable SQL Database Engine. SQLite is a C library that implements an embeddable SQL database engine. Programs that link with the SQLite library can have SQL database access without running a separate RDBMS process. SQLite is not a client library used to connect to a big database server. SQLite is the server. The SQLite library reads and writes directly to and from the database files on disk. %package sysvmsg Summary: SysV msg extension module for PHP Group: Development/PHP URL: http://www.php.net/sem Requires: %{libname} >= %{epoch}:%{version} %description sysvmsg This is a dynamic shared object (DSO) for PHP that will add SysV message queues support. %package sysvsem Summary: SysV sem extension module for PHP Group: Development/PHP URL: http://www.php.net/sem Requires: %{libname} >= %{epoch}:%{version} %description sysvsem This is a dynamic shared object (DSO) for PHP that will add SysV semaphores support. %package sysvshm Summary: SysV shm extension module for PHP Group: Development/PHP URL: http://www.php.net/sem Requires: %{libname} >= %{epoch}:%{version} %description sysvshm This is a dynamic shared object (DSO) for PHP that will add SysV Shared Memory support. %package tidy Summary: Tidy HTML Repairing and Parsing for PHP Group: Development/PHP URL: http://www.php.net/tidy Requires: %{libname} >= %{epoch}:%{version} %description tidy Tidy is a binding for the Tidy HTML clean and repair utility which allows you to not only clean and otherwise manipluate HTML documents, but also traverse the document tree using the Zend Engine 2 OO semantics. %package tokenizer Summary: Tokenizer extension module for PHP Group: Development/PHP URL: http://www.php.net/tokenizer Requires: %{libname} >= %{epoch}:%{version} %description tokenizer This is a dynamic shared object (DSO) for PHP that will add Tokenizer support. The tokenizer functions provide an interface to the PHP tokenizer embedded in the Zend Engine. Using these functions you may write your own PHP source analyzing or modification tools without having to deal with the language specification at the lexical level. %package xml Summary: XML extension module for PHP Group: Development/PHP URL: http://www.php.net/xml Requires: %{libname} >= %{epoch}:%{version} %description xml This is a dynamic shared object (DSO) for PHP that will add XML support. This extension lets you create XML parsers and then define handlers for different XML events. %package xmlreader Summary: Xmlreader extension module for PHP Group: Development/PHP URL: http://www.php.net/xmlreader Requires: php-dom >= %{epoch}:%{version} Requires: %{libname} >= %{epoch}:%{version} %description xmlreader XMLReader represents a reader that provides non-cached, forward-only access to XML data. It is based upon the xmlTextReader api from libxml %package xmlrpc Summary: Xmlrpc extension module for PHP Group: Development/PHP URL: http://www.php.net/xmlrpc Requires: %{libname} >= %{epoch}:%{version} %description xmlrpc This is a dynamic shared object (DSO) for PHP that will add XMLRPC support. These functions can be used to write XML-RPC servers and clients. You can find more information about XML-RPC at http://www.xmlrpc.com/, and more documentation on this extension and its functions at http://xmlrpc-epi.sourceforge.net/. %package xmlwriter Summary: Provides fast, non-cached, forward-only means to write XML data Group: Development/PHP URL: http://www.php.net/xmlwriter Requires: %{libname} >= %{epoch}:%{version} %description xmlwriter This extension wraps the libxml xmlWriter API. Represents a writer that provides a non-cached, forward-only means of generating streams or files containing XML data. %package xsl Summary: Xsl extension module for PHP Group: Development/PHP URL: http://www.php.net/xsl Requires: %{libname} >= %{epoch}:%{version} %description xsl This is a dynamic shared object (DSO) for PHP that will add xsl support. The XSL extension implements the XSL standard, performing XSLT transformations using the libxslt library %package wddx Summary: WDDX serialization functions Group: Development/PHP URL: http://www.php.net/wddx Requires: php-xml Requires: %{libname} >= %{epoch}:%{version} %description wddx This is a dynamic shared object (DSO) that adds wddx support to PHP. These functions are intended for work with WDDX (http://www.openwddx.org/) %package zip Summary: A zip management extension for PHP Group: Development/PHP URL: http://www.php.net/zip Requires: %{libname} >= %{epoch}:%{version} %description zip This is a dynamic shared object (DSO) for PHP that will add zip support to create and read zip files using the libzip library. %package fpm Summary: PHP FastCGI Process Manager Group: Development/PHP Requires(post): systemd >= %{systemd_required_version} Requires(post): rpm-helper Requires(preun): rpm-helper Requires(pre): rpm-helper Requires(postun): rpm-helper #add all common requirements to the lib as a central Requires: %{libname} >= %{epoch}:%{version} Requires: webserver-base Provides: php-webinterface = %{epoch}:%{version}-%{release} Provides: php = %{epoch}:%{version} %description fpm PHP is an HTML-embeddable scripting language. PHP offers built-in database integration for several commercial and non-commercial database management systems, so writing a database-enabled script with PHP is fairly simple. The most common use of PHP coding is probably as a replacement for CGI scripts. This package contains the FastCGI Process Manager. You must also install %{libname}. %package -n phpdbg Summary: The interactive PHP debugger Group: Development/PHP Requires: %{libname} >= %{epoch}:%{version} Requires: php >= %{epoch}:%{version} %description -n phpdbg PHP is an HTML-embeddable scripting language. PHP offers built-in database integration for several commercial and non-commercial database management systems, so writing a database-enabled script with PHP is fairly simple. The most common use of PHP coding is probably as a replacement for CGI scripts. This package contains the The interactive PHP debugger. You must also install %{libname}. Implemented as a SAPI module, phpdbg can excert complete control over the environment without impacting the functionality or performance of your code. phpdbg aims to be a lightweight, powerful, easy to use debugging platform for PHP5.4+ %prep %autosetup -S hg -n php-%{version}%{_RC} mv sapi/apache2handler/mod_php%{php_common_major}.c sapi/apache2handler/mod_php.c cp %{SOURCE1} php-test.ini cp %{SOURCE4} php-fpm.service cp %{SOURCE5} php-fpm.sysconf cp %{SOURCE6} php-fpm.logrotate cp %{SOURCE7} create_data_file.php cp %{SOURCE10} 20-php-fpm.conf # nuke bogus checks becuase i fixed this years ago in our recode package rm -f ext/recode/config9.m4 # Change perms otherwise rpm would get fooled while finding requires find -name "*.inc" | xargs chmod 644 find -name "*.php*" | xargs chmod 644 find -name "*README*" | xargs chmod 644 mkdir -p php-devel/extensions mkdir -p php-devel/sapi # Install test files in php-devel cp -a tests php-devel cp -dpR ext/* php-devel/extensions/ rm -f php-devel/extensions/informix/stub.c rm -f php-devel/extensions/standard/.deps rm -f php-devel/extensions/skeleton/EXPERIMENTAL # SAPI cp -dpR sapi/* php-devel/sapi/ rm -f php-devel/sapi/thttpd/stub.c rm -f php-devel/sapi/cgi/php.sym rm -f php-devel/sapi/fastcgi/php.sym rm -f php-devel/sapi/pi3web/php.sym # cleanup find php-devel -name "*.droplet" | xargs rm -f # don't ship MS Windows source rm -rf php-devel/extensions/com_dotnet # likewise with these: find php-devel -name "*.dsp" | xargs rm -f find php-devel -name "*.mak" | xargs rm -f find php-devel -name "*.w32" | xargs rm # make sure using system libs rm -rf ext/pcre/pcrelib rm -rf ext/pdo_sqlite/sqlite rm -rf ext/xmlrpc/libxmlrpc %build %serverbuild export CFLAGS="${CFLAGS} -O3 -fno-strict-aliasing -fvisibility=default" export LDFLAGS="%{ldflags} -O3" export CXXFLAGS="${CXXFLAGS} -O3 -fvisibility=default -fvisibility-inlines-hidden" cat > php-devel/buildext < ext/fileinfo/data_file.c rm -rf ext/fileinfo/.libs ext/fileinfo/*.lo ext/fileinfo/*.la modules/fileinfo.so modules/fileinfo.la cp -p ext/fileinfo/data_file.c php-devel/extensions/fileinfo/data_file.c %make_build %endif # make php-cgi cp -af php_config.h.cgi main/php_config.h make -f Makefile.cgi sapi/cgi/php-cgi cp -af php_config.h.apxs main/php_config.h # make php-fpm cp -af php_config.h.fpm main/php_config.h make -f Makefile.fpm sapi/fpm/php-fpm cp -af php_config.h.apxs main/php_config.h %install install -d %{buildroot}%{_libdir} install -d %{buildroot}%{_bindir} install -d %{buildroot}%{_sysconfdir}/php.d install -d %{buildroot}%{_libdir}/php/extensions install -d %{buildroot}%{_usrsrc}/php-devel install -d %{buildroot}%{_mandir}/man1 install -d %{buildroot}%{_sysconfdir}/cron.d install -d %{buildroot}/var/lib/php install -d %{buildroot}%{_datadir}/php make -f Makefile.apxs install \ INSTALL_ROOT=%{buildroot} \ INSTALL_IT="\$(LIBTOOL) --mode=install install libphp%{php_common_major}_common.la %{buildroot}%{_libdir}/" # borked autopoo rm -f %{buildroot}%{_bindir}/php %{buildroot}%{_bindir}/php-cgi %{buildroot}%{_bindir}/phpdbg ./libtool --silent --mode=install install sapi/cli/php %{buildroot}%{_bindir}/php ./libtool --silent --mode=install install sapi/cgi/php-cgi %{buildroot}%{_bindir}/php-cgi ./libtool --silent --mode=install install sapi/phpdbg/phpdbg %{buildroot}%{_bindir}/phpdbg # compat php-fcgi symlink ln -s php-cgi %{buildroot}%{_bindir}/php-fcgi cp -dpR php-devel/* %{buildroot}%{_usrsrc}/php-devel/ install -m0644 run-tests*.php %{buildroot}%{_usrsrc}/php-devel/ install -m0644 main/internal_functions.c %{buildroot}%{_usrsrc}/php-devel/ install -m0644 sapi/cli/php.1 %{buildroot}%{_mandir}/man1/ install -m0644 scripts/man1/phpize.1 %{buildroot}%{_mandir}/man1/ install -m0644 scripts/man1/php-config.1 %{buildroot}%{_mandir}/man1/ # fpm install -d %{buildroot}%{_unitdir} install -d %{buildroot}%{_sysconfdir}/logrotate.d install -d %{buildroot}%{_sysconfdir}/sysconfig install -d %{buildroot}%{_sysconfdir}/php-fpm.d install -d %{buildroot}%{_sbindir} install -d %{buildroot}%{_mandir}/man8 install -d %{buildroot}/var/lib/php-fpm install -d %{buildroot}/var/log/php-fpm install -D -p -m 0644 %{SOURCE9} %{buildroot}%{_tmpfilesdir}/php-fpm.conf # a small bug here... echo "; place your config here" > %{buildroot}%{_sysconfdir}/php-fpm.d/default.conf install -m0644 sapi/fpm/www.conf %{buildroot}%{_sysconfdir}/php-fpm.d/ ./libtool --silent --mode=install install sapi/fpm/php-fpm %{buildroot}%{_sbindir}/php-fpm install -m0644 sapi/fpm/php-fpm.8 %{buildroot}%{_mandir}/man8/ install -m0644 sapi/fpm/php-fpm.conf %{buildroot}%{_sysconfdir}/ install -m0644 php-fpm.service %{buildroot}%{_unitdir}/php-fpm.service install -m0644 php-fpm.sysconf %{buildroot}%{_sysconfdir}/sysconfig/php-fpm install -m0644 php-fpm.logrotate %{buildroot}%{_sysconfdir}/logrotate.d/php-fpm install -d %{buildroot}%{_httpd_modconfdir} install -m0644 20-php-fpm.conf %{buildroot}%{_httpd_modconfdir}/20-php-fpm.conf # adjust a bit perl -pi -e "s|^pid.*|pid = /run/php-fpm/php-fpm.pid|g" %{buildroot}%{_sysconfdir}/php-fpm.conf ln -snf extensions %{buildroot}%{_usrsrc}/php-devel/ext install -d %{buildroot}%{_httpd_moddir} install -d %{buildroot}%{_httpd_modconfdir} install -m0755 .libs/libphp%{php_common_major}.so %{buildroot}%{_httpd_moddir}/%{mod_name}.so cat > %{buildroot}%{_httpd_modconfdir}/%{load_order}_%{mod_name}.conf <