Initial commit
Some checks failed
Build Kernel / Build all affected Kernels (push) Has been cancelled
Build all core packages / Build all core packages for selected target (push) Has been cancelled
Build and Push prebuilt tools container / Build and Push all prebuilt containers (push) Has been cancelled
Build Toolchains / Build Toolchains for each target (push) Has been cancelled
Build host tools / Build host tools for linux and macos based systems (push) Has been cancelled
Coverity scan build / Coverity x86/64 build (push) Has been cancelled

This commit is contained in:
domenico
2025-06-24 14:35:53 +02:00
commit c06fb25d1f
9263 changed files with 1750214 additions and 0 deletions

48
scripts/functions.sh Normal file
View File

@@ -0,0 +1,48 @@
#!/bin/sh
get_magic_word() {
dd if=$1 bs=4 count=1 2>/dev/null | od -A n -N 4 -t x1 | tr -d ' '
}
get_post_padding_word() {
local rootfs_length="$(stat -c%s "$1")"
[ "$rootfs_length" -ge 4 ] || return
rootfs_length=$((rootfs_length-4))
# the JFFS2 end marker must be on a 4K boundary (often 64K or 256K)
local unaligned_bytes=$((rootfs_length%4096))
[ "$unaligned_bytes" = 0 ] || return
# skip rootfs data except the potential EOF marker
dd if="$1" bs=1 skip="$rootfs_length" 2>/dev/null | od -A n -N 4 -t x1 | tr -d ' '
}
get_fs_type() {
local magic_word="$(get_magic_word "$1")"
case "$magic_word" in
"3118"*)
echo "ubifs"
;;
"68737173")
local post_padding_word="$(get_post_padding_word "$1")"
case "$post_padding_word" in
"deadc0de")
echo "squashfs-jffs2"
;;
*)
echo "squashfs"
;;
esac
;;
*)
echo "unknown"
;;
esac
}
round_up() {
echo "$(((($1 + ($2 - 1))/ $2) * $2))"
}