summaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-support/fuse
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2011-10-20 22:46:24 +0000
committerKoen Kooi <koen@dominion.thruhere.net>2011-10-21 08:12:32 +0200
commit949ec2d7319205a3a0366d18291a92541dfa038c (patch)
tree82ac467654fb3531b2eb9ef71178eee3a4e36602 /meta-oe/recipes-support/fuse
parentb7425b1a83e556a5bdcc557c17e4ab8943c36637 (diff)
downloadmeta-openembedded-949ec2d7319205a3a0366d18291a92541dfa038c.tar.gz
fuse: Fix linking issues with gold linker
fuse has problems when linking with gold since it uses version scripts in a way thats so perticular to bfd ld /home/kraj/work/angstrom/build/tmp-angstrom_2010_x-eglibc/sysroots/x86_64-linux/usr/libexec/armv5te-angstrom-linux-gnueabi/gcc/arm-angstrom-linux-gnueabi/4.6.2/ld: error: symbol __fuse_exited has undefined version | collect2: ld returned 1 exit status | make[1]: *** [libfuse.la] Error 1 | make[1]: *** Waiting for unfinished jobs.... For more details http://blog.flameeyes.eu/2011/06/01/gold-readiness-obstacle-2-base-versioning http://sources.redhat.com/bugzilla/show_bug.cgi?id=10861 http://comments.gmane.org/gmane.comp.file-systems.fuse.devel/9524 http://www.airs.com/blog/archives/300 Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Diffstat (limited to 'meta-oe/recipes-support/fuse')
-rw-r--r--meta-oe/recipes-support/fuse/fuse-2.8.6/gold-unversioned-symbol.patch60
-rw-r--r--meta-oe/recipes-support/fuse/fuse_2.8.6.bb3
2 files changed, 62 insertions, 1 deletions
diff --git a/meta-oe/recipes-support/fuse/fuse-2.8.6/gold-unversioned-symbol.patch b/meta-oe/recipes-support/fuse/fuse-2.8.6/gold-unversioned-symbol.patch
new file mode 100644
index 000000000..8ee97dff0
--- /dev/null
+++ b/meta-oe/recipes-support/fuse/fuse-2.8.6/gold-unversioned-symbol.patch
@@ -0,0 +1,60 @@
1Index: fuse-2.8.6/lib/fuse.c
2===================================================================
3--- fuse-2.8.6.orig/lib/fuse.c 2011-09-13 00:23:14.000000000 -0700
4+++ fuse-2.8.6/lib/fuse.c 2011-10-19 09:20:27.537099939 -0700
5@@ -3947,11 +3947,11 @@
6 11);
7 }
8
9-FUSE_SYMVER(".symver fuse_exited,__fuse_exited@");
10-FUSE_SYMVER(".symver fuse_process_cmd,__fuse_process_cmd@");
11-FUSE_SYMVER(".symver fuse_read_cmd,__fuse_read_cmd@");
12-FUSE_SYMVER(".symver fuse_set_getcontext_func,__fuse_set_getcontext_func@");
13-FUSE_SYMVER(".symver fuse_new_compat2,fuse_new@");
14+FUSE_SYMVER(".symver fuse_exited,__fuse_exited@FUSE_UNVERSIONED");
15+FUSE_SYMVER(".symver fuse_process_cmd,__fuse_process_cmd@FUSE_UNVERSIONED");
16+FUSE_SYMVER(".symver fuse_read_cmd,__fuse_read_cmd@FUSE_UNVERSIONED");
17+FUSE_SYMVER(".symver fuse_set_getcontext_func,__fuse_set_getcontext_func@FUSE_UNVERSIONED");
18+FUSE_SYMVER(".symver fuse_new_compat2,fuse_new@FUSE_UNVERSIONED");
19 FUSE_SYMVER(".symver fuse_new_compat22,fuse_new@FUSE_2.2");
20
21 #endif /* __FreeBSD__ */
22Index: fuse-2.8.6/lib/fuse_mt.c
23===================================================================
24--- fuse-2.8.6.orig/lib/fuse_mt.c 2011-09-13 00:23:14.000000000 -0700
25+++ fuse-2.8.6/lib/fuse_mt.c 2011-10-19 09:20:27.537099939 -0700
26@@ -113,4 +113,4 @@
27 return fuse_session_loop_mt(fuse_get_session(f));
28 }
29
30-FUSE_SYMVER(".symver fuse_loop_mt_proc,__fuse_loop_mt@");
31+FUSE_SYMVER(".symver fuse_loop_mt_proc,__fuse_loop_mt@FUSE_UNVERSIONED");
32Index: fuse-2.8.6/lib/fuse_versionscript
33===================================================================
34--- fuse-2.8.6.orig/lib/fuse_versionscript 2011-09-13 00:23:14.000000000 -0700
35+++ fuse-2.8.6/lib/fuse_versionscript 2011-10-19 09:20:27.541099939 -0700
36@@ -1,3 +1,6 @@
37+FUSE_UNVERSIONED {
38+};
39+
40 FUSE_2.2 {
41 global:
42 fuse_destroy;
43Index: fuse-2.8.6/lib/helper.c
44===================================================================
45--- fuse-2.8.6.orig/lib/helper.c 2011-09-13 00:23:14.000000000 -0700
46+++ fuse-2.8.6/lib/helper.c 2011-10-19 09:20:27.541099939 -0700
47@@ -409,10 +409,10 @@
48 return fuse_mount_compat22(mountpoint, NULL);
49 }
50
51-FUSE_SYMVER(".symver fuse_setup_compat2,__fuse_setup@");
52+FUSE_SYMVER(".symver fuse_setup_compat2,__fuse_setup@FUSE_UNVERSIONED");
53 FUSE_SYMVER(".symver fuse_setup_compat22,fuse_setup@FUSE_2.2");
54-FUSE_SYMVER(".symver fuse_teardown,__fuse_teardown@");
55-FUSE_SYMVER(".symver fuse_main_compat2,fuse_main@");
56+FUSE_SYMVER(".symver fuse_teardown,__fuse_teardown@FUSE_UNVERSIONED");
57+FUSE_SYMVER(".symver fuse_main_compat2,fuse_main@FUSE_UNVERSIONED");
58 FUSE_SYMVER(".symver fuse_main_real_compat22,fuse_main_real@FUSE_2.2");
59
60 #endif /* __FreeBSD__ */
diff --git a/meta-oe/recipes-support/fuse/fuse_2.8.6.bb b/meta-oe/recipes-support/fuse/fuse_2.8.6.bb
index ec81a9833..15e9206db 100644
--- a/meta-oe/recipes-support/fuse/fuse_2.8.6.bb
+++ b/meta-oe/recipes-support/fuse/fuse_2.8.6.bb
@@ -5,10 +5,11 @@ LICENSE = "GPLv2&LGPLv2"
5LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ 5LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
6 file://COPYING.LIB;md5=f30a9716ef3762e3467a2f62bf790f0a" 6 file://COPYING.LIB;md5=f30a9716ef3762e3467a2f62bf790f0a"
7 7
8PR = "r0" 8PR = "r1"
9 9
10SRC_URI = "${SOURCEFORGE_MIRROR}/fuse/fuse-${PV}.tar.gz \ 10SRC_URI = "${SOURCEFORGE_MIRROR}/fuse/fuse-${PV}.tar.gz \
11 file://define_GNU_SOURCE.patch \ 11 file://define_GNU_SOURCE.patch \
12 file://gold-unversioned-symbol.patch \
12 " 13 "
13 14
14SRC_URI[md5sum] = "eaa32c8cef56a981656a786f258a002a" 15SRC_URI[md5sum] = "eaa32c8cef56a981656a786f258a002a"