]> git.proxmox.com Git - proxmox-backup.git/commitdiff
move build.rs and friends to pbs-buildcfg
authorWolfgang Bumiller <w.bumiller@proxmox.com>
Mon, 19 Jul 2021 12:59:17 +0000 (14:59 +0200)
committerWolfgang Bumiller <w.bumiller@proxmox.com>
Mon, 19 Jul 2021 12:59:18 +0000 (14:59 +0200)
with this the main crate won't be re-compiled every time a
*binary* is modified

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Cargo.toml
build.rs [deleted file]
pbs-buildcfg/Cargo.toml
pbs-buildcfg/build.rs [new file with mode: 0644]
pbs-buildcfg/src/lib.rs
src/api2/node/apt.rs
src/api2/version.rs
src/bin/proxmox-backup-client.rs

index 8dcd50d15ae7a8e9bce3d26c1c55ecd9e28acb15..1ebda322df2b4f10b600dba0f173e3a9a3066323 100644 (file)
@@ -15,7 +15,6 @@ edition = "2018"
 license = "AGPL-3"
 description = "Proxmox Backup"
 homepage = "https://www.proxmox.com"
-build = "build.rs"
 
 exclude = [ "build", "debian", "tests/catar_data/test_symlink/symlink1"]
 
diff --git a/build.rs b/build.rs
deleted file mode 100644 (file)
index 754966b..0000000
--- a/build.rs
+++ /dev/null
@@ -1,24 +0,0 @@
-// build.rs
-use std::env;
-use std::process::Command;
-
-fn main() {
-    let repoid = match env::var("REPOID") {
-        Ok(repoid) => repoid,
-        Err(_) => {
-            match Command::new("git")
-                .args(&["rev-parse", "HEAD"])
-                .output()
-            {
-                Ok(output) => {
-                    String::from_utf8(output.stdout).unwrap()
-                }
-                Err(err) => {
-                    panic!("git rev-parse failed: {}", err);
-                }
-            }
-        }
-    };
-
-    println!("cargo:rustc-env=REPOID={}", repoid);
-}
index e3c5d20e6c991814fe57a47af4428710b4a3ddd6..86f9e954c6f08ce49a5c4440b8404b5e030d5891 100644 (file)
@@ -4,5 +4,6 @@ version = "0.1.0"
 authors = ["Proxmox Support Team <support@proxmox.com>"]
 edition = "2018"
 description = "macros used for pbs related paths such as configdir and rundir"
+build = "build.rs"
 
 [dependencies]
diff --git a/pbs-buildcfg/build.rs b/pbs-buildcfg/build.rs
new file mode 100644 (file)
index 0000000..754966b
--- /dev/null
@@ -0,0 +1,24 @@
+// build.rs
+use std::env;
+use std::process::Command;
+
+fn main() {
+    let repoid = match env::var("REPOID") {
+        Ok(repoid) => repoid,
+        Err(_) => {
+            match Command::new("git")
+                .args(&["rev-parse", "HEAD"])
+                .output()
+            {
+                Ok(output) => {
+                    String::from_utf8(output.stdout).unwrap()
+                }
+                Err(err) => {
+                    panic!("git rev-parse failed: {}", err);
+                }
+            }
+        }
+    };
+
+    println!("cargo:rustc-env=REPOID={}", repoid);
+}
index 75c2e27f069a1555dd4c4fe8b48ff5f994aa6324..012af9dc5dab4405fbf1195fb9d3ca37122412ed 100644 (file)
@@ -1,5 +1,15 @@
 //! Exports configuration data from the build system
 
+pub const PROXMOX_PKG_VERSION: &str =
+    concat!(
+        env!("CARGO_PKG_VERSION_MAJOR"),
+        ".",
+        env!("CARGO_PKG_VERSION_MINOR"),
+    );
+pub const PROXMOX_PKG_RELEASE: &str = env!("CARGO_PKG_VERSION_PATCH");
+pub const PROXMOX_PKG_REPOID: &str = env!("REPOID");
+
+
 /// The configured configuration directory
 pub const CONFIGDIR: &str = "/etc/proxmox-backup";
 pub const JS_DIR: &str = "/usr/share/javascript/proxmox-backup";
index 271277d1ccf0cccdb66544488eaf58961d300cd0..ad649d8c65ae41d2bbe09747462ff882b289f698 100644 (file)
@@ -352,8 +352,8 @@ pub fn get_versions() -> Result<Vec<APTUpdateInfo>, Error> {
         packages.push(unknown_package("proxmox-backup".into(), Some(running_kernel)));
     }
 
-    let version = crate::api2::version::PROXMOX_PKG_VERSION;
-    let release = crate::api2::version::PROXMOX_PKG_RELEASE;
+    let version = pbs_buildcfg::PROXMOX_PKG_VERSION;
+    let release = pbs_buildcfg::PROXMOX_PKG_RELEASE;
     let daemon_version_info = Some(format!("running version: {}.{}", version, release));
     if let Some(pkg) = pbs_packages.iter().find(|pkg| pkg.package == "proxmox-backup-server") {
         let mut pkg = pkg.clone();
index d18d0cf40c1d79cd3d80a336b7245c66bcb00231..1a4c5b85613c9c50b9a90cb82020e528ff700414 100644 (file)
@@ -6,15 +6,6 @@ use serde_json::{json, Value};
 use proxmox::api::{ApiHandler, ApiMethod, Router, RpcEnvironment, Permission};
 use proxmox::api::schema::ObjectSchema;
 
-pub const PROXMOX_PKG_VERSION: &str =
-    concat!(
-        env!("CARGO_PKG_VERSION_MAJOR"),
-        ".",
-        env!("CARGO_PKG_VERSION_MINOR"),
-    );
-pub const PROXMOX_PKG_RELEASE: &str = env!("CARGO_PKG_VERSION_PATCH");
-pub const PROXMOX_PKG_REPOID: &str = env!("REPOID");
-
 fn get_version(
     _param: Value,
     _info: &ApiMethod,
@@ -22,9 +13,9 @@ fn get_version(
 ) -> Result<Value, Error> {
 
     Ok(json!({
-        "version": PROXMOX_PKG_VERSION,
-        "release": PROXMOX_PKG_RELEASE,
-        "repoid": PROXMOX_PKG_REPOID
+        "version": pbs_buildcfg::PROXMOX_PKG_VERSION,
+        "release": pbs_buildcfg::PROXMOX_PKG_RELEASE,
+        "repoid": pbs_buildcfg::PROXMOX_PKG_REPOID
     }))
 }
 
index 11ad5417dcd581a8dfccb4536731e08de193b153..e20689794bd4bc92993907522302b343206312b9 100644 (file)
@@ -413,9 +413,9 @@ async fn api_version(param: Value) -> Result<(), Error> {
 
     let mut version_info = json!({
         "client": {
-            "version": version::PROXMOX_PKG_VERSION,
-            "release": version::PROXMOX_PKG_RELEASE,
-            "repoid": version::PROXMOX_PKG_REPOID,
+            "version": pbs_buildcfg::PROXMOX_PKG_VERSION,
+            "release": pbs_buildcfg::PROXMOX_PKG_RELEASE,
+            "repoid": pbs_buildcfg::PROXMOX_PKG_REPOID,
         }
     });
 
@@ -429,7 +429,11 @@ async fn api_version(param: Value) -> Result<(), Error> {
         }
     }
     if output_format == "text" {
-        println!("client version: {}.{}", version::PROXMOX_PKG_VERSION, version::PROXMOX_PKG_RELEASE);
+        println!(
+            "client version: {}.{}",
+            pbs_buildcfg::PROXMOX_PKG_VERSION,
+            pbs_buildcfg::PROXMOX_PKG_RELEASE,
+        );
         if let Some(server) = version_info["server"].as_object() {
             let server_version = server["version"].as_str().unwrap();
             let server_release = server["release"].as_str().unwrap();