On 11/11/17 14:22, Stuart Henderson wrote: > Leaving aside the splitting, which you know my feelings about from when > I replied after you first proposed this split, this diff as a whole is > too big, it's un-reviewable.
And that's why I originally presented it as a new port. The diff itself is indeed impossible to review. > > A lot of patches are removed/changed without explanation. In particular > the huge patches to php-fpm.conf.in files are going to be *horrible* for > future updates. Those were motivated in the mails. As for the php-fpm.conf, I only enabled the 7.0 (and 7.1) config for 5.6, this would make future updates easier instead of harder. > > Some of the other changes can be broken down too. Let's get them into > individual reviewable diffs as much as possible. Will do. > > Since adding 7.1 means copying patches around, I would suggest cleaning > up the patches *before* adding 7.1 so that can be done from a cleaner > (and diffable with 7.0) basis. Sure. > > To get the ball rolling here's a diff to remove the unused 5.5 chunks > from .mk/Makefile.inc files and move the suhosin extension parts to 5.6 > only. (Maybe that can be refactored again later if/when suhosin7 gets > in shape). > > OK? You mist a few old (5.3-era) references and if we move suhosin out I would like to move -mysql, -sybase-ct, and -mssql to 5.6/Makefile while we're at it. OK for my version? > > Then I would suggest working patch-by-patch in the patches/ directory > (i.e. 5.6/patches/somepatch + 7.0/patches/somepatch, in one mail. > Discuss/adjust/commit, then move on to {5.6/7.0}/patches/anotherpatch). > > (Of course none of this fixes the *real* [separate but related] problem > that users of the PHP ports run into: we have no scaffolding to provide > pecl modules for anything other than the "default" version). I will look into that, but one thing at a time. Index: Makefile.inc =================================================================== RCS file: /cvs/ports/lang/php/Makefile.inc,v retrieving revision 1.96 diff -u -p -r1.96 Makefile.inc --- Makefile.inc 24 Aug 2017 10:03:25 -0000 1.96 +++ Makefile.inc 11 Nov 2017 14:21:58 -0000 @@ -8,7 +8,7 @@ COMMENT-fastcgi= stand-alone FastCGI ver PKGNAME-main?= php-${V} PKGNAME-fastcgi?= php-fastcgi-${V} -DISTFILES?= php-${V}.tar.bz2 +DISTFILES+= php-${V}.tar.bz2 DISTNAME?= php-${V} CATEGORIES= lang www @@ -20,7 +20,6 @@ MASTER_SITES= http://se.php.net/distrib http://us.php.net/distributions/ \ http://no.php.net/distributions/ \ http://uk.php.net/distributions/ -MASTER_SITES0= https://download.suhosin.org/ # UPGRADERS: please read BOTH the PHP and Zend licenses # and make sure they are safe before an upgrade @@ -48,11 +47,6 @@ INI_TEMPLATES?= development production # don't have. USE_LIBTOOL?= No -.if ${PV} != "7.0" -FLAVORS= no_suhosin -.endif -FLAVOR?= - PATCHORIG= .orig.port CONFIGURE_STYLE= autoconf AUTOCONF_VERSION?= 2.69 @@ -77,12 +71,8 @@ CONFIGURE_ARGS+= --enable-shared \ --with-pdo-sqlite \ --enable-sqlite-utf8 \ --with-sqlite3 \ - --program-suffix=-${PV} - -# readline is broken in PHP-5.3 -.if ${PV} != 5.3 -CONFIGURE_ARGS += --with-readline -.endif + --program-suffix=-${PV} \ + --with-readline # apache module CONFIGURE_ARGS+= --with-apxs2=${LOCALBASE}/sbin/apxs2 @@ -149,7 +139,7 @@ MULTI_PACKAGES+= -gd COMMENT-gd= image manipulation extensions for php5 LIB_DEPENDS-gd= graphics/jpeg \ graphics/png -.if ${PV} != "7.0" +.if ${PV} == "5.6" LIB_DEPENDS-gd+= devel/t1lib WANTLIB-gd+= t1>=5 .endif @@ -200,15 +190,6 @@ CONFIGURE_ARGS+= --with-mcrypt=shared,${ LIB_DEPENDS-mcrypt= security/libmcrypt devel/libtool,-ltdl WANTLIB-mcrypt= mcrypt ltdl>=1 pthread -.if ${PV} != "7.0" -# mysql -MULTI_PACKAGES+= -mysql -COMMENT-mysql= mysql database access extensions for php5 -CONFIGURE_ARGS+= --with-mysql=shared,${LOCALBASE} -LIB_DEPENDS-mysql= databases/mariadb -WANTLIB-mysql= pthread lib/mysql/mysqlclient -.endif - # mysqli MULTI_PACKAGES+= -mysqli COMMENT-mysqli= mysql database access extensions for php5 @@ -222,9 +203,7 @@ COMMENT-odbc= odbc database access exte CONFIGURE_ARGS+= --with-iodbc=shared,${LOCALBASE} LIB_DEPENDS-odbc= databases/iodbc WANTLIB-odbc= iodbc>=2 pthread -.if ${PV} != "5.3" WANTLIB-odbc+= iodbcinst -.endif # pcntl MULTI_PACKAGES+= -pcntl @@ -282,15 +261,6 @@ CONFIGURE_ARGS+= --with-snmp=shared,${LO LIB_DEPENDS-snmp= net/net-snmp WANTLIB-snmp= crypto m netsnmp>=6.2 pthread -.if ${PV} != "7.0" -# sybase-ct -MULTI_PACKAGES+= -sybase_ct -COMMENT-sybase_ct= sybase database access extensions for php5 -CONFIGURE_ARGS+= --with-sybase-ct=shared,${LOCALBASE} -LIB_DEPENDS-sybase_ct= databases/freetds -WANTLIB-sybase_ct= ct pthread -.endif - # pdo-dblib MULTI_PACKAGES+= -pdo_dblib COMMENT-pdo_dblib= PDO DB-LIB support for php5 @@ -298,15 +268,6 @@ CONFIGURE_ARGS+= --with-pdo-dblib LIB_DEPENDS-pdo_dblib= databases/freetds WANTLIB-pdo_dblib= sybdb>=6 pthread -.if ${PV} != "7.0" -# mssql -MULTI_PACKAGES+= -mssql -COMMENT-mssql= microsoft sql access extensions for php5 -CONFIGURE_ARGS+= --with-mssql=shared,${LOCALBASE} -LIB_DEPENDS-mssql= databases/freetds -WANTLIB-mssql= sybdb>=6 pthread -.endif - # tidy MULTI_PACKAGES+= -tidy COMMENT-tidy= tidy HTML cleaner bindings @@ -347,7 +308,6 @@ PHPXS_SUBST+= -e 's,${i},${${i}},' WANTLIB-main+= c crypto iconv intl lzma m pthread ssl xml2>=8 z WANTLIB-main+= ncurses readline ${COMPILER_LIBCXX} -# php 5.4/5.5 : WANTLIB-main += ${COMPILER_LIBCXX} WANTLIB-fastcgi= ${WANTLIB-main} LIB_DEPENDS-main= devel/gettext \ textproc/libxml @@ -355,18 +315,6 @@ RUN_DEPENDS-main= mail/femail,-chroot LIB_DEPENDS-fastcgi= ${LIB_DEPENDS-main} RUN_DEPENDS-fastcgi= -SUHOSIN_V= 0.9.38 -.if ${FLAVOR:Mno_suhosin} || ${PV} == "7.0" -SUPDISTFILES= suhosin-${SUHOSIN_V}.tar.gz:0 -.else -DISTFILES+= suhosin-${SUHOSIN_V}.tar.gz:0 -PATCH_LIST= patch-* suhosin-* -CONFIGURE_ARGS+= --enable-suhosin - -pre-patch: - @mv ${WRKDIR}/suhosin-${SUHOSIN_V} ${WRKSRC}/ext/suhosin -.endif - pre-fake: ${INSTALL_DATA_DIR} ${PREFIX}/${APACHE_MODULE_SUBDIR}/modules @@ -384,11 +332,7 @@ pre-configure: MODULE_NAME-${i}= ${i} DESCR-${i}= ${.CURDIR}/../files/DESCR-${i} PKGNAME-${i}= php-${i}-${V} -.if ${V:M5.4*} -PKGSPEC-${i}= php-${i}->=5.4,<5.5 -.elif ${V:M5.5*} -PKGSPEC-${i}= php-${i}->=5.5,<5.6 -.elif ${V:M5.6*} +.if ${V:M5.6*} PKGSPEC-${i}= php-${i}->=5.6,<5.7 .elif ${V:M7.0*} PKGSPEC-${i}= php-${i}->=7.0,<7.1 Index: php.port.mk =================================================================== RCS file: /cvs/ports/lang/php/php.port.mk,v retrieving revision 1.16 diff -u -p -r1.16 php.port.mk --- php.port.mk 25 Apr 2017 11:26:43 -0000 1.16 +++ php.port.mk 11 Nov 2017 14:21:58 -0000 @@ -3,9 +3,7 @@ CATEGORIES+= lang/php MODPHP_VERSION?= 5.6 -.if ${MODPHP_VERSION} == 5.5 -MODPHP_VSPEC = >=${MODPHP_VERSION},<5.6 -.elif ${MODPHP_VERSION} == 5.6 +.if ${MODPHP_VERSION} == 5.6 MODPHP_VSPEC = >=${MODPHP_VERSION},<5.7 .elif ${MODPHP_VERSION} == 7.0 MODPHP_VSPEC = >=${MODPHP_VERSION},<7.1 Index: 5.6/Makefile =================================================================== RCS file: /cvs/ports/lang/php/5.6/Makefile,v retrieving revision 1.51 diff -u -p -r1.51 Makefile --- 5.6/Makefile 24 Aug 2017 10:52:41 -0000 1.51 +++ 5.6/Makefile 11 Nov 2017 14:21:58 -0000 @@ -1,10 +1,48 @@ # $OpenBSD: Makefile,v 1.51 2017/08/24 10:52:41 sthen Exp $ -BROKEN-alpha= pcre_jit_compile.c:65:2: error: #error Unsupported architecture +BROKEN-alpha= pcre_jit_compile.c:65:2: error: #error Unsupported architecture -PV= 5.6 -V= ${PV}.31 +PV= 5.6 +V= ${PV}.31 + +MASTER_SITES0= https://download.suhosin.org/ WANTLIB-main+= ${COMPILER_LIBCXX} ncurses readline + +FLAVORS= no_suhosin +FLAVOR?= + +SUHOSIN_V= 0.9.38 +SUPDISTFILES= suhosin-${SUHOSIN_V}.tar.gz:0 + +.if !${FLAVOR:Mno_suhosin} +DISTFILES+= suhosin-${SUHOSIN_V}.tar.gz:0 +PATCH_LIST= patch-* suhosin-* +CONFIGURE_ARGS+= --enable-suhosin + +pre-patch: + @mv ${WRKDIR}/suhosin-${SUHOSIN_V} ${WRKSRC}/ext/suhosin +.endif + +# mysql +MULTI_PACKAGES+= -mysql +COMMENT-mysql= mysql database access extensions for php5 +CONFIGURE_ARGS+= --with-mysql=shared,${LOCALBASE} +LIB_DEPENDS-mysql= databases/mariadb +WANTLIB-mysql= pthread lib/mysql/mysqlclient + +# sybase-ct +MULTI_PACKAGES+= -sybase_ct +COMMENT-sybase_ct= sybase database access extensions for php5 +CONFIGURE_ARGS+= --with-sybase-ct=shared,${LOCALBASE} +LIB_DEPENDS-sybase_ct= databases/freetds +WANTLIB-sybase_ct= ct pthread + +# mssql +MULTI_PACKAGES+= -mssql +COMMENT-mssql= microsoft sql access extensions for php5 +CONFIGURE_ARGS+= --with-mssql=shared,${LOCALBASE} +LIB_DEPENDS-mssql= databases/freetds +WANTLIB-mssql= sybdb>=6 pthread .include <bsd.port.mk> Index: 7.0/distinfo =================================================================== RCS file: /cvs/ports/lang/php/7.0/distinfo,v retrieving revision 1.18 diff -u -p -r1.18 distinfo --- 7.0/distinfo 1 Sep 2017 08:25:02 -0000 1.18 +++ 7.0/distinfo 11 Nov 2017 14:21:58 -0000 @@ -1,4 +1,2 @@ SHA256 (php-7.0.23.tar.bz2) = b+lM78fSxg7iwWSLl3vu11atnNCn5OqLuM9SHZNVoJw= -SHA256 (suhosin-0.9.38.tar.gz) = wC12xOfOd3kQo3wYGBy2f9npDv4BB/6rPeMTG1+JvOo= SIZE (php-7.0.23.tar.bz2) = 14630426 -SIZE (suhosin-0.9.38.tar.gz) = 122800