🐛 Fix packaging issues under Windows
This commit is contained in:
9
bin/builders/BaseBuilder.ts
vendored
9
bin/builders/BaseBuilder.ts
vendored
@@ -255,7 +255,7 @@ export default abstract class BaseBuilder {
|
||||
? `${packageManager} run build:debug`
|
||||
: `${packageManager} run build`;
|
||||
|
||||
const argSeparator = packageManager === 'npm' ? ' --' : '';
|
||||
const argSeparator = ' --'; // Both npm and pnpm need -- to pass args to scripts
|
||||
let fullCommand = `${baseCommand}${argSeparator} -c "${configPath}"`;
|
||||
|
||||
if (target) {
|
||||
@@ -283,6 +283,10 @@ export default abstract class BaseBuilder {
|
||||
}
|
||||
|
||||
protected getBuildCommand(packageManager: string = 'pnpm'): string {
|
||||
const baseCommand = this.options.debug
|
||||
? `${packageManager} run build:debug`
|
||||
: `${packageManager} run build`;
|
||||
|
||||
// Use temporary config directory to avoid modifying source files
|
||||
const configPath = path.join(
|
||||
npmDirectory,
|
||||
@@ -290,8 +294,7 @@ export default abstract class BaseBuilder {
|
||||
'.pake',
|
||||
'tauri.conf.json',
|
||||
);
|
||||
|
||||
let fullCommand = this.buildBaseCommand(packageManager, configPath);
|
||||
let fullCommand = `${baseCommand} -- -c "${configPath}"`;
|
||||
|
||||
// For macOS, use app bundles by default unless DMG is explicitly requested
|
||||
if (IS_MAC && this.options.targets === 'app') {
|
||||
|
||||
10
bin/builders/WinBuilder.ts
vendored
10
bin/builders/WinBuilder.ts
vendored
@@ -26,6 +26,10 @@ export default class WinBuilder extends BaseBuilder {
|
||||
}
|
||||
|
||||
protected getBuildCommand(packageManager: string = 'pnpm'): string {
|
||||
const baseCommand = this.options.debug
|
||||
? `${packageManager} run build:debug`
|
||||
: `${packageManager} run build`;
|
||||
|
||||
const configPath = path.join('src-tauri', '.pake', 'tauri.conf.json');
|
||||
const buildTarget = this.getTauriTarget(this.buildArch, 'win32');
|
||||
|
||||
@@ -35,11 +39,7 @@ export default class WinBuilder extends BaseBuilder {
|
||||
);
|
||||
}
|
||||
|
||||
let fullCommand = this.buildBaseCommand(
|
||||
packageManager,
|
||||
configPath,
|
||||
buildTarget,
|
||||
);
|
||||
let fullCommand = `${baseCommand} -- -c "${configPath}" --target ${buildTarget}`;
|
||||
|
||||
// Add features
|
||||
const features = this.getBuildFeatures();
|
||||
|
||||
18
dist/cli.js
vendored
18
dist/cli.js
vendored
@@ -54,9 +54,9 @@ var files = [
|
||||
var scripts = {
|
||||
start: "pnpm run dev",
|
||||
dev: "pnpm run tauri dev",
|
||||
build: "tauri build",
|
||||
"build:debug": "tauri build --debug",
|
||||
"build:mac": "tauri build --target universal-apple-darwin",
|
||||
build: "pnpm run tauri build --",
|
||||
"build:debug": "pnpm run tauri build -- --debug",
|
||||
"build:mac": "pnpm run tauri build -- --target universal-apple-darwin",
|
||||
"build:config": "chmod +x scripts/configure-tauri.mjs && node scripts/configure-tauri.mjs",
|
||||
analyze: "cd src-tauri && cargo bloat --release --crates",
|
||||
tauri: "tauri",
|
||||
@@ -742,7 +742,7 @@ class BaseBuilder {
|
||||
const baseCommand = this.options.debug
|
||||
? `${packageManager} run build:debug`
|
||||
: `${packageManager} run build`;
|
||||
const argSeparator = packageManager === 'npm' ? ' --' : '';
|
||||
const argSeparator = ' --'; // Both npm and pnpm need -- to pass args to scripts
|
||||
let fullCommand = `${baseCommand}${argSeparator} -c "${configPath}"`;
|
||||
if (target) {
|
||||
fullCommand += ` --target ${target}`;
|
||||
@@ -764,9 +764,12 @@ class BaseBuilder {
|
||||
return features;
|
||||
}
|
||||
getBuildCommand(packageManager = 'pnpm') {
|
||||
const baseCommand = this.options.debug
|
||||
? `${packageManager} run build:debug`
|
||||
: `${packageManager} run build`;
|
||||
// Use temporary config directory to avoid modifying source files
|
||||
const configPath = path.join(npmDirectory, 'src-tauri', '.pake', 'tauri.conf.json');
|
||||
let fullCommand = this.buildBaseCommand(packageManager, configPath);
|
||||
let fullCommand = `${baseCommand} -- -c "${configPath}"`;
|
||||
// For macOS, use app bundles by default unless DMG is explicitly requested
|
||||
if (IS_MAC && this.options.targets === 'app') {
|
||||
fullCommand += ' --bundles app';
|
||||
@@ -921,12 +924,15 @@ class WinBuilder extends BaseBuilder {
|
||||
return `${name}_${tauriConfig.version}_${targetArch}_${language}`;
|
||||
}
|
||||
getBuildCommand(packageManager = 'pnpm') {
|
||||
const baseCommand = this.options.debug
|
||||
? `${packageManager} run build:debug`
|
||||
: `${packageManager} run build`;
|
||||
const configPath = path.join('src-tauri', '.pake', 'tauri.conf.json');
|
||||
const buildTarget = this.getTauriTarget(this.buildArch, 'win32');
|
||||
if (!buildTarget) {
|
||||
throw new Error(`Unsupported architecture: ${this.buildArch} for Windows`);
|
||||
}
|
||||
let fullCommand = this.buildBaseCommand(packageManager, configPath, buildTarget);
|
||||
let fullCommand = `${baseCommand} -- -c "${configPath}" --target ${buildTarget}`;
|
||||
// Add features
|
||||
const features = this.getBuildFeatures();
|
||||
if (features.length > 0) {
|
||||
|
||||
@@ -32,9 +32,9 @@
|
||||
"scripts": {
|
||||
"start": "pnpm run dev",
|
||||
"dev": "pnpm run tauri dev",
|
||||
"build": "tauri build",
|
||||
"build:debug": "tauri build --debug",
|
||||
"build:mac": "tauri build --target universal-apple-darwin",
|
||||
"build": "pnpm run tauri build --",
|
||||
"build:debug": "pnpm run tauri build -- --debug",
|
||||
"build:mac": "pnpm run tauri build -- --target universal-apple-darwin",
|
||||
"build:config": "chmod +x scripts/configure-tauri.mjs && node scripts/configure-tauri.mjs",
|
||||
"analyze": "cd src-tauri && cargo bloat --release --crates",
|
||||
"tauri": "tauri",
|
||||
|
||||
Reference in New Issue
Block a user