From 1155c234d56c807ebc404d765e861e78fc29f103 Mon Sep 17 00:00:00 2001 From: Gabriele Musco Date: Sat, 3 Feb 2024 15:58:14 +0100 Subject: [PATCH] feat: various dependencies for fedora and alpine --- src/dependencies/adb_dep.rs | 3 ++- src/dependencies/basalt_deps.rs | 30 ++++++++++++++++++++---------- src/dependencies/common.rs | 25 +++++++++++++++++++++++++ src/dependencies/mercury_deps.rs | 22 ++++------------------ src/dependencies/monado_deps.rs | 2 ++ 5 files changed, 53 insertions(+), 29 deletions(-) diff --git a/src/dependencies/adb_dep.rs b/src/dependencies/adb_dep.rs index 2c32b33..1071b1e 100644 --- a/src/dependencies/adb_dep.rs +++ b/src/dependencies/adb_dep.rs @@ -11,8 +11,9 @@ pub fn adb_dep() -> Dependency { filename: "adb".into(), packages: HashMap::from([ (LinuxDistro::Arch, "android-tools".into()), - (LinuxDistro::Fedora, "android-tools".into()), (LinuxDistro::Debian, "adb".into()), + (LinuxDistro::Fedora, "android-tools".into()), + (LinuxDistro::Alpine, "android-tools".into()), ]), } } diff --git a/src/dependencies/basalt_deps.rs b/src/dependencies/basalt_deps.rs index 4374cc9..2d0b881 100644 --- a/src/dependencies/basalt_deps.rs +++ b/src/dependencies/basalt_deps.rs @@ -1,6 +1,6 @@ use crate::{ depcheck::{DepType, Dependency, DependencyCheckResult}, - dependencies::common::{dep_eigen, dep_gpp}, + dependencies::common::{dep_eigen, dep_gpp, dep_opencv}, linux_distro::LinuxDistro, }; use std::collections::HashMap; @@ -16,6 +16,8 @@ fn basalt_deps() -> Vec { packages: HashMap::from([ (LinuxDistro::Arch, "boost".into()), (LinuxDistro::Debian, "libboost-all-dev".into()), + (LinuxDistro::Fedora, "boost".into()), + (LinuxDistro::Alpine, "boost".into()), ]), }, Dependency { @@ -26,6 +28,8 @@ fn basalt_deps() -> Vec { packages: HashMap::from([ (LinuxDistro::Arch, "boost".into()), (LinuxDistro::Debian, "libboost-all-dev".into()), + (LinuxDistro::Fedora, "boost-devel".into()), + (LinuxDistro::Alpine, "boost-dev".into()), ]), }, Dependency { @@ -35,6 +39,8 @@ fn basalt_deps() -> Vec { packages: HashMap::from([ (LinuxDistro::Arch, "bzip2".into()), (LinuxDistro::Debian, "libbz2-dev".into()), + (LinuxDistro::Fedora, "bzip2-devel".into()), + (LinuxDistro::Alpine, "bzip2".into()), ]), }, Dependency { @@ -44,6 +50,8 @@ fn basalt_deps() -> Vec { packages: HashMap::from([ (LinuxDistro::Arch, "bzip2".into()), (LinuxDistro::Debian, "libbz2-dev".into()), + (LinuxDistro::Fedora, "bzip2-devel".into()), + (LinuxDistro::Alpine, "bzip2-dev".into()), ]), }, dep_eigen(), @@ -54,6 +62,8 @@ fn basalt_deps() -> Vec { packages: HashMap::from([ (LinuxDistro::Arch, "fmt".into()), (LinuxDistro::Debian, "libfmt-dev".into()), + (LinuxDistro::Fedora, "fmt-devel".into()), + (LinuxDistro::Alpine, "fmt".into()), ]), }, Dependency { @@ -63,6 +73,8 @@ fn basalt_deps() -> Vec { packages: HashMap::from([ (LinuxDistro::Arch, "fmt".into()), (LinuxDistro::Debian, "libfmt-dev".into()), + (LinuxDistro::Fedora, "fmt-devel".into()), + (LinuxDistro::Alpine, "fmt-dev".into()), ]), }, Dependency { @@ -72,6 +84,7 @@ fn basalt_deps() -> Vec { packages: HashMap::from([ (LinuxDistro::Arch, "glew".into()), (LinuxDistro::Debian, "libglew-dev".into()), + (LinuxDistro::Fedora, "glew-devel".into()), ]), }, Dependency { @@ -81,6 +94,7 @@ fn basalt_deps() -> Vec { packages: HashMap::from([ (LinuxDistro::Arch, "glew".into()), (LinuxDistro::Debian, "libglew-dev".into()), + (LinuxDistro::Fedora, "glew-devel".into()), ]), }, Dependency { @@ -103,15 +117,7 @@ fn basalt_deps() -> Vec { (LinuxDistro::Fedora, "tbb-devel".into()), ]), }, - Dependency { - name: "opencv".into(), - dep_type: DepType::Include, - filename: "opencv4/opencv2/core/hal/hal.hpp".into(), - packages: HashMap::from([ - (LinuxDistro::Arch, "opencv".into()), - (LinuxDistro::Debian, "libopencv-dev".into()), - ]), - }, + dep_opencv(), Dependency { name: "python3".into(), dep_type: DepType::Executable, @@ -119,6 +125,8 @@ fn basalt_deps() -> Vec { packages: HashMap::from([ (LinuxDistro::Arch, "python".into()), (LinuxDistro::Debian, "python3".into()), + (LinuxDistro::Fedora, "python3".into()), + (LinuxDistro::Alpine, "python3".into()), ]), }, Dependency { @@ -128,6 +136,8 @@ fn basalt_deps() -> Vec { packages: HashMap::from([ (LinuxDistro::Arch, "bc".into()), (LinuxDistro::Debian, "bc".into()), + (LinuxDistro::Fedora, "bc".into()), + (LinuxDistro::Alpine, "bc".into()), ]), }, ] diff --git a/src/dependencies/common.rs b/src/dependencies/common.rs index 785184e..0e890af 100644 --- a/src/dependencies/common.rs +++ b/src/dependencies/common.rs @@ -12,6 +12,8 @@ pub fn dep_eigen() -> Dependency { packages: HashMap::from([ (LinuxDistro::Arch, "eigen".into()), (LinuxDistro::Debian, "libeigen3-dev".into()), + (LinuxDistro::Fedora, "eigen3-devel".into()), + (LinuxDistro::Alpine, "eigen-dev".into()), ]), } } @@ -24,6 +26,8 @@ pub fn dep_cmake() -> Dependency { packages: HashMap::from([ (LinuxDistro::Arch, "cmake".into()), (LinuxDistro::Debian, "cmake".into()), + (LinuxDistro::Fedora, "cmake".into()), + (LinuxDistro::Alpine, "cmake".into()), ]), } } @@ -37,6 +41,7 @@ pub fn dep_git() -> Dependency { (LinuxDistro::Arch, "git".into()), (LinuxDistro::Debian, "git".into()), (LinuxDistro::Fedora, "git".into()), + (LinuxDistro::Alpine, "git".into()), ]), } } @@ -49,6 +54,8 @@ pub fn dep_ninja() -> Dependency { packages: HashMap::from([ (LinuxDistro::Arch, "ninja".into()), (LinuxDistro::Debian, "ninja-build".into()), + (LinuxDistro::Fedora, "ninja-build".into()), + (LinuxDistro::Alpine, "ninja".into()), ]), } } @@ -62,6 +69,7 @@ pub fn dep_glslang_validator() -> Dependency { (LinuxDistro::Arch, "glslang".into()), (LinuxDistro::Debian, "glslang-tools".into()), (LinuxDistro::Fedora, "glslang-devel".into()), + (LinuxDistro::Alpine, "glslang".into()), ]), } } @@ -75,6 +83,7 @@ pub fn dep_gcc() -> Dependency { (LinuxDistro::Arch, "gcc".into()), (LinuxDistro::Debian, "gcc".into()), (LinuxDistro::Fedora, "gcc".into()), + (LinuxDistro::Alpine, "gcc".into()), ]), } } @@ -88,6 +97,7 @@ pub fn dep_gpp() -> Dependency { (LinuxDistro::Arch, "gcc".into()), (LinuxDistro::Debian, "g++".into()), (LinuxDistro::Fedora, "g++".into()), + (LinuxDistro::Alpine, "g++".into()), ]), } } @@ -101,6 +111,7 @@ pub fn dep_libdrm() -> Dependency { (LinuxDistro::Arch, "libdrm".into()), (LinuxDistro::Debian, "libdrm-dev".into()), (LinuxDistro::Fedora, "libdrm".into()), + (LinuxDistro::Alpine, "libdrm-dev".into()), ]), } } @@ -114,6 +125,7 @@ pub fn dep_openxr() -> Dependency { (LinuxDistro::Arch, "openxr".into()), (LinuxDistro::Debian, "libopenxr-dev".into()), (LinuxDistro::Fedora, "openxr-devel".into()), + (LinuxDistro::Alpine, "openxr-dev".into()), ]), } } @@ -157,3 +169,16 @@ pub fn dep_pkexec() -> Dependency { ]), } } + +pub fn dep_opencv() -> Dependency { + Dependency { + name: "opencv".into(), + dep_type: DepType::Include, + filename: "opencv4/opencv2/core/hal/hal.hpp".into(), + packages: HashMap::from([ + (LinuxDistro::Arch, "opencv".into()), + (LinuxDistro::Debian, "libopencv-dev".into()), + (LinuxDistro::Fedora, "opencv-devel".into()), + ]), + } +} diff --git a/src/dependencies/mercury_deps.rs b/src/dependencies/mercury_deps.rs index 4245ea2..6b17733 100644 --- a/src/dependencies/mercury_deps.rs +++ b/src/dependencies/mercury_deps.rs @@ -1,29 +1,13 @@ use crate::{ depcheck::{DepType, Dependency, DependencyCheckResult}, + dependencies::common::dep_opencv, linux_distro::LinuxDistro, }; use std::collections::HashMap; fn mercury_deps() -> Vec { vec![ - Dependency { - name: "opencv".into(), - dep_type: DepType::SharedObject, - filename: "libopencv_core.so".into(), - packages: HashMap::from([ - (LinuxDistro::Arch, "opencv".into()), - (LinuxDistro::Debian, "libopencv-dev".into()), - ]), - }, - Dependency { - name: "opencv-dev".into(), - dep_type: DepType::Include, - filename: "opencv4/opencv2/core/base.hpp".into(), - packages: HashMap::from([ - (LinuxDistro::Arch, "opencv".into()), - (LinuxDistro::Debian, "libopencv-dev".into()), - ]), - }, + dep_opencv(), Dependency { name: "git-lfs".into(), dep_type: DepType::Executable, @@ -31,6 +15,8 @@ fn mercury_deps() -> Vec { packages: HashMap::from([ (LinuxDistro::Arch, "git-lfs".into()), (LinuxDistro::Debian, "git-lfs".into()), + (LinuxDistro::Fedora, "git-lfs".into()), + (LinuxDistro::Alpine, "git-lfs".into()), ]), }, ] diff --git a/src/dependencies/monado_deps.rs b/src/dependencies/monado_deps.rs index b21fc38..8b48698 100644 --- a/src/dependencies/monado_deps.rs +++ b/src/dependencies/monado_deps.rs @@ -21,6 +21,7 @@ fn monado_deps() -> Vec { packages: HashMap::from([ (LinuxDistro::Arch, "wayland".into()), (LinuxDistro::Debian, "libwayland-dev".into()), + (LinuxDistro::Fedora, "wayland-devel".into()), ]), }, dep_cmake(), @@ -37,6 +38,7 @@ fn monado_deps() -> Vec { (LinuxDistro::Arch, "shaderc".into()), (LinuxDistro::Debian, "glslc".into()), (LinuxDistro::Fedora, "glslc".into()), + (LinuxDistro::Alpine, "shaderc".into()), ]), }, dep_glslang_validator(),