diff --git a/tasks/build-examples.js b/tasks/build-examples.js
index 412324a0e3..07324551f6 100644
--- a/tasks/build-examples.js
+++ b/tasks/build-examples.js
@@ -1,4 +1,5 @@
/*global Buffer */
+var path = require('path');
var Metalsmith = require('metalsmith');
var templates = require('metalsmith-templates');
@@ -11,6 +12,10 @@ var cleanupJSRegEx = /.*(goog\.require(.*);|.*renderer: exampleNS\..*,?)[\n]*/g;
var isCssRegEx = /\.css$/;
var isJsRegEx = /\.js$/;
+var srcDir = path.join(__dirname, '..', 'examples_src');
+var destDir = path.join(__dirname, '..', 'examples');
+var templatesDir = path.join(__dirname, '..', 'config', 'examples');
+
function main(callback) {
function build(files) {
@@ -30,10 +35,9 @@ function main(callback) {
file.ol_version = pjson.version;
file.js_resource = '';
- var js = fs.readFileSync(__dirname + '/../examples_src/' +
- match[1] + '.js', 'utf8');
+ var js = fs.readFileSync(path.join(srcDir, match[1] + '.js'), 'utf8');
file.js_inline = js.replace(cleanupJSRegEx, '');
- var cssFile = __dirname + '/../examples_src/' + match[1] + '.css';
+ var cssFile = path.join(srcDir, match[1] + '.css');
if (fs.existsSync(cssFile)) {
file.css_resource = '';
@@ -65,12 +69,12 @@ function main(callback) {
new Metalsmith('.')
- .source('examples_src')
- .destination('examples')
+ .source(srcDir)
+ .destination(destDir)
.use(build)
.use(templates({
engine: 'handlebars',
- directory: 'config/examples'
+ directory: templatesDir
}))
.build(function(err) {
callback(err);