+
+ # Now find out files in a directory
+ $hasError = false;
+ if ( $this->hasOption( 'extensions-dir' ) ) {
+ $extdir = $this->getOption( 'extensions-dir' );
+ $entries = scandir( $extdir );
+ foreach( $entries as $extname ) {
+ if ( $extname == '.' || $extname == '..' || !is_dir( "$extdir/$extname" ) ) {
+ continue;
+ }
+ $extfile = "{$extdir}/{$extname}/{$extname}.php";
+ if ( file_exists( $extfile ) ) {
+ $mmfl['setupFiles'][] = $extfile;
+ } else {
+ $hasError = true;
+ $this->error( "Extension {$extname} in {$extdir} lacks expected {$extname}.php" );
+ }
+ }
+ }
+
+ if ( $hasError ) {
+ $this->error( "Some files are missing (see above). Giving up.", 1 );
+ }
+