Hi.
The phpnar-plugin in a pre-version (0.1.0) was released. It helps to compile php binaries for maven-nar-plugin (
http://duns.github.com/maven-nar-plugin/). The maven-nar-plugin enables maven to ship, install and identify binaries that fit your local platform. You only specifcy a groupid, artifactid and version and maven-nar-plugin guesses the matching binary. The pom.xml does not contain any hint about the platform you are running so that you can use the same pom.xml on both, linux and windows. The main benefit for us is to provide php binaries over maven and obselete the need to locally install and setup php. Instead let maven do this for you.
We are providing php starting from 5.3.0 through maven in the next days. Some versions are available in the next days (starting with 5.4.0 the nexus is populated):
Or you simply wait for some more handy goals (f.e. "mvn org.phpmaven:maven-php-plugin:install-php"). Ask for a small example if you cannot run it on your own. It will take some more days to provide the goals for local php install.
What versions do we provide?
In php-maven we start at 5.3.0 and provide every release version up to the current version (5.3.16 and 5.4.6) as well as future releases,
What Platforms are supported?
x86 (32bit) Windows via vc9
amd64 Windows via vc9
x86 (32bit) Linux via gcc
amd64 Linux via gcc
ppc MacOSX via gcc crosscompile
i386 (32bit) MacOSX via gcc crosscompile
x86_64 MacOSX via gcc crosscompile
If you need another platform please ask for it.
About your own compilation/ suhosin and others.
We use net.php:php for unmodified compilations.
There are several patches around. We want to provide the suhosin patches version too. You can provide your own version too. However keep in mind to not use the original net.php:php tag for a patched or modified php version. Instead use a group id specific to your patch.
We are planning to provide some sapis (most important the apache dll) via maven too.
About extensions
Using dependencies will become more handy. The next plugin aims to compile php extensions for maven-nar. We will provide the common built in extensions and the pecl extensions in the phpmaven repository as well as xdebug.
Setup of extensions will become very easy. For example via pom.xml: "<extensions><extension>bzip2</extension><extension>myext</extension></extension><zendExtension>xdebug</zendExtension>"
And even your php project can contain a hint for the minimum php version or the extensions it needs:
<dependencies>
<dependency>
<groupId>net.php</groupId>
<artifactId>php</artifactId>
<version>[5.3.5,5.4.0)</version>
<type>phpnar</type>
</dependency>
<dependency>
<groupId>net.php.extension</groupId>
<artifactId>bzip2</artifactId>
<type>phpext</type>
</dependency>
</dependencies>
Have fun
Martin