summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAurelien Foret <aurelien@archlinux.org>2005-10-08 20:43:25 +0000
committerAurelien Foret <aurelien@archlinux.org>2005-10-08 20:43:25 +0000
commit0d6a2edaa8e39f9d7b77f0a023e8a2bfdab7a16d (patch)
treecc22b868e74e5e716cbaa8ed0b6f2629b978ade4
parent5ef51b3e266cf43411947248886372001fdb207a (diff)
downloadpacman-0d6a2edaa8e39f9d7b77f0a023e8a2bfdab7a16d.tar.xz
Moved the REPLACES and FORCE package fields from DESC to DEPENDS db entry
-rw-r--r--lib/libalpm/alpm.c2
-rw-r--r--lib/libalpm/alpm.h2
-rw-r--r--lib/libalpm/db.c20
-rwxr-xr-xscripts/gensync22
-rwxr-xr-xscripts/updatesync22
5 files changed, 34 insertions, 34 deletions
diff --git a/lib/libalpm/alpm.c b/lib/libalpm/alpm.c
index 10444fa4..85665833 100644
--- a/lib/libalpm/alpm.c
+++ b/lib/libalpm/alpm.c
@@ -378,7 +378,6 @@ void *alpm_pkg_getinfo(pmpkg_t *pkg, unsigned char parm)
case PM_PKG_PACKAGER:
case PM_PKG_SIZE:
case PM_PKG_REASON:
- case PM_PKG_REPLACES:
case PM_PKG_MD5SUM:
if(!(pkg->infolevel & INFRQ_DESC)) {
char target[(PKG_NAME_LEN-1)+1+(PKG_VERSION_LEN-1)+1];
@@ -393,6 +392,7 @@ void *alpm_pkg_getinfo(pmpkg_t *pkg, unsigned char parm)
case PM_PKG_REQUIREDBY:
case PM_PKG_CONFLICTS:
case PM_PKG_PROVIDES:
+ case PM_PKG_REPLACES:
if(!(pkg->infolevel & INFRQ_DEPENDS)) {
char target[(PKG_NAME_LEN-1)+1+(PKG_VERSION_LEN-1)+1];
snprintf(target, (PKG_NAME_LEN-1)+1+(PKG_VERSION_LEN-1)+1, "%s-%s", pkg->name, pkg->version);
diff --git a/lib/libalpm/alpm.h b/lib/libalpm/alpm.h
index 75493365..539d988a 100644
--- a/lib/libalpm/alpm.h
+++ b/lib/libalpm/alpm.h
@@ -134,13 +134,13 @@ enum {
PM_PKG_PACKAGER,
PM_PKG_SIZE,
PM_PKG_REASON,
- PM_PKG_REPLACES, /* Sync DB only */
PM_PKG_MD5SUM, /* Sync DB only */
/* Depends entry */
PM_PKG_DEPENDS,
PM_PKG_REQUIREDBY,
PM_PKG_CONFLICTS,
PM_PKG_PROVIDES,
+ PM_PKG_REPLACES, /* Sync DB only */
/* Files entry */
PM_PKG_FILES,
PM_PKG_BACKUP,
diff --git a/lib/libalpm/db.c b/lib/libalpm/db.c
index cee36454..7052d132 100644
--- a/lib/libalpm/db.c
+++ b/lib/libalpm/db.c
@@ -346,22 +346,12 @@ int db_read(pmdb_t *db, char *name, unsigned int inforeq, pmpkg_t *info)
}
_alpm_strtrim(tmp);
info->size = atol(tmp);
- } else if(!strcmp(line, "%REPLACES%")) {
- /* the REPLACES tag is special -- it only appears in sync repositories,
- * not the local one. */
- while(fgets(line, 512, fp) && strlen(_alpm_strtrim(line))) {
- info->replaces = pm_list_add(info->replaces, strdup(line));
- }
} else if(!strcmp(line, "%MD5SUM%")) {
/* MD5SUM tag only appears in sync repositories,
* not the local one. */
if(fgets(info->md5sum, sizeof(info->md5sum), fp) == NULL) {
return(-1);
}
- } else if(!strcmp(line, "%FORCE%")) {
- /* FORCE tag only appears in sync repositories,
- * not the local one. */
- info->force = 1;
}
}
fclose(fp);
@@ -417,6 +407,16 @@ int db_read(pmdb_t *db, char *name, unsigned int inforeq, pmpkg_t *info)
while(fgets(line, 512, fp) && strlen(_alpm_strtrim(line))) {
info->provides = pm_list_add(info->provides, strdup(line));
}
+ } else if(!strcmp(line, "%REPLACES%")) {
+ /* the REPLACES tag is special -- it only appears in sync repositories,
+ * not the local one. */
+ while(fgets(line, 512, fp) && strlen(_alpm_strtrim(line))) {
+ info->replaces = pm_list_add(info->replaces, strdup(line));
+ }
+ } else if(!strcmp(line, "%FORCE%")) {
+ /* FORCE tag only appears in sync repositories,
+ * not the local one. */
+ info->force = 1;
}
}
fclose(fp);
diff --git a/scripts/gensync b/scripts/gensync
index 49a2939a..7c3420fd 100755
--- a/scripts/gensync
+++ b/scripts/gensync
@@ -100,17 +100,6 @@ db_write_entry()
done
echo "" >>desc
fi
- if [ ${#replaces[*]} -gt 0 ]; then
- echo "%REPLACES%" >>desc
- for it in "${replaces[@]}"; do
- echo "$it" >>desc
- done
- echo "" >>desc
- fi
- if [ "$force" = "y" -o "$force" = "Y" ]; then
- echo "%FORCE%" >>desc
- echo "" >>desc
- fi
# depends
: >depends
if [ ${#depends[*]} -gt 0 ]; then
@@ -134,6 +123,17 @@ db_write_entry()
done
echo "" >>depends
fi
+ if [ ${#replaces[*]} -gt 0 ]; then
+ echo "%REPLACES%" >>depends
+ for it in "${replaces[@]}"; do
+ echo "$it" >>depends
+ done
+ echo "" >>depends
+ fi
+ if [ "$force" = "y" -o "$force" = "Y" ]; then
+ echo "%FORCE%" >>depends
+ echo "" >>depends
+ fi
# preserve the modification time
touch -r $1 desc depends
}
diff --git a/scripts/updatesync b/scripts/updatesync
index 943af8a5..10614d5b 100755
--- a/scripts/updatesync
+++ b/scripts/updatesync
@@ -103,17 +103,6 @@ db_write_entry()
done
echo "" >>desc
fi
- if [ ${#replaces[*]} -gt 0 ]; then
- echo "%REPLACES%" >>desc
- for it in "${replaces[@]}"; do
- echo "$it" >>desc
- done
- echo "" >>desc
- fi
- if [ "$force" = "y" -o "$force" = "Y" ]; then
- echo "%FORCE%" >>desc
- echo "" >>desc
- fi
# depends
: >depends
if [ ${#depends[*]} -gt 0 ]; then
@@ -137,6 +126,17 @@ db_write_entry()
done
echo "" >>depends
fi
+ if [ ${#replaces[*]} -gt 0 ]; then
+ echo "%REPLACES%" >>depends
+ for it in "${replaces[@]}"; do
+ echo "$it" >>depends
+ done
+ echo "" >>depends
+ fi
+ if [ "$force" = "y" -o "$force" = "Y" ]; then
+ echo "%FORCE%" >>depends
+ echo "" >>depends
+ fi
}
delete_entry()