static function beginConfig($platform, $projectName) { setPlatform($platform); beginProject($projectName, self::$sharedConfig); self::includeDefaultLibs(); $ext = "DLL"; if (Generator::$platform == "mac") { $ext = "Bundle"; } //some platforms will not want a shared config if (Generator::$platform == "360" || Generator::$platform == "ps3") { self::$sharedConfig = false; } //begin either a shared lib config, or a static app config if (self::$sharedConfig) { beginSharedLibConfig(getGameProjectName() . ' ' . $ext, '{C0FCDFF9-E125-412E-87BC-2D89DB971CAB}', 'game', getGameProjectName()); } else { beginAppConfig(getGameProjectName(), '{C0FCDFF9-E125-412E-87BC-2D89DB971CAB}', 'game', getGameProjectName()); } /// Prefs addProjectDefine('TORQUE_SHADERGEN'); addProjectDefine('TORQUE_UNICODE'); if (self::$sharedConfig) { addProjectDefine('TORQUE_SHARED'); } /// For OPCODE addProjectDefine('BAN_OPCODE_AUTOLINK'); addProjectDefine('ICE_NO_DLL'); addProjectDefine('TORQUE_OPCODE'); // For libTomCrypt addProjectDefine('LTC_NO_PROTOTYPES'); // Additional includes addIncludePath("../../game/shaders"); addLibIncludePath("lmng"); addLibIncludePath("lpng"); addLibIncludePath("ljpeg"); addLibIncludePath("lungif"); addLibIncludePath("zlib"); addLibIncludePath("tinyxml"); addLibIncludePath("opcode"); addLibIncludePath("squish"); addLibIncludePath('convexDecomp'); if (Generator::$platform != "360" && Generator::$platform != "ps3") { addLibIncludePath("libvorbis/include"); addLibIncludePath("libogg/include"); addLibIncludePath("libtheora/include"); } // Modules includeModule('core'); includeModule('dsound'); //includeModule( 'fmod'); // FMOD support removed until made as a 3rd party library includeModule('T3D'); includeModule('advancedLighting'); includeModule('basicLighting'); includeModule('collada'); if (Generator::$platform != "360" && Generator::$platform != "ps3") { includeModule('vorbis'); includeModule('theora'); } if (Generator::$platform == "mac" || Generator::$platform == "win32") { includeModule('openal'); } // Dependencies addProjectDependency('lmng'); addProjectDependency('lpng'); addProjectDependency('lungif'); addProjectDependency('ljpeg'); addProjectDependency('zlib'); addProjectDependency('tinyxml'); addProjectDependency('opcode'); addProjectDependency('squish'); addProjectDependency('collada_dom'); addProjectDependency('pcre'); addProjectDependency('convexDecomp'); if (Generator::$platform != "360" && Generator::$platform != "ps3") { addProjectDependency('libvorbis'); addProjectDependency('libogg'); addProjectDependency('libtheora'); } if (Generator::$platform == "mac") { addProjectDefine('__MACOSX__'); addProjectDefine('LTM_DESC'); } if (Generator::$platform == "win32") { setProjectModuleDefinitionFile('../../' . getLibSrcDir() . 'Torque3D/msvc/torque3d.def'); addProjectDefine('UNICODE'); addProjectDefine('INITGUID'); addProjectDefine('_CRT_SECURE_NO_DEPRECATE'); addProjectLibInput('COMCTL32.LIB'); addProjectLibInput('COMDLG32.LIB'); addProjectLibInput('USER32.LIB'); addProjectLibInput('ADVAPI32.LIB'); addProjectLibInput('GDI32.LIB'); addProjectLibInput('WINMM.LIB'); addProjectLibInput('WSOCK32.LIB'); addProjectLibInput('vfw32.lib'); addProjectLibInput('Imm32.lib'); addProjectLibInput('d3d9.lib'); addProjectLibInput('d3dx9.lib'); addProjectLibInput('DxErr.lib'); addProjectLibInput('ole32.lib'); addProjectLibInput('shell32.lib'); addProjectLibInput('oleaut32.lib'); addProjectLibInput('version.lib'); } // Include project specific sources in the project/buildFiles/config/projectCode.conf $projectCode = realpath($argv[1]) . "/buildFiles/config/projectCode.conf"; echo "\n - Loading project code configuration from " . $projectCode . "\n"; include $projectCode; }
function process($project) { $windowsRegistry = new WindowsRegistry(); $MozillaVersion = $windowsRegistry->ReadValue('HKEY_LOCAL_MACHINE\\SOFTWARE\\Mozilla\\Mozilla Firefox', 'CurrentVersion', TRUE); $MozillaExe = $windowsRegistry->ReadValue('HKEY_LOCAL_MACHINE\\SOFTWARE\\Mozilla\\Mozilla Firefox\\' . $MozillaVersion . '\\Main', 'PathToExe', TRUE); // FireFox registry settings $MozillaKey = 'HKEY_LOCAL_MACHINE\\SOFTWARE\\MozillaPlugins\\@'; $html = 'file://' . getcwd() . '/game/web/sample.html'; $html = str_replace("\\", "/", $html); $html = str_replace(" ", "%20", $html); $project->commandRelease = $MozillaExe; $project->commandDebug = $MozillaExe; $project->commandOptimized = $MozillaExe; $project->argsRelease = $html; $project->argsDebug = $html; $project->argsOptimized = $html; //$windowsRegistry->WriteValue($MozillaKey.$this->COMPANYKEY.'/'.$this->PLUGIN, 'Path', $this->GAMEFOLDER.$this->PLUGINNAME.'.dll'); //$windowsRegistry->WriteValue($MozillaKey.$this->COMPANYKEY.'/'.$this->PLUGIN, 'ProductName', $this->PRODUCTNAME); //$windowsRegistry->WriteValue($MozillaKey.$this->COMPANYKEY.'/'.$this->PLUGIN, 'Vendor', $this->COMPANY); //$windowsRegistry->WriteValue($MozillaKey.$this->COMPANYKEY.'/'.$this->PLUGIN, 'Version', $this->VERSION); //$windowsRegistry->WriteValue($MozillaKey.$this->COMPANYKEY.'/'.$this->PLUGIN.'\\MimeTypes\\application/'.$this->MIMETYPE, 'Description', $this->DESCRIPTION); unset($windowsRegistry); $this->processTemplates(); setProjectModuleDefinitionFile('../../../web/source/npplugin/windows/npWebGamePlugin.def'); /// Prefs addProjectDefine('TORQUE_SHADERGEN'); addProjectDefine('TORQUE_SHARED'); addProjectDefine('TORQUE_WEBDEPLOY'); // Firefox addProjectDefine('FIREFOXPLUGIN_EXPORTS'); addProjectDefine('MOZILLA_STRICT_API'); addProjectDefine('XP_WIN'); addProjectDefine('WIN32'); addProjectDefine('_WINDOWS'); addProjectDefine('_USRDLL'); addSrcDir('../web/source/common'); addSrcDir('../web/source/npplugin'); addSrcDir('../web/source/npplugin/windows'); // Additional includes addIncludePath("../../web/source/npplugin/windows"); addProjectLibDir(getAppLibSrcDir() . 'SDL/win32'); addProjectLibDir(getAppLibSrcDir() . 'unicode'); // addProjectLibDir( getAppLibSrcDir() . 'mozilla/lib' ); addProjectLibInput('COMCTL32.LIB'); addProjectLibInput('COMDLG32.LIB'); addProjectLibInput('USER32.LIB'); addProjectLibInput('ADVAPI32.LIB'); addProjectLibInput('GDI32.LIB'); addProjectLibInput('WINMM.LIB'); addProjectLibInput('WSOCK32.LIB'); addProjectLibInput('vfw32.lib'); addProjectLibInput('Imm32.lib'); addProjectLibInput('UnicoWS.lib'); addProjectLibInput('opengl32.lib'); addProjectLibInput('glu32.lib'); addProjectLibInput('ole32.lib'); addProjectLibInput('shell32.lib'); addProjectLibInput('oleaut32.lib'); addProjectLibInput('version.lib'); }