diff options
author | Allan McRae <allan@archlinux.org> | 2012-06-07 16:21:05 +1000 |
---|---|---|
committer | Dan McGee <dan@archlinux.org> | 2012-06-25 23:08:15 -0500 |
commit | e253968b4df079faf91266639be1b8b2cff6e2b5 (patch) | |
tree | a62b47f13c653fe908e929ff8f1b3c9a5abbf104 | |
parent | 81dd6ddf0cdd4034771828529c65d61e5bc94e5d (diff) | |
download | pacman-e253968b4df079faf91266639be1b8b2cff6e2b5.tar.xz |
repo-add: add checkdepends information
Similar to the case for makedepends, it is useful to be able to
access this information without parsing a PKGBUILD.
Signed-off-by: Allan McRae <allan@archlinux.org>
-rw-r--r-- | lib/libalpm/be_sync.c | 6 | ||||
-rw-r--r-- | scripts/makepkg.sh.in | 19 | ||||
-rw-r--r-- | scripts/repo-add.sh.in | 4 |
3 files changed, 19 insertions, 10 deletions
diff --git a/lib/libalpm/be_sync.c b/lib/libalpm/be_sync.c index 29ef1900..2abd3e69 100644 --- a/lib/libalpm/be_sync.c +++ b/lib/libalpm/be_sync.c @@ -597,6 +597,12 @@ static int sync_db_read(alpm_db_t *db, struct archive *archive, READ_NEXT(); if(strlen(line) == 0) break; } + } else if(strcmp(line, "%CHECKDEPENDS%") == 0) { + /* currently unused */ + while(1) { + READ_NEXT(); + if(strlen(line) == 0) break; + } } else if(strcmp(line, "%CONFLICTS%") == 0) { READ_AND_SPLITDEP(pkg->conflicts); } else if(strcmp(line, "%PROVIDES%") == 0) { diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in index 63cdd4dc..abfabdfc 100644 --- a/scripts/makepkg.sh.in +++ b/scripts/makepkg.sh.in @@ -1282,15 +1282,16 @@ write_pkginfo() { mapfile -t provides < <(find_libprovides) mapfile -t depends < <(find_libdepends) - [[ $license ]] && printf "license = %s\n" "${license[@]}" - [[ $replaces ]] && printf "replaces = %s\n" "${replaces[@]}" - [[ $groups ]] && printf "group = %s\n" "${groups[@]}" - [[ $conflicts ]] && printf "conflict = %s\n" "${conflicts[@]}" - [[ $provides ]] && printf "provides = %s\n" "${provides[@]}" - [[ $backup ]] && printf "backup = %s\n" "${backup[@]}" - [[ $depends ]] && printf "depend = %s\n" "${depends[@]}" - [[ $optdepends ]] && printf "optdepend = %s\n" "${optdepends[@]//+([[:space:]])/ }" - [[ $makedepends ]] && printf "makedepend = %s\n" "${makedepends[@]}" + [[ $license ]] && printf "license = %s\n" "${license[@]}" + [[ $replaces ]] && printf "replaces = %s\n" "${replaces[@]}" + [[ $groups ]] && printf "group = %s\n" "${groups[@]}" + [[ $conflicts ]] && printf "conflict = %s\n" "${conflicts[@]}" + [[ $provides ]] && printf "provides = %s\n" "${provides[@]}" + [[ $backup ]] && printf "backup = %s\n" "${backup[@]}" + [[ $depends ]] && printf "depend = %s\n" "${depends[@]}" + [[ $optdepends ]] && printf "optdepend = %s\n" "${optdepends[@]//+([[:space:]])/ }" + [[ $makedepends ]] && printf "makedepend = %s\n" "${makedepends[@]}" + [[ $checkdepends ]] && printf "checkdepend = %s\n" "${checkdepends[@]}" local it for it in "${packaging_options[@]}"; do diff --git a/scripts/repo-add.sh.in b/scripts/repo-add.sh.in index e43f0961..504cae97 100644 --- a/scripts/repo-add.sh.in +++ b/scripts/repo-add.sh.in @@ -257,7 +257,7 @@ db_write_entry() { # blank out all variables local pkgfile=$1 local -a _groups _licenses _replaces _depends _conflicts _provides \ - _optdepends _makedepends + _optdepends _makedepends _checkdepends local pkgname pkgver pkgdesc csize size url arch builddate packager \ md5sum sha256sum pgpsig pgpsigsize @@ -278,6 +278,7 @@ db_write_entry() { provides) _provides+=("$provides") ;; optdepend) _optdepends+=("$optdepend") ;; makedepend) _makedepends+=("$makedepend") ;; + checkdepend) _checkdepends+=("$checkdepend") ;; esac done< <(bsdtar -xOqf "$pkgfile" .PKGINFO) @@ -365,6 +366,7 @@ db_write_entry() { format_entry "PROVIDES" "${_provides[@]}" format_entry "OPTDEPENDS" "${_optdepends[@]}" format_entry "MAKEDEPENDS" "${_makedepends[@]}" + format_entry "CHECKDEPENDS" "${_checkdepends[@]}" } >'depends' popd >/dev/null |