3 if (php_sapi_name() != 'cli') {
9 $cc = explode('/', $cwd);
10 if (array_pop($cc) !== 'roojs1') {
11 echo "this should be run in roojs1 directory...\n";
15 ini_set('include_path',
16 dirname(__FILE__) . '/../:' .
17 dirname(__FILE__) . '/../../pear:' .
18 ini_get('include_path')
21 $rootDir = dirname(__FILE__) . '/../..';
24 "{$rootDir}/roojs1/less/bootstrap/bootstrap.less" => array(
25 'baseDir' => "{$rootDir}/roojs1/css-bootstrap",
26 'name' => 'bootstrap.css',
27 'minify' => 'bootstrap.min.css',
28 'sourceMapRootpath' => '../less/bootstrap/',
29 'variables' => array("@import 'variables.less';")
31 "{$rootDir}/roojs1/less/bootstrap/bootstrap-light.less" => array(
32 'baseDir' => "{$rootDir}/roojs1/css-bootstrap",
33 'name' => 'bootstrap-light.css',
34 'minify' => 'bootstrap-light.min.css',
35 'sourceMapRootpath' => '../less/bootstrap/',
36 'variables' => array("@import 'variables.less';")
39 "{$rootDir}/roojs1/less/roojs-bootstrap/roojs-bootstrap.less" => array(
40 'baseDir' => "{$rootDir}/roojs1/css-bootstrap",
41 'name' => 'roojs-bootstrap-debug.css',
42 'minify' => 'roojs-bootstrap.css',
43 'sourceMapRootpath' => '../less/roojs-bootstrap/',
44 'variables' => array("@import '../bootstrap/variables.less';")
48 foreach ($files as $src => $file){
50 $css = "{$file['baseDir']}/{$file['name']}";
52 if(!file_exists($css)){
56 $dir = "{$file['baseDir']}/{$file['sourceMapRootpath']}";
58 $variable = "{$dir}variables.less";
60 if(file_exists($variable) && filemtime("{$dir}variables.less") > filemtime($css)){
66 foreach(scandir($dir) as $f) {
68 if (!strlen($f) || $f[0] == '.') {
74 if(filemtime($less) > filemtime($css)){
81 echo "{$css} already up-to-date \n";
87 require_once 'HTML/Less.php';
89 foreach ($files as $src => $file){
91 if(!file_exists($src)){
92 echo "{$less} does not exist...\n";
98 $less = new HTML_Less();
100 $less->setOptions(array(
101 'variables' => $file['variables'],
103 'sourceMapWriteTo' => "{$file['baseDir']}/{$file['name']}.map",
104 'sourceMapURL' => "{$file['name']}.map",
105 'sourceMapRootpath' => $file['sourceMapRootpath'],
106 'sourceMapBasepath' => dirname(realpath($src))
109 $css = "{$file['baseDir']}/{$file['name']}";
111 echo "Compiling - {$src} To {$css}\n";
113 $less->compileFile($src, $css);
115 $min = "{$file['baseDir']}/{$file['minify']}";
117 $less = new HTML_Less();
119 $less->setOptions(array(
121 'variables' => $file['variables'],
123 'sourceMapWriteTo' => "{$file['baseDir']}/{$file['minify']}.map",
124 'sourceMapURL' => "{$file['minify']}.map",
125 'sourceMapRootpath' => $file['sourceMapRootpath'],
126 'sourceMapBasepath' => dirname(realpath($src))
129 echo "Minifing - {$src} To {$min}\n";
131 $less->compileFile($src, $min);
133 } catch (Exception $ex) {
134 echo "lessphp fatal error: {$ex->getMessage()}\n";