Compare commits

...

4 Commits

Author SHA1 Message Date
Felix Yan
9fe010cf37 Merge branch 'unsupported-arch' into 'master'
feat: allow building for unsupported architecture

See merge request archlinux/devtools!294
2025-08-11 07:23:04 +08:00
Aaron Liu
3f0ebbc6d2 fix(license): add .gitignore to REUSE defaults
36 packages use this while 26 use *.pam and 21 use *.logrotate. Seems
anecdotally common enough to add this here.
2025-08-08 14:13:32 +02:00
Jakub Klinkovský
fc56ebedf3 fix(completion): fix bash completion for the license subcommand
Signed-off-by: Jakub Klinkovský <lahwaacz@archlinux.org>
2025-08-05 17:48:12 +02:00
Felix Yan
332ccc95ef feat: allow building for unsupported architecture
The hard check here has been prevented us (the RISC-V port) from utilizing `pkgctl build` for a while. As long as the list (DEVTOOLS_VALID_ARCHES) isn't easily extendable, I think it's a better idea to allow building with a warning when specifying `--arch` manually.

Also disables repository detection and `--repo` check for unsupported
architectures.
2024-12-29 13:58:45 +08:00
3 changed files with 9 additions and 2 deletions

View File

@@ -150,6 +150,7 @@ _pkgctl_cmds=(
db
diff
issue
license
release
repo
search

View File

@@ -124,6 +124,7 @@ pkgctl_build() {
local RELEASE=0
local DB_UPDATE=0
local INSTALL_TO_HOST=none
local UNSUPPORTED_ARCH=0
local REPO=
local PKGVER=
@@ -165,7 +166,8 @@ pkgctl_build() {
BUILD_ARCH=("${DEVTOOLS_VALID_ARCHES[0]}")
elif ! in_array "${2}" "${BUILD_ARCH[@]}"; then
if ! in_array "${2}" "${DEVTOOLS_VALID_ARCHES[@]}"; then
die 'invalid architecture: %s' "${2}"
warning 'unsupported architecture: %s' "${2}"
UNSUPPORTED_ARCH=1
fi
BUILD_ARCH+=("${2}")
fi
@@ -312,6 +314,9 @@ pkgctl_build() {
# Update pacman cache for auto-detection
if [[ -z ${REPO} ]]; then
if (( UNSUPPORTED_ARCH )); then
die "Unsupported architecture specified, cannot auto-detect repository"
fi
update_pacman_repo_cache multilib
# Check valid repos if not resolved dynamically
elif ! in_array "${REPO}" "${DEVTOOLS_VALID_REPOS[@]}"; then
@@ -343,7 +348,7 @@ pkgctl_build() {
fi
# fail if an existing package specifies --repo
if [[ -n "${repo}" ]] && [[ -n ${pkgrepo} ]]; then
if [[ -n "${repo}" ]] && [[ -n ${pkgrepo} ]] && (( ! UNSUPPORTED_ARCH )); then
# allow unstable to use --repo
if [[ ${pkgrepo} == *unstable ]]; then
repo=${pkgrepo}

View File

@@ -188,6 +188,7 @@ path = [
"README.md",
"keys/**",
".SRCINFO",
".gitignore",
".nvchecker.toml",
"*.install",
"*.sysusers",