コード例 #1
0
ファイル: profgen.php プロジェクト: prophile/yarns
function file_hash($file)
{
    if (file_exists($file)) {
        return md5_file($file);
    } else {
        return '';
    }
}
function writeout($data, $file)
{
    $md5d = md5($data);
    $md5f = file_hash($file);
    $bf = basename($file);
    if ($md5d == $md5f) {
        echo "{$bf} unchanged\n";
    } else {
        file_put_contents($file, $data);
        echo "wrote new {$bf}\n";
    }
}
$config = new profile($template_dir . '/config.h');
foreach ($profiles as $prof) {
    add_profile($config, $prof);
}
writeout($config->generate(), "{$base_dir}/include/yarns/config.h");
$makefile = new profile($template_dir . '/Makefile');
foreach ($profiles as $prof) {
    add_profile($makefile, $prof);
}
writeout($makefile->generate(), "{$base_dir}/Makefile");
echo "Built configuration from profiles: " . implode(', ', $profiles) . "\n";
コード例 #2
0
ファイル: Packages.php プロジェクト: kaspernj/knjphpfw
}
$fp1 = gzopen("Packages.gz", "w");
$fp2 = fopen("Packages", "w");
$od = opendir("./") or die("Could not dir.\n");
$first = true;
while (($file = readdir($od)) !== false) {
    if ($file != "." && $file != "..") {
        $ext = substr($file, -4, 4);
        if ($ext == ".ipk" || $ext == ".deb") {
            echo "Reading \"" . $file . "\".\n";
            $result = ipkg_parse($file);
            $md5sum = md5sum($file);
            if ($first == true) {
                $first = false;
            } else {
                writeout("\n");
            }
            foreach ($result["control"] as $key => $value) {
                $keyl = strtolower($key);
                if (strlen($key) > 0 && strlen($value) > 0 && $keyl != "filename" && $keyl != "size" && $keyl != "md5sum") {
                    writeout($key . ": " . $value . "\n");
                }
            }
            writeout("Filename: " . $file . "\n");
            writeout("Size: " . filesize($file) . "\n");
            writeout("MD5Sum: " . $md5sum . "\n");
        }
    }
}
gzclose($fp1);
gzclose($fp2);