repo-add: add makedepends information

This is useful for tools that automatically rebuild packages and
thus require to generate a build order. These entries are skipped
by pacman.

Signed-off-by: Allan McRae <allan@archlinux.org>
Signed-off-by: Dan McGee <dan@archlinux.org>
This commit is contained in:
Allan McRae 2012-05-19 21:00:18 +10:00 committed by Dan McGee
parent 18e0a97209
commit 81bc390dc1
2 changed files with 19 additions and 10 deletions

View file

@ -591,6 +591,12 @@ static int sync_db_read(alpm_db_t *db, struct archive *archive,
READ_AND_SPLITDEP(pkg->depends);
} else if(strcmp(line, "%OPTDEPENDS%") == 0) {
READ_AND_SPLITDEP(pkg->optdepends);
} else if(strcmp(line, "%MAKEDEPENDS%") == 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) {

View file

@ -256,7 +256,8 @@ verify_repo_extension() {
db_write_entry() {
# blank out all variables
local pkgfile=$1
local -a _groups _licenses _replaces _depends _conflicts _provides _optdepends
local -a _groups _licenses _replaces _depends _conflicts _provides \
_optdepends _makedepends
local pkgname pkgver pkgdesc csize size url arch builddate packager \
md5sum sha256sum pgpsig pgpsigsize
@ -276,6 +277,7 @@ db_write_entry() {
conflict) _conflicts+=("$conflict") ;;
provides) _provides+=("$provides") ;;
optdepend) _optdepends+=("$optdepend") ;;
makedepend) _makedepends+=("$makedepend") ;;
esac
done< <(bsdtar -xOqf "$pkgfile" .PKGINFO)
@ -362,6 +364,7 @@ db_write_entry() {
format_entry "CONFLICTS" "${_conflicts[@]}"
format_entry "PROVIDES" "${_provides[@]}"
format_entry "OPTDEPENDS" "${_optdepends[@]}"
format_entry "MAKEDEPENDS" "${_makedepends[@]}"
} >'depends'
popd >/dev/null