mirror of
https://gitlab.redox-os.org/redox-os/redox.git
synced 2026-06-22 04:44:19 +08:00
Merge branch 'remove-repo-sh' into 'master'
Remove repo.sh scripts See merge request redox-os/redox!1698
This commit is contained in:
commit
e04b951fd8
5
Cargo.lock
generated
5
Cargo.lock
generated
@ -2166,9 +2166,8 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "redoxer"
|
||||
version = "0.2.60"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "2ef2d308648e7006723774da783dd5d9a6c931387b3dc7f903a10fa1c2026d0d"
|
||||
version = "0.2.61"
|
||||
source = "git+https://gitlab.redox-os.org/redox-os/redoxer#ea965186ce02cfc01a7d2085dfd007cdc67649c6"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"dirs 6.0.0",
|
||||
|
||||
@ -38,7 +38,7 @@ pkgar-core = { git = "https://gitlab.redox-os.org/redox-os/pkgar.git" }
|
||||
pkgar-keys = { git = "https://gitlab.redox-os.org/redox-os/pkgar.git" }
|
||||
redox-pkg = "0.2.8"
|
||||
redox_installer = "0.2.37"
|
||||
redoxer = "0.2.60"
|
||||
redoxer = { git = "https://gitlab.redox-os.org/redox-os/redoxer" }
|
||||
regex = "1.11"
|
||||
serde = { version = "=1.0.197", features = ["derive"] }
|
||||
termion = "4"
|
||||
|
||||
63
config.sh
63
config.sh
@ -1,63 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
set -e
|
||||
|
||||
# Configuration
|
||||
if [ -z "${TARGET}" ]
|
||||
then
|
||||
export TARGET=x86_64-unknown-redox
|
||||
fi
|
||||
if [ $(uname -s) = 'Redox' ]
|
||||
then
|
||||
export IS_REDOX="1"
|
||||
fi
|
||||
|
||||
ARCH="${TARGET%%-*}"
|
||||
HOST="$TARGET"
|
||||
if [ x"${HOST}" == x"riscv64gc-unknown-redox" ] ; then
|
||||
HOST="riscv64-unknown-redox"
|
||||
fi
|
||||
|
||||
# Cookbook requires correct CWD to work
|
||||
cd `dirname "$0"`
|
||||
|
||||
# Automatic variables
|
||||
ROOT=`pwd`
|
||||
|
||||
export AR="${HOST}-gcc-ar"
|
||||
export AS="${HOST}-as"
|
||||
export CC="${HOST}-gcc"
|
||||
export CXX="${HOST}-g++"
|
||||
export LD="${HOST}-ld"
|
||||
export NM="${HOST}-gcc-nm"
|
||||
export OBJCOPY="${HOST}-objcopy"
|
||||
export OBJDUMP="${HOST}-objdump"
|
||||
export PKG_CONFIG="${HOST}-pkg-config"
|
||||
export RANLIB="${HOST}-gcc-ranlib"
|
||||
export READELF="${HOST}-readelf"
|
||||
export STRIP="${HOST}-strip"
|
||||
|
||||
if [ -n "${CC_WRAPPER}" ]
|
||||
then
|
||||
export CC="${CC_WRAPPER} ${CC}"
|
||||
export CXX="${CC_WRAPPER} ${CXX}"
|
||||
fi
|
||||
|
||||
BUILD="$(cc -dumpmachine)"
|
||||
|
||||
export PKG_CONFIG_FOR_BUILD="pkg-config"
|
||||
|
||||
if [[ "$OSTYPE" == "darwin"* ]] || [[ "$OSTYPE" == "FreeBSD" ]]; then
|
||||
# GNU find
|
||||
FIND="gfind";
|
||||
else
|
||||
FIND="find";
|
||||
fi
|
||||
|
||||
export FIND
|
||||
|
||||
if [ -z "${IS_REDOX}" ]
|
||||
then
|
||||
function repo {
|
||||
"$ROOT/target/release/repo" "$@"
|
||||
}
|
||||
fi
|
||||
2
mk/ci.mk
2
mk/ci.mk
@ -28,7 +28,7 @@ ifeq ($(PODMAN_BUILD),1)
|
||||
else
|
||||
$(HOST_CARGO) build --manifest-path Cargo.toml --release
|
||||
export CI=1 COOKBOOK_LOGS=true PATH="$(PREFIX_PATH):$$PATH" COOKBOOK_HOST_SYSROOT="$(ROOT)/$(PREFIX_INSTALL)" && \
|
||||
./repo.sh $(REPO_APPSTREAM) $(REPO_NONSTOP) --with-package-deps "--filesystem=config/$(ARCH)/ci.toml"
|
||||
./target/release/repo cook --with-package-deps "--filesystem=config/$(ARCH)/ci.toml"
|
||||
endif
|
||||
|
||||
# CI toolchain
|
||||
|
||||
12
mk/config.mk
12
mk/config.mk
@ -78,19 +78,13 @@ endif
|
||||
endif
|
||||
|
||||
ifeq ($(REPO_APPSTREAM),1)
|
||||
REPO_APPSTREAM=--appstream
|
||||
else ifeq ($(REPO_APPSTREAM),0)
|
||||
REPO_APPSTREAM=
|
||||
export COOKBOOK_APPSTREAM=true
|
||||
endif
|
||||
ifeq ($(REPO_NONSTOP),1)
|
||||
REPO_NONSTOP=--nonstop
|
||||
else ifeq ($(REPO_NONSTOP),0)
|
||||
REPO_NONSTOP=
|
||||
export COOKBOOK_NONSTOP=true
|
||||
endif
|
||||
ifeq ($(REPO_OFFLINE),1)
|
||||
REPO_OFFLINE=--offline
|
||||
else ifeq ($(REPO_OFFLINE),0)
|
||||
REPO_OFFLINE=
|
||||
export COOKBOOK_OFFLINE=true
|
||||
endif
|
||||
ifeq ($(REPO_DEBUG),1)
|
||||
export COOKBOOK_NOSTRIP=true
|
||||
|
||||
@ -6,7 +6,7 @@ ifeq ($(PODMAN_BUILD),1)
|
||||
else
|
||||
export PATH="$(PREFIX_PATH):$$PATH" && \
|
||||
export COOKBOOK_HOST_SYSROOT="$(ROOT)/$(PREFIX_INSTALL)" && \
|
||||
./repo.sh $(REPO_APPSTREAM) $(REPO_NONSTOP) $(REPO_OFFLINE) $(COOKBOOK_OPTS) --with-package-deps
|
||||
./target/release/repo cook $(COOKBOOK_OPTS) --with-package-deps
|
||||
mkdir -p $(BUILD)
|
||||
touch $@
|
||||
endif
|
||||
@ -54,7 +54,7 @@ ifeq ($(PODMAN_BUILD),1)
|
||||
else
|
||||
export PATH="$(PREFIX_PATH):$$PATH" && \
|
||||
export COOKBOOK_HOST_SYSROOT="$(ROOT)/$(PREFIX_INSTALL)" && \
|
||||
./repo.sh $(REPO_OFFLINE) $(foreach f,$(subst $(comma), ,$*),$(f)) $(COOKBOOK_OPTS)
|
||||
./target/release/repo cook $(foreach f,$(subst $(comma), ,$*),$(f)) $(COOKBOOK_OPTS)
|
||||
endif
|
||||
|
||||
MOUNTED_TAG=$(MOUNT_DIR)~
|
||||
@ -70,7 +70,6 @@ else
|
||||
$(MAKE) mount; \
|
||||
touch $(MOUNTED_TAG); \
|
||||
fi
|
||||
$(if $(findstring nonstop,$(REPO_NONSTOP)),export COOKBOOK_NONSTOP=true && ,) \
|
||||
./target/release/repo push $(foreach f,$(subst $(comma), ,$*),$(f)) "--sysroot=$(MOUNT_DIR)"
|
||||
@if [ -f $(MOUNTED_TAG) ]; then \
|
||||
$(MAKE) unmount && rm -f $(MOUNTED_TAG); \
|
||||
@ -92,7 +91,6 @@ else
|
||||
$(MAKE) mount; \
|
||||
touch $(MOUNTED_TAG); \
|
||||
fi
|
||||
$(if $(findstring nonstop,$(REPO_NONSTOP)),export COOKBOOK_NONSTOP=true && ,) \
|
||||
./target/release/repo push $(COOKBOOK_OPTS) --with-package-deps "--sysroot=$(MOUNT_DIR)"
|
||||
@if [ -f $(MOUNTED_TAG) ]; then \
|
||||
$(MAKE) unmount && rm -f $(MOUNTED_TAG); \
|
||||
|
||||
27
repo.sh
27
repo.sh
@ -1,27 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
set -e
|
||||
|
||||
source `dirname "$0"`/config.sh
|
||||
|
||||
COOK_OPT=""
|
||||
recipes=""
|
||||
for arg in "${@:1}"
|
||||
do
|
||||
if [[ "$arg" == "--appstream" ]]
|
||||
then
|
||||
export APPSTREAM="1"
|
||||
elif [[ "$arg" == "--offline" ]]
|
||||
then
|
||||
export COOKBOOK_OFFLINE=true
|
||||
elif [[ "$arg" == "--nonstop" ]]
|
||||
then
|
||||
export COOKBOOK_NONSTOP=true
|
||||
elif [[ $arg == "--*" ]]
|
||||
then
|
||||
COOK_OPT+=" ${arg}"
|
||||
else
|
||||
recipes+=" $arg"
|
||||
fi
|
||||
done
|
||||
|
||||
repo cook $COOK_OPT $recipes
|
||||
@ -65,6 +65,7 @@ const REPO_HELP_STR: &str = r#"
|
||||
CI= set to any value to disable TUI
|
||||
COOKBOOK_LOGS= whether to capture build logs (default is !CI)
|
||||
COOKBOOK_OFFLINE=false prevent internet access if possible
|
||||
ignored when command "fetch" is used
|
||||
COOKBOOK_NONSTOP=false pkeep running even a recipe build failed
|
||||
COOKBOOK_VERBOSE=true print success/error on each recipe
|
||||
COOKBOOK_MAKE_JOBS= override build jobs count from nproc
|
||||
@ -277,8 +278,9 @@ fn repo_inner(
|
||||
Ok(match *command {
|
||||
CliCommand::Fetch | CliCommand::Cook => {
|
||||
let repo_inner_fn = move |logger: &PtyOut| -> Result<(), anyhow::Error> {
|
||||
let source_dir = handle_fetch(recipe, config, logger)?;
|
||||
if *command == CliCommand::Cook {
|
||||
let is_cook = *command == CliCommand::Cook;
|
||||
let source_dir = handle_fetch(recipe, config, is_cook, logger)?;
|
||||
if is_cook {
|
||||
handle_cook(recipe, config, source_dir, recipe.is_deps, logger)?;
|
||||
}
|
||||
Ok(())
|
||||
@ -534,10 +536,11 @@ fn parse_args(args: Vec<String>) -> anyhow::Result<(CliConfig, CliCommand, Vec<C
|
||||
fn handle_fetch(
|
||||
recipe: &CookRecipe,
|
||||
config: &CliConfig,
|
||||
allow_offline: bool,
|
||||
logger: &PtyOut,
|
||||
) -> anyhow::Result<PathBuf> {
|
||||
let recipe_dir = &recipe.dir;
|
||||
let source_dir = match config.cook.offline {
|
||||
let source_dir = match config.cook.offline && allow_offline {
|
||||
true => fetch_offline(recipe_dir, &recipe.recipe, logger),
|
||||
false => fetch(recipe_dir, &recipe.recipe, logger),
|
||||
}
|
||||
@ -1102,7 +1105,7 @@ fn run_tui_cook(
|
||||
fetcher_status_tx
|
||||
.send(StatusUpdate::StartFetch(name.clone()))
|
||||
.unwrap();
|
||||
let handler = handle_fetch(&recipe, &fetcher_config, &logger);
|
||||
let handler = handle_fetch(&recipe, &fetcher_config, true, &logger);
|
||||
if let Some(log_path) = fetcher_config.logs_dir.as_ref()
|
||||
// successful fetch log usually not that helpful
|
||||
&& handler.is_err()
|
||||
|
||||
@ -90,7 +90,7 @@ fn publish_packages(recipe_list: Vec<String>, repo_dir: String) -> anyhow::Resul
|
||||
}
|
||||
|
||||
// === 2. Optional AppStream generation ===
|
||||
if env::var("APPSTREAM").ok().as_deref() == Some("1") {
|
||||
if env::var("COOKBOOK_APPSTREAM").ok().as_deref() == Some("true") {
|
||||
eprintln!("\x1b[01;38;5;155mrepo - generating appstream data\x1b[0m");
|
||||
|
||||
let root = env::var("ROOT").unwrap_or_else(|_| ".".into());
|
||||
|
||||
@ -84,10 +84,7 @@ function GNU_CONFIG_GET {
|
||||
|
||||
pub(crate) static BUILD_PRESCRIPT: &str = r#"
|
||||
# Add cookbook bins to path
|
||||
if [ -z "${IS_REDOX}" ]
|
||||
then
|
||||
export PATH="${COOKBOOK_ROOT}/bin:${PATH}"
|
||||
fi
|
||||
|
||||
# This puts cargo build artifacts in the build directory
|
||||
export CARGO_TARGET_DIR="${COOKBOOK_BUILD}/target"
|
||||
@ -185,16 +182,6 @@ COOKBOOK_CONFIGURE_FLAGS=(
|
||||
)
|
||||
COOKBOOK_MAKE="make"
|
||||
|
||||
if [ -z "${COOKBOOK_MAKE_JOBS}" ]
|
||||
then
|
||||
if [ -z "${IS_REDOX}" ]
|
||||
then
|
||||
COOKBOOK_MAKE_JOBS="$(nproc)"
|
||||
else
|
||||
COOKBOOK_MAKE_JOBS="1"
|
||||
fi
|
||||
fi
|
||||
|
||||
function cookbook_configure {
|
||||
"${COOKBOOK_CONFIGURE}" "${COOKBOOK_CONFIGURE_FLAGS[@]}" "$@"
|
||||
"${COOKBOOK_MAKE}" -j "${COOKBOOK_MAKE_JOBS}"
|
||||
|
||||
Loading…
Reference in New Issue
Block a user