Download and Install php5 version 5.2.6 on Mac OS X
Thursday the 24th of July, 2008

    php5  most recent diff


      View the most recent changes for the php5 port at: php5.darwinports.com/diff
      Scroll down toward the bottom of the page to get installation instructions for php5.
      The raw portfile for php5 5.2.6 is located here:
      http://php5.darwinports.com/dports/www/php5/Portfile
      Find related portfiles with the unique DarwinPorts.com search feature.
      Check for any related Fink projects here: pdb.finkproject.org/pdb/package.php/php5
      Google
      Web Darwinports.com



      # $Id: Portfile 37803 2008-06-24 09:31:37Z ryandesign macports.org $

      PortSystem 1.0

      Name: php5
      Version: 5.2.6
      revision 1
      Category: www lang php
      Maintainers: ryandesign jwa
      Homepage: http://www.php.net/
      distfiles php-${version}.tar.bz2:release
      use_bzip2 yes
      worksrcdir php-${version}
      Platform: darwin freebsd
      use_parallel_build yes

      Description: PHP: Hypertext Preprocessor

      Long Description: PHP is a widely-used general-purpose scripting language that is especially suited for developing web sites, but can also be used for command-line scripting.

      master_sites ${homepage}distributions/:release http://it.php.net/distributions/:release http://fi.php.net/distributions/:release http://de.php.net/distributions/:release http://gr.php.net/distributions/:release http://fr.php.net/distributions/:release http://es.php.net/distributions/:release http://se.php.net/distributions/:release http://downloads.php.net/ilia/:rc http://downloads.php.net/jani/:rc

      checksums md5 7380ffecebd95c6edb317ef861229ebd sha1 2a2b1afa657a7739a23784c869d57c3e0a7ad6b4 rmd160 27f730d4b1ceb1c42ff03618dbfa0dc87a00990b

      depends_lib port:libxml2 port:libxslt port:openssl port:zlib port:bzip2 port:libiconv port:expat port:gettext port:tiff port:mhash port:libmcrypt port:curl port:pcre port:gd2 port:jpeg port:libpng port:freetype

      configure.args --mandir=${prefix}/share/man --infodir=${prefix}/share/info --with-config-file-path=${prefix}/etc --enable-calendar --with-iconv=${prefix} --enable-exif --enable-ftp --enable-wddx --with-zlib=${prefix} --with-bz2=${prefix} --without-mysql --without-sqlite --without-pdo-sqlite --with-libxml-dir=${prefix} --with-gettext=${prefix} --with-xml --with-expat-dir=${prefix} --with-xmlrpc --enable-soap --enable-filepro --enable-bcmath --enable-trans-sid --enable-mbstring --enable-dbx --enable-dba --enable-zip --with-openssl=${prefix} --with-mhash=${prefix} --with-mcrypt=${prefix} --with-xsl=${prefix} --with-curl=${prefix} --with-pcre-regex=${prefix} --with-gd=${prefix} --with-jpeg-dir=${prefix} --with-png-dir=${prefix} --enable-gd-native-ttf --without-pear --with-freetype-dir=${prefix}

      platform darwin 6 {
      depends_lib-append lib:libdl:dlcompat
      configure.env-append LIBS=-ldl
      configure.cppflags-append "-no-cpp-precomp -DBIND_8_COMPAT"
      }

      platform darwin 7 {
      configure.env-append LIBS=-ldl
      configure.cppflags-append "-no-cpp-precomp"
      }

      platform macosx {
      configure.args-append --with-ldap=/usr --with-kerberos=/usr --with-iodbc=/usr
      }

      # Build an Apache 1 module. On Mac OS X, it uses Apple's provided Apache 1 server.
      # On other platforms, the MacPorts apache port is used. Keep the options here
      # in sync with those in the relevant part of the post-destroot phase.
      Variant: apache conflicts apache2 description {for Apple Apache} {
      if { ! [variant_isset macosx] } {
      depends_lib-append path:${prefix}/sbin/apxs:apache
      configure.args-append --with-apxs=${prefix}/sbin/apxs
      } else {
      destroot.violate_mtree yes
      configure.args-append --with-apxs=/usr/sbin/apxs
      }
      }

      # Build an Apache 2 module. Keep the options here in sync with those in the
      # relevant part of the post-destroot phase.
      Variant: apache2 conflicts apache description {for current Apache} {
      destroot.violate_mtree yes
      depends_lib-append path:${prefix}/apache2/bin/apxs:apache2
      configure.args-append --with-apxs2=${prefix}/apache2/bin/apxs
      }

      # Build a FastCGI binary. Keep the options here in sync with those in the
      # relevant part of the post-destroot phase.
      Variant: fastcgi description {add fastcgi binary} {
      if { ![variant_isset apache] && ![variant_isset apache2] } {
      configure.args-append --enable-fastcgi --enable-force-cgi-redirect --enable-memory-limit
      }
      }

      Variant: gmp description {Add GNU MP functions} {
      depends_lib-append port:gmp
      configure.args-append --with-gmp=${prefix}
      }

      Variant: dbase description {Add dBase file format support} {
      configure.args-append --enable-dbase
      }

      # Add IMAP support. See:
      # http://www.php.net/imap
      Variant: imap description {enable operation with IMAP protocol} {
      depends_lib-append port:cclient
      configure.args-append --with-imap=${prefix} --with-imap-ssl=${prefix}
      }

      Variant: pspell description {Add pspell spell-checking functions} {
      depends_lib-append port:aspell
      configure.args-append --with-pspell=${prefix}
      }

      # Add Tidy support. See:
      # http://www.php.net/tidy
      Variant: tidy description {add Tidy support} {
      depends_lib-append port:tidy
      configure.args-append --with-tidy=${prefix}
      }

      Variant: mssql description {add support for MS-SQL server} {
      depends_lib-append port:freetds
      configure.args-append --with-mssql=${prefix}
      }

      Variant: snmp conflicts macports_snmp description {use Apple snmp} {
      # This compiles PHP5 with SNMP linked against Apple's included NET-SNMP.
      configure.args-append --with-snmp=/usr
      }

      Variant: macports_snmp conflicts snmp description {use MacPorts snmp} {
      # This compiles PHP with SNMP linked against MacPorts' NET-SNMP.
      depends_lib-append port:net-snmp
      configure.args-append --with-snmp=${prefix}
      }

      Variant: mysql3 conflicts mysql4 mysql5 description {build MySQL 3 support} {
      depends_lib-append port:mysql3
      configure.args-delete --without-mysql
      configure.args-append --with-mysql=${prefix} --with-pdo-mysql=${prefix}
      }

      Variant: mysql4 conflicts mysql3 mysql5 description {build MySQL 4 support} {
      depends_lib-append port:mysql4
      configure.args-delete --without-mysql
      configure.args-append --with-mysql=${prefix} --with-pdo-mysql=${prefix}
      }

      Variant: mysql5 conflicts mysql3 mysql4 description {build MySQL 5 support} {
      depends_lib-append path:${prefix}/bin/mysql_config5:mysql5
      configure.args-delete --without-mysql
      configure.args-append --with-mysql=${workpath}/mysql5 --with-pdo-mysql=${prefix}/bin/mysql_config5 --with-mysql-sock=${prefix}/var/run/mysql5/mysqld.sock --with-mysqli=${prefix}/bin/mysql_config5
      post-extract {
      file mkdir "${workpath}/mysql5"
      file link -symbolic "${workpath}/mysql5/lib" "${prefix}/lib/mysql5"
      file link -symbolic "${workpath}/mysql5/include" "${prefix}/include/mysql5"
      }
      }

      Variant: oracle description {Add Oracle oci8 database functions with the Oracle Instant Client} {
      depends_lib-append port:oracle-instantclient
      configure.args-append --with-oci8=instantclient,${prefix}/lib/oracle
      }

      Variant: postgresql82 conflicts postgresql83 description {provide postgresql82 support} {
      depends_lib-append port:postgresql82
      configure.args-append --with-pgsql=${prefix}/lib/postgresql82/bin --with-pdo-pgsql=${prefix}/lib/postgresql82/bin
      }

      Variant: postgresql83 conflicts postgresql82 description {provide postgresql83 support} {
      depends_lib-append port:postgresql83
      configure.args-append --with-pgsql=${prefix}/lib/postgresql83/bin --with-pdo-pgsql=${prefix}/lib/postgresql83/bin
      }

      # add sqlite support
      # note that standard sqlite support uses the built-in sqlite2 libraries
      # while pdo sqlite support uses the sqlite3 libraries from the sqlite3 port
      Variant: sqlite description {build sqlite support} {
      depends_lib-append port:sqlite3
      configure.args-delete --without-sqlite --without-pdo-sqlite
      configure.args-append --with-sqlite --with-pdo-sqlite=${prefix} --enable-sqlite-utf8
      }

      # add semaphore, shared memory and IPC functions; see http://www.php.net/sem
      Variant: ipc description {build IPC support} {
      configure.args-append --enable-shmop --enable-sysvsem --enable-sysvshm --enable-sysvmsg
      }

      # add process control functions; see http://www.php.net/pcntl
      Variant: pcntl description {provide process control} {
      configure.args-append --enable-pcntl
      }

      # if no apache/apache2/fastcgi variant is set, we set it (need better default variant management)
      if { ![variant_isset apache] && ![variant_isset apache2] && ![variant_isset fastcgi] } {
      if { ! [variant_isset macosx] } {
      depends_lib-append path:${prefix}/sbin/apxs:apache
      configure.args-append --with-apxs=${prefix}/sbin/apxs
      } else {
      configure.args-append --with-apxs=/usr/sbin/apxs
      }
      }

      Variant: pear description {add pear stuff} {
      configure.args-delete --without-pear
      configure.args-append --with-pear=${prefix}/lib/php
      destroot.target-append install-pear
      destroot.args-append PHP_PEAR_INSTALL_DIR=${prefix}/lib/php
      post-destroot {
      #nuke pear-stuff in ${destroot}
      system "cd ${destroot} && rm -rf .channels .depdb .depdblock .filemap .lock"

      system "if \[ -f ${prefix}/lib/php/.depdblock \]; then rm -f ${destroot}${prefix}/lib/php/.depdblock; fi"
      system "if \[ -f ${prefix}/lib/php/.depdb \]; then rm -f ${destroot}${prefix}/lib/php/.depdb; fi"
      system "if \[ -f ${prefix}/lib/php/.filemap \]; then rm -f ${destroot}${prefix}/lib/php/.filemap; fi"
      system "if \[ -f ${prefix}/lib/php/.lock \]; then rm -f ${destroot}${prefix}/lib/php/.lock; fi"
      system "if \[ -d ${prefix}/lib/php/.channels \]; then rm -rf ${destroot}${prefix}/lib/php/.channels; fi"
      }
      }

      Variant: readline description {Add GNU readline functions} {
      depends_lib-append port:readline
      configure.args-append --with-readline=${prefix}
      }

      Variant: sockets description {Add socket communication functions} {
      # Note: This extension will be moved to the PECL repository and will no longer be bundled with PHP as of PHP 5.3.0.
      # This variant should be removed when the port is upgraded to PHP 5.3.0.
      configure.args-append --enable-sockets
      }

      Variant: t1lib description {Add PostScript Type 1 font support with t1lib} {
      depends_lib-append port:t1lib
      configure.args-append --with-t1lib=${prefix} }

      destroot.args INSTALL_ROOT=${destroot}

      destroot.target install-cli install-build install-headers install-programs

      post-destroot {
      # Copy the Apache 1 module.
      if { [variant_isset apache] } {
      xinstall -m 755 -d ${destroot}${prefix}/libexec/apache ${destroot}${prefix}/etc/apache/extras-conf
      xinstall -m 755 ${worksrcpath}/libs/libphp5.so ${destroot}${prefix}/libexec/apache/
      xinstall -m 755 -c ${filespath}/mod_php.conf ${destroot}$prefix/etc/apache/extras-conf
      }

      # Copy the Apache 2 module.
      if { [variant_isset apache2] } {
      xinstall -m 755 -d ${destroot}${prefix}/apache2/modules ${destroot}${prefix}/apache2/conf/extras-conf
      xinstall -m 755 ${worksrcpath}/libs/libphp5.so ${destroot}${prefix}/apache2/modules/
      xinstall -m 755 -c ${filespath}/mod_php.conf ${destroot}${prefix}/apache2/conf/extras-conf
      }

      if { [variant_isset fastcgi] } {
      # If we've built an Apache module (any version) then the FastCGI binary
      # will not have been built, so we need to run through the whole process
      # again and build just the FastCGI binary. Keep the options here in sync
      # with the options specified in the apache and apache2 variants.
      if { [variant_isset apache] } {
      if { ![variant_isset macosx] } {
      configure.args-delete --with-apxs=${prefix}/sbin/apxs
      } else {
      configure.args-delete --with-apxs=/usr/sbin/apxs
      }
      }
      if { [variant_isset apache2] } {
      configure.args-delete --with-apxs2=${prefix}/apache2/bin/apxs
      }

      # Run the build again to get the FastCGI binary. Keep the options here
      # in sync with those in the fastcgi variant.
      if { [variant_isset apache] || [variant_isset apache2] } {
      configure.args-append --enable-fastcgi --enable-force-cgi-redirect --enable-memory-limit
      ui_msg "$UI_PREFIX Configuring ${name} again for fastcgi"
      command_exec configure
      ui_msg "$UI_PREFIX Building ${name} again for fastcgi"
      command_exec build
      ui_msg "$UI_PREFIX Staging ${name} fastcgi into destroot"
      }

      # Copy the FastCGI binary to the bin dir under a new name so it doesn't
      # conflict with the cli version.
      xinstall -m 755 ${worksrcpath}/sapi/cgi/php-cgi ${destroot}${prefix}/bin
      }

      #file rename ${destroot}${prefix}/etc/pear.conf ${destroot}${prefix}/etc/pear.conf.sample

      # Copy the default php.ini files.
      xinstall -m 755 -d ${destroot}${prefix}/etc
      xinstall -m 755 ${workpath}/${worksrcdir}/php.ini-dist ${destroot}${prefix}/etc/php.ini-dist
      xinstall -m 755 ${workpath}/${worksrcdir}/php.ini-recommended ${destroot}${prefix}/etc/php.ini-recommended
      }

      post-install {
      ui_msg "\nIf this is your first install, you might want"

      if { [variant_isset apache] } {
      ui_msg " * enable php in apache :\n"

      ui_msg "cd ${prefix}/libexec/apache"
      ui_msg "${prefix}/apache/bin/apxs -a -e -n \"php5\" libphp5.so\n"
      ui_msg "* copy ${prefix}/etc/php.ini-dist to ${prefix}/etc/php.ini"
      }

      if { [variant_isset apache2] } {
      ui_msg "cd ${prefix}/apache2/modules"
      ui_msg "${prefix}/apache2/bin/apxs -a -e -n \"php5\" libphp5.so\n"
      ui_msg "* copy ${prefix}/etc/php.ini-dist to ${prefix}/etc/php.ini"
      }

      #ui_msg "* copy ${prefix}/etc/pear.conf.sample to ${prefix}/etc/pear.conf"
      }

      test.run yes

      livecheck.check regex
      livecheck.url ${homepage}downloads.php
      livecheck.regex get/php-(5\\.\[0-9.\]+)\\.tar

    If you haven't already installed Darwin Ports, you can find easy instructions for doing so at the main Darwin Ports page.

    Once Darwin Ports has been installed, in a terminal window and while online, type the following and hit return:


      %  cd /opt/local/bin/portslocation/dports/php5
      % sudo port install php5
      Password:
    You will then be prompted for your root password, which you should enter. You may have to wait for a few minutes while the software is retrieved from the network and installed for you. Y ou should see something that looks similar to:

      ---> Fetching php5
      ---> Verifying checksum for php5
      ---> Extracting php5
      ---> Configuring php5
      ---> Building php5 with target all
      ---> Staging php5 into destroot
      ---> Installing php5
    - Make sure that you do not close the terminal window while Darwin Ports is working. Once the software has been installed, you can find further information about using php5 with these commands:
      %  man php5
      % apropos php5
      % which php5
      % locate php5

     Where to find more information:

    Darwin Ports



    image test