From: Operating system: Solaris and OS X PHP version: trunk-SVN-2010-11-18 (snap) Package: Compile Failure Bug Type: Bug Bug description:DTrace build config broken by Rev 305329
Description: ------------ The changes made in Rev 305329 break the --enable-dtrace configuration option on both Solaris and OS X. The main problems I was able to identify are: 1.) The steps required to build DTrace-enabled binaries are different on Solaris and OS X (see references below). 305329 removed the platform check that allowed OS X to bypass the extra linking step required by Solaris (dtrace -G -s ...). 2.) The generation of the DTrace header file (zend_dtrace_gen.h via 'dtrace -h ...') was moved to Makefile (from configure) - this broke various targets that depended on the header file prior to it's generation (late in the Makefile). 3.) A typo (I think) in the path variable used to generate the DTrace targets injected junk into the pathnames, breaking the build. The included patch file "dtrace_build.patch" may be applied to Rev 305455 to resolve these issues. It essentially re-enlists some of the functionality that existed prior to 305329. This has been tested on both OS X and Solaris. Examples of how to build DTrace USDT probes on Solaris, see: http://dtrace.org/blogs/ahl/2006/05/08/user-land-tracing-gets-better-and-better/ and http://blogs.sun.com/dap/entry/writing_a_dtrace_usdt_provider For the relevant documentation on OS X, see the dtrace(1M) man page: http://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/ man1/dtrace.1.html Expected result: ---------------- --enable-dtrace should configure and build on platforms that have DTrace (Solaris and OS X - maybe FreeBSD?) Actual result: -------------- --enable-dtrace fails on both platforms for the reasons mentioned in the Description section. -- Edit bug report at http://bugs.php.net/bug.php?id=53338&edit=1 -- Try a snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=53338&r=trysnapshot52 Try a snapshot (PHP 5.3): http://bugs.php.net/fix.php?id=53338&r=trysnapshot53 Try a snapshot (trunk): http://bugs.php.net/fix.php?id=53338&r=trysnapshottrunk Fixed in SVN: http://bugs.php.net/fix.php?id=53338&r=fixed Fixed in SVN and need be documented: http://bugs.php.net/fix.php?id=53338&r=needdocs Fixed in release: http://bugs.php.net/fix.php?id=53338&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=53338&r=needtrace Need Reproduce Script: http://bugs.php.net/fix.php?id=53338&r=needscript Try newer version: http://bugs.php.net/fix.php?id=53338&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=53338&r=support Expected behavior: http://bugs.php.net/fix.php?id=53338&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=53338&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=53338&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=53338&r=globals PHP 4 support discontinued: http://bugs.php.net/fix.php?id=53338&r=php4 Daylight Savings: http://bugs.php.net/fix.php?id=53338&r=dst IIS Stability: http://bugs.php.net/fix.php?id=53338&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=53338&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=53338&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=53338&r=nozend MySQL Configuration Error: http://bugs.php.net/fix.php?id=53338&r=mysqlcfg