summaryrefslogtreecommitdiffstats
path: root/meta
diff options
context:
space:
mode:
authorNitin A Kamble <nitin.a.kamble@intel.com>2011-01-17 13:58:19 -0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-01-20 21:37:02 +0000
commit59986bd748e9843ea347dc9e5a30222878ea087e (patch)
tree10aa2fc0aabd0610602701fb1fe6a72e67538831 /meta
parent95fc6ae1649c86b5c2686385772cda35f5e7631f (diff)
downloadpoky-59986bd748e9843ea347dc9e5a30222878ea087e.tar.gz
sat-solver: fix the build failure caused by gcc dso linkcing change
The libraries for linking are not determined automatically now. All the needed libraries must be specified explicitly. This patch fixes the issue for missing librpmmisc library in the linker script. Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Diffstat (limited to 'meta')
-rw-r--r--meta/recipes-extended/sat-solver/sat-solver/dso_linking_change_build_fix.patch31
-rw-r--r--meta/recipes-extended/sat-solver/sat-solver_git.bb5
2 files changed, 34 insertions, 2 deletions
diff --git a/meta/recipes-extended/sat-solver/sat-solver/dso_linking_change_build_fix.patch b/meta/recipes-extended/sat-solver/sat-solver/dso_linking_change_build_fix.patch
new file mode 100644
index 0000000000..7aeee29c98
--- /dev/null
+++ b/meta/recipes-extended/sat-solver/sat-solver/dso_linking_change_build_fix.patch
@@ -0,0 +1,31 @@
1After adding dso patch to gcc, the linking of libraries has to be explicit.
2Following error caused by dso patch is fixed for this patch.
3
4| make[2]: Entering directory `/disk0/pokybuild/build1/tmp/work/i586-poky-linux/sat-solver-0.0-git0+aa799f7bae0ec055e0e527203635001bb7346dbc-r1/git'^M
5| Linking C executable findfileconflicts^M
6| cd /disk0/pokybuild/build1/tmp/work/i586-poky-linux/sat-solver-0.0-git0+aa799f7bae0ec055e0e527203635001bb7346dbc-r1/git/tools && /disk0/pokybuild/build1/tmp/sysroots/x86_64-linux/usr/bin/cmake -E cmake_link_script CMakeFiles/findfileconflicts.dir/link.txt --verbose=1^M
7| /disk0/pokybuild/build1/tmp/sysroots/x86_64-linux/usr/bin/i586-poky-linux/i586-poky-linux-gcc -march=i586 --sysroot=/disk0/pokybuild/build1/tmp/sysroots/i586-poky-linux -Werror -Wall -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed CMakeFiles/findfileconflicts.dir/findfileconflicts.o -o findfileconflicts -rdynamic ../ext/libsatsolverext.a ../src/libsatsolver.a -lrpmio -lrpmdb^M
8| /disk0/pokybuild/build1/tmp/sysroots/x86_64-linux/usr/libexec/i586-poky-linux/gcc/i586-poky-linux/4.5.1/ld: [: invalid DSO for symbol `db_env_create_rpmdb@@LIBRPMMISC_0' definition^M
9| /disk0/pokybuild/build1/tmp/sysroots/i586-poky-linux/usr/lib/librpmmisc-5.0.so: could not read symbols: Bad value^M
10| collect2: ld returned 1 exit status^M
11| make[2]: *** [tools/findfileconflicts] Error 1^M
12
13Nitin A Kamble <nitin.a.kamble@intel.com>
14Date: 2011/01/11
15
16
17Index: git/CMakeLists.txt
18===================================================================
19--- git.orig/CMakeLists.txt
20+++ git/CMakeLists.txt
21@@ -63,6 +63,10 @@ FIND_LIBRARY(RPMIO_LIBRARY NAMES rpmio)
22 IF ( RPMIO_LIBRARY )
23 SET( RPMDB_LIBRARY ${RPMIO_LIBRARY} ${RPMDB_LIBRARY} )
24 ENDIF ( RPMIO_LIBRARY )
25+FIND_LIBRARY(RPMMISC_LIBRARY NAMES rpmmisc)
26+IF ( RPMMISC_LIBRARY )
27+SET( RPMDB_LIBRARY ${RPMMISC_LIBRARY} ${RPMDB_LIBRARY} )
28+ENDIF ( RPMMISC_LIBRARY )
29 IF ( FEDORA )
30 FIND_LIBRARY(DB_LIBRARY NAMES db)
31 IF ( DB_LIBRARY )
diff --git a/meta/recipes-extended/sat-solver/sat-solver_git.bb b/meta/recipes-extended/sat-solver/sat-solver_git.bb
index db368b1e1e..2e5f151608 100644
--- a/meta/recipes-extended/sat-solver/sat-solver_git.bb
+++ b/meta/recipes-extended/sat-solver/sat-solver_git.bb
@@ -7,11 +7,12 @@ LIC_FILES_CHKSUM = "file://LICENSE.BSD;md5=62272bd11c97396d4aaf1c41bc11f7d8"
7DEPENDS = "libcheck rpm zlib expat" 7DEPENDS = "libcheck rpm zlib expat"
8 8
9PV = "0.0-git${SRCPV}" 9PV = "0.0-git${SRCPV}"
10PR = "r1" 10PR = "r2"
11 11
12SRC_URI = "git://gitorious.org/opensuse/sat-solver.git;protocol=git \ 12SRC_URI = "git://gitorious.org/opensuse/sat-solver.git;protocol=git \
13 file://cmake.patch \ 13 file://cmake.patch \
14 file://rpm5.patch" 14 file://rpm5.patch \
15 file://dso_linking_change_build_fix.patch"
15 16
16S = "${WORKDIR}/git" 17S = "${WORKDIR}/git"
17 18