oprofileui: fix the build failure after gcc dso change

With a change in gcc all the libraries needs to be specified explicitely
for linking. That breaks compile for this package as libm is not
explicitely specified. This commit fixes that linking  issue.

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
This commit is contained in:
Nitin A Kamble 2011-01-11 03:49:06 -08:00 committed by Richard Purdie
parent f7c568941a
commit d9276d4a04
2 changed files with 28 additions and 2 deletions

View File

@ -1,8 +1,9 @@
require oprofileui.inc
PV = "0.0+svnr${SRCPV}"
PR = "r0"
PR = "r1"
S = "${WORKDIR}/trunk"
SRC_URI = "svn://svn.o-hand.com/repos/oprofileui;module=trunk;proto=http"
SRC_URI = "svn://svn.o-hand.com/repos/oprofileui;module=trunk;proto=http \
file://dso_linking_change_build_fix.patch "

View File

@ -0,0 +1,25 @@
With dso linking change in gcc, all the libraries are needed to be explicitely specified to linker now. It breaks this package in following way. The libm library needs to be specified explicitely.
| make[2]: Entering directory `/disk0/pokybuild/build1/tmp/work/i586-poky-linux/oprofileui-0.0+svnr197-r0/trunk/src'^M
| ccache i586-poky-linux-gcc -march=i586 --sysroot=/disk0/pokybuild/build1/tmp/sysroots/i586-poky-linux -Wall -g -std=gnu99 -DPKG_DATA_DIR=\""/usr/share/oprofileui"\" -fexpensive-optimizations -fomit-frame-pointer -frename-registers -O2 -ggdb -feliminate-unused-debug-types -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -o oprofile-viewer main.o client.o archive.o archive_window.o archive_save_window.o view.o report.o parser.o image.o symbol.o module.o symbol_instance.o module_instance.o callee_symbol_instance.o caller_symbol_instance.o state-util.o -pthread -lglade-2.0 -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lxml2 -lgnomevfs-2 -lgmodule-2.0 -lgconf-2 -ldbus-glib-1 -ldbus-1 -lpthread -lgobject-2.0 -lgthread-2.0 -lrt -lglib-2.0 -pthread -lavahi-ui -lgtk-x11-2.0 -lavahi-common -lavahi-client -lavahi-glib -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lrt -lglib-2.0 ../protocol/libop.a^M
| /disk0/pokybuild/build1/tmp/sysroots/x86_64-linux/usr/libexec/i586-poky-linux/gcc/i586-poky-linux/4.5.1/ld: ^X^B: invalid DSO for symbol `log@@GLIBC_2.0' definition^M
| /disk0/pokybuild/build1/tmp/sysroots/i586-poky-linux/lib/libm.so.6: could not read symbols: Bad value^M
| collect2: ld returned 1 exit status^M
| make[2]: *** [oprofile-viewer] Error 1^M
Nitin A Kamble <nitin.a.kamble@intel.com>
Date: 2011/01/11
Index: trunk/src/Makefile.am
===================================================================
--- trunk.orig/src/Makefile.am
+++ trunk/src/Makefile.am
@@ -56,7 +56,7 @@ oprofile_viewer_SOURCES = \
oprofile_viewer_LDFLAGS =
-oprofile_viewer_LDADD = $(OPROFILEUI_LIBS) $(AVAHI_LIBS) $(top_builddir)/protocol/libop.a
+oprofile_viewer_LDADD = $(OPROFILEUI_LIBS) -lm $(AVAHI_LIBS) $(top_builddir)/protocol/libop.a
testparser_SOURCES = \
parser.c \