#!/usr/local/bin/php -q 'lastcraft','role'=>'lead','name'=>'Marcus Baker', 'email'=>'marcus@lastcraft.com'), array ('handle'=>'jsweat','role'=>'helper','name'=>'Jason Sweat', 'email'=>'jsweat_php@yahoo.com'), array ('handle'=>'hfuecks','role'=>'helper','name'=>'Harry Fuecks', 'email'=>'hfuecks@phppatterns.com'), ); /*---------------------------------------------------------------------------*/ /** * Code starts here */ require_once('PEAR/PackageFileManager.php'); $PPFM = new PEAR_PackageFileManager; if (version_compare(phpversion(), '4.3.0', '<') || php_sapi_name() == 'cgi') { define('STDOUT', fopen('php://stdout', 'w')); define('STDERR', fopen('php://stderr', 'w')); register_shutdown_function( create_function('', 'fclose(STDOUT); fclose(STDERR); return true;')); } /** * A giant array to configure the PackageFileManager. For the "roles" see * http://pear.php.net/manual/en/developers.packagedef.php */ $options = array( 'baseinstalldir' => 'simpletest', 'version' => $version, 'packagedirectory' => $packagedir, 'outputdirectory' => $packagedir, 'pathtopackagefile' => $packagedir, 'state' => $state, 'summary' => $shortDesc, 'description' => $longDesc, 'filelistgenerator' => 'file', 'notes' => $releaseNotes, 'package' => 'SimpleTest', 'license' => 'The Open Group Test Suite License', 'dir_roles' => array( 'docs' => 'doc', 'test' => 'test', 'extensions' => 'php', //'tutorials' => 'doc', //'tutorials/SimpleTest' => 'doc', //'ui' => 'php', //'ui/css' => 'data', //'ui/img' => 'data', //'ui/js' => 'data', //'ui/js/tests' => 'test', ), 'exceptions' => array( 'HELP_MY_TESTS_DONT_WORK_ANYMORE' => 'doc', 'LICENSE' => 'doc', 'README' => 'doc', 'TODO' => 'doc', 'VERSION' => 'doc', ), 'ignore' => array( "$packagedir/packages", "$packagedir/ui", ), ); $status = $PPFM->setOptions($options); if (PEAR::isError($status)) { fwrite (STDERR,$status->getMessage()); exit; } foreach ( $maintainers as $maintainer ) { $PPFM->addMaintainer( $maintainer['handle'], $maintainer['role'], $maintainer['name'], $maintainer['email'] ); } // Adds a dependency of PHP 4.2.3+ $status = $PPFM->addDependency('php', '4.2.3', 'ge', 'php'); if (PEAR::isError($status)) { fwrite (STDERR,$status->getMessage()); exit; } // hack (apparently) $PPFM->addRole('tpl', 'php'); $PPFM->addRole('png', 'php'); $PPFM->addRole('gif', 'php'); $PPFM->addRole('jpg', 'php'); $PPFM->addRole('css', 'php'); $PPFM->addRole('js', 'php'); $PPFM->addRole('ini', 'php'); $PPFM->addRole('inc', 'php'); $PPFM->addRole('afm', 'php'); $PPFM->addRole('pkg', 'doc'); $PPFM->addRole('cls', 'doc'); $PPFM->addRole('proc', 'doc'); $PPFM->addRole('sh', 'script'); ob_start(); $status = $PPFM->writePackageFile(false); $output = ob_get_contents(); ob_end_clean(); // Hacks to handle PPFM output $start = strpos ($output,"getMessage()); } ?>