Skip to content

Commit 0a87c35

Browse files
authored
Merge pull request #46 from Paolo-Oliverio/main
make ensureDirSync more verbose and catch errors.
2 parents 6ba843e + f3aa54a commit 0a87c35

6 files changed

Lines changed: 23 additions & 14 deletions

File tree

kmake/src/Project.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -739,6 +739,9 @@ export class Project {
739739

740740
setDebugDir(debugDir: string) {
741741
this.debugDir = path.resolve(this.basedir, debugDir);
742+
if(!fs.existsSync(this.debugDir)) {
743+
throw new Error(`Debug directory ${this.debugDir} does not exist`);
744+
}
742745
}
743746

744747
getCppStd() {

kmake/src/fsextra.ts

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -19,13 +19,14 @@ import {
1919
import * as path from 'path';
2020

2121
function ensureDirSync(dir: string): void {
22-
const parent = path.normalize(path.join(dir, '..'));
23-
if (!fsExistsSync(parent)) {
24-
ensureDirSync(parent);
25-
}
26-
if (!fsExistsSync(dir)) {
27-
fsMkdirSync(dir);
28-
}
22+
try {
23+
if (!fsExistsSync(dir)) {
24+
fsMkdirSync(dir, { recursive: true });
25+
console.log(`Directory ${dir} was created.`);
26+
}
27+
} catch (err) {
28+
console.error(`Error creating directory ${dir}: ${err}`);
29+
}
2930
}
3031

3132
function copyDirSync(from: string, to: string): void {

lib/kmake/Project.js

Lines changed: 3 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

lib/kmake/Project.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

lib/kmake/fsextra.js

Lines changed: 7 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

lib/kmake/fsextra.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)