function get_parsefiles($srcpath) { $parsefiles = array(); $srcdir = dir($srcpath); while (false !== ($file = $srcdir->read())) { $filepath = $srcpath . "/" . $file; if (is_dir($filepath) && $file !== "." && $file !== "..") { $parsefiles = array_merge($parsefiles, get_parsefiles($filepath)); continue; } if (preg_match('/\\.(c|cpp|h|ec)$/i', $file)) { $parsefiles[] = $filepath; } } $srcdir->close(); return $parsefiles; }
# Alternatively, the contents of this file may be used under the terms of # either the GNU General Public License Version 2 or later (the "GPL"), or # the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), # in which case the provisions of the GPL or the LGPL are applicable instead # of those above. If you wish to allow use of your version of this file only # under the terms of either the GPL or the LGPL, and not to allow others to # use your version of this file under the terms of the MPL, indicate your # decision by deleting the provisions above and replace them with the notice # and other provisions required by the GPL or the LGPL. If you do not delete # the provisions above, a recipient may use your version of this file under # the terms of any one of the MPL, the GPL or the LGPL. # # ***** END LICENSE BLOCK ***** // file created: Fri 10 Nov 2006 12:50:10 PM PST /* * script for scanning pecl extensions * */ require_once './_phpgencix.inc'; if ($argc < 2 || in_array($argv[1], array('--help', '-help', '-h', '-?')) || !is_dir($argv[1])) { echo "Extract function summaries from sources of PHP\n\n"; echo "Usage: {$argv['0']} <source dir>\n"; echo " --help, -help, -h, -? - to get this help\n"; die; } $meta = array("name" => "PECL", "description" => "A collection of PHP Extensions"); $files = get_parsefiles($argv[1]); $peclScanner = new phpSrcParser($argv[1], $files, false); $peclScanner->get_func_data(); $cix_gen = new phpCixGenerator($peclScanner->func_data); $cix_gen->gen_cix($peclScanner->label, $meta, 'generated');
# decision by deleting the provisions above and replace them with the notice # and other provisions required by the GPL or the LGPL. If you do not delete # the provisions above, a recipient may use your version of this file under # the terms of any one of the MPL, the GPL or the LGPL. # # ***** END LICENSE BLOCK ***** // file created: Fri 10 Nov 2006 12:50:10 PM PST /* * script for scanning pecl extensions * */ require_once './_phpgencix.inc'; if ($argc < 2 || in_array($argv[1], array('--help', '-help', '-h', '-?')) || !is_dir($argv[1])) { echo "Extract function summaries from sources of PHP\n\n"; echo "Usage: {$argv['0']} <source dir>\n"; echo " --help, -help, -h, -? - to get this help\n"; die; } $cwd = $argv[1]; $dh = opendir($cwd); while (!false == ($file = readdir($dh))) { if (is_dir("{$cwd}/{$file}") && file_exists("{$cwd}/{$file}/config.m4")) { // probably a pecl extension //echo "$cwd/$file\n"; $files = get_parsefiles("{$cwd}/{$file}"); $peclScanner = new phpSrcParser($file, $files, false); $peclScanner->get_func_data(); $cix_gen = new phpCixGenerator($peclScanner->func_data); $cix_gen->gen_cix($peclScanner->label); } }