]> git.pld-linux.org Git - packages/appstream-glib.git/blame - appstream-glib-rpm5.patch
- updated to 0.2.1
[packages/appstream-glib.git] / appstream-glib-rpm5.patch
CommitLineData
77502258
JB
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
3@@ -66,6 +66,7 @@
4
5 libappstream_builder_la_LIBADD = \
6 $(AS_GLIB_LIBS) \
7+ $(LIBARCHIVE_LIBS) \
8 $(RPM_LIBS) \
9 $(GLIB_LIBS)
10
11@@ -76,6 +77,7 @@
12 -export-symbols-regex '^asb_.*'
13
14 libappstream_builder_la_CFLAGS = \
15+ $(RPM_CFLAGS) \
16 $(WARNINGFLAGS_C)
17
18 if HAVE_INTROSPECTION
19@@ -107,11 +109,6 @@
20 $(AS_GLIB_LIBS) \
21 libappstream-builder.la \
22 archive
23-if HAVE_RPM
24-AppStreamBuilder_1_0_gir_LIBS += \
25- rpmio \
26- rpm
27-endif
28 AppStreamBuilder_1_0_gir_FILES = $(introspection_sources)
29 INTROSPECTION_GIRS += AppStreamBuilder-1.0.gir
30
31--- appstream-glib-0.2.0/libappstream-builder/asb-package-rpm.c.orig 2014-06-21 22:53:36.268565676 +0200
32+++ appstream-glib-0.2.0/libappstream-builder/asb-package-rpm.c 2014-06-21 22:56:36.995228569 +0200
33@@ -33,7 +33,7 @@
34 #include <archive.h>
35 #include <archive_entry.h>
36
37-#include <rpm/rpmlib.h>
38+#include <rpm/rpm46compat.h>
39 #include <rpm/rpmts.h>
40
41 #include "as-cleanup.h"
42@@ -229,6 +229,33 @@
43 asb_package_set_source (pkg, srcrpm);
44 }
45
46+static uint64_t rpmtdGetNumber(rpmtd td)
47+{
48+ uint64_t val = 0;
49+ int ix;
50+ assert(td != NULL);
51+ ix = (td->ix >= 0 ? td->ix : 0);
52+
53+ switch (td->type) {
54+ case RPM_INT64_TYPE:
55+ val = *((uint64_t *) td->data + ix);
56+ break;
57+ case RPM_INT32_TYPE:
58+ val = *((uint32_t *) td->data + ix);
59+ break;
60+ case RPM_INT16_TYPE:
61+ val = *((uint16_t *) td->data + ix);
62+ break;
63+ case RPM_INT8_TYPE:
64+ case RPM_CHAR_TYPE:
65+ val = *((uint8_t *) td->data + ix);
66+ break;
67+ default:
68+ break;
69+ }
70+ return val;
71+}
72+
73 /**
74 * asb_package_rpm_ensure_simple:
75 **/
76@@ -241,7 +268,7 @@
77 rpmtd td;
78
79 /* get the simple stuff */
80- td = rpmtdNew ();
81+ td = malloc (sizeof (*td));
82 headerGet (priv->h, RPMTAG_NAME, td, HEADERGET_MINMEM);
83 asb_package_set_name (pkg, rpmtdGetString (td));
84 headerGet (priv->h, RPMTAG_VERSION, td, HEADERGET_MINMEM);
85@@ -258,7 +285,7 @@
86 asb_package_rpm_set_license (pkg, rpmtdGetString (td));
87 headerGet (priv->h, RPMTAG_SOURCERPM, td, HEADERGET_MINMEM);
88 asb_package_rpm_set_source (pkg, rpmtdGetString (td));
89- rpmtdFree (td);
90+ free (td);
91 return ret;
92 }
93
94@@ -390,7 +417,7 @@
95
96 /* read out the file list */
97 for (i = 0; i < 3; i++)
98- td[i] = rpmtdNew ();
99+ td[i] = malloc (sizeof (*td[1]));
100 /* get the ChangeLog info */
101 headerGet (priv->h, RPMTAG_CHANGELOGTIME, td[0], HEADERGET_MINMEM);
102 headerGet (priv->h, RPMTAG_CHANGELOGNAME, td[1], HEADERGET_MINMEM);
103@@ -405,7 +432,7 @@
104 }
105 for (i = 0; i < 3; i++) {
106 rpmtdFreeData (td[i]);
107- rpmtdFree (td[i]);
108+ free (td[i]);
109 }
110 return TRUE;
111 }
112@@ -427,7 +454,7 @@
113 _cleanup_strv_free_ gchar **deps = NULL;
114
115 /* read out the dep list */
116- td = rpmtdNew ();
117+ td = malloc (sizeof (*td));
118 rc = headerGet (priv->h, RPMTAG_REQUIRENAME, td, HEADERGET_MINMEM);
119 if (!rc) {
120 ret = FALSE;
121@@ -455,7 +482,7 @@
122 asb_package_set_deps (pkg, deps);
123 out:
124 rpmtdFreeData (td);
125- rpmtdFree (td);
126+ free (td);
127 return ret;
128 }
129
130@@ -477,7 +504,7 @@
131
132 /* read out the file list */
133 for (i = 0; i < 3; i++)
134- td[i] = rpmtdNew ();
135+ td[i] = malloc (sizeof (*td[i]));
136 rc = headerGet (priv->h, RPMTAG_DIRNAMES, td[0], HEADERGET_MINMEM);
137 if (rc)
138 rc = headerGet (priv->h, RPMTAG_BASENAMES, td[1], HEADERGET_MINMEM);
139@@ -512,7 +539,7 @@
140 out:
141 for (i = 0; i < 3; i++) {
142 rpmtdFreeData (td[i]);
143- rpmtdFree (td[i]);
144+ free (td[i]);
145 }
146 return ret;
147 }
This page took 0.167234 seconds and 4 git commands to generate.