1 --- appstream-glib-0.6.9/libappstream-builder/Makefile.am.orig 2016-08-24 13:20:19.000000000 +0200
2 +++ appstream-glib-0.6.9/libappstream-builder/Makefile.am 2017-03-04 08:00:55.814044416 +0100
3 @@ -90,6 +90,7 @@ libappstream_builder_la_LDFLAGS = \
4 -export-symbols-regex '^asb_.*'
6 libappstream_builder_la_CFLAGS = \
11 @@ -133,11 +134,6 @@ AppStreamBuilder_1_0_gir_LIBS = \
13 libappstream-builder.la \
16 -AppStreamBuilder_1_0_gir_LIBS += \
20 AppStreamBuilder_1_0_gir_FILES = $(introspection_sources)
21 INTROSPECTION_GIRS += AppStreamBuilder-1.0.gir
23 --- appstream-glib-0.6.9/libappstream-builder/asb-package-rpm.c.orig 2016-11-30 11:07:39.000000000 +0100
24 +++ appstream-glib-0.6.9/libappstream-builder/asb-package-rpm.c 2017-03-04 07:59:10.334045621 +0100
27 #include <archive_entry.h>
29 -#include <rpm/rpmlib.h>
30 +#include <rpm/rpm46compat.h>
31 #include <rpm/rpmts.h>
33 #include "asb-package-rpm.h"
34 @@ -132,6 +132,36 @@ asb_package_rpm_set_source (AsbPackage *
35 asb_package_set_source_pkgname (pkg, srcrpm);
38 +static uint64_t rpmtdGetNumber(rpmtd td)
43 + ix = (td->ix >= 0 ? td->ix : 0);
46 + case RPM_INT64_TYPE:
47 + val = *((uint64_t *) td->data + ix);
49 + case RPM_INT32_TYPE:
50 + val = *((uint32_t *) td->data + ix);
52 + case RPM_INT16_TYPE:
53 + val = *((uint16_t *) td->data + ix);
57 + val = *((uint8_t *) td->data + ix);
65 +#define _RPMVSF_NOSIGNATURES (RPMVSF_NODSAHEADER | RPMVSF_NORSAHEADER | RPMVSF_NODSA | RPMVSF_NORSA)
66 +#define _RPMVSF_NODIGESTS (RPMVSF_NOSHA1HEADER | RPMVSF_NOMD5HEADER | RPMVSF_NOSHA1 | RPMVSF_NOMD5)
69 asb_package_rpm_ensure_nevra (AsbPackage *pkg, GError **error)
71 @@ -139,7 +169,7 @@ asb_package_rpm_ensure_nevra (AsbPackage
72 AsbPackageRpmPrivate *priv = GET_PRIVATE (pkg_rpm);
76 + td = malloc (sizeof (*td));
77 headerGet (priv->h, RPMTAG_NAME, td, HEADERGET_MINMEM);
78 asb_package_set_name (pkg, rpmtdGetString (td));
79 headerGet (priv->h, RPMTAG_VERSION, td, HEADERGET_MINMEM);
80 @@ -150,7 +180,7 @@ asb_package_rpm_ensure_nevra (AsbPackage
81 asb_package_set_arch (pkg, rpmtdGetString (td));
82 headerGet (priv->h, RPMTAG_EPOCH, td, HEADERGET_MINMEM);
83 asb_package_set_epoch (pkg, (guint) rpmtdGetNumber (td));
89 @@ -161,10 +191,10 @@ asb_package_rpm_ensure_source (AsbPackag
90 AsbPackageRpmPrivate *priv = GET_PRIVATE (pkg_rpm);
94 + td = malloc (sizeof (*td));
95 headerGet (priv->h, RPMTAG_SOURCERPM, td, HEADERGET_MINMEM);
96 asb_package_rpm_set_source (pkg, rpmtdGetString (td));
102 @@ -175,24 +205,28 @@ asb_package_rpm_ensure_url (AsbPackage *
103 AsbPackageRpmPrivate *priv = GET_PRIVATE (pkg_rpm);
107 + td = malloc (sizeof (*td));
108 headerGet (priv->h, RPMTAG_URL, td, HEADERGET_MINMEM);
109 asb_package_set_url (pkg, rpmtdGetString (td));
116 asb_package_rpm_ensure_vcs (AsbPackage *pkg, GError **error)
119 AsbPackageRpm *pkg_rpm = ASB_PACKAGE_RPM (pkg);
120 AsbPackageRpmPrivate *priv = GET_PRIVATE (pkg_rpm);
124 + td = malloc (sizeof (*td));
125 headerGet (priv->h, RPMTAG_VCS, td, HEADERGET_MINMEM);
126 asb_package_set_vcs (pkg, rpmtdGetString (td));
130 + asb_package_set_vcs (pkg, NULL);
135 @@ -203,10 +237,10 @@ asb_package_rpm_ensure_license (AsbPacka
136 AsbPackageRpmPrivate *priv = GET_PRIVATE (pkg_rpm);
140 + td = malloc (sizeof (*td));
141 headerGet (priv->h, RPMTAG_LICENSE, td, HEADERGET_MINMEM);
142 asb_package_rpm_set_license (pkg, rpmtdGetString (td));
148 @@ -277,7 +311,7 @@ asb_package_rpm_ensure_releases (AsbPack
150 /* read out the file list */
151 for (i = 0; i < 3; i++)
152 - td[i] = rpmtdNew ();
153 + td[i] = malloc (sizeof (*td[1]));
154 /* get the ChangeLog info */
155 headerGet (priv->h, RPMTAG_CHANGELOGTIME, td[0], HEADERGET_MINMEM);
156 headerGet (priv->h, RPMTAG_CHANGELOGNAME, td[1], HEADERGET_MINMEM);
157 @@ -292,7 +326,7 @@ asb_package_rpm_ensure_releases (AsbPack
159 for (i = 0; i < 3; i++) {
160 rpmtdFreeData (td[i]);
166 @@ -309,7 +343,7 @@ asb_package_rpm_ensure_deps (AsbPackage
169 /* read out the dep list */
171 + td = malloc (sizeof (*td));
172 rc = headerGet (priv->h, RPMTAG_REQUIRENAME, td, HEADERGET_MINMEM);
175 @@ -339,7 +373,7 @@ asb_package_rpm_ensure_deps (AsbPackage
184 @@ -362,7 +396,7 @@ asb_package_rpm_ensure_filelists (AsbPac
186 /* read out the file list */
187 for (i = 0; i < 3; i++)
188 - td[i] = rpmtdNew ();
189 + td[i] = malloc (sizeof (*td[i]));
190 rc = headerGet (priv->h, RPMTAG_DIRNAMES, td[0], HEADERGET_MINMEM);
192 rc = headerGet (priv->h, RPMTAG_BASENAMES, td[1], HEADERGET_MINMEM);
193 @@ -397,7 +431,7 @@ asb_package_rpm_ensure_filelists (AsbPac
195 for (i = 0; i < 3; i++) {
196 rpmtdFreeData (td[i]);