X-Git-Url: http://git.roojs.org/?p=Pman.Core;a=blobdiff_plain;f=JsCompile.php;h=a5b915904666e1b8dd44d1a84b23a48deef5ac35;hp=c460373ba63202997d68c6195ae69e6a72eb1db8;hb=HEAD;hpb=c1250c576587b593d919465c282b2eddeb2047d2 diff --git a/JsCompile.php b/JsCompile.php index c460373b..089db58d 100644 --- a/JsCompile.php +++ b/JsCompile.php @@ -37,7 +37,7 @@ class Pman_Core_JsCompile extends Pman } - function get($proj, $args) + function get($proj, $args=array()) { if (empty($args)) { die("missing action : eg. build or install"); @@ -124,7 +124,7 @@ class Pman_Core_JsCompile extends Pman } $tf = // sort exc. the .js - usort($ofiles,create_function('$a,$b', 'return Pman_Core_JsCompile::jsSort($a,$b);')); + usort($ofiles,function($a,$b) { return Pman_Core_JsCompile::jsSort($a,$b); }); //print_R($ofiles); @@ -199,50 +199,18 @@ class Pman_Core_JsCompile extends Pman function packCssCore($files, $output) { - - $o = HTML_FlexyFramework::get()->Pman_Core; - - if (empty($o['cssminify']) || !file_exists($o['cssminify'])) { - echo ''; - return false; - } - require_once 'System.php'; + - $seed= System::which('seed'); - $gjs = System::which('gjs'); + echo ''; + return false; + // if we did.. use this? - if (!$seed && !$gjs) { - echo ''; - return false; + //require_once 'HTML/CSS/Minify.php'; + //$x = new HTML_CSS_Minify(substr($relpath,0,-1), $dir, $relfiles); - } - $targetm = file_exists($output) ? filemtime($output) : 0; - $max = 0; - $ofiles = array(); - foreach($files as $f => $mt) { - $max = max($max,$mt); - $ofiles[] = escapeshellarg($f); - } - if ($max < $targetm) { - return true; - } - if (!file_exists(dirname($output))) { - mkdir(dirname($output), 0755, true); - } - $eoutput = escapeshellarg($output); - $cmd = $seed ? - ("$seed {$o['cssminify']} $eoutput " . implode($ofiles, ' ')) : - ("$gjs {$o['cssminify']} -- -- $eoutput " . implode($ofiles, ' ')); - //echo "
$cmd\n"; echo `$cmd`; exit;
-        `$cmd`;
+          //  file_put_contents($compiledir.'/'.$output , $x->minify( $this->baseURL.$asset));
         
         
-        // we should do more checking.. return val etc..
-        if (file_exists($output) && ($max < filemtime($output) ) ) {
-            return true;
-        }
-        return false;
-        
     }
     /**
      * wrapper arround packer...
@@ -256,12 +224,12 @@ class Pman_Core_JsCompile  extends Pman
     function pack($files, $output, $translation_base=false)
     {
         
-         
-        $o = HTML_FlexyFramework::get()->Pman_Core;
-        if (isset($o['jspacker'])) {
-            return $this->packSeed($files,$output,$translation_base);
+        if (empty($files)) {
+            return false;
         }
-    
+        
+        // if packer is running, then dont compile - just output onebyone...
+        
         
         require_once 'System.php';
         $packer = System::which('roojspacker');
@@ -283,12 +251,34 @@ class Pman_Core_JsCompile  extends Pman
             echo '';
             return true;
         }
-        //var_dump($output);
+        
+        
+        
+        $pg = System::which('pgrep');
+        if ($pg == '') {
+            echo '';
+            return false;
+        }
+        
+        $cmd = "$pg roojspacker";
+        $res = `$cmd`;
+        $out = empty($res) ? '' : trim($res);
+        if (strlen($out) > 0) {
+            echo '';
+            return false;
+        }
+         
+        
+        if (file_exists($output)) {
+            unlink($output);
+        }
+        
+         
         if (!file_exists(dirname($output))) {
             mkdir(dirname($output), 0755, true);
         }
-        $lsort = create_function('$a,$b','return strlen($a) > strlen($b) ? 1 : -1;');
-        usort($ofiles, $lsort);
+        
+        usort($ofiles, function($a,$b)  { return strlen($a) > strlen($b) ? 1 : -1; });
         
         //$eoutput = " -k  -o " . escapeshellarg($output) ; // with whitespace..
         $eoutput = "  -t " . escapeshellarg($output) ;
@@ -300,8 +290,8 @@ class Pman_Core_JsCompile  extends Pman
         //            
         //}
         
-        
-        $cmd = "$packer  $eoutput  -f " . implode($ofiles, ' -f ') . ' 2>&1';
+    
+        $cmd = "$packer  $eoutput  -f " . implode(' -f ', $ofiles) . ' 2>&1';
         //echo "
$cmd\n";
         //echo `$cmd`;
         
@@ -320,17 +310,29 @@ class Pman_Core_JsCompile  extends Pman
         echo "";
-            
+        clearstatcache();
         // we should do more checking.. return val etc..
-        if (file_exists($output) && ($max < filemtime($output) ) ) {
-            
+        if (file_exists($output) && filesize($output) && ($max < filemtime($output) ) ) {
+            echo "\n";
             return true;
         }
+        echo '';
+     
+        
         echo "";
         return false;
         
     }
     
+    
+    function packIsRunning()
+    {
+        require_once 'System.php';
+      
+        
+    }
+    
+    
     // depricated verison using seed.
     function packSeed($files, $output, $translation_base=false)
     {
@@ -338,7 +340,7 @@ class Pman_Core_JsCompile  extends Pman
          
         $o = HTML_FlexyFramework::get()->Pman_Core;
         
-        if (empty($o['jspacker']) || !file_exists($o['jspacker'].'/pack.js')) {
+        if (empty($o['packseed']) || !file_exists($o['jspacker'].'/pack.js')) {
             echo '';
             return false;
             
@@ -381,8 +383,8 @@ class Pman_Core_JsCompile  extends Pman
         
         
         $cmd = ($seed ?
-             "$seed {$o['jspacker']}/pack.js " :
-             "$gjs -I {$o['jspacker']} -I {$o['jspacker']}/JSDOC  {$o['jspacker']}/pack.js -- -- " 
+             "$seed {$o['packseed']}/pack.js " :
+             "$gjs -I {$o['packseed']} -I {$o['packseed']}/JSDOC  {$o['packseed']}/pack.js -- -- " 
               
              ) . " $eoutput  $toutput " . implode($ofiles, ' ') . ' 2>&1';
         //echo "
$cmd\n";
@@ -409,7 +411,9 @@ class Pman_Core_JsCompile  extends Pman
             
             return true;
         }
-        echo "";
+        
+         
+        echo "\n\n";
         return false;
         
     }
@@ -451,8 +455,8 @@ class Pman_Core_JsCompile  extends Pman
         
         $o = HTML_FlexyFramework::get()->Pman_Core;
         
-        if (empty($o['jspacker']) || !file_exists($o['jspacker'].'/pack.js')) {
-            $this->err ="no jstoolkit path set [Pman_Core][jspacker] to the
+        if (empty($o['packseed']) || !file_exists($o['packseed'].'/pack.js')) {
+            $this->err ="no jstoolkit path set [Pman_Core][packseed] to the
                     introspection documentation directory where pack.js is located.";
             if ($this->cli) echo $this->err;
             return false;
@@ -460,7 +464,7 @@ class Pman_Core_JsCompile  extends Pman
         
         // should we be more specirfic!??!?!?
          
-        $cmd = "$seed {$o['jspacker']}/pack.js -m $proj  -a  $src/*.js";
+        $cmd = "$seed {$o['packseed']}/pack.js -m $proj  -a  $src/*.js";
         echo "$cmd\n";
         passthru($cmd);
         // technically we should trash old compiled files..