Skip to content

Commit aa6c916

Browse files
fix(cli): don't build library when building desktop targets, closes #7007 (#7014)
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
1 parent 8e85576 commit aa6c916

File tree

6 files changed

+30
-7
lines changed

6 files changed

+30
-7
lines changed
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
"cli.rs": patch
3+
"cli.js": patch
4+
---
5+
6+
Don't build library files when building desktop targets.

examples/api/src-tauri/src/main.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,5 @@
66
#![cfg_attr(not(debug_assertions), windows_subsystem = "windows")]
77

88
fn main() {
9-
#[cfg(desktop)]
109
api_lib::run();
1110
}

tooling/cli/src/build.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -330,7 +330,7 @@ pub fn setup(options: &mut Options, mobile: bool) -> Result<AppInterface> {
330330
.features
331331
.get_or_insert(Vec::new())
332332
.extend(config_.build.features.clone().unwrap_or_default());
333-
interface.build_options(&mut options.features, mobile);
333+
interface.build_options(&mut options.args, &mut options.features, mobile);
334334

335335
Ok(interface)
336336
}

tooling/cli/src/interface/rust.rs

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -346,14 +346,17 @@ fn lookup<F: FnMut(FileType, PathBuf)>(dir: &Path, mut f: F) {
346346

347347
fn shared_options(
348348
mobile: bool,
349+
args: &mut Vec<String>,
349350
features: &mut Option<Vec<String>>,
350351
app_settings: &RustAppSettings,
351352
) {
352353
if mobile {
354+
args.push("--lib".into());
353355
features
354356
.get_or_insert(Vec::new())
355357
.push("tauri/rustls-tls".into());
356358
} else {
359+
args.push("--bins".into());
357360
let all_features = app_settings
358361
.manifest
359362
.all_enabled_features(if let Some(f) = features { f } else { &[] });
@@ -385,7 +388,7 @@ fn dev_options(
385388
}
386389
*args = dev_args;
387390

388-
shared_options(mobile, features, app_settings);
391+
shared_options(mobile, args, features, app_settings);
389392

390393
if !args.contains(&"--no-default-features".into()) {
391394
let manifest_features = app_settings.manifest.features();
@@ -410,11 +413,16 @@ fn dev_options(
410413
}
411414

412415
impl Rust {
413-
pub fn build_options(&self, features: &mut Option<Vec<String>>, mobile: bool) {
416+
pub fn build_options(
417+
&self,
418+
args: &mut Vec<String>,
419+
features: &mut Option<Vec<String>>,
420+
mobile: bool,
421+
) {
414422
features
415423
.get_or_insert(Vec::new())
416424
.push("custom-protocol".into());
417-
shared_options(mobile, features, &self.app_settings);
425+
shared_options(mobile, args, features, &self.app_settings);
418426
}
419427

420428
fn run_dev<F: Fn(ExitStatus, ExitReason) + Send + Sync + 'static>(

tooling/cli/src/mobile/mod.rs

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -125,14 +125,25 @@ impl Target {
125125
}
126126
}
127127

128-
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
128+
#[derive(Debug, Clone, Serialize, Deserialize)]
129129
pub struct CliOptions {
130130
pub features: Option<Vec<String>>,
131131
pub args: Vec<String>,
132132
pub noise_level: NoiseLevel,
133133
pub vars: HashMap<String, OsString>,
134134
}
135135

136+
impl Default for CliOptions {
137+
fn default() -> Self {
138+
Self {
139+
features: None,
140+
args: vec!["--lib".into()],
141+
noise_level: Default::default(),
142+
vars: Default::default(),
143+
}
144+
}
145+
}
146+
136147
fn setup_dev_config(
137148
config_extension: &mut Option<String>,
138149
force_ip_prompt: bool,

tooling/cli/templates/app/src-tauri/src/main.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,5 @@
22
#![cfg_attr(not(debug_assertions), windows_subsystem = "windows")]
33

44
fn main() {
5-
#[cfg(desktop)]
65
app_lib::run();
76
}

0 commit comments

Comments
 (0)