Skip to contentSkip to conversation

bug-fix for bug #1459

PATCH In review [email protected] 2 participants 3 messages Sep 14, 2011

lore
Share & tools
lore
#0 lore raw

cover bug-fix for bug #1459

From: Nitin A Kamble <[email protected]>

The reported issue gets fixed by the accompanying commit.

If the cmake is built on fedora 15 it also gets one extra symbol memcpy@@GLIBC_2.14. I tried various ways to get rid of this symbol from resulting binaries, but I could not get rid of it completely, Hence I did not add pieces of the patch to avoid that symbol. Still the memcpy symbol issue was not reported on the original bug, and for now the autobuilder should be happy with this commit.

The following changes since commit ce66e2c6bd117d1a40b547b10b376524f9276d16:

core-image-minimal: Add missing POKY_EXTRA_IMAGE variable (2011-09-14 01:29:30 +0100)

are available in the git repository at:
git://git.pokylinux.org/poky-contrib nitin/misc
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=nitin/misc

Nitin A Kamble (1):
cmake-native: fix symbol not found error on old distros

 meta/recipes-devtools/cmake/cmake-native_2.8.5.bb  |    4 ++-
 .../cmake/fix_for_running_on_older_distros.diff    |   26 ++++++++++++++++++++
 2 files changed, 29 insertions(+), 1 deletions(-)
 create mode 100644 meta/recipes-devtools/cmake/cmake/fix_for_running_on_older_distros.diff
Signature · 1 line
1.7.6
#1 lore raw

PATCH 1/1 cmake-native: fix symbol not found error on old distros

From: Nitin A Kamble <[email protected]>

more information in the patch file

This also adds dependency on the build system to have libstdc++-static package being installed.

---
 meta/recipes-devtools/cmake/cmake-native_2.8.5.bb  |    4 ++-
 .../cmake/fix_for_running_on_older_distros.diff    |   26 ++++++++++++++++++++
 2 files changed, 29 insertions(+), 1 deletions(-)
 create mode 100644 meta/recipes-devtools/cmake/cmake/fix_for_running_on_older_distros.diff
meta/recipes-devtools/cmake/cmake-native_2.8.5.bb +3 -1
index 3fe0c2e..4cd12f0 100644
@@ -1,7 +1,9 @@
 require cmake.inc
 inherit native
 
-PR = "${INC_PR}.1"
+PR = "${INC_PR}.2"
+
+SRC_URI += "file://fix_for_running_on_older_distros.diff"
 
 SRC_URI[md5sum] = "3c5d32cec0f4c2dc45f4c2e84f4a20c5"
 SRC_URI[sha256sum] = "5e18bff75f01656c64f553412a8905527e1b85efaf3163c6fb81ea5aaced0b91"
meta/recipes-devtools/cmake/cmake/fix_for_running_on_older_distros.diff new file +26 -0
new file mode 100644
index 0000000..9a46f2e
@@ -0,0 +1,26 @@
+Upstream-Status: Inappropriate [embedded specific]
+
+Fixes bug: [YOCTO #1459]
+
+When sstate files are shared from newer distro machine to older distro machine, 
+the binaries can fail to run due to missing newer symbols from the newer 
+libraries as seen bellow:
+
+      U _ZNSt15_List_node_base7_M_hookEPS_@@GLIBCXX_3.4.14
+      U _ZNSt15_List_node_base9_M_unhookEv@@GLIBCXX_3.4.14
+
+This patch makes libstdc++ linking static. so the build system need to have libstdc++-static package installed before building cmake.
+
+Date: 2011/09/09
+Signed-off-by: Nitin A Kamble <[email protected]>
+diff -rup 1/CompileFlags.cmake 3/CompileFlags.cmake
+--- 1/CompileFlags.cmake	2011-09-09 06:02:22.404136990 -0700
++++ 3/CompileFlags.cmake	2011-09-09 06:02:27.869137440 -0700
+@@ -10,6 +10,7 @@
+ # See the License for more information.
+ #=============================================================================
+ 
++SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -static-libstdc++")
+ #-----------------------------------------------------------------------------
+ # set some special flags for different compilers
+ #
Signature · 1 line
1.7.6
#2 lore raw

Re: [PATCH 1/1] cmake-native: fix symbol not found error on old distros

Quoted 3 lines · On Wed, Sep 14, 2011 at 07:13, <[email protected]> wrote:

From: Nitin A Kamble <[email protected]>

more information in the patch file

Please put the information on the commit log since people shouldn't need to look into the patch file to gather it.
...

Quoted 8 lines

+++ b/meta/recipes-devtools/cmake/cmake/fix_for_running_on_older_distros.diff

meta/recipes-devtools/cmake/cmake/fix_for_running_on_older_distros.diff new file +6 -0
@@ -0,0 +1,26 @@
+Upstream-Status: Inappropriate [embedded specific]
+
+Fixes bug: [YOCTO #1459]
+
+When sstate files are shared from newer distro machine to older distro machine,
+the binaries can fail to run due to missing newer symbols from the newer

meta/recipes-devtools/cmake/cmake/fix_for_running_on_older_distros.diff line 16

Quoted 10 lines
meta/recipes-devtools/cmake/cmake/fix_for_running_on_older_distros.diff new file +10 -0
+libraries as seen bellow:
+
+      U _ZNSt15_List_node_base7_M_hookEPS_@@GLIBCXX_3.4.14
+      U _ZNSt15_List_node_base9_M_unhookEv@@GLIBCXX_3.4.14
+
+This patch makes libstdc++ linking static. so the build system need to have libstdc++-static package installed before building cmake.
+
+Date: 2011/09/09
+Signed-off-by: Nitin A Kamble <[email protected]>
+diff -rup 1/CompileFlags.cmake 3/CompileFlags.cmake

...

The header is not following the policy; More at
http://www.openembedded.org/wiki/Commit_Patch_Message_Guidelines#Patch_Headers_and_Commit_Messages

Signature · 3 lines
Otavio Salvador                             O.S. Systems
E-mail: [email protected]  http://www.ossystems.com.br
Mobile: +55 53 9981-7854              http://projetos.ossystems.com.br