diff options
author | Khem Raj <raj.khem@gmail.com> | 2012-06-04 15:06:52 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-06-15 15:54:18 +0100 |
commit | e0800be814c8f8adf8d6682aacea1d3ce9b14c9e (patch) | |
tree | d37ed4752f9866758cddee62f468c5a04a6bf4d7 | |
parent | 492297fce0b80547d3dac9f611f463c6cc95160b (diff) | |
download | openembedded-core-e0800be814c8f8adf8d6682aacea1d3ce9b14c9e.tar.gz openembedded-core-e0800be814c8f8adf8d6682aacea1d3ce9b14c9e.tar.bz2 openembedded-core-e0800be814c8f8adf8d6682aacea1d3ce9b14c9e.zip |
sat-solver: Fix build on uclibc
futimes is not available on uclibc so use utimes
qsort is also not as expected by sat-solver therefore
for uclibc we resort to using internal version of
qsort
Signed-off-by: Khem Raj <raj.khem@gmail.com>
-rw-r--r-- | meta/recipes-extended/sat-solver/sat-solver/futimes.patch | 32 | ||||
-rw-r--r-- | meta/recipes-extended/sat-solver/sat-solver_git.bb | 3 |
2 files changed, 35 insertions, 0 deletions
diff --git a/meta/recipes-extended/sat-solver/sat-solver/futimes.patch b/meta/recipes-extended/sat-solver/sat-solver/futimes.patch new file mode 100644 index 0000000000..b24d852ae7 --- /dev/null +++ b/meta/recipes-extended/sat-solver/sat-solver/futimes.patch @@ -0,0 +1,32 @@ +This patch uses utimes instead of futimes for uclibc +since futimes is not available + +Upstream-Status: Pending +Signed-off-by: Khem Raj <raj.khem@gmail.com> + +Index: git/examples/solv.c +=================================================================== +--- git.orig/examples/solv.c 2012-06-01 12:06:22.041552848 -0700 ++++ git/examples/solv.c 2012-06-01 12:49:17.417677449 -0700 +@@ -1027,7 +1027,8 @@ + int flags; + + cinfo = repo->appdata; +- if (!(fp = fopen(calccachepath(repo, repoext), "r"))) ++ const char* fname = calccachepath(repo, repoext); ++ if (!(fp = fopen(fname, "r"))) + return 0; + if (fseek(fp, -sizeof(mycookie), SEEK_END) || fread(mycookie, sizeof(mycookie), 1, fp) != 1) + { +@@ -1068,7 +1069,11 @@ + memcpy(cinfo->extcookie, myextcookie, sizeof(myextcookie)); + } + if (mark) ++#ifdef __UCLIBC__ ++ utimes(fname, 0); /* try to set modification time */ ++#else + futimes(fileno(fp), 0); /* try to set modification time */ ++#endif + fclose(fp); + return 1; + } diff --git a/meta/recipes-extended/sat-solver/sat-solver_git.bb b/meta/recipes-extended/sat-solver/sat-solver_git.bb index b0382f6af0..e1054e9e22 100644 --- a/meta/recipes-extended/sat-solver/sat-solver_git.bb +++ b/meta/recipes-extended/sat-solver/sat-solver_git.bb @@ -20,6 +20,7 @@ SRC_URI = "git://github.com/openSUSE/sat-solver.git;protocol=git \ file://sat-solver_core.patch \ file://fix_gcc-4.6.0_compile_issue.patch \ file://0001-sat_xfopen.c-Forward-port-to-zlib-1.2.6-gzFile.patch \ + file://futimes.patch \ " S = "${WORKDIR}/git" @@ -28,6 +29,8 @@ EXTRA_OECMAKE += "-DRPM5=RPM5 -DOE_CORE=OE_CORE" EXTRA_OECMAKE += " -DLIB=${@os.path.basename('${libdir}')}" +TUNE_CCARGS_append_libc-uclibc = " -DUSE_OWN_QSORT=1 " + inherit cmake pkgconfig RDEPENDS_${PN} = "rpm-libs" |