diff options
6 files changed, 78 insertions, 139 deletions
diff --git a/meta/conf/distro/include/poky-default-revisions.inc b/meta/conf/distro/include/poky-default-revisions.inc index 9f4ecdeb99..707e725806 100644 --- a/meta/conf/distro/include/poky-default-revisions.inc +++ b/meta/conf/distro/include/poky-default-revisions.inc | |||
@@ -165,7 +165,7 @@ SRCREV_pn-qemu-nativesdk ??= "${QEMUSRCREV}" | |||
165 | SRCREV_pn-qemu ??= "${QEMUSRCREV}" | 165 | SRCREV_pn-qemu ??= "${QEMUSRCREV}" |
166 | SRCREV_pn-qemugl ??= "d888bbc723c00d197d34a39b5b7448660ec1b1c0" | 166 | SRCREV_pn-qemugl ??= "d888bbc723c00d197d34a39b5b7448660ec1b1c0" |
167 | SRCREV_pn-qemugl-nativesdk ??= "d888bbc723c00d197d34a39b5b7448660ec1b1c0" | 167 | SRCREV_pn-qemugl-nativesdk ??= "d888bbc723c00d197d34a39b5b7448660ec1b1c0" |
168 | SRCREV_pn-sat-solver = "20212ccd92c6b3a5a93a83da5d7d60e9c305e75c" | 168 | SRCREV_pn-sat-solver = "0a7378d5f482f477a01cf1690d76871ab8bdcc32" |
169 | SRCREV_pn-screenshot ??= "292" | 169 | SRCREV_pn-screenshot ??= "292" |
170 | SRCREV_pn-settings-daemon ??= "0f174f463dfed500b65533e249cd22942e439c77" | 170 | SRCREV_pn-settings-daemon ??= "0f174f463dfed500b65533e249cd22942e439c77" |
171 | SRCREV_pn-swabber-native ??= "a0792390c5d6d5a5bade7ab155c80eef3f30fa52" | 171 | SRCREV_pn-swabber-native ??= "a0792390c5d6d5a5bade7ab155c80eef3f30fa52" |
diff --git a/meta/recipes-extended/sat-solver/sat-solver/cmake.patch b/meta/recipes-extended/sat-solver/sat-solver/cmake.patch index 854bd40d75..52319f0e4f 100644 --- a/meta/recipes-extended/sat-solver/sat-solver/cmake.patch +++ b/meta/recipes-extended/sat-solver/sat-solver/cmake.patch | |||
@@ -1,59 +1,15 @@ | |||
1 | check rpm | 1 | Enable debugging for all builds |
2 | not building docs (need oxygen) | 2 | not building docs (need oxygen) |
3 | 3 | ||
4 | 8/19/2010 - created by Qing He <qing.he@intel.com> | 4 | 8/19/2010 - created by Qing He <qing.he@intel.com> |
5 | 1/24/2011 - Disable Fedora/Debian checking/settings by Mark Hatle <mark.hatle@windriver.com> | 5 | 1/24/2011 - Disable Fedora/Debian checking/settings by Mark Hatle <mark.hatle@windriver.com> |
6 | 3/15/2011 - Updated to newer version of sat-solver by Mark Hatle <mark.hatle@windriver.com> | 6 | 3/15/2011 - Updated to newer version of sat-solver by Mark Hatle <mark.hatle@windriver.com> |
7 | 3/16/2011 - Split original patch and simplify by Mark Hatle <mark.hatle@windriver.com> | ||
7 | 8 | ||
8 | diff -ur git.orig/CMakeLists.txt git/CMakeLists.txt | 9 | diff -ur git.orig2/CMakeLists.txt git/CMakeLists.txt |
9 | --- git.orig/CMakeLists.txt 2011-03-15 17:14:22.000000000 -0500 | 10 | --- git.orig2/CMakeLists.txt 2011-03-16 16:29:43.532032285 -0500 |
10 | +++ git/CMakeLists.txt 2011-03-15 17:20:09.648880770 -0500 | 11 | +++ git/CMakeLists.txt 2011-03-16 16:32:59.982034501 -0500 |
11 | @@ -35,22 +35,15 @@ | 12 | @@ -177,7 +177,7 @@ |
12 | FIND_PACKAGE(Check REQUIRED) | ||
13 | FIND_PACKAGE(ZLIB REQUIRED) | ||
14 | |||
15 | -IF ( FEDORA ) | ||
16 | -MESSAGE(STATUS "Building for Fedora") | ||
17 | -ADD_DEFINITIONS( -DFEDORA ) | ||
18 | -ENDIF ( FEDORA) | ||
19 | - | ||
20 | -IF ( DEBIAN ) | ||
21 | -MESSAGE(STATUS "Building for Debian") | ||
22 | -ADD_DEFINITIONS( -DDEBIAN -DDEBIAN_SEMANTICS) | ||
23 | -ENDIF ( DEBIAN ) | ||
24 | - | ||
25 | IF ( MULTI_SEMANTICS ) | ||
26 | MESSAGE(STATUS "Enabling multi dist support") | ||
27 | ADD_DEFINITIONS( -DMULTI_SEMANTICS) | ||
28 | ENDIF ( MULTI_SEMANTICS ) | ||
29 | |||
30 | -IF ( NOT DEBIAN ) | ||
31 | +FIND_PACKAGE(PkgConfig REQUIRED) | ||
32 | +PKG_CHECK_MODULES(RPM REQUIRED rpm) | ||
33 | +INCLUDE_DIRECTORIES( ${RPM_INCLUDE_DIRS} ) | ||
34 | + | ||
35 | FIND_LIBRARY(RPMDB_LIBRARY NAMES rpmdb) | ||
36 | IF ( NOT RPMDB_LIBRARY ) | ||
37 | FIND_LIBRARY(RPMDB_LIBRARY NAMES rpm) | ||
38 | @@ -59,13 +52,14 @@ | ||
39 | IF ( RPMIO_LIBRARY ) | ||
40 | SET( RPMDB_LIBRARY ${RPMIO_LIBRARY} ${RPMDB_LIBRARY} ) | ||
41 | ENDIF ( RPMIO_LIBRARY ) | ||
42 | -IF ( FEDORA ) | ||
43 | +FIND_LIBRARY(RPMMISC_LIBRARY NAMES rpmmisc) | ||
44 | +IF ( RPMMISC_LIBRARY ) | ||
45 | +SET( RPMDB_LIBRARY ${RPMMISC_LIBRARY} ${RPMDB_LIBRARY} ) | ||
46 | +ENDIF ( RPMMISC_LIBRARY ) | ||
47 | FIND_LIBRARY(DB_LIBRARY NAMES db) | ||
48 | IF ( DB_LIBRARY ) | ||
49 | SET( RPMDB_LIBRARY ${DB_LIBRARY} ${RPMDB_LIBRARY} ) | ||
50 | ENDIF ( DB_LIBRARY ) | ||
51 | -ENDIF ( FEDORA ) | ||
52 | -ENDIF ( NOT DEBIAN ) | ||
53 | |||
54 | INCLUDE ( CheckFunctionExists ) | ||
55 | INCLUDE ( TestBigEndian ) | ||
56 | @@ -164,7 +158,7 @@ | ||
57 | 13 | ||
58 | MESSAGE(STATUS "Looking modules in ${CMAKE_MODULE_PATH}") | 14 | MESSAGE(STATUS "Looking modules in ${CMAKE_MODULE_PATH}") |
59 | 15 | ||
@@ -62,7 +18,7 @@ diff -ur git.orig/CMakeLists.txt git/CMakeLists.txt | |||
62 | set ( CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS} -g -O3" ) | 18 | set ( CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS} -g -O3" ) |
63 | set ( CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS} -g3 -O0" ) | 19 | set ( CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS} -g3 -O0" ) |
64 | 20 | ||
65 | @@ -173,7 +167,7 @@ | 21 | @@ -186,7 +186,7 @@ |
66 | ADD_SUBDIRECTORY(tools) | 22 | ADD_SUBDIRECTORY(tools) |
67 | ADD_SUBDIRECTORY(tests) | 23 | ADD_SUBDIRECTORY(tests) |
68 | ADD_SUBDIRECTORY(examples) | 24 | ADD_SUBDIRECTORY(examples) |
diff --git a/meta/recipes-extended/sat-solver/sat-solver/rpm5-solvdb.patch b/meta/recipes-extended/sat-solver/sat-solver/rpm5-solvdb.patch deleted file mode 100644 index 8ce1b150c5..0000000000 --- a/meta/recipes-extended/sat-solver/sat-solver/rpm5-solvdb.patch +++ /dev/null | |||
@@ -1,30 +0,0 @@ | |||
1 | sat-solver rpmdb based solv database construction | ||
2 | |||
3 | The first time the database is created on an RPM5 system it works | ||
4 | correctly. However any subsequent rebuilds cause an empty database to | ||
5 | occur. | ||
6 | |||
7 | The following is from Michael Schroeder <mls@suse.de>: | ||
8 | > rpmdb2solv contains a hack that makes it use the unchanged already | ||
9 | > converted packages. To do this, it needs to get the database id | ||
10 | > for every installed packages by reading the "Name" index. This | ||
11 | > somehow doesn't seem to work with rpm5. | ||
12 | > | ||
13 | > As a workaround you can add a "ref = 0;" line at the top of the | ||
14 | > repo_add_rpmdb() function in ext/repo_rpmdb.c. | ||
15 | |||
16 | Signed-off-by: Mark Hatle <mark.hatle@windriver.com> | ||
17 | |||
18 | diff -ur git.orig/ext/repo_rpmdb.c git/ext/repo_rpmdb.c | ||
19 | --- git.orig/ext/repo_rpmdb.c 2011-03-16 09:43:50.470008215 -0500 | ||
20 | +++ git/ext/repo_rpmdb.c 2011-03-16 09:47:55.503989694 -0500 | ||
21 | @@ -1344,6 +1344,9 @@ | ||
22 | memset(&dbkey, 0, sizeof(dbkey)); | ||
23 | memset(&dbdata, 0, sizeof(dbdata)); | ||
24 | |||
25 | + /* Workaround for RPM 5 database construction */ | ||
26 | + ref = 0; | ||
27 | + | ||
28 | if (!rootdir) | ||
29 | rootdir = ""; | ||
30 | |||
diff --git a/meta/recipes-extended/sat-solver/sat-solver/rpm5.patch b/meta/recipes-extended/sat-solver/sat-solver/rpm5.patch deleted file mode 100644 index 5ab632155d..0000000000 --- a/meta/recipes-extended/sat-solver/sat-solver/rpm5.patch +++ /dev/null | |||
@@ -1,53 +0,0 @@ | |||
1 | fix rpm5 build | ||
2 | |||
3 | 8/19/2010 - created by Qing He <qing.he@intel.com> | ||
4 | |||
5 | |||
6 | pgpDigNew/pgpDigFree has changed in RPM 5.4.0 | ||
7 | |||
8 | Signed-off-by: Qing He <qing.he@intel.com> | ||
9 | |||
10 | diff --git a/ext/repo_rpmdb.c b/ext/repo_rpmdb.c | ||
11 | index 34f2b65..3c6ab9a 100644 | ||
12 | --- a/ext/repo_rpmdb.c | ||
13 | +++ b/ext/repo_rpmdb.c | ||
14 | @@ -21,10 +21,11 @@ | ||
15 | #include <string.h> | ||
16 | #include <unistd.h> | ||
17 | #include <assert.h> | ||
18 | +#include <stdint.h> | ||
19 | |||
20 | #include <rpm/rpmio.h> | ||
21 | #include <rpm/rpmpgp.h> | ||
22 | -#include <rpm/header.h> | ||
23 | +//#include <rpm/header.h> | ||
24 | #include <rpm/rpmdb.h> | ||
25 | |||
26 | #ifndef DB_CREATE | ||
27 | @@ -2466,7 +2467,7 @@ rpm_byrpmh(Header h, void **statep) | ||
28 | int sigdsize, sigcnt, l; | ||
29 | RpmHead *rpmhead; | ||
30 | |||
31 | - uh = headerUnload(h); | ||
32 | + uh = headerUnload(h, NULL); | ||
33 | if (!uh) | ||
34 | return 0; | ||
35 | sigcnt = getu32(uh); | ||
36 | @@ -2982,7 +2983,7 @@ pubkey2solvable(Solvable *s, Repodata *data, char *pubkey) | ||
37 | parsekeydata(s, data, pkts, pktsl); | ||
38 | /* only rpm knows how to do the release calculation, we don't dare | ||
39 | * to recreate all the bugs */ | ||
40 | - dig = pgpNewDig(); | ||
41 | + dig = pgpDigNew(RPMVSF_DEFAULT, 0); | ||
42 | (void) pgpPrtPkts(pkts, pktsl, dig, 0); | ||
43 | btime = dig->pubkey.time[0] << 24 | dig->pubkey.time[1] << 16 | dig->pubkey.time[2] << 8 | dig->pubkey.signid[3]; | ||
44 | sprintf(evrbuf, "%02x%02x%02x%02x-%02x%02x%02x%02x", dig->pubkey.signid[4], dig->pubkey.signid[5], dig->pubkey.signid[6], dig->pubkey.signid[7], dig->pubkey.time[0], dig->pubkey.time[1], dig->pubkey.time[2], dig->pubkey.time[3]); | ||
45 | @@ -2996,7 +2997,7 @@ pubkey2solvable(Solvable *s, Repodata *data, char *pubkey) | ||
46 | repodata_set_str(data, s - s->repo->pool->solvables, PUBKEY_KEYID, keyid); | ||
47 | if (dig->pubkey.userid) | ||
48 | setutf8string(data, s - s->repo->pool->solvables, SOLVABLE_SUMMARY, dig->pubkey.userid); | ||
49 | - pgpFreeDig(dig); | ||
50 | + (void) pgpDigFree(dig); | ||
51 | sat_free((void *)pkts); | ||
52 | return 1; | ||
53 | } | ||
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 @@ | |||
1 | Add RPM5 configuration support | ||
2 | |||
3 | Update the cmake configuration to detect additional files needed by RPM5. | ||
4 | |||
5 | Original work by Qing He <qing.he@intel.com>. | ||
6 | |||
7 | Merged and updated to make this more likely to be accepted upstream. | ||
8 | |||
9 | Signed-off-by: Mark Hatle <mark.hatle@windriver.com> | ||
10 | |||
11 | diff -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 ) | ||
53 | diff -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 | } | ||
diff --git a/meta/recipes-extended/sat-solver/sat-solver_git.bb b/meta/recipes-extended/sat-solver/sat-solver_git.bb index a6519d5921..ba5af67f70 100644 --- a/meta/recipes-extended/sat-solver/sat-solver_git.bb +++ b/meta/recipes-extended/sat-solver/sat-solver_git.bb | |||
@@ -7,12 +7,11 @@ LIC_FILES_CHKSUM = "file://LICENSE.BSD;md5=62272bd11c97396d4aaf1c41bc11f7d8" | |||
7 | DEPENDS = "libcheck rpm zlib expat db" | 7 | DEPENDS = "libcheck rpm zlib expat db" |
8 | 8 | ||
9 | PV = "0.0-git${SRCPV}" | 9 | PV = "0.0-git${SRCPV}" |
10 | PR = "r5" | 10 | PR = "r6" |
11 | 11 | ||
12 | SRC_URI = "git://gitorious.org/opensuse/sat-solver.git;protocol=git \ | 12 | SRC_URI = "git://gitorious.org/opensuse/sat-solver.git;protocol=git \ |
13 | file://sat-solver_rpm5.patch \ | ||
13 | file://cmake.patch \ | 14 | file://cmake.patch \ |
14 | file://rpm5.patch \ | ||
15 | file://rpm5-solvdb.patch \ | ||
16 | file://db5.patch \ | 15 | file://db5.patch \ |
17 | file://builtin-arch.patch;apply=no \ | 16 | file://builtin-arch.patch;apply=no \ |
18 | file://no-builtin-arch.patch;apply=no \ | 17 | file://no-builtin-arch.patch;apply=no \ |
@@ -20,7 +19,7 @@ SRC_URI = "git://gitorious.org/opensuse/sat-solver.git;protocol=git \ | |||
20 | 19 | ||
21 | S = "${WORKDIR}/git" | 20 | S = "${WORKDIR}/git" |
22 | 21 | ||
23 | EXTRA_OECMAKE += "-DLIB=lib" | 22 | EXTRA_OECMAKE += "-DLIB=lib -DRPM5=RPM5" |
24 | 23 | ||
25 | inherit cmake pkgconfig | 24 | inherit cmake pkgconfig |
26 | 25 | ||