Esempio n. 1
0
 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;
 }
Esempio n. 2
0
# 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');
Esempio n. 3
0
# 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);
    }
}