Compare commits

..

3 Commits

Author SHA1 Message Date
81a2cde5c7 more random fixes 2025-10-28 17:31:46 -05:00
8a5ed69f86 more clean slate fixes 2025-10-28 16:31:43 -05:00
014448ac55 init fixes for windows 2025-10-28 16:14:31 -05:00
7 changed files with 43 additions and 18 deletions

View File

@@ -32,7 +32,7 @@ set_compile_opts() {
testfile="${PREFIX}/ffmpeg-build-testfile"
else
# try creating in parent path
testfile="$(bash_basename "${PREFIX}")/ffmpeg-build-testfile"
testfile="$(bash_dirname "${PREFIX}")/ffmpeg-build-testfile"
fi
unset SUDO_MODIFY
if touch "${testfile}" 2>/dev/null; then
@@ -442,10 +442,6 @@ FB_FUNC_NAMES+=('build')
# shellcheck disable=SC2034
FB_FUNC_DESCS['build']='build ffmpeg with desired configuration'
build() {
test -d "${DL_DIR}" || { mkdir -p "${DL_DIR}" || return 1; }
test -d "${CCACHE_DIR}" || { mkdir -p "${CCACHE_DIR}" || return 1; }
test -d "${BUILD_DIR}" || { mkdir -p "${BUILD_DIR}" || return 1; }
set_compile_opts || return 1
for build in ${ENABLE}; do
@@ -517,9 +513,19 @@ del_pkgconfig_gcc_s() {
### RUST ###
cargo_cbuild() {
cargo cinstall \
--destdir ./local-install \
--destdir "${PWD}/local-install" \
"${CARGO_CINSTALL_FLAGS[@]}"
${SUDO_MODIFY} cp -r ./local-install "${PREFIX}/"
# cargo cinstall destdir prepends with entire prefix
# this breaks windows with msys path augmentation
# so recurse into directories until sysroot is there
cd ./local-install || return 1
local sysrootDir="$(bash_basename "${PREFIX}")"
while ! test -d "${sysrootDir}"; do
cd ./* || return 1
done
# final cd
cd "${sysrootDir}" || return 1
${SUDO_MODIFY} cp -r ./* "${PREFIX}/"
}
build_hdr10plus_tool() {

View File

@@ -106,7 +106,6 @@ docker_build_image() {
local image="$1"
validate_selected_image "${image}" || return 1
check_docker || return 1
test -d "${DOCKER_DIR}" || mkdir -p "${DOCKER_DIR}"
PLATFORM="${PLATFORM:-$(echo_platform)}"
echo_info "sourcing package manager for ${image}"

View File

@@ -293,7 +293,6 @@ set_encode_opts() {
# shellcheck disable=SC2155
# shellcheck disable=SC2016
gen_encode_script() {
test -d "${TMP_DIR}" || mkdir -p "${TMP_DIR}"
local genScript="${TMP_DIR}/$(bash_basename "${OUTPUT}").sh"
# single string params

View File

@@ -13,6 +13,7 @@ brew:brew update:brew upgrade:brew install:brew list --formula ${pkg}
apt-get:${SUDO}apt-get update:${SUDO}apt-get upgrade -y:${SUDO}apt-get install -y:dpkg -l ${pkg}
pacman:${SUDO}pacman -Syy:${SUDO}pacman -Syu --noconfirm:${SUDO}pacman -S --noconfirm --needed:pacman -Qi ${pkg}
dnf:${SUDO}dnf check-update || true:${SUDO}dnf upgrade --refresh -y:${SUDO}dnf install -y:dnf list -q --installed ${pkg}
winget:winget update:true:${SUDO}winget install:winget list ${pkg}
'
local supported_pkg_mgr=()
unset pkg_mgr pkg_mgr_update pkg_mgr_upgrade pkg_install pkg_check

View File

@@ -45,7 +45,6 @@ echo_if_fail() {
# set trace to the cmdEvalTrace and open file descriptor
local cmdEvalTrace="${TMP_DIR}/${logName}cmdEvalTrace"
test -d "${TMP_DIR}" || mkdir -p "${TMP_DIR}"
exec 5>"${cmdEvalTrace}"
export BASH_XTRACEFD=5
@@ -220,25 +219,35 @@ is_darwin() {
}
print_os() {
# cached response
if [[ -n ${FB_OS} ]]; then
echo "${FB_OS}"
return 0
fi
FB_OS=''
unset FB_OS
if [[ -f /etc/os-release ]]; then
source /etc/os-release
FB_OS="${ID}"
if [[ ${VERSION_ID} != '' ]]; then
FB_OS+="-${VERSION_ID}"
fi
if [[ ${FB_OS} == 'arch'* ]]; then
FB_OS=archlinux
if line_starts_with "${FB_OS}" 'arch'; then
FB_OS='archlinux'
fi
else
FB_OS="$(uname -o)"
fi
echo "${FB_OS,,}"
# lowercase
FB_OS="${FB_OS,,}"
# special treatment for windows
if line_contains "${FB_OS}" 'windows' || line_contains "${FB_OS}" 'msys'; then
FB_OS='windows'
fi
echo "${FB_OS}"
}
is_positive_integer() {

17
main.sh
View File

@@ -15,6 +15,19 @@ DOCKER_DIR="${IGN_DIR}/docker"
PATCHES_DIR="${REPO_DIR}/patches"
export REPO_DIR IGN_DIR TMP_DIR DL_DIR BUILD_DIR CCACHE_DIR DOCKER_DIR PATCHES_DIR
# make paths if needed
IGN_DIRS=(
"${TMP_DIR}"
"${DL_DIR}"
"${BUILD_DIR}"
"${CCACHE_DIR}"
"${DOCKER_DIR}"
)
for dir in "${IGN_DIRS[@]}"; do
test -d "${dir}" || mkdir -p "${dir}"
done
unset IGN_DIRS
# function names, descriptions, completions
unset FB_FUNC_NAMES FB_FUNC_DESCS FB_FUNC_COMPLETION
FB_FUNC_NAMES=()
@@ -38,7 +51,7 @@ src_scripts() {
export FB_RUNNING_AS_SCRIPT=1
thisFile="$(readlink -f "$0")"
export REPO_DIR="$(cd "$(dirname "${thisFile}")/.." && echo "$PWD")"
source "${REPO_DIR}/main.sh" || return 1
source "${REPO_DIR}/main.sh" || exit 1
scr_name="$(bash_basename $0)"
cmd="${scr_name//.sh/}"
if [[ $DEBUG == 1 ]]; then set -x; fi
@@ -71,8 +84,6 @@ set_completions() {
done
}
# shellcheck disable=SC1091
test -f "${HOME}/.bashrc" && source "${HOME}/.bashrc"
src_scripts || return 1
determine_pkg_mgr || return 1
check_compile_opts_override || return 1

View File

@@ -2,7 +2,7 @@
export FB_RUNNING_AS_SCRIPT=1
thisFile="$(readlink -f "$0")"
export REPO_DIR="$(cd "$(dirname "${thisFile}")/.." && echo "$PWD")"
source "${REPO_DIR}/main.sh" || return 1
source "${REPO_DIR}/main.sh" || exit 1
scr_name="$(bash_basename $0)"
cmd="${scr_name//.sh/}"
if [[ $DEBUG == 1 ]]; then set -x; fi