create compatibility layer for mysql-admutils commands
This commit was merged in pull request #32.
This commit is contained in:
38
build.rs
Normal file
38
build.rs
Normal file
@@ -0,0 +1,38 @@
|
||||
#[cfg(feature = "mysql-admutils-compatibility")]
|
||||
use anyhow::anyhow;
|
||||
#[cfg(feature = "mysql-admutils-compatibility")]
|
||||
use std::{env, os::unix::fs::symlink, path::PathBuf};
|
||||
|
||||
fn main() -> anyhow::Result<()> {
|
||||
#[cfg(feature = "mysql-admutils-compatibility")]
|
||||
{
|
||||
// NOTE: This is slightly illegal, and depends on implementation details.
|
||||
// But it is only here for ease of testing the compatibility layer,
|
||||
// and not critical in any way. Considering the code is never going
|
||||
// to be used as a library, it should be fine.
|
||||
let target_profile_dir: PathBuf = PathBuf::from(env::var("OUT_DIR")?)
|
||||
.parent()
|
||||
.and_then(|p| p.parent())
|
||||
.and_then(|p| p.parent())
|
||||
.ok_or(anyhow!("Could not resolve target profile directory"))?
|
||||
.to_path_buf();
|
||||
|
||||
dbg!(&target_profile_dir);
|
||||
|
||||
if !target_profile_dir.join("mysql-useradm").exists() {
|
||||
symlink(
|
||||
target_profile_dir.join("mysqladm"),
|
||||
target_profile_dir.join("mysql-useradm"),
|
||||
)?;
|
||||
}
|
||||
|
||||
if !target_profile_dir.join("mysql-dbadm").exists() {
|
||||
symlink(
|
||||
target_profile_dir.join("mysqladm"),
|
||||
target_profile_dir.join("mysql-dbadm"),
|
||||
)?;
|
||||
}
|
||||
}
|
||||
|
||||
Ok(())
|
||||
}
|
||||
Reference in New Issue
Block a user