sat-solver: add machine arch support

(From OE-Core rev: ca758fa404fa447689ff205ee3b4b76bd3f1068a)

Signed-off-by: Qing He <qing.he@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Qing He 2011-03-10 18:28:55 +08:00 committed by Richard Purdie
parent 7da9f27c37
commit 023c43b98c
3 changed files with 83 additions and 2 deletions

View File

@ -0,0 +1,28 @@
This patch adds the ${MACHINE_ARCH} and ${PACKAGE_ARCH} to
sat-solver available archs, see do_archpatch in .bb for more
details, this is the version for ${BASE_PACKAGE_ARCH} already
recognized in sat-sovler.
Signed-off-by: Qing He <qing.he@intel.com>
diff --git a/src/poolarch.c b/src/poolarch.c
index 34a14a3..660959b 100644
--- a/src/poolarch.c
+++ b/src/poolarch.c
@@ -21,6 +21,7 @@
#include "util.h"
const char *archpolicies[] = {
+ "@MACHINE_ARCH@", "@MACHINE_ARCH@:@PKG_ARCH_TAIL@",
"x86_64", "x86_64:i686:i586:i486:i386",
"i686", "i686:i586:i486:i386",
"i586", "i586:i486:i386",
@@ -72,7 +74,7 @@ pool_setarch(Pool *pool, const char *arch)
return;
}
#ifndef DEBIAN_SEMANTICS
- id = ARCH_NOARCH;
+ id = ARCH_ALL;
#else
id = ARCH_ALL;
#endif

View File

@ -0,0 +1,29 @@
This patch adds the ${MACHINE_ARCH} and ${PACKAGE_ARCH} to
sat-solver available archs, see do_archpatch in .bb for more
details, this is the version for ${BASE_PACKAGE_ARCH} not
recognized in sat-sovler.
Signed-off-by: Qing He <qing.he@intel.com>
diff --git a/src/poolarch.c b/src/poolarch.c
index 34a14a3..36367ba 100644
--- a/src/poolarch.c
+++ b/src/poolarch.c
@@ -21,6 +21,8 @@
#include "util.h"
const char *archpolicies[] = {
+ "@MACHINE_ARCH@", "@MACHINE_ARCH@:@PKG_ARCH@",
+ "@PKG_ARCH@", "@PKG_ARCH@",
"x86_64", "x86_64:i686:i586:i486:i386",
"i686", "i686:i586:i486:i386",
"i586", "i586:i486:i386",
@@ -72,7 +74,7 @@ pool_setarch(Pool *pool, const char *arch)
return;
}
#ifndef DEBIAN_SEMANTICS
- id = ARCH_NOARCH;
+ id = ARCH_ALL;
#else
id = ARCH_ALL;
#endif

View File

@ -7,14 +7,38 @@ LIC_FILES_CHKSUM = "file://LICENSE.BSD;md5=62272bd11c97396d4aaf1c41bc11f7d8"
DEPENDS = "libcheck rpm zlib expat db"
PV = "0.0-git${SRCPV}"
PR = "r3"
PR = "r4"
SRC_URI = "git://gitorious.org/opensuse/sat-solver.git;protocol=git \
file://cmake.patch \
file://rpm5.patch \
file://db5.patch"
file://db5.patch \
file://builtin-arch.patch;apply=no \
file://no-builtin-arch.patch;apply=no \
"
S = "${WORKDIR}/git"
EXTRA_OECMAKE += "-DLIB=lib"
inherit cmake pkgconfig
PACKAGE_ARCH = "${MACHINE_ARCH}"
do_archpatch () {
PKG_ARCH_TAIL=`sed -n ${S}/src/poolarch.c -e "s|^ \"\(${BASE_PACKAGE_ARCH}\)\",.*\"\(.*\)\",.*$|\2|p"`
if [ "x${PKG_ARCH_TAIL}" == x ]; then
PATCHFILE=${WORKDIR}/no-builtin-arch.patch
else
PATCHFILE=${WORKDIR}/builtin-arch.patch
fi
sed -i "${PATCHFILE}" \
-e "s|@MACHINE_ARCH@|${MACHINE_ARCH}|g" \
-e "s|@PKG_ARCH@|${BASE_PACKAGE_ARCH}|g" \
-e "s|@PKG_ARCH_TAIL@|${PKG_ARCH_TAIL}|g"
patch -p1 -i "${PATCHFILE}"
}
addtask archpatch before do_patch after do_unpack