https://github.com/mariancerny/freebsd-ports-php56
FreeBSD ports subtree to build unsupported (EoL) PHP 5.6
https://github.com/mariancerny/freebsd-ports-php56
freebsd-ports php56
Last synced: over 1 year ago
JSON representation
FreeBSD ports subtree to build unsupported (EoL) PHP 5.6
- Host: GitHub
- URL: https://github.com/mariancerny/freebsd-ports-php56
- Owner: mariancerny
- Created: 2019-05-13T10:43:02.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2024-04-19T10:03:36.000Z (about 2 years ago)
- Last Synced: 2025-04-09T20:02:44.173Z (over 1 year ago)
- Topics: freebsd-ports, php56
- Language: Makefile
- Homepage:
- Size: 663 KB
- Stars: 22
- Watchers: 8
- Forks: 11
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Security: security/php56-filter/Makefile
Awesome Lists containing this project
README
# FreeBSD PHP 5.6 ports
FreeBSD ports subtree to build packages for the unsupported (EoL) PHP 5.6 version.
Updated to the latest PHP version 5.6.40.
## Preparation
To build the packages you need to add the following to `/etc/make.conf`:
DEFAULT_VERSIONS += php=5.6
# Needed for PHP 5.6 because it was removed from the tree.
PHP_EXT_DIR= 20131226
PHP_EXT_INC= pcre spl
_USE_PHP_VER56= bcmath bitset bz2 calendar ctype curl dba dom \
bcmath bz2 calendar ctype curl dba dom \
enchant exif fileinfo filter ftp gd gettext gmp \
hash iconv imap interbase intl json ldap mbstring mcrypt \
mssql mysql mysqli odbc opcache \
openssl pcntl pcre pdo pdo_dblib pdo_firebird pdo_mysql \
pdo_odbc pdo_pgsql pdo_sqlite pgsql phar posix \
pspell readline recode session shmop simplexml snmp soap \
sockets spl sqlite3 sybase_ct sysvmsg sysvsem sysvshm \
tidy tokenizer wddx xml xmlreader xmlrpc xmlwriter xsl zip zlib
mysql_DEPENDS= databases/php${PHP_VER}-mysql
Then extract this subtree somewhere in the filesystem (here `/opt/ports/php56`):
mkdir -p /opt/ports/php56
git clone https://github.com/mariancerny/freebsd-ports-php56.git /opt/ports/php56
## Installing
Now you can build individual packages:
cd /opt/ports/php56/lang/php56
make install
cd /opt/ports/php56/www/mod_php56
make install
## Caveats
Dependencies within this PHP 5.6 ports subtree are not resolved properly. You must install each dependency beforehand.
For example if you try to build `databases/php56-pdo_mysql` first you get the following error:
===> php56-pdo_mysql-5.6.40 depends on file: /usr/local/lib/php/20131226/pdo.so - not found
Error a dependency refers to a non existing origin: /usr/ports/databases/php56-pdo in BUILD_DEPENDS
Errors with dependencies.
*** Error code 1
Stop.
make[1]: stopped in /opt/ports/php56/databases/php56-pdo_mysql
You must install `databases/php56-pdo` manually before installing `databases/php56-pdo_mysql`.
Similarilly you must install `textproc/php56-xml` before `textproc/php56-xmlreader`, etc.
You can even install the meta port `lang/php56-extensions` (for example when you need to export the packages using `pkg create` & `pkg repo`),
you must just install all the selected packages manually beforehand.
Another option would be to mount the repository using unionfs onto `/usr/ports` (as suggested by [TLINDEN](https://github.com/mariancerny/freebsd-ports-php56/issues/5)), e.g.:
mount -t unionfs -o ro /opt/ports/php56 /usr/ports
Then all dependencies build automatically just fine.
## Testing
Tested on FreeBSD 11.2 and 12.0 with main FreeBSD ports tree from May 2019.
It may break in a future version of the main FreeBSD ports tree. Hopefully, it will last for some time.
Update: Still works on FreeBSD 12.4 with freebsd-ports tree branch 2023Q4.