build: Remove DragonOS_GCC And make CI use docker image (#954)

* build: 不再需要x86_64-elf-gcc的支持
* ci: 添加ci用的docker镜像
* 切换workflow到构建用的容器上

---------

Signed-off-by: longjin <longjin@DragonOS.org>
This commit is contained in:
LoGin
2024-10-10 00:59:50 +08:00
committed by GitHub
parent 1bd12bc2ff
commit 415e46ea47
37 changed files with 260 additions and 921 deletions

View File

@ -1,4 +1,4 @@
use std::path::PathBuf;
use std::{collections::HashSet, path::PathBuf};
use crate::{constant::ARCH_DIR_RISCV64, utils::FileUtils};
@ -12,17 +12,18 @@ impl CFilesArch for RiscV64CFilesArch {
c.define("__riscv", None);
}
fn setup_global_include_dir(&self, c: &mut cc::Build) {
c.include("src/arch/riscv64/include");
fn setup_global_include_dir(&self, include_dirs: &mut HashSet<PathBuf>) {
include_dirs.insert("src/arch/riscv64/include".into());
}
fn setup_files(&self, _c: &mut cc::Build, files: &mut Vec<std::path::PathBuf>) {
files.push(PathBuf::from("src/arch/riscv64/asm/head.S"));
files.append(&mut FileUtils::list_all_files(
&arch_path("asm"),
Some("c"),
true,
));
fn setup_files(&self, _c: &mut cc::Build, files: &mut HashSet<PathBuf>) {
files.insert(PathBuf::from("src/arch/riscv64/asm/head.S"));
FileUtils::list_all_files(&arch_path("asm"), Some("c"), true)
.into_iter()
.for_each(|f| {
files.insert(f);
});
}
fn setup_global_flags(&self, c: &mut cc::Build) {