1 --- appstream-glib-0.2.0/libappstream-builder/Makefile.am.orig 2014-06-19 10:09:35.000000000 +0200
2 +++ appstream-glib-0.2.0/libappstream-builder/Makefile.am 2014-06-21 22:26:16.105266525 +0200
5 libappstream_builder_la_LIBADD = \
12 -export-symbols-regex '^asb_.*'
14 libappstream_builder_la_CFLAGS = \
21 libappstream-builder.la \
24 -AppStreamBuilder_1_0_gir_LIBS += \
28 AppStreamBuilder_1_0_gir_FILES = $(introspection_sources)
29 INTROSPECTION_GIRS += AppStreamBuilder-1.0.gir
31 --- appstream-glib-0.3.4/libappstream-builder/asb-package-rpm.c.orig 2014-12-22 17:02:12.000000000 +0100
32 +++ appstream-glib-0.3.4/libappstream-builder/asb-package-rpm.c 2015-01-20 18:51:42.939675985 +0100
35 #include <archive_entry.h>
37 -#include <rpm/rpmlib.h>
38 +#include <rpm/rpm46compat.h>
39 #include <rpm/rpmts.h>
41 #include "as-cleanup.h"
42 @@ -225,6 +225,36 @@ asb_package_rpm_set_source (AsbPackage *
43 asb_package_set_source_pkgname (pkg, srcrpm);
46 +static uint64_t rpmtdGetNumber(rpmtd td)
51 + ix = (td->ix >= 0 ? td->ix : 0);
54 + case RPM_INT64_TYPE:
55 + val = *((uint64_t *) td->data + ix);
57 + case RPM_INT32_TYPE:
58 + val = *((uint32_t *) td->data + ix);
60 + case RPM_INT16_TYPE:
61 + val = *((uint16_t *) td->data + ix);
65 + val = *((uint8_t *) td->data + ix);
73 +#define _RPMVSF_NOSIGNATURES (RPMVSF_NODSAHEADER | RPMVSF_NORSAHEADER | RPMVSF_NODSA | RPMVSF_NORSA)
74 +#define _RPMVSF_NODIGESTS (RPMVSF_NOSHA1HEADER | RPMVSF_NOMD5HEADER | RPMVSF_NOSHA1 | RPMVSF_NOMD5)
77 * asb_package_rpm_ensure_nevra:
79 @@ -235,7 +265,7 @@ asb_package_rpm_ensure_nevra (AsbPackage
80 AsbPackageRpmPrivate *priv = GET_PRIVATE (pkg_rpm);
84 + td = malloc (sizeof (*td));
85 headerGet (priv->h, RPMTAG_NAME, td, HEADERGET_MINMEM);
86 asb_package_set_name (pkg, rpmtdGetString (td));
87 headerGet (priv->h, RPMTAG_VERSION, td, HEADERGET_MINMEM);
88 @@ -246,7 +276,7 @@ asb_package_rpm_ensure_nevra (AsbPackage
89 asb_package_set_arch (pkg, rpmtdGetString (td));
90 headerGet (priv->h, RPMTAG_EPOCH, td, HEADERGET_MINMEM);
91 asb_package_set_epoch (pkg, rpmtdGetNumber (td));
97 @@ -260,10 +290,10 @@ asb_package_rpm_ensure_source (AsbPackag
98 AsbPackageRpmPrivate *priv = GET_PRIVATE (pkg_rpm);
102 + td = malloc (sizeof (*td));
103 headerGet (priv->h, RPMTAG_SOURCERPM, td, HEADERGET_MINMEM);
104 asb_package_rpm_set_source (pkg, rpmtdGetString (td));
110 @@ -277,10 +307,10 @@ asb_package_rpm_ensure_url (AsbPackage *
111 AsbPackageRpmPrivate *priv = GET_PRIVATE (pkg_rpm);
115 + td = malloc (sizeof (*td));
116 headerGet (priv->h, RPMTAG_URL, td, HEADERGET_MINMEM);
117 asb_package_set_url (pkg, rpmtdGetString (td));
123 @@ -290,14 +320,18 @@ asb_package_rpm_ensure_url (AsbPackage *
125 asb_package_rpm_ensure_vcs (AsbPackage *pkg, GError **error)
128 AsbPackageRpm *pkg_rpm = ASB_PACKAGE_RPM (pkg);
129 AsbPackageRpmPrivate *priv = GET_PRIVATE (pkg_rpm);
133 + td = malloc (sizeof (*td));
134 headerGet (priv->h, RPMTAG_VCS, td, HEADERGET_MINMEM);
135 asb_package_set_vcs (pkg, rpmtdGetString (td));
138 + asb_package_set_vcs (pkg, NULL);
143 @@ -311,10 +345,10 @@ asb_package_rpm_ensure_license (AsbPacka
144 AsbPackageRpmPrivate *priv = GET_PRIVATE (pkg_rpm);
148 + td = malloc (sizeof (*td));
149 headerGet (priv->h, RPMTAG_LICENSE, td, HEADERGET_MINMEM);
150 asb_package_rpm_set_license (pkg, rpmtdGetString (td));
156 @@ -387,7 +421,7 @@ asb_package_rpm_ensure_releases (AsbPack
158 /* read out the file list */
159 for (i = 0; i < 3; i++)
160 - td[i] = rpmtdNew ();
161 + td[i] = malloc (sizeof (*td[1]));
162 /* get the ChangeLog info */
163 headerGet (priv->h, RPMTAG_CHANGELOGTIME, td[0], HEADERGET_MINMEM);
164 headerGet (priv->h, RPMTAG_CHANGELOGNAME, td[1], HEADERGET_MINMEM);
165 @@ -402,7 +436,7 @@ asb_package_rpm_ensure_releases (AsbPack
167 for (i = 0; i < 3; i++) {
168 rpmtdFreeData (td[i]);
174 @@ -424,7 +458,7 @@ asb_package_rpm_ensure_deps (AsbPackage
175 _cleanup_strv_free_ gchar **deps = NULL;
177 /* read out the dep list */
179 + td = malloc (sizeof (*td));
180 rc = headerGet (priv->h, RPMTAG_REQUIRENAME, td, HEADERGET_MINMEM);
183 @@ -452,7 +486,7 @@ asb_package_rpm_ensure_deps (AsbPackage
184 asb_package_set_deps (pkg, deps);
192 @@ -478,7 +512,7 @@ asb_package_rpm_ensure_filelists (AsbPac
194 /* read out the file list */
195 for (i = 0; i < 3; i++)
196 - td[i] = rpmtdNew ();
197 + td[i] = malloc (sizeof (*td[i]));
198 rc = headerGet (priv->h, RPMTAG_DIRNAMES, td[0], HEADERGET_MINMEM);
200 rc = headerGet (priv->h, RPMTAG_BASENAMES, td[1], HEADERGET_MINMEM);
201 @@ -513,7 +547,7 @@ asb_package_rpm_ensure_filelists (AsbPac
203 for (i = 0; i < 3; i++) {
204 rpmtdFreeData (td[i]);