Pierre Joye wrote: > On Wed, Jun 10, 2009 at 5:36 PM, Greg Beaver<g...@chiaraquartet.net> wrote: > >> Hi, >> >> I don't see an obvious way to build the phar.phar on windows. >> >> Can someone with knowledge of how configure.js works (i.e. a Pierre) >> give me a tip on how to tell it to make phar.phar after building >> Release_TS/php.exe or Debug_TS/php.exe? >> >> Otherwise, it would also be easy to provide a simple script that builds >> the phar.phar, and have the snapshot builder run the script. >> >> Which way would be better? >> > > Can you create it from PHP/using a php script? > > If yes, we can add it to mkdist.php easily. Fantastic, in that case, all that needs to be added to mkdist.php is this:
echo "Generating phar.phar\r\n"; $phar = new Phar($path_to_php . '/phar.phar', 0, 'pharcommand'); foreach (new DirectoryIterator($path_to_phar . '/phar') as $file) { if ($file->isDir() || $file == 'phar.php') continue; echo 'adding ', $file, "\r\n"; $phar[(string) $file] = file_get_contents($path_to_phar. '/phar/' . $file); } $phar->setSignatureAlgorithm(Phar::SHA1); $stub = file($path_to_phar . '/phar/phar.php'); unset($stub[0]); // remove hashbang $phar->setStub(implode('', $stub)); echo "Creating phar.phar.bat\r\n"; file_put_contents($path_to_php . '/phar.phar.bat', 'php phar.phar %1 %2 %3 %4 %5 %6 %7 %8 %9\r\n"); That should do it. The only problem is that the user will need to adjust the path of phar.phar at install-time, but I don't see any obvious way around this outside of the win32 installer. Note that $path_to_php should be the equivalent of C:\php5 and $path_to_phar should be C:\php5\ext\phar Greg -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php