diff options
-rw-r--r-- | meta/recipes-devtools/libtool/libtool-cross_2.4.bb | 3 | ||||
-rw-r--r-- | meta/recipes-devtools/libtool/libtool-nativesdk_2.4.bb | 3 | ||||
-rw-r--r-- | meta/recipes-devtools/libtool/libtool/fixinstall.patch | 101 |
3 files changed, 105 insertions, 2 deletions
diff --git a/meta/recipes-devtools/libtool/libtool-cross_2.4.bb b/meta/recipes-devtools/libtool/libtool-cross_2.4.bb index 5c06987195..5df690868f 100644 --- a/meta/recipes-devtools/libtool/libtool-cross_2.4.bb +++ b/meta/recipes-devtools/libtool/libtool-cross_2.4.bb | |||
@@ -1,8 +1,9 @@ | |||
1 | require libtool-${PV}.inc | 1 | require libtool-${PV}.inc |
2 | 2 | ||
3 | PR = "r4" | 3 | PR = "r5" |
4 | PACKAGES = "" | 4 | PACKAGES = "" |
5 | SRC_URI += "file://prefix.patch" | 5 | SRC_URI += "file://prefix.patch" |
6 | SRC_URI += "file://fixinstall.patch" | ||
6 | 7 | ||
7 | datadir = "${STAGING_DIR_TARGET}${target_datadir}" | 8 | datadir = "${STAGING_DIR_TARGET}${target_datadir}" |
8 | 9 | ||
diff --git a/meta/recipes-devtools/libtool/libtool-nativesdk_2.4.bb b/meta/recipes-devtools/libtool/libtool-nativesdk_2.4.bb index a96d1d1ac4..bf1928d8b0 100644 --- a/meta/recipes-devtools/libtool/libtool-nativesdk_2.4.bb +++ b/meta/recipes-devtools/libtool/libtool-nativesdk_2.4.bb | |||
@@ -1,7 +1,8 @@ | |||
1 | require libtool-${PV}.inc | 1 | require libtool-${PV}.inc |
2 | 2 | ||
3 | PR = "r4" | 3 | PR = "r5" |
4 | SRC_URI += "file://prefix.patch" | 4 | SRC_URI += "file://prefix.patch" |
5 | SRC_URI += "file://fixinstall.patch" | ||
5 | 6 | ||
6 | inherit nativesdk | 7 | inherit nativesdk |
7 | 8 | ||
diff --git a/meta/recipes-devtools/libtool/libtool/fixinstall.patch b/meta/recipes-devtools/libtool/libtool/fixinstall.patch new file mode 100644 index 0000000000..279c07be37 --- /dev/null +++ b/meta/recipes-devtools/libtool/libtool/fixinstall.patch | |||
@@ -0,0 +1,101 @@ | |||
1 | There is no point in having "executable" binaries in the .libs | ||
2 | directory linked with different rpaths to the target which | ||
3 | could concivably be run on the build system when cross compiling. | ||
4 | |||
5 | This patch removes the extra rpaths ($compile_rpath) so that the | ||
6 | output from the "link" stage can be used on the target. We can then | ||
7 | avoid having to "relink" during the install stage. | ||
8 | |||
9 | This saves some build time (do_install is over 2 minutes faster for | ||
10 | pulseaudio). | ||
11 | |||
12 | This patch also removes an annoying "seems to be moved" warning | ||
13 | which is totally bogus in the sysroot case. | ||
14 | |||
15 | Upstream-Status: Inappropriate [upstream are unlikely to take a patch like this] | ||
16 | |||
17 | RP 2011/11/16 | ||
18 | |||
19 | Index: libtool-2.4/libltdl/config/ltmain.m4sh | ||
20 | =================================================================== | ||
21 | --- libtool-2.4.orig/libltdl/config/ltmain.m4sh 2011-11-16 14:50:01.070383779 +0000 | ||
22 | +++ libtool-2.4/libltdl/config/ltmain.m4sh 2011-11-16 15:27:13.582310413 +0000 | ||
23 | @@ -2163,7 +2163,7 @@ | ||
24 | dir="$func_dirname_result" | ||
25 | func_append dir "$objdir" | ||
26 | |||
27 | - if test -n "$relink_command"; then | ||
28 | + if test "$fast_install" = no && test -n "$relink_command"; then | ||
29 | # Strip any trailing slash from the destination. | ||
30 | func_stripname '' '/' "$libdir" | ||
31 | destlibdir=$func_stripname_result | ||
32 | @@ -2202,7 +2202,7 @@ | ||
33 | shift | ||
34 | |||
35 | srcname="$realname" | ||
36 | - test -n "$relink_command" && srcname="$realname"T | ||
37 | + test "$fast_install" = no && test -n "$relink_command" && srcname="$realname"T | ||
38 | |||
39 | # Install the shared library and build the symlinks. | ||
40 | func_show_eval "$install_shared_prog $dir/$srcname $destdir/$realname" \ | ||
41 | @@ -5856,15 +5856,15 @@ | ||
42 | # Hardcode the library path. | ||
43 | # Skip directories that are in the system default run-time | ||
44 | # search path. | ||
45 | - case " $sys_lib_dlsearch_path " in | ||
46 | - *" $absdir "*) ;; | ||
47 | - *) | ||
48 | - case "$compile_rpath " in | ||
49 | - *" $absdir "*) ;; | ||
50 | - *) func_append compile_rpath " $absdir" ;; | ||
51 | - esac | ||
52 | - ;; | ||
53 | - esac | ||
54 | + #case " $sys_lib_dlsearch_path " in | ||
55 | + #*" $absdir "*) ;; | ||
56 | + #*) | ||
57 | + # case "$compile_rpath " in | ||
58 | + # *" $absdir "*) ;; | ||
59 | + # *) func_append compile_rpath " $absdir" ;; | ||
60 | + # esac | ||
61 | + # ;; | ||
62 | + #esac | ||
63 | case " $sys_lib_dlsearch_path " in | ||
64 | *" $libdir "*) ;; | ||
65 | *) | ||
66 | @@ -5930,15 +5930,15 @@ | ||
67 | # Hardcode the library path. | ||
68 | # Skip directories that are in the system default run-time | ||
69 | # search path. | ||
70 | - case " $sys_lib_dlsearch_path " in | ||
71 | - *" $absdir "*) ;; | ||
72 | - *) | ||
73 | - case "$compile_rpath " in | ||
74 | - *" $absdir "*) ;; | ||
75 | - *) func_append compile_rpath " $absdir" ;; | ||
76 | - esac | ||
77 | - ;; | ||
78 | - esac | ||
79 | + #case " $sys_lib_dlsearch_path " in | ||
80 | + #*" $absdir "*) ;; | ||
81 | + #*) | ||
82 | + # case "$compile_rpath " in | ||
83 | + # *" $absdir "*) ;; | ||
84 | + # *) func_append compile_rpath " $absdir" ;; | ||
85 | + # esac | ||
86 | + # ;; | ||
87 | + #esac | ||
88 | case " $sys_lib_dlsearch_path " in | ||
89 | *" $libdir "*) ;; | ||
90 | *) | ||
91 | @@ -6284,8 +6284,8 @@ | ||
92 | eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` | ||
93 | test -z "$libdir" && \ | ||
94 | func_fatal_error "\`$deplib' is not a valid libtool archive" | ||
95 | - test "$absdir" != "$libdir" && \ | ||
96 | - func_warning "\`$deplib' seems to be moved" | ||
97 | + #test "$absdir" != "$libdir" && \ | ||
98 | + # func_warning "\`$deplib' seems to be moved" | ||
99 | |||
100 | path="-L$absdir" | ||
101 | fi | ||