#!/usr/bin/hphpi -f addOption( 'interpret', 'Run in interpreted mode' ); } function execute() { if ( $this->hasOption( 'interpret' ) ) { $this->runInterpreted(); } else { $this->runCompiled(); } } function runCompiled() { global $wgHipHopBuildDirectory; $thisDir = realpath( __DIR__ ); $IP = realpath( "$thisDir/../.." ); if ( strval( $wgHipHopBuildDirectory ) !== '' ) { $buildDir = $wgHipHopBuildDirectory; } else { $buildDir = "$thisDir/build"; } if ( file_exists( "$buildDir/source" ) ) { $sourceBase = "$buildDir/source"; } else { $sourceBase = realpath( "$IP/.." ); } passthru( 'cd ' . wfEscapeShellArg( $sourceBase ) . " && " . 'MW_INSTALL_PATH=' . wfEscapeShellArg( $IP ) . ' ' . wfEscapeShellArg( "$buildDir/persistent/mediawiki-hphp", '-c', "$thisDir/server.conf", '-v', "Server.SourceRoot=$sourceBase", '-v', "Server.IncludeSearchPaths.0=$sourceBase", '-v', 'ServerVariables.MW_COMPILED=1', '--mode=server', '--port=8080' ), $ret ); exit( $ret ); } function runInterpreted() { $thisDir = realpath( __DIR__ ); $IP = realpath( "$thisDir/../.." ); $sourceBase = realpath( "$IP/.." ); passthru( 'cd ' . wfEscapeShellArg( $sourceBase ) . " && " . 'MW_INSTALL_PATH=' . wfEscapeShellArg( $IP ) . ' ' . wfEscapeShellArg( 'hphpi', '-c', "$thisDir/server.conf", '-v', "Server.SourceRoot=$sourceBase", '-v', "Server.IncludeSearchPaths.0=$sourceBase", '--mode=server', '--port=8080' ), $ret ); exit( $ret ); } } $maintClass = 'RunHipHopServer'; require_once( RUN_MAINTENANCE_IF_MAIN );