support packages that have been pickle'd
[pharext/pharext] / src / pharext / SourceDir / Pecl.php
index a9150ced7b0904adfc0fa27fe21186c1c75cd91e..d21a0e0de313a5155a48bb88424ef377dea80769 100644 (file)
@@ -33,10 +33,13 @@ class Pecl implements \IteratorAggregate, SourceDir
         * @see \pharext\SourceDir::__construct()
         */
        public function __construct(Command $cmd, $path) {
-               if (!realpath("$path/package.xml")) {
+               if (realpath("$path/package2.xml")) {
+                       $sxe = simplexml_load_file("$path/package2.xml");
+               } elseif (realpath("$path/package.xml")) {
+                       $sxe = simplexml_load_file("$path/package.xml");
+               } else {
                        throw new \Exception("Missing package.xml in $path");
                }
-               $sxe = simplexml_load_file("$path/package.xml");
                $sxe->registerXPathNamespace("pecl", $sxe->getDocNamespaces()[""]);
                
                $args = $cmd->getArgs();
@@ -86,7 +89,7 @@ class Pecl implements \IteratorAggregate, SourceDir
         * @return string
         */
        private static function loadHook($configure, $dependencies) {
-               return include __DIR__."/../pharext_install.tpl.php";
+               return include __DIR__."/../../pharext_install.tpl.php";
        }
 
        /**