summaryrefslogtreecommitdiffstats
path: root/meta/recipes-extended/sat-solver/sat-solver/sat-solver_rpm5.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-extended/sat-solver/sat-solver/sat-solver_rpm5.patch')
-rw-r--r--meta/recipes-extended/sat-solver/sat-solver/sat-solver_rpm5.patch67
1 files changed, 67 insertions, 0 deletions
diff --git a/meta/recipes-extended/sat-solver/sat-solver/sat-solver_rpm5.patch b/meta/recipes-extended/sat-solver/sat-solver/sat-solver_rpm5.patch
new file mode 100644
index 0000000000..1776f6cd59
--- /dev/null
+++ b/meta/recipes-extended/sat-solver/sat-solver/sat-solver_rpm5.patch
@@ -0,0 +1,67 @@
1Add RPM5 configuration support
2
3Update the cmake configuration to detect additional files needed by RPM5.
4
5Original work by Qing He <qing.he@intel.com>.
6
7Merged and updated to make this more likely to be accepted upstream.
8
9Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
10
11diff -ur git.orig/CMakeLists.txt git/CMakeLists.txt
12--- git.orig/CMakeLists.txt 2011-03-16 16:16:29.152786178 -0500
13+++ git/CMakeLists.txt 2011-03-16 16:29:43.532032285 -0500
14@@ -50,7 +50,16 @@
15 ADD_DEFINITIONS( -DMULTI_SEMANTICS)
16 ENDIF ( MULTI_SEMANTICS )
17
18-IF ( NOT DEBIAN )
19+if ( RPM5 )
20+MESSAGE(STATUS "Enabling RPM 5 support")
21+ADD_DEFINITIONS( -DRPM5)
22+
23+FIND_PACKAGE(PkgConfig REQUIRED)
24+PKG_CHECK_MODULES(RPM REQUIRED rpm)
25+INCLUDE_DIRECTORIES( ${RPM_INCLUDE_DIRS} )
26+ENDIF ( RPM5 )
27+
28+IF ( RPM5 OR NOT DEBIAN )
29 FIND_LIBRARY(RPMDB_LIBRARY NAMES rpmdb)
30 IF ( NOT RPMDB_LIBRARY )
31 FIND_LIBRARY(RPMDB_LIBRARY NAMES rpm)
32@@ -59,13 +68,17 @@
33 IF ( RPMIO_LIBRARY )
34 SET( RPMDB_LIBRARY ${RPMIO_LIBRARY} ${RPMDB_LIBRARY} )
35 ENDIF ( RPMIO_LIBRARY )
36-IF ( FEDORA )
37+FIND_LIBRARY(RPMMISC_LIBRARY NAMES rpmmisc)
38+IF ( RPMMISC_LIBRARY )
39+SET ( RPMDB_LIBRARY ${RPMMISC_LIBRARY} ${RPMDB_LIBRARY} )
40+ENDIF ( RPMMISC_LIBRARY )
41+IF ( RPM5 OR FEDORA )
42 FIND_LIBRARY(DB_LIBRARY NAMES db)
43 IF ( DB_LIBRARY )
44 SET( RPMDB_LIBRARY ${DB_LIBRARY} ${RPMDB_LIBRARY} )
45 ENDIF ( DB_LIBRARY )
46-ENDIF ( FEDORA )
47-ENDIF ( NOT DEBIAN )
48+ENDIF ( RPM5 OR FEDORA )
49+ENDIF ( RPM5 OR NOT DEBIAN )
50
51 INCLUDE ( CheckFunctionExists )
52 INCLUDE ( TestBigEndian )
53diff -ur git.orig/ext/repo_rpmdb.c git/ext/repo_rpmdb.c
54--- git.orig/ext/repo_rpmdb.c 2011-03-16 18:03:55.401907738 -0500
55+++ git/ext/repo_rpmdb.c 2011-03-16 18:04:47.472989651 -0500
56@@ -3039,7 +3039,11 @@
57 repodata_set_str(data, s - s->repo->pool->solvables, PUBKEY_KEYID, keyid);
58 if (dig->pubkey.userid)
59 setutf8string(data, s - s->repo->pool->solvables, SOLVABLE_SUMMARY, dig->pubkey.userid);
60+#ifndef RPM5
61 (void)pgpFreeDig(dig);
62+#else
63+ (void)pgpDigFree(dig);
64+#endif
65 sat_free((void *)pkts);
66 return 1;
67 }