X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=src%2Fpharext%2FSourceDir%2FPecl.php;h=0b7055a99da64e0afb162490a18944bbeffd030c;hb=861260c111bff72f60665393660b6f5375559510;hp=d21a0e0de313a5155a48bb88424ef377dea80769;hpb=d774f309d3216bf1923f6bd5b49ee0fb287e0ce7;p=pharext%2Fpharext diff --git a/src/pharext/SourceDir/Pecl.php b/src/pharext/SourceDir/Pecl.php index d21a0e0..0b7055a 100644 --- a/src/pharext/SourceDir/Pecl.php +++ b/src/pharext/SourceDir/Pecl.php @@ -3,6 +3,7 @@ namespace pharext\SourceDir; use pharext\Command; +use pharext\Exception; use pharext\SourceDir; /** @@ -38,7 +39,7 @@ class Pecl implements \IteratorAggregate, SourceDir } elseif (realpath("$path/package.xml")) { $sxe = simplexml_load_file("$path/package.xml"); } else { - throw new \Exception("Missing package.xml in $path"); + throw new Exception("Missing package.xml in $path"); } $sxe->registerXPathNamespace("pecl", $sxe->getDocNamespaces()[""]); @@ -46,14 +47,14 @@ class Pecl implements \IteratorAggregate, SourceDir if (!isset($args->name)) { $name = (string) $sxe->xpath("/pecl:package/pecl:name")[0]; foreach ($args->parse(2, ["--name", $name]) as $error) { - $cmd->error("%s\n", $error); + $cmd->warn("%s\n", $error); } } if (!isset($args->release)) { $release = (string) $sxe->xpath("/pecl:package/pecl:version/pecl:release")[0]; foreach ($args->parse(2, ["--release", $release]) as $error) { - $cmd->error("%s\n", $error); + $cmd->warn("%s\n", $error); } } @@ -89,6 +90,7 @@ class Pecl implements \IteratorAggregate, SourceDir * @return string */ private static function loadHook($configure, $dependencies) { + require_once "pharext/Version.php"; return include __DIR__."/../../pharext_install.tpl.php"; } @@ -106,7 +108,7 @@ class Pecl implements \IteratorAggregate, SourceDir substr($b, strpos(".ext.phar", $b)) ); }); - yield realpath($this->path."/".end($glob)); + yield end($glob); } else { unset($dependencies[$key]); } @@ -132,17 +134,17 @@ class Pecl implements \IteratorAggregate, SourceDir private function generateFiles() { foreach ($this->generateHooks() as $file => $hook) { if ($this->cmd->getArgs()->verbose) { - $this->cmd->info("Packaging %s\n", is_string($hook) ? $hook : $file); + $this->cmd->info("Packaging %s\n", is_scalar($hook) ? $hook : $file); } yield $file => $hook; } foreach ($this->sxe->xpath("//pecl:file") as $file) { $path = $this->path ."/". $this->dirOf($file) ."/". $file["name"]; if ($this->cmd->getArgs()->verbose) { - $this->cmd->info("Packaging %s\n", $path); + $this->cmd->info("Packaging %s\n", substr($path, strlen($this->path))); } if (!($realpath = realpath($path))) { - $this->cmd->error("File %s does not exist", $path); + $this->cmd->warn("File %s does not exist", $path); } yield $realpath; }