[pacman-dev] [PATCH 2/2] repo-add: add makedpends information
Allan McRae
allan at archlinux.org
Sat May 19 07:01:32 EDT 2012
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 at archlinux.org>
---
lib/libalpm/be_sync.c | 3 +++
scripts/repo-add.sh.in | 27 +++++++++++++++------------
2 files changed, 18 insertions(+), 12 deletions(-)
diff --git a/lib/libalpm/be_sync.c b/lib/libalpm/be_sync.c
index f18ba51..92ce456 100644
--- a/lib/libalpm/be_sync.c
+++ b/lib/libalpm/be_sync.c
@@ -591,6 +591,9 @@ 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 */
+ READ_NEXT();
} else if(strcmp(line, "%CONFLICTS%") == 0) {
READ_AND_SPLITDEP(pkg->conflicts);
} else if(strcmp(line, "%PROVIDES%") == 0) {
diff --git a/scripts/repo-add.sh.in b/scripts/repo-add.sh.in
index 006672a..ba9ba05 100644
--- a/scripts/repo-add.sh.in
+++ b/scripts/repo-add.sh.in
@@ -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
@@ -269,13 +270,14 @@ db_write_entry() {
# normalize whitespace with an extglob
declare "$var=${val//+([[:space:]])/ }"
case $var in
- group) _groups+=("$group") ;;
- license) _licenses+=("$license") ;;
- replaces) _replaces+=("$replaces") ;;
- depend) _depends+=("$depend") ;;
- conflict) _conflicts+=("$conflict") ;;
- provides) _provides+=("$provides") ;;
- optdepend) _optdepends+=("$optdepend") ;;
+ group) _groups+=("$group") ;;
+ license) _licenses+=("$license") ;;
+ replaces) _replaces+=("$replaces") ;;
+ depend) _depends+=("$depend") ;;
+ conflict) _conflicts+=("$conflict") ;;
+ provides) _provides+=("$provides") ;;
+ optdepend) _optdepends+=("$optdepend") ;;
+ makedepend) _makedepends+=("$makedepend") ;;
esac
done< <(bsdtar -xOqf "$pkgfile" .PKGINFO)
@@ -358,10 +360,11 @@ db_write_entry() {
# create depends entry
msg2 "$(gettext "Creating '%s' db entry...")" 'depends'
{
- format_entry "DEPENDS" "${_depends[@]}"
- format_entry "CONFLICTS" "${_conflicts[@]}"
- format_entry "PROVIDES" "${_provides[@]}"
- format_entry "OPTDEPENDS" "${_optdepends[@]}"
+ format_entry "DEPENDS" "${_depends[@]}"
+ format_entry "CONFLICTS" "${_conflicts[@]}"
+ format_entry "PROVIDES" "${_provides[@]}"
+ format_entry "OPTDEPENDS" "${_optdepends[@]}"
+ format_entry "MAKEDEPENDS" "${_makedepends[@]}"
} >'depends'
popd >/dev/null
--
1.7.10.2
More information about the pacman-dev
mailing list