Opened 15 years ago

Closed 15 years ago

Last modified 15 years ago

#20410 closed request (fixed)

php52: make a port for php 5.2.x

Reported by: stuchalk (Stuart Chalk) Owned by: ryandesign (Ryan Carsten Schmidt)
Priority: Normal Milestone:
Component: ports Version: 1.7.1
Keywords: legacy Cc: jyrkiwahlstedt
Port: php52

Description

I would like to request that a php52 port be made available from the last revision of php5 before transferring to 5.3. This would make it easy to downgrade to 5.2 and/or comapre 5.2 to 5.3 comaptability for site maintainers. Please?

Attachments (1)

config.log (64.2 KB) - added by josh@… 15 years ago.
php52 config.log

Download all attachments as: .zip

Change History (15)

comment:1 Changed 15 years ago by mf2k (Frank Schima)

Cc: jwa@… added
Owner: changed from macports-tickets@… to ryandesign@…

comment:2 Changed 15 years ago by ryandesign (Ryan Carsten Schmidt)

We did not make a port for php 5.0 when 5.1 came out, nor for 5.1 when 5.2 came out, and I don't really want to make one for 5.2 now that 5.3 is out. I am in the process of breaking php5 into many ports. So either I would have to repeat that effort for 5.2, or keep 5.2 as a monolithic port which would make it very different from the 5.3 port (but at present still like the php4 port since I haven't worked on splitting that one yet).

Still, this request has been made a few times before. Are there specific examples of things that don't work in 5.3 that worked in 5.2?

Until such a time as a port for 5.2 is created, you can follow this procedure to install php 5.2.

comment:3 in reply to:  2 Changed 15 years ago by nerdling (Jeremy Lavergne)

Replying to ryandesign@…:

Still, this request has been made a few times before. Are there specific examples of things that don't work in 5.3 that worked in 5.2?

Wouldn't the change log have this information available to the site maintainers? Also, using php5-devel would keep them abreast of changes rather than being behind.

comment:4 Changed 15 years ago by ryandesign (Ryan Carsten Schmidt)

I don't think we're talking here about "site maintainers" (people writing and hosting PHP web sites); indeed, they should either upgrade their site to be PHP 5.3-compatible, or not upgrade their PHP installation to 5.3. Rather, I think we're talking about people who want to use others' PHP-based web apps, which may not yet be PHP 5.3-compatible.

comment:5 in reply to:  4 Changed 15 years ago by imadden@…

Replying to ryandesign@…:

I don't think we're talking here about "site maintainers" (people writing and hosting PHP web sites); indeed, they should either upgrade their site to be PHP 5.3-compatible, or not upgrade their PHP installation to 5.3. Rather, I think we're talking about people who want to use others' PHP-based web apps, which may not yet be PHP 5.3-compatible.

That is a very good point. One example I can think of off the top of my head is something like Joomla. It has not been tested on PHP 5.3 yet, so where Joomla will still run on PHP 5.3, it runs very buggy. Being able to use PHP 5.2.10 until Joomla has been properly tested on PHP 5.3 would be very helpful.

comment:6 Changed 15 years ago by ryandesign (Ryan Carsten Schmidt)

You already can go back to php 5.2 if needed. It's just not as easy a procedure as it would be if there were a separate php52 port.

comment:7 in reply to:  2 Changed 15 years ago by mikkel@…

Replying to ryandesign@…:

Still, this request has been made a few times before. Are there specific examples of things that don't work in 5.3 that worked in 5.2?

I think all big PHP systems like Drupal, TYPO3, Magento, etc. have problems with incompatibilities, if not for the core systems, then the wealth of plugins available. I know this to be a fact in Drupal. With all large systems there's probably a 6 months lead time before it's feasible to upgrade to 5.3, and even then many developers will prefer to stay on 5.2, since that's what's on most web servers nowadays, to avoid compatibility bugs when deploying code.

You already can go back to php 5.2 if needed. It's just not as easy a procedure as it would be if there were a separate php52 port.

Yeah, I used to use this approach on Leopard, but on Snow Leopard, the old php5 port doesn't compile.

comment:8 Changed 15 years ago by ryandesign (Ryan Carsten Schmidt)

Status: newassigned

6 months is a long time to expect a user to deal with such a workaround, and the Snow Leopard problem (which would have to be fixed like it was in #19997) just adds to it.

I also see the PHP team is readying the release of 5.2.11 so there will still be new releases of php 5.2.x.

Sounds like I should make a php52 port after all.

comment:9 Changed 15 years ago by ryandesign (Ryan Carsten Schmidt)

Port: php52 added; php5 removed
Summary: PHP 5.2php52: make a port for php 5.2.x

comment:10 in reply to:  8 Changed 15 years ago by ryandesign (Ryan Carsten Schmidt)

Resolution: fixed
Status: assignedclosed

Replying to ryandesign@…:

Sounds like I should make a php52 port after all.

Done:

For now, php52 conflicts with php5 (and php5-devel).

comment:11 Changed 15 years ago by mikkel@…

Great, thanks – I'm looking forward to trying it out :)

comment:12 Changed 15 years ago by josh@…

When trying to install php52 with the 1.8.0 version of MacPorts for Snow Leopard the following error occurs:

port install php52 +apache2 +mysql5 +pear +sqlite +universal
--->  Computing dependencies for php52
--->  Fetching php52
--->  Attempting to fetch php-5.2.10.tar.bz2 from http://www.php.net/distributions/
--->  Verifying checksum(s) for php52
--->  Extracting php52
--->  Applying patches to php52
--->  Configuring php52
Error: Target org.macports.configure returned: configure failure: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_php52/work/php-5.2.10" && ./configure --prefix=/opt/local --disable-dependency-tracking --mandir=/opt/local/share/man --infodir=/opt/local/share/info --with-config-file-path=/opt/local/etc/php5 --with-config-file-scan-dir=/opt/local/var/db/php5 --enable-calendar --with-iconv=/opt/local --enable-exif --enable-ftp --enable-wddx --with-zlib=/opt/local --with-bz2=/opt/local --with-libxml-dir=/opt/local --with-gettext=/opt/local --with-libexpat-dir=/opt/local --with-xmlrpc --enable-soap --enable-bcmath --enable-mbstring --enable-dba --enable-zip --with-openssl=/opt/local --with-mhash=/opt/local --with-mcrypt=/opt/local --with-mime-magic --with-xsl=/opt/local --with-curl=/opt/local --with-pcre-regex=/opt/local --with-gd --with-jpeg-dir=/opt/local --with-png-dir=/opt/local --enable-gd-native-ttf --with-freetype-dir=/opt/local --with-ldap=/usr --with-kerberos=/usr --with-iodbc=/usr --with-apxs2=/opt/local/apache2/bin/apxs --with-mysql=/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_php52/work/mysql5 --with-pdo-mysql=/opt/local/bin/mysql_config5 --with-mysql-sock=/opt/local/var/run/mysql5/mysqld.sock --with-mysqli=/opt/local/bin/mysql_config5 --with-sqlite --with-pdo-sqlite=/opt/local --enable-sqlite-utf8 --with-pear=/opt/local/lib/php " returned error 1
Command output: checking path to configuration file... /opt/local/etc/php5
checking where to scan for configuration files... /opt/local/var/db/php5
checking whether to enable safe mode by default... no
checking for safe mode exec dir... /usr/local/php/bin
checking whether to enable PHP's own SIGCHLD handler... no
checking whether to enable magic quotes by default... no
checking whether to explicitly link against libgcc... no
checking whether to enable short tags by default... yes
checking whether to enable dmalloc... no
checking whether to enable IPv6 support... yes
checking how big to make fd sets... using system default

Configuring extensions
checking size of long... (cached) 8
checking size of int... (cached) 4
checking for int32_t... yes
checking for uint32_t... yes
checking for sys/types.h... (cached) yes
checking for inttypes.h... (cached) yes
checking for stdint.h... (cached) yes
checking for string.h... (cached) yes
checking for stdlib.h... (cached) yes
checking for strtoll... yes
checking for atoll... yes
checking for strftime... (cached) yes
checking whether to enable LIBXML support... yes
checking libxml2 install dir... /opt/local
checking for xml2-config path... /opt/local/bin/xml2-config
checking whether libxml build works... no
configure: error: build test failed.  Please check the config.log for details.

Error: Status 1 encountered during processing.

My installed ports (all freshly installed on a new installation)

port installed

The following ports are currently installed:
  apache2 @2.2.13_2+darwin+preforkmpm (active)
  apr @1.3.8_0 (active)
  apr-util @1.3.9_0 (active)
  autoconf @2.64_2 (active)
  autoconf213 @2.13_1 (active)
  automake @1.11_0 (active)
  bzip2 @1.0.5_2+darwin (active)
  curl @7.19.6_0 (active)
  db46 @4.6.21_5 (active)
  expat @2.0.1_0 (active)
  freetype @2.3.9_0+macosx (active)
  gawk @3.1.7_0 (active)
  gettext @0.17_4 (active)
  gperf @3.0.4_0 (active)
  grep @2.5.4_0 (active)
  gsed @4.2.1_0 (active)
  help2man @1.36.4_1 (active)
  jpeg @6b_3 (active)
  libiconv @1.13_0 (active)
  libmcrypt @2.5.8_1 (active)
  libpng @1.2.38_0 (active)
  libtool @2.2.6a_0 (active)
  libxml @1.8.17_0+darwin (active)
  libxml2 @2.7.3_0 (active)
  libxslt @1.1.24_2 (active)
  m4 @1.4.13_0 (active)
  mhash @0.9.9.9_0 (active)
  mysql5 @5.0.85_0 (active)
  mysql5-server @5.0.85_0 (active)
  ncurses @5.7_0+darwin_10 (active)
  ncursesw @5.7_0+darwin_10 (active)
  openssl @0.9.8k_0+darwin (active)
  p5-locale-gettext @1.05_0 (active)
  pcre @7.9_0 (active)
  perl5 @5.8.9_0 (active)
  perl5.8 @5.8.9_3 (active)
  pkgconfig @0.23_1 (active)
  readline @6.0.000_1+darwin (active)
  sqlite3 @3.6.17_0+darwin_10 (active)
  tiff @3.8.2_3+macosx (active)
  zlib @1.2.3_2 (active)

Any advice on how to proceed? I had tried to previously install the php5 port but as previously noted it wouldn't compile on Snow Leopard.

Thanks.

Changed 15 years ago by josh@…

Attachment: config.log added

php52 config.log

comment:13 Changed 15 years ago by josh@…

Update:

It seemed to be a conflict with the dependent ports compiled during the attempted php5 port and the php52 port. I was able to get a clean working install by doing:

port clean php52
port -f uninstall installed
port installed
port install grep
port install apache2
port install mysql5-server
port install php52 +apache2 +mysql5 +pear +sqlite

comment:14 Changed 15 years ago by ryandesign (Ryan Carsten Schmidt)

Glad you got it working. If you encounter other issues, please file new tickets.

Note: See TracTickets for help on using tickets.