ffi 1.0.11 → 1.0.12.pre

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of ffi might be problematic. Click here for more details.

Files changed (159) hide show
  1. data/Rakefile +1 -1
  2. data/ext/ffi_c/AbstractMemory.c +9 -0
  3. data/ext/ffi_c/AbstractMemory.h +4 -0
  4. data/ext/ffi_c/Buffer.c +8 -0
  5. data/ext/ffi_c/Call.c +8 -0
  6. data/ext/ffi_c/ClosurePool.c +12 -0
  7. data/ext/ffi_c/DynamicLibrary.c +7 -1
  8. data/ext/ffi_c/Function.c +11 -1
  9. data/ext/ffi_c/Function.h +6 -0
  10. data/ext/ffi_c/FunctionInfo.c +8 -0
  11. data/ext/ffi_c/LastError.c +8 -0
  12. data/ext/ffi_c/MemoryPointer.c +8 -0
  13. data/ext/ffi_c/MemoryPointer.h +6 -0
  14. data/ext/ffi_c/MethodHandle.c +8 -0
  15. data/ext/ffi_c/Platform.c +8 -0
  16. data/ext/ffi_c/Pointer.c +8 -0
  17. data/ext/ffi_c/Pointer.h +6 -0
  18. data/ext/ffi_c/Struct.c +6 -0
  19. data/ext/ffi_c/StructByReference.c +8 -0
  20. data/ext/ffi_c/StructByValue.c +8 -0
  21. data/ext/ffi_c/StructLayout.c +6 -0
  22. data/ext/ffi_c/Thread.c +7 -0
  23. data/ext/ffi_c/Thread.h +6 -0
  24. data/ext/ffi_c/Type.c +3 -0
  25. data/ext/ffi_c/Types.h +4 -0
  26. data/ext/ffi_c/Variadic.c +8 -0
  27. data/ext/ffi_c/endian.h +3 -0
  28. data/ext/ffi_c/extconf.rb +6 -1
  29. data/ext/ffi_c/libffi.vc.mk +26 -0
  30. data/ext/ffi_c/libffi.vc64.mk +26 -0
  31. data/ext/ffi_c/libffi/ChangeLog +541 -0
  32. data/ext/ffi_c/libffi/ChangeLog.libffi +13 -87
  33. data/ext/ffi_c/libffi/LICENSE +3 -3
  34. data/ext/ffi_c/libffi/Makefile.am +41 -32
  35. data/ext/ffi_c/libffi/Makefile.in +95 -66
  36. data/ext/ffi_c/libffi/Makefile.vc +141 -0
  37. data/ext/ffi_c/libffi/Makefile.vc64 +141 -0
  38. data/ext/ffi_c/libffi/README +40 -4
  39. data/ext/ffi_c/libffi/aclocal.m4 +729 -7854
  40. data/ext/ffi_c/libffi/build-ios.sh +67 -0
  41. data/ext/ffi_c/libffi/compile +11 -10
  42. data/ext/ffi_c/libffi/config.guess +4 -1
  43. data/ext/ffi_c/libffi/config.sub +6 -3
  44. data/ext/ffi_c/libffi/configure +6264 -6354
  45. data/ext/ffi_c/libffi/configure.ac +155 -63
  46. data/ext/ffi_c/libffi/depcomp +81 -35
  47. data/ext/ffi_c/libffi/doc/libffi.info +78 -18
  48. data/ext/ffi_c/libffi/doc/libffi.texi +64 -5
  49. data/ext/ffi_c/libffi/doc/stamp-vti +4 -4
  50. data/ext/ffi_c/libffi/doc/version.texi +4 -4
  51. data/ext/ffi_c/libffi/fficonfig.h.in +18 -0
  52. data/ext/ffi_c/libffi/fficonfig.hw +57 -0
  53. data/ext/ffi_c/libffi/include/Makefile.in +21 -3
  54. data/ext/ffi_c/libffi/include/ffi.h.in +42 -14
  55. data/ext/ffi_c/libffi/include/ffi.h.vc +427 -0
  56. data/ext/ffi_c/libffi/include/ffi.h.vc64 +427 -0
  57. data/ext/ffi_c/libffi/include/ffi_common.h +9 -5
  58. data/ext/ffi_c/libffi/install-sh +364 -167
  59. data/ext/ffi_c/libffi/ltmain.sh +2599 -1369
  60. data/ext/ffi_c/libffi/m4/ax_cc_maxopt.m4 +176 -0
  61. data/ext/ffi_c/libffi/m4/ax_cflags_warn_all.m4 +195 -0
  62. data/ext/ffi_c/libffi/m4/ax_check_compiler_flags.m4 +76 -0
  63. data/ext/ffi_c/libffi/m4/ax_compiler_vendor.m4 +63 -0
  64. data/ext/ffi_c/libffi/m4/ax_configure_args.m4 +70 -0
  65. data/ext/ffi_c/libffi/m4/ax_enable_builddir.m4 +300 -0
  66. data/ext/ffi_c/libffi/m4/ax_gcc_archflag.m4 +215 -0
  67. data/ext/ffi_c/libffi/m4/ax_gcc_x86_cpuid.m4 +79 -0
  68. data/ext/ffi_c/libffi/m4/libtool.m4 +1239 -768
  69. data/ext/ffi_c/libffi/m4/ltoptions.m4 +7 -6
  70. data/ext/ffi_c/libffi/m4/ltversion.m4 +6 -6
  71. data/ext/ffi_c/libffi/m4/lt~obsolete.m4 +9 -3
  72. data/ext/ffi_c/libffi/man/Makefile.in +21 -3
  73. data/ext/ffi_c/libffi/mdate-sh +0 -0
  74. data/ext/ffi_c/libffi/missing +60 -44
  75. data/ext/ffi_c/libffi/msvcc.sh +197 -0
  76. data/ext/ffi_c/libffi/src/alpha/osf.S +39 -18
  77. data/ext/ffi_c/libffi/src/arm/ffi.c +443 -24
  78. data/ext/ffi_c/libffi/src/arm/ffitarget.h +17 -1
  79. data/ext/ffi_c/libffi/src/arm/gentramp.sh +118 -0
  80. data/ext/ffi_c/libffi/src/arm/sysv.S +206 -15
  81. data/ext/ffi_c/libffi/src/arm/trampoline.S +4450 -0
  82. data/ext/ffi_c/libffi/src/avr32/ffi.c +4 -2
  83. data/ext/ffi_c/libffi/src/avr32/ffitarget.h +2 -2
  84. data/ext/ffi_c/libffi/src/closures.c +17 -35
  85. data/ext/ffi_c/libffi/src/cris/ffi.c +1 -1
  86. data/ext/ffi_c/libffi/src/cris/ffitarget.h +2 -2
  87. data/ext/ffi_c/libffi/src/dlmalloc.c +66 -4
  88. data/ext/ffi_c/libffi/src/frv/ffitarget.h +2 -6
  89. data/ext/ffi_c/libffi/src/ia64/ffi.c +7 -5
  90. data/ext/ffi_c/libffi/src/ia64/ffitarget.h +2 -2
  91. data/ext/ffi_c/libffi/src/java_raw_api.c +1 -1
  92. data/ext/ffi_c/libffi/src/m32r/ffitarget.h +2 -2
  93. data/ext/ffi_c/libffi/src/m68k/ffi.c +10 -0
  94. data/ext/ffi_c/libffi/src/m68k/ffitarget.h +2 -2
  95. data/ext/ffi_c/libffi/src/m68k/sysv.S +36 -0
  96. data/ext/ffi_c/libffi/src/mips/ffi.c +12 -5
  97. data/ext/ffi_c/libffi/src/mips/ffitarget.h +18 -11
  98. data/ext/ffi_c/libffi/src/mips/n32.S +4 -4
  99. data/ext/ffi_c/libffi/src/moxie/eabi.S +128 -0
  100. data/ext/ffi_c/libffi/src/moxie/ffi.c +276 -0
  101. data/ext/ffi_c/libffi/src/pa/ffi.c +7 -4
  102. data/ext/ffi_c/libffi/src/pa/ffitarget.h +6 -5
  103. data/ext/ffi_c/libffi/src/powerpc/aix.S +5 -1
  104. data/ext/ffi_c/libffi/src/powerpc/aix_closure.S +2 -0
  105. data/ext/ffi_c/libffi/src/powerpc/asm.h +1 -1
  106. data/ext/ffi_c/libffi/src/powerpc/darwin.S +215 -77
  107. data/ext/ffi_c/libffi/src/powerpc/darwin_closure.S +358 -100
  108. data/ext/ffi_c/libffi/src/powerpc/ffi.c +11 -5
  109. data/ext/ffi_c/libffi/src/powerpc/ffi_darwin.c +603 -172
  110. data/ext/ffi_c/libffi/src/powerpc/ffitarget.h +17 -4
  111. data/ext/ffi_c/libffi/src/prep_cif.c +16 -13
  112. data/ext/ffi_c/libffi/src/s390/ffitarget.h +4 -2
  113. data/ext/ffi_c/libffi/src/sh/ffitarget.h +2 -2
  114. data/ext/ffi_c/libffi/src/sh64/ffitarget.h +2 -2
  115. data/ext/ffi_c/libffi/src/sparc/ffi.c +55 -11
  116. data/ext/ffi_c/libffi/src/sparc/ffitarget.h +5 -3
  117. data/ext/ffi_c/libffi/src/x86/ffi.c +54 -92
  118. data/ext/ffi_c/libffi/src/x86/ffi64.c +17 -8
  119. data/ext/ffi_c/libffi/src/x86/ffitarget.h +15 -14
  120. data/ext/ffi_c/libffi/src/x86/sysv.S +40 -26
  121. data/ext/ffi_c/libffi/src/x86/unix64.S +4 -0
  122. data/ext/ffi_c/libffi/src/x86/win32.S +379 -191
  123. data/ext/ffi_c/libffi/src/x86/win64.S +15 -7
  124. data/ext/ffi_c/libffi/testsuite/Makefile.am +1 -1
  125. data/ext/ffi_c/libffi/testsuite/Makefile.in +22 -4
  126. data/ext/ffi_c/libffi/testsuite/lib/libffi.exp +350 -0
  127. data/ext/ffi_c/libffi/testsuite/libffi.call/call.exp +1 -5
  128. data/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_longdouble_split.c +1 -1
  129. data/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_longdouble_split2.c +1 -1
  130. data/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint64.c +1 -0
  131. data/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint64.c +1 -0
  132. data/ext/ffi_c/libffi/testsuite/libffi.call/cls_double_va.c +3 -0
  133. data/ext/ffi_c/libffi/testsuite/libffi.call/cls_longdouble.c +2 -2
  134. data/ext/ffi_c/libffi/testsuite/libffi.call/cls_longdouble_va.c +3 -0
  135. data/ext/ffi_c/libffi/testsuite/libffi.call/cls_pointer.c +1 -1
  136. data/ext/ffi_c/libffi/testsuite/libffi.call/cls_pointer_stack.c +1 -1
  137. data/ext/ffi_c/libffi/testsuite/libffi.call/cls_ulonglong.c +1 -0
  138. data/ext/ffi_c/libffi/testsuite/libffi.call/err_bad_abi.c +2 -3
  139. data/ext/ffi_c/libffi/testsuite/libffi.call/err_bad_typedef.c +2 -1
  140. data/ext/ffi_c/libffi/testsuite/libffi.call/ffitest.h +36 -0
  141. data/ext/ffi_c/libffi/testsuite/libffi.call/huge_struct.c +17 -17
  142. data/ext/ffi_c/libffi/testsuite/libffi.call/return_ll1.c +1 -0
  143. data/ext/ffi_c/libffi/testsuite/libffi.call/stret_medium2.c +1 -0
  144. data/ext/ffi_c/libffi/testsuite/libffi.special/ffitestcxx.h +1 -1
  145. data/ext/ffi_c/libffi/testsuite/libffi.special/special.exp +1 -3
  146. data/ext/ffi_c/win32/stdint.h +199 -0
  147. data/gen/Rakefile +18 -2
  148. data/lib/ffi/platform/arm-linux/types.conf +102 -0
  149. data/lib/ffi/platform/i486-gnu/types.conf +107 -0
  150. data/lib/ffi/platform/ia64-linux/types.conf +102 -0
  151. data/lib/ffi/platform/mips-linux/types.conf +102 -0
  152. data/lib/ffi/platform/mipsel-linux/types.conf +102 -0
  153. data/lib/ffi/platform/powerpc-linux/types.conf +100 -0
  154. data/lib/ffi/platform/s390-linux/types.conf +102 -0
  155. data/lib/ffi/platform/s390x-linux/types.conf +102 -0
  156. data/lib/ffi/platform/sparc-linux/types.conf +102 -0
  157. data/lib/ffi/tools/types_generator.rb +8 -1
  158. data/lib/ffi_c.bundle +0 -0
  159. metadata +72 -42
@@ -0,0 +1,79 @@
1
+ # ===========================================================================
2
+ # http://www.gnu.org/software/autoconf-archive/ax_gcc_x86_cpuid.html
3
+ # ===========================================================================
4
+ #
5
+ # SYNOPSIS
6
+ #
7
+ # AX_GCC_X86_CPUID(OP)
8
+ #
9
+ # DESCRIPTION
10
+ #
11
+ # On Pentium and later x86 processors, with gcc or a compiler that has a
12
+ # compatible syntax for inline assembly instructions, run a small program
13
+ # that executes the cpuid instruction with input OP. This can be used to
14
+ # detect the CPU type.
15
+ #
16
+ # On output, the values of the eax, ebx, ecx, and edx registers are stored
17
+ # as hexadecimal strings as "eax:ebx:ecx:edx" in the cache variable
18
+ # ax_cv_gcc_x86_cpuid_OP.
19
+ #
20
+ # If the cpuid instruction fails (because you are running a
21
+ # cross-compiler, or because you are not using gcc, or because you are on
22
+ # a processor that doesn't have this instruction), ax_cv_gcc_x86_cpuid_OP
23
+ # is set to the string "unknown".
24
+ #
25
+ # This macro mainly exists to be used in AX_GCC_ARCHFLAG.
26
+ #
27
+ # LICENSE
28
+ #
29
+ # Copyright (c) 2008 Steven G. Johnson <stevenj@alum.mit.edu>
30
+ # Copyright (c) 2008 Matteo Frigo
31
+ #
32
+ # This program is free software: you can redistribute it and/or modify it
33
+ # under the terms of the GNU General Public License as published by the
34
+ # Free Software Foundation, either version 3 of the License, or (at your
35
+ # option) any later version.
36
+ #
37
+ # This program is distributed in the hope that it will be useful, but
38
+ # WITHOUT ANY WARRANTY; without even the implied warranty of
39
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
40
+ # Public License for more details.
41
+ #
42
+ # You should have received a copy of the GNU General Public License along
43
+ # with this program. If not, see <http://www.gnu.org/licenses/>.
44
+ #
45
+ # As a special exception, the respective Autoconf Macro's copyright owner
46
+ # gives unlimited permission to copy, distribute and modify the configure
47
+ # scripts that are the output of Autoconf when processing the Macro. You
48
+ # need not follow the terms of the GNU General Public License when using
49
+ # or distributing such scripts, even though portions of the text of the
50
+ # Macro appear in them. The GNU General Public License (GPL) does govern
51
+ # all other use of the material that constitutes the Autoconf Macro.
52
+ #
53
+ # This special exception to the GPL applies to versions of the Autoconf
54
+ # Macro released by the Autoconf Archive. When you make and distribute a
55
+ # modified version of the Autoconf Macro, you may extend this special
56
+ # exception to the GPL to apply to your modified version as well.
57
+
58
+ #serial 7
59
+
60
+ AC_DEFUN([AX_GCC_X86_CPUID],
61
+ [AC_REQUIRE([AC_PROG_CC])
62
+ AC_LANG_PUSH([C])
63
+ AC_CACHE_CHECK(for x86 cpuid $1 output, ax_cv_gcc_x86_cpuid_$1,
64
+ [AC_RUN_IFELSE([AC_LANG_PROGRAM([#include <stdio.h>], [
65
+ int op = $1, eax, ebx, ecx, edx;
66
+ FILE *f;
67
+ __asm__("cpuid"
68
+ : "=a" (eax), "=b" (ebx), "=c" (ecx), "=d" (edx)
69
+ : "a" (op));
70
+ f = fopen("conftest_cpuid", "w"); if (!f) return 1;
71
+ fprintf(f, "%x:%x:%x:%x\n", eax, ebx, ecx, edx);
72
+ fclose(f);
73
+ return 0;
74
+ ])],
75
+ [ax_cv_gcc_x86_cpuid_$1=`cat conftest_cpuid`; rm -f conftest_cpuid],
76
+ [ax_cv_gcc_x86_cpuid_$1=unknown; rm -f conftest_cpuid],
77
+ [ax_cv_gcc_x86_cpuid_$1=unknown])])
78
+ AC_LANG_POP([C])
79
+ ])
@@ -1,7 +1,8 @@
1
1
  # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
2
2
  #
3
3
  # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
4
- # 2006, 2007, 2008 Free Software Foundation, Inc.
4
+ # 2006, 2007, 2008, 2009, 2010 Free Software Foundation,
5
+ # Inc.
5
6
  # Written by Gordon Matzigkeit, 1996
6
7
  #
7
8
  # This file is free software; the Free Software Foundation gives
@@ -10,7 +11,8 @@
10
11
 
11
12
  m4_define([_LT_COPYING], [dnl
12
13
  # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
13
- # 2006, 2007, 2008 Free Software Foundation, Inc.
14
+ # 2006, 2007, 2008, 2009, 2010 Free Software Foundation,
15
+ # Inc.
14
16
  # Written by Gordon Matzigkeit, 1996
15
17
  #
16
18
  # This file is part of GNU Libtool.
@@ -37,7 +39,7 @@ m4_define([_LT_COPYING], [dnl
37
39
  # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
38
40
  ])
39
41
 
40
- # serial 56 LT_INIT
42
+ # serial 57 LT_INIT
41
43
 
42
44
 
43
45
  # LT_PREREQ(VERSION)
@@ -66,6 +68,7 @@ esac
66
68
  # ------------------
67
69
  AC_DEFUN([LT_INIT],
68
70
  [AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT
71
+ AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
69
72
  AC_BEFORE([$0], [LT_LANG])dnl
70
73
  AC_BEFORE([$0], [LT_OUTPUT])dnl
71
74
  AC_BEFORE([$0], [LTDL_INIT])dnl
@@ -82,6 +85,8 @@ AC_REQUIRE([LTVERSION_VERSION])dnl
82
85
  AC_REQUIRE([LTOBSOLETE_VERSION])dnl
83
86
  m4_require([_LT_PROG_LTMAIN])dnl
84
87
 
88
+ _LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}])
89
+
85
90
  dnl Parse OPTIONS
86
91
  _LT_SET_OPTIONS([$0], [$1])
87
92
 
@@ -118,7 +123,7 @@ m4_defun([_LT_CC_BASENAME],
118
123
  *) break;;
119
124
  esac
120
125
  done
121
- cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
126
+ cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
122
127
  ])
123
128
 
124
129
 
@@ -138,6 +143,9 @@ m4_defun([_LT_FILEUTILS_DEFAULTS],
138
143
  m4_defun([_LT_SETUP],
139
144
  [AC_REQUIRE([AC_CANONICAL_HOST])dnl
140
145
  AC_REQUIRE([AC_CANONICAL_BUILD])dnl
146
+ AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl
147
+ AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
148
+
141
149
  _LT_DECL([], [host_alias], [0], [The host system])dnl
142
150
  _LT_DECL([], [host], [0])dnl
143
151
  _LT_DECL([], [host_os], [0])dnl
@@ -160,10 +168,13 @@ _LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
160
168
  dnl
161
169
  m4_require([_LT_FILEUTILS_DEFAULTS])dnl
162
170
  m4_require([_LT_CHECK_SHELL_FEATURES])dnl
171
+ m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl
163
172
  m4_require([_LT_CMD_RELOAD])dnl
164
173
  m4_require([_LT_CHECK_MAGIC_METHOD])dnl
174
+ m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl
165
175
  m4_require([_LT_CMD_OLD_ARCHIVE])dnl
166
176
  m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
177
+ m4_require([_LT_WITH_SYSROOT])dnl
167
178
 
168
179
  _LT_CONFIG_LIBTOOL_INIT([
169
180
  # See if we are running on zsh, and set the options which allow our
@@ -179,7 +190,6 @@ fi
179
190
  _LT_CHECK_OBJDIR
180
191
 
181
192
  m4_require([_LT_TAG_COMPILER])dnl
182
- _LT_PROG_ECHO_BACKSLASH
183
193
 
184
194
  case $host_os in
185
195
  aix3*)
@@ -193,23 +203,6 @@ aix3*)
193
203
  ;;
194
204
  esac
195
205
 
196
- # Sed substitution that helps us do robust quoting. It backslashifies
197
- # metacharacters that are still active within double-quoted strings.
198
- sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
199
-
200
- # Same as above, but do not quote variable references.
201
- double_quote_subst='s/\([["`\\]]\)/\\\1/g'
202
-
203
- # Sed substitution to delay expansion of an escaped shell variable in a
204
- # double_quote_subst'ed string.
205
- delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
206
-
207
- # Sed substitution to delay expansion of an escaped single quote.
208
- delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
209
-
210
- # Sed substitution to avoid accidental globbing in evaled expressions
211
- no_glob_subst='s/\*/\\\*/g'
212
-
213
206
  # Global variables:
214
207
  ofile=libtool
215
208
  can_build_shared=yes
@@ -250,6 +243,28 @@ _LT_CONFIG_COMMANDS
250
243
  ])# _LT_SETUP
251
244
 
252
245
 
246
+ # _LT_PREPARE_SED_QUOTE_VARS
247
+ # --------------------------
248
+ # Define a few sed substitution that help us do robust quoting.
249
+ m4_defun([_LT_PREPARE_SED_QUOTE_VARS],
250
+ [# Backslashify metacharacters that are still active within
251
+ # double-quoted strings.
252
+ sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
253
+
254
+ # Same as above, but do not quote variable references.
255
+ double_quote_subst='s/\([["`\\]]\)/\\\1/g'
256
+
257
+ # Sed substitution to delay expansion of an escaped shell variable in a
258
+ # double_quote_subst'ed string.
259
+ delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
260
+
261
+ # Sed substitution to delay expansion of an escaped single quote.
262
+ delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
263
+
264
+ # Sed substitution to avoid accidental globbing in evaled expressions
265
+ no_glob_subst='s/\*/\\\*/g'
266
+ ])
267
+
253
268
  # _LT_PROG_LTMAIN
254
269
  # ---------------
255
270
  # Note that this code is called both from `configure', and `config.status'
@@ -408,7 +423,7 @@ m4_define([_lt_decl_all_varnames],
408
423
  # declaration there will have the same value as in `configure'. VARNAME
409
424
  # must have a single quote delimited value for this to work.
410
425
  m4_define([_LT_CONFIG_STATUS_DECLARE],
411
- [$1='`$ECHO "X$][$1" | $Xsed -e "$delay_single_quote_subst"`'])
426
+ [$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`'])
412
427
 
413
428
 
414
429
  # _LT_CONFIG_STATUS_DECLARATIONS
@@ -418,7 +433,7 @@ m4_define([_LT_CONFIG_STATUS_DECLARE],
418
433
  # embedded single quotes properly. In configure, this macro expands
419
434
  # each variable declared with _LT_DECL (and _LT_TAGDECL) into:
420
435
  #
421
- # <var>='`$ECHO "X$<var>" | $Xsed -e "$delay_single_quote_subst"`'
436
+ # <var>='`$ECHO "$<var>" | $SED "$delay_single_quote_subst"`'
422
437
  m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
423
438
  [m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
424
439
  [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
@@ -517,12 +532,20 @@ LTCC='$LTCC'
517
532
  LTCFLAGS='$LTCFLAGS'
518
533
  compiler='$compiler_DEFAULT'
519
534
 
535
+ # A function that is used when there is no print builtin or printf.
536
+ func_fallback_echo ()
537
+ {
538
+ eval 'cat <<_LTECHO_EOF
539
+ \$[]1
540
+ _LTECHO_EOF'
541
+ }
542
+
520
543
  # Quote evaled strings.
521
544
  for var in lt_decl_all_varnames([[ \
522
545
  ]], lt_decl_quote_varnames); do
523
- case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
546
+ case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
524
547
  *[[\\\\\\\`\\"\\\$]]*)
525
- eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
548
+ eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
526
549
  ;;
527
550
  *)
528
551
  eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
@@ -533,9 +556,9 @@ done
533
556
  # Double-quote double-evaled strings.
534
557
  for var in lt_decl_all_varnames([[ \
535
558
  ]], lt_decl_dquote_varnames); do
536
- case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
559
+ case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
537
560
  *[[\\\\\\\`\\"\\\$]]*)
538
- eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
561
+ eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
539
562
  ;;
540
563
  *)
541
564
  eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
@@ -543,16 +566,38 @@ for var in lt_decl_all_varnames([[ \
543
566
  esac
544
567
  done
545
568
 
546
- # Fix-up fallback echo if it was mangled by the above quoting rules.
547
- case \$lt_ECHO in
548
- *'\\\[$]0 --fallback-echo"')dnl "
549
- lt_ECHO=\`\$ECHO "X\$lt_ECHO" | \$Xsed -e 's/\\\\\\\\\\\\\\\[$]0 --fallback-echo"\[$]/\[$]0 --fallback-echo"/'\`
550
- ;;
551
- esac
552
-
553
569
  _LT_OUTPUT_LIBTOOL_INIT
554
570
  ])
555
571
 
572
+ # _LT_GENERATED_FILE_INIT(FILE, [COMMENT])
573
+ # ------------------------------------
574
+ # Generate a child script FILE with all initialization necessary to
575
+ # reuse the environment learned by the parent script, and make the
576
+ # file executable. If COMMENT is supplied, it is inserted after the
577
+ # `#!' sequence but before initialization text begins. After this
578
+ # macro, additional text can be appended to FILE to form the body of
579
+ # the child script. The macro ends with non-zero status if the
580
+ # file could not be fully written (such as if the disk is full).
581
+ m4_ifdef([AS_INIT_GENERATED],
582
+ [m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])],
583
+ [m4_defun([_LT_GENERATED_FILE_INIT],
584
+ [m4_require([AS_PREPARE])]dnl
585
+ [m4_pushdef([AS_MESSAGE_LOG_FD])]dnl
586
+ [lt_write_fail=0
587
+ cat >$1 <<_ASEOF || lt_write_fail=1
588
+ #! $SHELL
589
+ # Generated by $as_me.
590
+ $2
591
+ SHELL=\${CONFIG_SHELL-$SHELL}
592
+ export SHELL
593
+ _ASEOF
594
+ cat >>$1 <<\_ASEOF || lt_write_fail=1
595
+ AS_SHELL_SANITIZE
596
+ _AS_PREPARE
597
+ exec AS_MESSAGE_FD>&1
598
+ _ASEOF
599
+ test $lt_write_fail = 0 && chmod +x $1[]dnl
600
+ m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT
556
601
 
557
602
  # LT_OUTPUT
558
603
  # ---------
@@ -562,20 +607,11 @@ _LT_OUTPUT_LIBTOOL_INIT
562
607
  AC_DEFUN([LT_OUTPUT],
563
608
  [: ${CONFIG_LT=./config.lt}
564
609
  AC_MSG_NOTICE([creating $CONFIG_LT])
565
- cat >"$CONFIG_LT" <<_LTEOF
566
- #! $SHELL
567
- # Generated by $as_me.
568
- # Run this file to recreate a libtool stub with the current configuration.
569
-
570
- lt_cl_silent=false
571
- SHELL=\${CONFIG_SHELL-$SHELL}
572
- _LTEOF
610
+ _LT_GENERATED_FILE_INIT(["$CONFIG_LT"],
611
+ [# Run this file to recreate a libtool stub with the current configuration.])
573
612
 
574
613
  cat >>"$CONFIG_LT" <<\_LTEOF
575
- AS_SHELL_SANITIZE
576
- _AS_PREPARE
577
-
578
- exec AS_MESSAGE_FD>&1
614
+ lt_cl_silent=false
579
615
  exec AS_MESSAGE_LOG_FD>>config.log
580
616
  {
581
617
  echo
@@ -601,7 +637,7 @@ m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
601
637
  m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
602
638
  configured by $[0], generated by m4_PACKAGE_STRING.
603
639
 
604
- Copyright (C) 2008 Free Software Foundation, Inc.
640
+ Copyright (C) 2010 Free Software Foundation, Inc.
605
641
  This config.lt script is free software; the Free Software Foundation
606
642
  gives unlimited permision to copy, distribute and modify it."
607
643
 
@@ -646,15 +682,13 @@ chmod +x "$CONFIG_LT"
646
682
  # appending to config.log, which fails on DOS, as config.log is still kept
647
683
  # open by configure. Here we exec the FD to /dev/null, effectively closing
648
684
  # config.log, so it can be properly (re)opened and appended to by config.lt.
649
- if test "$no_create" != yes; then
650
- lt_cl_success=:
651
- test "$silent" = yes &&
652
- lt_config_lt_args="$lt_config_lt_args --quiet"
653
- exec AS_MESSAGE_LOG_FD>/dev/null
654
- $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
655
- exec AS_MESSAGE_LOG_FD>>config.log
656
- $lt_cl_success || AS_EXIT(1)
657
- fi
685
+ lt_cl_success=:
686
+ test "$silent" = yes &&
687
+ lt_config_lt_args="$lt_config_lt_args --quiet"
688
+ exec AS_MESSAGE_LOG_FD>/dev/null
689
+ $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
690
+ exec AS_MESSAGE_LOG_FD>>config.log
691
+ $lt_cl_success || AS_EXIT(1)
658
692
  ])# LT_OUTPUT
659
693
 
660
694
 
@@ -717,15 +751,12 @@ _LT_EOF
717
751
  # if finds mixed CR/LF and LF-only lines. Since sed operates in
718
752
  # text mode, it properly converts lines to CR/LF. This bash problem
719
753
  # is reportedly fixed, but why not run on old versions too?
720
- sed '/^# Generated shell functions inserted here/q' "$ltmain" >> "$cfgfile" \
721
- || (rm -f "$cfgfile"; exit 1)
754
+ sed '$q' "$ltmain" >> "$cfgfile" \
755
+ || (rm -f "$cfgfile"; exit 1)
722
756
 
723
- _LT_PROG_XSI_SHELLFNS
757
+ _LT_PROG_REPLACE_SHELLFNS
724
758
 
725
- sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \
726
- || (rm -f "$cfgfile"; exit 1)
727
-
728
- mv -f "$cfgfile" "$ofile" ||
759
+ mv -f "$cfgfile" "$ofile" ||
729
760
  (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
730
761
  chmod +x "$ofile"
731
762
  ],
@@ -831,11 +862,13 @@ AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
831
862
  AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
832
863
  AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
833
864
  AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
865
+ AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)])
834
866
  dnl aclocal-1.4 backwards compatibility:
835
867
  dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
836
868
  dnl AC_DEFUN([AC_LIBTOOL_F77], [])
837
869
  dnl AC_DEFUN([AC_LIBTOOL_FC], [])
838
870
  dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
871
+ dnl AC_DEFUN([AC_LIBTOOL_RC], [])
839
872
 
840
873
 
841
874
  # _LT_TAG_COMPILER
@@ -940,6 +973,31 @@ m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
940
973
  [lt_cv_ld_exported_symbols_list=no])
941
974
  LDFLAGS="$save_LDFLAGS"
942
975
  ])
976
+ AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load],
977
+ [lt_cv_ld_force_load=no
978
+ cat > conftest.c << _LT_EOF
979
+ int forced_loaded() { return 2;}
980
+ _LT_EOF
981
+ echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD
982
+ $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD
983
+ echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD
984
+ $AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD
985
+ echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD
986
+ $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD
987
+ cat > conftest.c << _LT_EOF
988
+ int main() { return 0;}
989
+ _LT_EOF
990
+ echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD
991
+ $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
992
+ _lt_result=$?
993
+ if test -f conftest && test ! -s conftest.err && test $_lt_result = 0 && $GREP forced_load conftest 2>&1 >/dev/null; then
994
+ lt_cv_ld_force_load=yes
995
+ else
996
+ cat conftest.err >&AS_MESSAGE_LOG_FD
997
+ fi
998
+ rm -f conftest.err libconftest.a conftest conftest.c
999
+ rm -rf conftest.dSYM
1000
+ ])
943
1001
  case $host_os in
944
1002
  rhapsody* | darwin1.[[012]])
945
1003
  _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
@@ -967,7 +1025,7 @@ m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
967
1025
  else
968
1026
  _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
969
1027
  fi
970
- if test "$DSYMUTIL" != ":"; then
1028
+ if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then
971
1029
  _lt_dsymutil='~$DSYMUTIL $lib || :'
972
1030
  else
973
1031
  _lt_dsymutil=
@@ -987,7 +1045,11 @@ m4_defun([_LT_DARWIN_LINKER_FEATURES],
987
1045
  _LT_TAGVAR(hardcode_direct, $1)=no
988
1046
  _LT_TAGVAR(hardcode_automatic, $1)=yes
989
1047
  _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
990
- _LT_TAGVAR(whole_archive_flag_spec, $1)=''
1048
+ if test "$lt_cv_ld_force_load" = "yes"; then
1049
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience ${wl}-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`'
1050
+ else
1051
+ _LT_TAGVAR(whole_archive_flag_spec, $1)=''
1052
+ fi
991
1053
  _LT_TAGVAR(link_all_deplibs, $1)=yes
992
1054
  _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined"
993
1055
  case $cc_basename in
@@ -995,7 +1057,7 @@ m4_defun([_LT_DARWIN_LINKER_FEATURES],
995
1057
  *) _lt_dar_can_shared=$GCC ;;
996
1058
  esac
997
1059
  if test "$_lt_dar_can_shared" = "yes"; then
998
- output_verbose_link_cmd=echo
1060
+ output_verbose_link_cmd=func_echo_all
999
1061
  _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
1000
1062
  _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
1001
1063
  _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
@@ -1011,203 +1073,142 @@ m4_defun([_LT_DARWIN_LINKER_FEATURES],
1011
1073
  fi
1012
1074
  ])
1013
1075
 
1014
- # _LT_SYS_MODULE_PATH_AIX
1015
- # -----------------------
1076
+ # _LT_SYS_MODULE_PATH_AIX([TAGNAME])
1077
+ # ----------------------------------
1016
1078
  # Links a minimal program and checks the executable
1017
1079
  # for the system default hardcoded library path. In most cases,
1018
1080
  # this is /usr/lib:/lib, but when the MPI compilers are used
1019
1081
  # the location of the communication and MPI libs are included too.
1020
1082
  # If we don't find anything, use the default library path according
1021
1083
  # to the aix ld manual.
1084
+ # Store the results from the different compilers for each TAGNAME.
1085
+ # Allow to override them for all tags through lt_cv_aix_libpath.
1022
1086
  m4_defun([_LT_SYS_MODULE_PATH_AIX],
1023
1087
  [m4_require([_LT_DECL_SED])dnl
1024
- AC_LINK_IFELSE(AC_LANG_PROGRAM,[
1025
- lt_aix_libpath_sed='
1026
- /Import File Strings/,/^$/ {
1027
- /^0/ {
1028
- s/^0 *\(.*\)$/\1/
1029
- p
1030
- }
1031
- }'
1032
- aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1033
- # Check for a 64-bit object if we didn't find anything.
1034
- if test -z "$aix_libpath"; then
1035
- aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1036
- fi],[])
1037
- if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
1088
+ if test "${lt_cv_aix_libpath+set}" = set; then
1089
+ aix_libpath=$lt_cv_aix_libpath
1090
+ else
1091
+ AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])],
1092
+ [AC_LINK_IFELSE([AC_LANG_PROGRAM],[
1093
+ lt_aix_libpath_sed='[
1094
+ /Import File Strings/,/^$/ {
1095
+ /^0/ {
1096
+ s/^0 *\([^ ]*\) *$/\1/
1097
+ p
1098
+ }
1099
+ }]'
1100
+ _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1101
+ # Check for a 64-bit object if we didn't find anything.
1102
+ if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
1103
+ _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1104
+ fi],[])
1105
+ if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
1106
+ _LT_TAGVAR([lt_cv_aix_libpath_], [$1])="/usr/lib:/lib"
1107
+ fi
1108
+ ])
1109
+ aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])
1110
+ fi
1038
1111
  ])# _LT_SYS_MODULE_PATH_AIX
1039
1112
 
1040
1113
 
1041
1114
  # _LT_SHELL_INIT(ARG)
1042
1115
  # -------------------
1043
1116
  m4_define([_LT_SHELL_INIT],
1044
- [ifdef([AC_DIVERSION_NOTICE],
1045
- [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)],
1046
- [AC_DIVERT_PUSH(NOTICE)])
1047
- $1
1048
- AC_DIVERT_POP
1049
- ])# _LT_SHELL_INIT
1117
+ [m4_divert_text([M4SH-INIT], [$1
1118
+ ])])# _LT_SHELL_INIT
1119
+
1050
1120
 
1051
1121
 
1052
1122
  # _LT_PROG_ECHO_BACKSLASH
1053
1123
  # -----------------------
1054
- # Add some code to the start of the generated configure script which
1055
- # will find an echo command which doesn't interpret backslashes.
1124
+ # Find how we can fake an echo command that does not interpret backslash.
1125
+ # In particular, with Autoconf 2.60 or later we add some code to the start
1126
+ # of the generated configure script which will find a shell with a builtin
1127
+ # printf (which we can use as an echo command).
1056
1128
  m4_defun([_LT_PROG_ECHO_BACKSLASH],
1057
- [_LT_SHELL_INIT([
1058
- # Check that we are running under the correct shell.
1059
- SHELL=${CONFIG_SHELL-/bin/sh}
1060
-
1061
- case X$lt_ECHO in
1062
- X*--fallback-echo)
1063
- # Remove one level of quotation (which was required for Make).
1064
- ECHO=`echo "$lt_ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','`
1065
- ;;
1066
- esac
1067
-
1068
- ECHO=${lt_ECHO-echo}
1069
- if test "X[$]1" = X--no-reexec; then
1070
- # Discard the --no-reexec flag, and continue.
1071
- shift
1072
- elif test "X[$]1" = X--fallback-echo; then
1073
- # Avoid inline document here, it may be left over
1074
- :
1075
- elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' ; then
1076
- # Yippee, $ECHO works!
1077
- :
1129
+ [ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
1130
+ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
1131
+ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
1132
+
1133
+ AC_MSG_CHECKING([how to print strings])
1134
+ # Test print first, because it will be a builtin if present.
1135
+ if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
1136
+ test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
1137
+ ECHO='print -r --'
1138
+ elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
1139
+ ECHO='printf %s\n'
1078
1140
  else
1079
- # Restart under the correct shell.
1080
- exec $SHELL "[$]0" --no-reexec ${1+"[$]@"}
1081
- fi
1082
-
1083
- if test "X[$]1" = X--fallback-echo; then
1084
- # used as fallback echo
1085
- shift
1086
- cat <<_LT_EOF
1087
- [$]*
1088
- _LT_EOF
1089
- exit 0
1141
+ # Use this function as a fallback that always works.
1142
+ func_fallback_echo ()
1143
+ {
1144
+ eval 'cat <<_LTECHO_EOF
1145
+ $[]1
1146
+ _LTECHO_EOF'
1147
+ }
1148
+ ECHO='func_fallback_echo'
1090
1149
  fi
1091
1150
 
1092
- # The HP-UX ksh and POSIX shell print the target directory to stdout
1093
- # if CDPATH is set.
1094
- (unset CDPATH) >/dev/null 2>&1 && unset CDPATH
1095
-
1096
- if test -z "$lt_ECHO"; then
1097
- if test "X${echo_test_string+set}" != Xset; then
1098
- # find a string as large as possible, as long as the shell can cope with it
1099
- for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do
1100
- # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
1101
- if { echo_test_string=`eval $cmd`; } 2>/dev/null &&
1102
- { test "X$echo_test_string" = "X$echo_test_string"; } 2>/dev/null
1103
- then
1104
- break
1105
- fi
1106
- done
1107
- fi
1108
-
1109
- if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
1110
- echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
1111
- test "X$echo_testing_string" = "X$echo_test_string"; then
1112
- :
1113
- else
1114
- # The Solaris, AIX, and Digital Unix default echo programs unquote
1115
- # backslashes. This makes it impossible to quote backslashes using
1116
- # echo "$something" | sed 's/\\/\\\\/g'
1117
- #
1118
- # So, first we look for a working echo in the user's PATH.
1119
-
1120
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
1121
- for dir in $PATH /usr/ucb; do
1122
- IFS="$lt_save_ifs"
1123
- if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
1124
- test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
1125
- echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
1126
- test "X$echo_testing_string" = "X$echo_test_string"; then
1127
- ECHO="$dir/echo"
1128
- break
1129
- fi
1130
- done
1131
- IFS="$lt_save_ifs"
1132
-
1133
- if test "X$ECHO" = Xecho; then
1134
- # We didn't find a better echo, so look for alternatives.
1135
- if test "X`{ print -r '\t'; } 2>/dev/null`" = 'X\t' &&
1136
- echo_testing_string=`{ print -r "$echo_test_string"; } 2>/dev/null` &&
1137
- test "X$echo_testing_string" = "X$echo_test_string"; then
1138
- # This shell has a builtin print -r that does the trick.
1139
- ECHO='print -r'
1140
- elif { test -f /bin/ksh || test -f /bin/ksh$ac_exeext; } &&
1141
- test "X$CONFIG_SHELL" != X/bin/ksh; then
1142
- # If we have ksh, try running configure again with it.
1143
- ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
1144
- export ORIGINAL_CONFIG_SHELL
1145
- CONFIG_SHELL=/bin/ksh
1146
- export CONFIG_SHELL
1147
- exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"}
1148
- else
1149
- # Try using printf.
1150
- ECHO='printf %s\n'
1151
- if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
1152
- echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
1153
- test "X$echo_testing_string" = "X$echo_test_string"; then
1154
- # Cool, printf works
1155
- :
1156
- elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
1157
- test "X$echo_testing_string" = 'X\t' &&
1158
- echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
1159
- test "X$echo_testing_string" = "X$echo_test_string"; then
1160
- CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
1161
- export CONFIG_SHELL
1162
- SHELL="$CONFIG_SHELL"
1163
- export SHELL
1164
- ECHO="$CONFIG_SHELL [$]0 --fallback-echo"
1165
- elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
1166
- test "X$echo_testing_string" = 'X\t' &&
1167
- echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
1168
- test "X$echo_testing_string" = "X$echo_test_string"; then
1169
- ECHO="$CONFIG_SHELL [$]0 --fallback-echo"
1170
- else
1171
- # maybe with a smaller string...
1172
- prev=:
1173
-
1174
- for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do
1175
- if { test "X$echo_test_string" = "X`eval $cmd`"; } 2>/dev/null
1176
- then
1177
- break
1178
- fi
1179
- prev="$cmd"
1180
- done
1151
+ # func_echo_all arg...
1152
+ # Invoke $ECHO with all args, space-separated.
1153
+ func_echo_all ()
1154
+ {
1155
+ $ECHO "$*"
1156
+ }
1181
1157
 
1182
- if test "$prev" != 'sed 50q "[$]0"'; then
1183
- echo_test_string=`eval $prev`
1184
- export echo_test_string
1185
- exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"}
1186
- else
1187
- # Oops. We lost completely, so just stick with echo.
1188
- ECHO=echo
1189
- fi
1190
- fi
1191
- fi
1192
- fi
1193
- fi
1194
- fi
1158
+ case "$ECHO" in
1159
+ printf*) AC_MSG_RESULT([printf]) ;;
1160
+ print*) AC_MSG_RESULT([print -r]) ;;
1161
+ *) AC_MSG_RESULT([cat]) ;;
1162
+ esac
1195
1163
 
1196
- # Copy echo and quote the copy suitably for passing to libtool from
1197
- # the Makefile, instead of quoting the original, which is used later.
1198
- lt_ECHO=$ECHO
1199
- if test "X$lt_ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then
1200
- lt_ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo"
1201
- fi
1164
+ m4_ifdef([_AS_DETECT_SUGGESTED],
1165
+ [_AS_DETECT_SUGGESTED([
1166
+ test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || (
1167
+ ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
1168
+ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
1169
+ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
1170
+ PATH=/empty FPATH=/empty; export PATH FPATH
1171
+ test "X`printf %s $ECHO`" = "X$ECHO" \
1172
+ || test "X`print -r -- $ECHO`" = "X$ECHO" )])])
1202
1173
 
1203
- AC_SUBST(lt_ECHO)
1204
- ])
1205
1174
  _LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
1206
- _LT_DECL([], [ECHO], [1],
1207
- [An echo program that does not interpret backslashes])
1175
+ _LT_DECL([], [ECHO], [1], [An echo program that protects backslashes])
1208
1176
  ])# _LT_PROG_ECHO_BACKSLASH
1209
1177
 
1210
1178
 
1179
+ # _LT_WITH_SYSROOT
1180
+ # ----------------
1181
+ AC_DEFUN([_LT_WITH_SYSROOT],
1182
+ [AC_MSG_CHECKING([for sysroot])
1183
+ AC_ARG_WITH([sysroot],
1184
+ [ --with-sysroot[=DIR] Search for dependent libraries within DIR
1185
+ (or the compiler's sysroot if not specified).],
1186
+ [], [with_sysroot=no])
1187
+
1188
+ dnl lt_sysroot will always be passed unquoted. We quote it here
1189
+ dnl in case the user passed a directory name.
1190
+ lt_sysroot=
1191
+ case ${with_sysroot} in #(
1192
+ yes)
1193
+ if test "$GCC" = yes; then
1194
+ lt_sysroot=`$CC --print-sysroot 2>/dev/null`
1195
+ fi
1196
+ ;; #(
1197
+ /*)
1198
+ lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
1199
+ ;; #(
1200
+ no|'')
1201
+ ;; #(
1202
+ *)
1203
+ AC_MSG_RESULT([${with_sysroot}])
1204
+ AC_MSG_ERROR([The sysroot must be an absolute path.])
1205
+ ;;
1206
+ esac
1207
+
1208
+ AC_MSG_RESULT([${lt_sysroot:-no}])
1209
+ _LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl
1210
+ [dependent libraries, and in which our libraries should be installed.])])
1211
+
1211
1212
  # _LT_ENABLE_LOCK
1212
1213
  # ---------------
1213
1214
  m4_defun([_LT_ENABLE_LOCK],
@@ -1236,7 +1237,7 @@ ia64-*-hpux*)
1236
1237
  ;;
1237
1238
  *-*-irix6*)
1238
1239
  # Find out which ABI we are using.
1239
- echo '[#]line __oline__ "configure"' > conftest.$ac_ext
1240
+ echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
1240
1241
  if AC_TRY_EVAL(ac_compile); then
1241
1242
  if test "$lt_cv_prog_gnu_ld" = yes; then
1242
1243
  case `/usr/bin/file conftest.$ac_objext` in
@@ -1354,14 +1355,47 @@ need_locks="$enable_libtool_lock"
1354
1355
  ])# _LT_ENABLE_LOCK
1355
1356
 
1356
1357
 
1358
+ # _LT_PROG_AR
1359
+ # -----------
1360
+ m4_defun([_LT_PROG_AR],
1361
+ [AC_CHECK_TOOLS(AR, [ar], false)
1362
+ : ${AR=ar}
1363
+ : ${AR_FLAGS=cru}
1364
+ _LT_DECL([], [AR], [1], [The archiver])
1365
+ _LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive])
1366
+
1367
+ AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file],
1368
+ [lt_cv_ar_at_file=no
1369
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM],
1370
+ [echo conftest.$ac_objext > conftest.lst
1371
+ lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD'
1372
+ AC_TRY_EVAL([lt_ar_try])
1373
+ if test "$ac_status" -eq 0; then
1374
+ # Ensure the archiver fails upon bogus file names.
1375
+ rm -f conftest.$ac_objext libconftest.a
1376
+ AC_TRY_EVAL([lt_ar_try])
1377
+ if test "$ac_status" -ne 0; then
1378
+ lt_cv_ar_at_file=@
1379
+ fi
1380
+ fi
1381
+ rm -f conftest.* libconftest.a
1382
+ ])
1383
+ ])
1384
+
1385
+ if test "x$lt_cv_ar_at_file" = xno; then
1386
+ archiver_list_spec=
1387
+ else
1388
+ archiver_list_spec=$lt_cv_ar_at_file
1389
+ fi
1390
+ _LT_DECL([], [archiver_list_spec], [1],
1391
+ [How to feed a file listing to the archiver])
1392
+ ])# _LT_PROG_AR
1393
+
1394
+
1357
1395
  # _LT_CMD_OLD_ARCHIVE
1358
1396
  # -------------------
1359
1397
  m4_defun([_LT_CMD_OLD_ARCHIVE],
1360
- [AC_CHECK_TOOL(AR, ar, false)
1361
- test -z "$AR" && AR=ar
1362
- test -z "$AR_FLAGS" && AR_FLAGS=cru
1363
- _LT_DECL([], [AR], [1], [The archiver])
1364
- _LT_DECL([], [AR_FLAGS], [1])
1398
+ [_LT_PROG_AR
1365
1399
 
1366
1400
  AC_CHECK_TOOL(STRIP, strip, :)
1367
1401
  test -z "$STRIP" && STRIP=:
@@ -1388,10 +1422,19 @@ if test -n "$RANLIB"; then
1388
1422
  esac
1389
1423
  old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
1390
1424
  fi
1425
+
1426
+ case $host_os in
1427
+ darwin*)
1428
+ lock_old_archive_extraction=yes ;;
1429
+ *)
1430
+ lock_old_archive_extraction=no ;;
1431
+ esac
1391
1432
  _LT_DECL([], [old_postinstall_cmds], [2])
1392
1433
  _LT_DECL([], [old_postuninstall_cmds], [2])
1393
1434
  _LT_TAGDECL([], [old_archive_cmds], [2],
1394
1435
  [Commands used to build an old-style archive])
1436
+ _LT_DECL([], [lock_old_archive_extraction], [0],
1437
+ [Whether to use a lock for old archive extraction])
1395
1438
  ])# _LT_CMD_OLD_ARCHIVE
1396
1439
 
1397
1440
 
@@ -1416,15 +1459,15 @@ AC_CACHE_CHECK([$1], [$2],
1416
1459
  -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1417
1460
  -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
1418
1461
  -e 's:$: $lt_compiler_flag:'`
1419
- (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
1462
+ (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
1420
1463
  (eval "$lt_compile" 2>conftest.err)
1421
1464
  ac_status=$?
1422
1465
  cat conftest.err >&AS_MESSAGE_LOG_FD
1423
- echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
1466
+ echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
1424
1467
  if (exit $ac_status) && test -s "$ac_outfile"; then
1425
1468
  # The compiler can only warn and ignore the option if not recognized
1426
1469
  # So say no if there are warnings other than the usual output.
1427
- $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
1470
+ $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
1428
1471
  $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1429
1472
  if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
1430
1473
  $2=yes
@@ -1464,7 +1507,7 @@ AC_CACHE_CHECK([$1], [$2],
1464
1507
  if test -s conftest.err; then
1465
1508
  # Append any errors to the config.log.
1466
1509
  cat conftest.err 1>&AS_MESSAGE_LOG_FD
1467
- $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
1510
+ $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
1468
1511
  $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1469
1512
  if diff conftest.exp conftest.er2 >/dev/null; then
1470
1513
  $2=yes
@@ -1527,6 +1570,11 @@ AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
1527
1570
  lt_cv_sys_max_cmd_len=8192;
1528
1571
  ;;
1529
1572
 
1573
+ mint*)
1574
+ # On MiNT this can take a long time and run out of memory.
1575
+ lt_cv_sys_max_cmd_len=8192;
1576
+ ;;
1577
+
1530
1578
  amigaos*)
1531
1579
  # On AmigaOS with pdksh, this test takes hours, literally.
1532
1580
  # So we just punt and use a minimum line length of 8192.
@@ -1591,8 +1639,8 @@ AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
1591
1639
  # If test is not a shell built-in, we'll probably end up computing a
1592
1640
  # maximum length that is only half of the actual maximum length, but
1593
1641
  # we can't tell.
1594
- while { test "X"`$SHELL [$]0 --fallback-echo "X$teststring$teststring" 2>/dev/null` \
1595
- = "XX$teststring$teststring"; } >/dev/null 2>&1 &&
1642
+ while { test "X"`func_fallback_echo "$teststring$teststring" 2>/dev/null` \
1643
+ = "X$teststring$teststring"; } >/dev/null 2>&1 &&
1596
1644
  test $i != 17 # 1/2 MB should be enough
1597
1645
  do
1598
1646
  i=`expr $i + 1`
@@ -1643,7 +1691,7 @@ else
1643
1691
  lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
1644
1692
  lt_status=$lt_dlunknown
1645
1693
  cat > conftest.$ac_ext <<_LT_EOF
1646
- [#line __oline__ "configure"
1694
+ [#line $LINENO "configure"
1647
1695
  #include "confdefs.h"
1648
1696
 
1649
1697
  #if HAVE_DLFCN_H
@@ -1684,7 +1732,13 @@ else
1684
1732
  # endif
1685
1733
  #endif
1686
1734
 
1687
- void fnord() { int i=42;}
1735
+ /* When -fvisbility=hidden is used, assume the code has been annotated
1736
+ correspondingly for the symbols needed. */
1737
+ #if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
1738
+ int fnord () __attribute__((visibility("default")));
1739
+ #endif
1740
+
1741
+ int fnord () { return 42; }
1688
1742
  int main ()
1689
1743
  {
1690
1744
  void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
@@ -1693,7 +1747,11 @@ int main ()
1693
1747
  if (self)
1694
1748
  {
1695
1749
  if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
1696
- else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
1750
+ else
1751
+ {
1752
+ if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
1753
+ else puts (dlerror ());
1754
+ }
1697
1755
  /* dlclose (self); */
1698
1756
  }
1699
1757
  else
@@ -1869,16 +1927,16 @@ AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
1869
1927
  -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1870
1928
  -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
1871
1929
  -e 's:$: $lt_compiler_flag:'`
1872
- (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
1930
+ (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
1873
1931
  (eval "$lt_compile" 2>out/conftest.err)
1874
1932
  ac_status=$?
1875
1933
  cat out/conftest.err >&AS_MESSAGE_LOG_FD
1876
- echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
1934
+ echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
1877
1935
  if (exit $ac_status) && test -s out/conftest2.$ac_objext
1878
1936
  then
1879
1937
  # The compiler can only warn and ignore the option if not recognized
1880
1938
  # So say no if there are warnings
1881
- $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp
1939
+ $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
1882
1940
  $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
1883
1941
  if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
1884
1942
  _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
@@ -2037,6 +2095,7 @@ m4_require([_LT_DECL_EGREP])dnl
2037
2095
  m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2038
2096
  m4_require([_LT_DECL_OBJDUMP])dnl
2039
2097
  m4_require([_LT_DECL_SED])dnl
2098
+ m4_require([_LT_CHECK_SHELL_FEATURES])dnl
2040
2099
  AC_MSG_CHECKING([dynamic linker characteristics])
2041
2100
  m4_if([$1],
2042
2101
  [], [
@@ -2045,16 +2104,23 @@ if test "$GCC" = yes; then
2045
2104
  darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
2046
2105
  *) lt_awk_arg="/^libraries:/" ;;
2047
2106
  esac
2048
- lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e "s,=/,/,g"`
2049
- if $ECHO "$lt_search_path_spec" | $GREP ';' >/dev/null ; then
2107
+ case $host_os in
2108
+ mingw* | cegcc*) lt_sed_strip_eq="s,=\([[A-Za-z]]:\),\1,g" ;;
2109
+ *) lt_sed_strip_eq="s,=/,/,g" ;;
2110
+ esac
2111
+ lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
2112
+ case $lt_search_path_spec in
2113
+ *\;*)
2050
2114
  # if the path contains ";" then we assume it to be the separator
2051
2115
  # otherwise default to the standard path separator (i.e. ":") - it is
2052
2116
  # assumed that no part of a normal pathname contains ";" but that should
2053
2117
  # okay in the real world where ";" in dirpaths is itself problematic.
2054
- lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e 's/;/ /g'`
2055
- else
2056
- lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2057
- fi
2118
+ lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`
2119
+ ;;
2120
+ *)
2121
+ lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`
2122
+ ;;
2123
+ esac
2058
2124
  # Ok, now we have the path, separated by spaces, we can step through it
2059
2125
  # and add multilib dir if necessary.
2060
2126
  lt_tmp_lt_search_path_spec=
@@ -2067,7 +2133,7 @@ if test "$GCC" = yes; then
2067
2133
  lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
2068
2134
  fi
2069
2135
  done
2070
- lt_search_path_spec=`$ECHO $lt_tmp_lt_search_path_spec | awk '
2136
+ lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
2071
2137
  BEGIN {RS=" "; FS="/|\n";} {
2072
2138
  lt_foo="";
2073
2139
  lt_count=0;
@@ -2087,7 +2153,13 @@ BEGIN {RS=" "; FS="/|\n";} {
2087
2153
  if (lt_foo != "") { lt_freq[[lt_foo]]++; }
2088
2154
  if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
2089
2155
  }'`
2090
- sys_lib_search_path_spec=`$ECHO $lt_search_path_spec`
2156
+ # AWK program above erroneously prepends '/' to C:/dos/paths
2157
+ # for these hosts.
2158
+ case $host_os in
2159
+ mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
2160
+ $SED 's,/\([[A-Za-z]]:\),\1,g'` ;;
2161
+ esac
2162
+ sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
2091
2163
  else
2092
2164
  sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
2093
2165
  fi])
@@ -2175,7 +2247,7 @@ amigaos*)
2175
2247
  m68k)
2176
2248
  library_names_spec='$libname.ixlibrary $libname.a'
2177
2249
  # Create ${libname}_ixlibrary.a entries in /sys/libs.
2178
- finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
2250
+ finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
2179
2251
  ;;
2180
2252
  esac
2181
2253
  ;;
@@ -2206,8 +2278,9 @@ cygwin* | mingw* | pw32* | cegcc*)
2206
2278
  need_version=no
2207
2279
  need_lib_prefix=no
2208
2280
 
2209
- case $GCC,$host_os in
2210
- yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*)
2281
+ case $GCC,$cc_basename in
2282
+ yes,*)
2283
+ # gcc
2211
2284
  library_names_spec='$libname.dll.a'
2212
2285
  # DLL is installed to $(libdir)/../bin by postinstall_cmds
2213
2286
  postinstall_cmds='base_file=`basename \${file}`~
@@ -2228,36 +2301,83 @@ cygwin* | mingw* | pw32* | cegcc*)
2228
2301
  cygwin*)
2229
2302
  # Cygwin DLLs use 'cyg' prefix rather than 'lib'
2230
2303
  soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2231
- sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
2304
+ m4_if([$1], [],[
2305
+ sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"])
2232
2306
  ;;
2233
2307
  mingw* | cegcc*)
2234
2308
  # MinGW DLLs use traditional 'lib' prefix
2235
2309
  soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2236
- sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
2237
- if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
2238
- # It is most probably a Windows format PATH printed by
2239
- # mingw gcc, but we are running on Cygwin. Gcc prints its search
2240
- # path with ; separators, and with drive letters. We can handle the
2241
- # drive letters (cygwin fileutils understands them), so leave them,
2242
- # especially as we might pass files found there to a mingw objdump,
2243
- # which wouldn't understand a cygwinified path. Ahh.
2244
- sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
2245
- else
2246
- sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2247
- fi
2248
2310
  ;;
2249
2311
  pw32*)
2250
2312
  # pw32 DLLs use 'pw' prefix rather than 'lib'
2251
2313
  library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2252
2314
  ;;
2253
2315
  esac
2316
+ dynamic_linker='Win32 ld.exe'
2317
+ ;;
2318
+
2319
+ *,cl*)
2320
+ # Native MSVC
2321
+ libname_spec='$name'
2322
+ soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2323
+ library_names_spec='${libname}.dll.lib'
2324
+
2325
+ case $build_os in
2326
+ mingw*)
2327
+ sys_lib_search_path_spec=
2328
+ lt_save_ifs=$IFS
2329
+ IFS=';'
2330
+ for lt_path in $LIB
2331
+ do
2332
+ IFS=$lt_save_ifs
2333
+ # Let DOS variable expansion print the short 8.3 style file name.
2334
+ lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
2335
+ sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
2336
+ done
2337
+ IFS=$lt_save_ifs
2338
+ # Convert to MSYS style.
2339
+ sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'`
2340
+ ;;
2341
+ cygwin*)
2342
+ # Convert to unix form, then to dos form, then back to unix form
2343
+ # but this time dos style (no spaces!) so that the unix form looks
2344
+ # like /cygdrive/c/PROGRA~1:/cygdr...
2345
+ sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
2346
+ sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
2347
+ sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2348
+ ;;
2349
+ *)
2350
+ sys_lib_search_path_spec="$LIB"
2351
+ if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
2352
+ # It is most probably a Windows format PATH.
2353
+ sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
2354
+ else
2355
+ sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2356
+ fi
2357
+ # FIXME: find the short name or the path components, as spaces are
2358
+ # common. (e.g. "Program Files" -> "PROGRA~1")
2359
+ ;;
2360
+ esac
2361
+
2362
+ # DLL is installed to $(libdir)/../bin by postinstall_cmds
2363
+ postinstall_cmds='base_file=`basename \${file}`~
2364
+ dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
2365
+ dldir=$destdir/`dirname \$dlpath`~
2366
+ test -d \$dldir || mkdir -p \$dldir~
2367
+ $install_prog $dir/$dlname \$dldir/$dlname'
2368
+ postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2369
+ dlpath=$dir/\$dldll~
2370
+ $RM \$dlpath'
2371
+ shlibpath_overrides_runpath=yes
2372
+ dynamic_linker='Win32 link.exe'
2254
2373
  ;;
2255
2374
 
2256
2375
  *)
2376
+ # Assume MSVC wrapper
2257
2377
  library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
2378
+ dynamic_linker='Win32 ld.exe'
2258
2379
  ;;
2259
2380
  esac
2260
- dynamic_linker='Win32 ld.exe'
2261
2381
  # FIXME: first we should search . and the directory the executable is in
2262
2382
  shlibpath_var=PATH
2263
2383
  ;;
@@ -2344,6 +2464,19 @@ gnu*)
2344
2464
  hardcode_into_libs=yes
2345
2465
  ;;
2346
2466
 
2467
+ haiku*)
2468
+ version_type=linux
2469
+ need_lib_prefix=no
2470
+ need_version=no
2471
+ dynamic_linker="$host_os runtime_loader"
2472
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
2473
+ soname_spec='${libname}${release}${shared_ext}$major'
2474
+ shlibpath_var=LIBRARY_PATH
2475
+ shlibpath_overrides_runpath=yes
2476
+ sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
2477
+ hardcode_into_libs=yes
2478
+ ;;
2479
+
2347
2480
  hpux9* | hpux10* | hpux11*)
2348
2481
  # Give a soname corresponding to the major version so that dld.sl refuses to
2349
2482
  # link against other versions.
@@ -2386,8 +2519,10 @@ hpux9* | hpux10* | hpux11*)
2386
2519
  soname_spec='${libname}${release}${shared_ext}$major'
2387
2520
  ;;
2388
2521
  esac
2389
- # HP-UX runs *really* slowly unless shared libraries are mode 555.
2522
+ # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
2390
2523
  postinstall_cmds='chmod 555 $lib'
2524
+ # or fails outright, so override atomically:
2525
+ install_override_mode=555
2391
2526
  ;;
2392
2527
 
2393
2528
  interix[[3-9]]*)
@@ -2445,7 +2580,7 @@ linux*oldld* | linux*aout* | linux*coff*)
2445
2580
  ;;
2446
2581
 
2447
2582
  # This must be Linux ELF.
2448
- linux* | k*bsd*-gnu)
2583
+ linux* | k*bsd*-gnu | kopensolaris*-gnu)
2449
2584
  version_type=linux
2450
2585
  need_lib_prefix=no
2451
2586
  need_version=no
@@ -2454,29 +2589,31 @@ linux* | k*bsd*-gnu)
2454
2589
  finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
2455
2590
  shlibpath_var=LD_LIBRARY_PATH
2456
2591
  shlibpath_overrides_runpath=no
2592
+
2457
2593
  # Some binutils ld are patched to set DT_RUNPATH
2458
- save_LDFLAGS=$LDFLAGS
2459
- save_libdir=$libdir
2460
- eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
2461
- LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
2462
- AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
2463
- [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
2464
- [shlibpath_overrides_runpath=yes])])
2465
- LDFLAGS=$save_LDFLAGS
2466
- libdir=$save_libdir
2594
+ AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath],
2595
+ [lt_cv_shlibpath_overrides_runpath=no
2596
+ save_LDFLAGS=$LDFLAGS
2597
+ save_libdir=$libdir
2598
+ eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
2599
+ LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
2600
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
2601
+ [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
2602
+ [lt_cv_shlibpath_overrides_runpath=yes])])
2603
+ LDFLAGS=$save_LDFLAGS
2604
+ libdir=$save_libdir
2605
+ ])
2606
+ shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
2467
2607
 
2468
2608
  # This implies no fast_install, which is unacceptable.
2469
2609
  # Some rework will be needed to allow for fast_install
2470
2610
  # before this can be enabled.
2471
2611
  hardcode_into_libs=yes
2472
2612
 
2473
- # Add ABI-specific directories to the system library path.
2474
- sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"
2475
-
2476
2613
  # Append ld.so.conf contents to the search path
2477
2614
  if test -f /etc/ld.so.conf; then
2478
- lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
2479
- sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra"
2615
+ lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '`
2616
+ sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
2480
2617
  fi
2481
2618
 
2482
2619
  # We used to test for /lib/ld.so.1 and disable shared libraries on
@@ -2708,6 +2845,8 @@ _LT_DECL([], [library_names_spec], [1],
2708
2845
  The last name is the one that the linker finds with -lNAME]])
2709
2846
  _LT_DECL([], [soname_spec], [1],
2710
2847
  [[The coded name of the library, if different from the real name]])
2848
+ _LT_DECL([], [install_override_mode], [1],
2849
+ [Permission mode override for installation of shared libraries])
2711
2850
  _LT_DECL([], [postinstall_cmds], [2],
2712
2851
  [Command to use after installation of a shared archive])
2713
2852
  _LT_DECL([], [postuninstall_cmds], [2],
@@ -2820,6 +2959,7 @@ AC_REQUIRE([AC_CANONICAL_HOST])dnl
2820
2959
  AC_REQUIRE([AC_CANONICAL_BUILD])dnl
2821
2960
  m4_require([_LT_DECL_SED])dnl
2822
2961
  m4_require([_LT_DECL_EGREP])dnl
2962
+ m4_require([_LT_PROG_ECHO_BACKSLASH])dnl
2823
2963
 
2824
2964
  AC_ARG_WITH([gnu-ld],
2825
2965
  [AS_HELP_STRING([--with-gnu-ld],
@@ -2941,6 +3081,11 @@ case $reload_flag in
2941
3081
  esac
2942
3082
  reload_cmds='$LD$reload_flag -o $output$reload_objs'
2943
3083
  case $host_os in
3084
+ cygwin* | mingw* | pw32* | cegcc*)
3085
+ if test "$GCC" != yes; then
3086
+ reload_cmds=false
3087
+ fi
3088
+ ;;
2944
3089
  darwin*)
2945
3090
  if test "$GCC" = yes; then
2946
3091
  reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
@@ -2949,8 +3094,8 @@ case $host_os in
2949
3094
  fi
2950
3095
  ;;
2951
3096
  esac
2952
- _LT_DECL([], [reload_flag], [1], [How to create reloadable object files])dnl
2953
- _LT_DECL([], [reload_cmds], [2])dnl
3097
+ _LT_TAGDECL([], [reload_flag], [1], [How to create reloadable object files])dnl
3098
+ _LT_TAGDECL([], [reload_cmds], [2])dnl
2954
3099
  ])# _LT_CMD_RELOAD
2955
3100
 
2956
3101
 
@@ -3002,16 +3147,18 @@ mingw* | pw32*)
3002
3147
  # Base MSYS/MinGW do not provide the 'file' command needed by
3003
3148
  # func_win32_libid shell function, so use a weaker test based on 'objdump',
3004
3149
  # unless we find 'file', for example because we are cross-compiling.
3005
- if ( file / ) >/dev/null 2>&1; then
3150
+ # func_win32_libid assumes BSD nm, so disallow it if using MS dumpbin.
3151
+ if ( test "$lt_cv_nm_interface" = "BSD nm" && file / ) >/dev/null 2>&1; then
3006
3152
  lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3007
3153
  lt_cv_file_magic_cmd='func_win32_libid'
3008
3154
  else
3009
- lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
3155
+ # Keep this pattern in sync with the one in func_win32_libid.
3156
+ lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'
3010
3157
  lt_cv_file_magic_cmd='$OBJDUMP -f'
3011
3158
  fi
3012
3159
  ;;
3013
3160
 
3014
- cegcc)
3161
+ cegcc*)
3015
3162
  # use the weaker test based on 'objdump'. See mingw*.
3016
3163
  lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
3017
3164
  lt_cv_file_magic_cmd='$OBJDUMP -f'
@@ -3041,6 +3188,10 @@ gnu*)
3041
3188
  lt_cv_deplibs_check_method=pass_all
3042
3189
  ;;
3043
3190
 
3191
+ haiku*)
3192
+ lt_cv_deplibs_check_method=pass_all
3193
+ ;;
3194
+
3044
3195
  hpux10.20* | hpux11*)
3045
3196
  lt_cv_file_magic_cmd=/usr/bin/file
3046
3197
  case $host_cpu in
@@ -3049,11 +3200,11 @@ hpux10.20* | hpux11*)
3049
3200
  lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
3050
3201
  ;;
3051
3202
  hppa*64*)
3052
- [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - PA-RISC [0-9].[0-9]']
3203
+ [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF[ -][0-9][0-9])(-bit)?( [LM]SB)? shared object( file)?[, -]* PA-RISC [0-9]\.[0-9]']
3053
3204
  lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
3054
3205
  ;;
3055
3206
  *)
3056
- lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library'
3207
+ lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library'
3057
3208
  lt_cv_file_magic_test_file=/usr/lib/libc.sl
3058
3209
  ;;
3059
3210
  esac
@@ -3075,7 +3226,7 @@ irix5* | irix6* | nonstopux*)
3075
3226
  ;;
3076
3227
 
3077
3228
  # This must be Linux ELF.
3078
- linux* | k*bsd*-gnu)
3229
+ linux* | k*bsd*-gnu | kopensolaris*-gnu)
3079
3230
  lt_cv_deplibs_check_method=pass_all
3080
3231
  ;;
3081
3232
 
@@ -3153,6 +3304,21 @@ tpf*)
3153
3304
  ;;
3154
3305
  esac
3155
3306
  ])
3307
+
3308
+ file_magic_glob=
3309
+ want_nocaseglob=no
3310
+ if test "$build" = "$host"; then
3311
+ case $host_os in
3312
+ mingw* | pw32*)
3313
+ if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then
3314
+ want_nocaseglob=yes
3315
+ else
3316
+ file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"`
3317
+ fi
3318
+ ;;
3319
+ esac
3320
+ fi
3321
+
3156
3322
  file_magic_cmd=$lt_cv_file_magic_cmd
3157
3323
  deplibs_check_method=$lt_cv_deplibs_check_method
3158
3324
  test -z "$deplibs_check_method" && deplibs_check_method=unknown
@@ -3160,7 +3326,11 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
3160
3326
  _LT_DECL([], [deplibs_check_method], [1],
3161
3327
  [Method to check whether dependent libraries are shared objects])
3162
3328
  _LT_DECL([], [file_magic_cmd], [1],
3163
- [Command to use when deplibs_check_method == "file_magic"])
3329
+ [Command to use when deplibs_check_method = "file_magic"])
3330
+ _LT_DECL([], [file_magic_glob], [1],
3331
+ [How to find potential files when deplibs_check_method = "file_magic"])
3332
+ _LT_DECL([], [want_nocaseglob], [1],
3333
+ [Find potential files using nocaseglob when deplibs_check_method = "file_magic"])
3164
3334
  ])# _LT_CHECK_MAGIC_METHOD
3165
3335
 
3166
3336
 
@@ -3217,7 +3387,19 @@ if test "$lt_cv_path_NM" != "no"; then
3217
3387
  NM="$lt_cv_path_NM"
3218
3388
  else
3219
3389
  # Didn't find any BSD compatible name lister, look for dumpbin.
3220
- AC_CHECK_TOOLS(DUMPBIN, ["dumpbin -symbols" "link -dump -symbols"], :)
3390
+ if test -n "$DUMPBIN"; then :
3391
+ # Let the user override the test.
3392
+ else
3393
+ AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :)
3394
+ case `$DUMPBIN -symbols /dev/null 2>&1 | sed '1q'` in
3395
+ *COFF*)
3396
+ DUMPBIN="$DUMPBIN -symbols"
3397
+ ;;
3398
+ *)
3399
+ DUMPBIN=:
3400
+ ;;
3401
+ esac
3402
+ fi
3221
3403
  AC_SUBST([DUMPBIN])
3222
3404
  if test "$DUMPBIN" != ":"; then
3223
3405
  NM="$DUMPBIN"
@@ -3230,13 +3412,13 @@ _LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
3230
3412
  AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
3231
3413
  [lt_cv_nm_interface="BSD nm"
3232
3414
  echo "int some_variable = 0;" > conftest.$ac_ext
3233
- (eval echo "\"\$as_me:__oline__: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
3415
+ (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
3234
3416
  (eval "$ac_compile" 2>conftest.err)
3235
3417
  cat conftest.err >&AS_MESSAGE_LOG_FD
3236
- (eval echo "\"\$as_me:__oline__: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
3418
+ (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
3237
3419
  (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
3238
3420
  cat conftest.err >&AS_MESSAGE_LOG_FD
3239
- (eval echo "\"\$as_me:__oline__: output\"" >&AS_MESSAGE_LOG_FD)
3421
+ (eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD)
3240
3422
  cat conftest.out >&AS_MESSAGE_LOG_FD
3241
3423
  if $GREP 'External.*some_variable' conftest.out > /dev/null; then
3242
3424
  lt_cv_nm_interface="MS dumpbin"
@@ -3251,6 +3433,67 @@ dnl aclocal-1.4 backwards compatibility:
3251
3433
  dnl AC_DEFUN([AM_PROG_NM], [])
3252
3434
  dnl AC_DEFUN([AC_PROG_NM], [])
3253
3435
 
3436
+ # _LT_CHECK_SHAREDLIB_FROM_LINKLIB
3437
+ # --------------------------------
3438
+ # how to determine the name of the shared library
3439
+ # associated with a specific link library.
3440
+ # -- PORTME fill in with the dynamic library characteristics
3441
+ m4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB],
3442
+ [m4_require([_LT_DECL_EGREP])
3443
+ m4_require([_LT_DECL_OBJDUMP])
3444
+ m4_require([_LT_DECL_DLLTOOL])
3445
+ AC_CACHE_CHECK([how to associate runtime and link libraries],
3446
+ lt_cv_sharedlib_from_linklib_cmd,
3447
+ [lt_cv_sharedlib_from_linklib_cmd='unknown'
3448
+
3449
+ case $host_os in
3450
+ cygwin* | mingw* | pw32* | cegcc*)
3451
+ # two different shell functions defined in ltmain.sh
3452
+ # decide which to use based on capabilities of $DLLTOOL
3453
+ case `$DLLTOOL --help 2>&1` in
3454
+ *--identify-strict*)
3455
+ lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
3456
+ ;;
3457
+ *)
3458
+ lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback
3459
+ ;;
3460
+ esac
3461
+ ;;
3462
+ *)
3463
+ # fallback: assume linklib IS sharedlib
3464
+ lt_cv_sharedlib_from_linklib_cmd="$ECHO"
3465
+ ;;
3466
+ esac
3467
+ ])
3468
+ sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
3469
+ test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
3470
+
3471
+ _LT_DECL([], [sharedlib_from_linklib_cmd], [1],
3472
+ [Command to associate shared and link libraries])
3473
+ ])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
3474
+
3475
+
3476
+ # _LT_PATH_MANIFEST_TOOL
3477
+ # ----------------------
3478
+ # locate the manifest tool
3479
+ m4_defun([_LT_PATH_MANIFEST_TOOL],
3480
+ [AC_CHECK_TOOL(MANIFEST_TOOL, mt, :)
3481
+ test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
3482
+ AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool],
3483
+ [lt_cv_path_mainfest_tool=no
3484
+ echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD
3485
+ $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
3486
+ cat conftest.err >&AS_MESSAGE_LOG_FD
3487
+ if $GREP 'Manifest Tool' conftest.out > /dev/null; then
3488
+ lt_cv_path_mainfest_tool=yes
3489
+ fi
3490
+ rm -f conftest*])
3491
+ if test "x$lt_cv_path_mainfest_tool" != xyes; then
3492
+ MANIFEST_TOOL=:
3493
+ fi
3494
+ _LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl
3495
+ ])# _LT_PATH_MANIFEST_TOOL
3496
+
3254
3497
 
3255
3498
  # LT_LIB_M
3256
3499
  # --------
@@ -3259,7 +3502,7 @@ AC_DEFUN([LT_LIB_M],
3259
3502
  [AC_REQUIRE([AC_CANONICAL_HOST])dnl
3260
3503
  LIBM=
3261
3504
  case $host in
3262
- *-*-beos* | *-*-cygwin* | *-*-pw32* | *-*-darwin*)
3505
+ *-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*)
3263
3506
  # These system don't have libm, or don't need it
3264
3507
  ;;
3265
3508
  *-ncr-sysv4.3*)
@@ -3287,7 +3530,12 @@ m4_defun([_LT_COMPILER_NO_RTTI],
3287
3530
  _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
3288
3531
 
3289
3532
  if test "$GCC" = yes; then
3290
- _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
3533
+ case $cc_basename in
3534
+ nvcc*)
3535
+ _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;;
3536
+ *)
3537
+ _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;;
3538
+ esac
3291
3539
 
3292
3540
  _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
3293
3541
  lt_cv_prog_compiler_rtti_exceptions,
@@ -3304,6 +3552,7 @@ _LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
3304
3552
  m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
3305
3553
  [AC_REQUIRE([AC_CANONICAL_HOST])dnl
3306
3554
  AC_REQUIRE([AC_PROG_CC])dnl
3555
+ AC_REQUIRE([AC_PROG_AWK])dnl
3307
3556
  AC_REQUIRE([LT_PATH_NM])dnl
3308
3557
  AC_REQUIRE([LT_PATH_LD])dnl
3309
3558
  m4_require([_LT_DECL_SED])dnl
@@ -3371,8 +3620,8 @@ esac
3371
3620
  lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
3372
3621
 
3373
3622
  # Transform an extracted symbol line into symbol name and symbol address
3374
- lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p'"
3375
- lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \(lib[[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"lib\2\", (void *) \&\2},/p'"
3623
+ lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p'"
3624
+ lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \(lib[[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"lib\2\", (void *) \&\2},/p'"
3376
3625
 
3377
3626
  # Handle CRLF in mingw tool chain
3378
3627
  opt_cr=
@@ -3408,6 +3657,7 @@ for ac_symprfx in "" "_"; do
3408
3657
  else
3409
3658
  lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
3410
3659
  fi
3660
+ lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
3411
3661
 
3412
3662
  # Check to see that the pipe works correctly.
3413
3663
  pipe_works=no
@@ -3429,7 +3679,7 @@ _LT_EOF
3429
3679
  if AC_TRY_EVAL(ac_compile); then
3430
3680
  # Now try to grab the symbols.
3431
3681
  nlist=conftest.nm
3432
- if AC_TRY_EVAL(NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) && test -s "$nlist"; then
3682
+ if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then
3433
3683
  # Try sorting and uniquifying the output.
3434
3684
  if sort "$nlist" | uniq > "$nlist"T; then
3435
3685
  mv -f "$nlist"T "$nlist"
@@ -3441,6 +3691,18 @@ _LT_EOF
3441
3691
  if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
3442
3692
  if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
3443
3693
  cat <<_LT_EOF > conftest.$ac_ext
3694
+ /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */
3695
+ #if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE)
3696
+ /* DATA imports from DLLs on WIN32 con't be const, because runtime
3697
+ relocations are performed -- see ld's documentation on pseudo-relocs. */
3698
+ # define LT@&t@_DLSYM_CONST
3699
+ #elif defined(__osf__)
3700
+ /* This system does not cope well with relocations in const data. */
3701
+ # define LT@&t@_DLSYM_CONST
3702
+ #else
3703
+ # define LT@&t@_DLSYM_CONST const
3704
+ #endif
3705
+
3444
3706
  #ifdef __cplusplus
3445
3707
  extern "C" {
3446
3708
  #endif
@@ -3452,7 +3714,7 @@ _LT_EOF
3452
3714
  cat <<_LT_EOF >> conftest.$ac_ext
3453
3715
 
3454
3716
  /* The mapping between symbol names and symbols. */
3455
- const struct {
3717
+ LT@&t@_DLSYM_CONST struct {
3456
3718
  const char *name;
3457
3719
  void *address;
3458
3720
  }
@@ -3478,15 +3740,15 @@ static const void *lt_preloaded_setup() {
3478
3740
  _LT_EOF
3479
3741
  # Now try linking the two files.
3480
3742
  mv conftest.$ac_objext conftstm.$ac_objext
3481
- lt_save_LIBS="$LIBS"
3482
- lt_save_CFLAGS="$CFLAGS"
3743
+ lt_globsym_save_LIBS=$LIBS
3744
+ lt_globsym_save_CFLAGS=$CFLAGS
3483
3745
  LIBS="conftstm.$ac_objext"
3484
3746
  CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
3485
3747
  if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then
3486
3748
  pipe_works=yes
3487
3749
  fi
3488
- LIBS="$lt_save_LIBS"
3489
- CFLAGS="$lt_save_CFLAGS"
3750
+ LIBS=$lt_globsym_save_LIBS
3751
+ CFLAGS=$lt_globsym_save_CFLAGS
3490
3752
  else
3491
3753
  echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
3492
3754
  fi
@@ -3519,6 +3781,13 @@ else
3519
3781
  AC_MSG_RESULT(ok)
3520
3782
  fi
3521
3783
 
3784
+ # Response file support.
3785
+ if test "$lt_cv_nm_interface" = "MS dumpbin"; then
3786
+ nm_file_list_spec='@'
3787
+ elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then
3788
+ nm_file_list_spec='@'
3789
+ fi
3790
+
3522
3791
  _LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
3523
3792
  [Take the output of nm and produce a listing of raw symbols and C names])
3524
3793
  _LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
@@ -3529,6 +3798,8 @@ _LT_DECL([global_symbol_to_c_name_address],
3529
3798
  _LT_DECL([global_symbol_to_c_name_address_lib_prefix],
3530
3799
  [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
3531
3800
  [Transform the output of nm in a C name address pair when lib prefix is needed])
3801
+ _LT_DECL([], [nm_file_list_spec], [1],
3802
+ [Specify filename containing input files for $NM])
3532
3803
  ]) # _LT_CMD_GLOBAL_SYMBOLS
3533
3804
 
3534
3805
 
@@ -3540,7 +3811,6 @@ _LT_TAGVAR(lt_prog_compiler_wl, $1)=
3540
3811
  _LT_TAGVAR(lt_prog_compiler_pic, $1)=
3541
3812
  _LT_TAGVAR(lt_prog_compiler_static, $1)=
3542
3813
 
3543
- AC_MSG_CHECKING([for $compiler option to produce PIC])
3544
3814
  m4_if([$1], [CXX], [
3545
3815
  # C++ specific cases for pic, static, wl, etc.
3546
3816
  if test "$GXX" = yes; then
@@ -3591,6 +3861,11 @@ m4_if([$1], [CXX], [
3591
3861
  # DJGPP does not support shared libraries at all
3592
3862
  _LT_TAGVAR(lt_prog_compiler_pic, $1)=
3593
3863
  ;;
3864
+ haiku*)
3865
+ # PIC is the default for Haiku.
3866
+ # The "-static" flag exists, but is broken.
3867
+ _LT_TAGVAR(lt_prog_compiler_static, $1)=
3868
+ ;;
3594
3869
  interix[[3-9]]*)
3595
3870
  # Interix 3.x gcc -fpic/-fPIC options generate broken code.
3596
3871
  # Instead, we relocate shared libraries at runtime.
@@ -3640,6 +3915,12 @@ m4_if([$1], [CXX], [
3640
3915
  ;;
3641
3916
  esac
3642
3917
  ;;
3918
+ mingw* | cygwin* | os2* | pw32* | cegcc*)
3919
+ # This hack is so that the source file can tell whether it is being
3920
+ # built for inclusion in a dll (and should export symbols for example).
3921
+ m4_if([$1], [GCJ], [],
3922
+ [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
3923
+ ;;
3643
3924
  dgux*)
3644
3925
  case $cc_basename in
3645
3926
  ec++*)
@@ -3696,7 +3977,7 @@ m4_if([$1], [CXX], [
3696
3977
  ;;
3697
3978
  esac
3698
3979
  ;;
3699
- linux* | k*bsd*-gnu)
3980
+ linux* | k*bsd*-gnu | kopensolaris*-gnu)
3700
3981
  case $cc_basename in
3701
3982
  KCC*)
3702
3983
  # KAI C++ Compiler
@@ -3729,8 +4010,8 @@ m4_if([$1], [CXX], [
3729
4010
  _LT_TAGVAR(lt_prog_compiler_pic, $1)=
3730
4011
  _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
3731
4012
  ;;
3732
- xlc* | xlC*)
3733
- # IBM XL 8.0 on PPC
4013
+ xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*)
4014
+ # IBM XL 8.0, 9.0 on PPC and BlueGene
3734
4015
  _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3735
4016
  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
3736
4017
  _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
@@ -3792,7 +4073,7 @@ m4_if([$1], [CXX], [
3792
4073
  ;;
3793
4074
  solaris*)
3794
4075
  case $cc_basename in
3795
- CC*)
4076
+ CC* | sunCC*)
3796
4077
  # Sun C++ 4.2, 5.x and Centerline C++
3797
4078
  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
3798
4079
  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
@@ -3896,6 +4177,12 @@ m4_if([$1], [CXX], [
3896
4177
  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
3897
4178
  ;;
3898
4179
 
4180
+ haiku*)
4181
+ # PIC is the default for Haiku.
4182
+ # The "-static" flag exists, but is broken.
4183
+ _LT_TAGVAR(lt_prog_compiler_static, $1)=
4184
+ ;;
4185
+
3899
4186
  hpux*)
3900
4187
  # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
3901
4188
  # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
@@ -3938,6 +4225,13 @@ m4_if([$1], [CXX], [
3938
4225
  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
3939
4226
  ;;
3940
4227
  esac
4228
+
4229
+ case $cc_basename in
4230
+ nvcc*) # Cuda Compiler Driver 2.2
4231
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker '
4232
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Xcompiler -fPIC'
4233
+ ;;
4234
+ esac
3941
4235
  else
3942
4236
  # PORTME Check for flag to pass linker flags through the system compiler.
3943
4237
  case $host_os in
@@ -3980,7 +4274,7 @@ m4_if([$1], [CXX], [
3980
4274
  _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
3981
4275
  ;;
3982
4276
 
3983
- linux* | k*bsd*-gnu)
4277
+ linux* | k*bsd*-gnu | kopensolaris*-gnu)
3984
4278
  case $cc_basename in
3985
4279
  # old Intel for x86_64 which still supported -KPIC.
3986
4280
  ecc*)
@@ -4001,7 +4295,13 @@ m4_if([$1], [CXX], [
4001
4295
  _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
4002
4296
  _LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
4003
4297
  ;;
4004
- pgcc* | pgf77* | pgf90* | pgf95*)
4298
+ nagfor*)
4299
+ # NAG Fortran compiler
4300
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
4301
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4302
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4303
+ ;;
4304
+ pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
4005
4305
  # Portland Group compilers (*not* the Pentium gcc compiler,
4006
4306
  # which looks to be a dead project)
4007
4307
  _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
@@ -4013,25 +4313,25 @@ m4_if([$1], [CXX], [
4013
4313
  # All Alpha code is PIC.
4014
4314
  _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4015
4315
  ;;
4016
- xl*)
4017
- # IBM XL C 8.0/Fortran 10.1 on PPC
4316
+ xl* | bgxl* | bgf* | mpixl*)
4317
+ # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
4018
4318
  _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4019
4319
  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4020
4320
  _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
4021
4321
  ;;
4022
4322
  *)
4023
4323
  case `$CC -V 2>&1 | sed 5q` in
4024
- *Sun\ C*)
4025
- # Sun C 5.9
4324
+ *Sun\ F* | *Sun*Fortran*)
4325
+ # Sun Fortran 8.3 passes all unrecognized flags to the linker
4026
4326
  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4027
4327
  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4028
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4328
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
4029
4329
  ;;
4030
- *Sun\ F*)
4031
- # Sun Fortran 8.3 passes all unrecognized flags to the linker
4330
+ *Sun\ C*)
4331
+ # Sun C 5.9
4032
4332
  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4033
4333
  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4034
- _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
4334
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4035
4335
  ;;
4036
4336
  esac
4037
4337
  ;;
@@ -4063,7 +4363,7 @@ m4_if([$1], [CXX], [
4063
4363
  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4064
4364
  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4065
4365
  case $cc_basename in
4066
- f77* | f90* | f95*)
4366
+ f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
4067
4367
  _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
4068
4368
  *)
4069
4369
  _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
@@ -4120,9 +4420,11 @@ case $host_os in
4120
4420
  _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
4121
4421
  ;;
4122
4422
  esac
4123
- AC_MSG_RESULT([$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
4124
- _LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
4125
- [How to pass a linker flag through the compiler])
4423
+
4424
+ AC_CACHE_CHECK([for $compiler option to produce PIC],
4425
+ [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)],
4426
+ [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
4427
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)
4126
4428
 
4127
4429
  #
4128
4430
  # Check to make sure the PIC flag actually works.
@@ -4141,6 +4443,8 @@ fi
4141
4443
  _LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
4142
4444
  [Additional compiler flags for building library objects])
4143
4445
 
4446
+ _LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
4447
+ [How to pass a linker flag through the compiler])
4144
4448
  #
4145
4449
  # Check to make sure the static flag actually works.
4146
4450
  #
@@ -4161,6 +4465,7 @@ _LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
4161
4465
  m4_defun([_LT_LINKER_SHLIBS],
4162
4466
  [AC_REQUIRE([LT_PATH_LD])dnl
4163
4467
  AC_REQUIRE([LT_PATH_NM])dnl
4468
+ m4_require([_LT_PATH_MANIFEST_TOOL])dnl
4164
4469
  m4_require([_LT_FILEUTILS_DEFAULTS])dnl
4165
4470
  m4_require([_LT_DECL_EGREP])dnl
4166
4471
  m4_require([_LT_DECL_SED])dnl
@@ -4169,27 +4474,35 @@ m4_require([_LT_TAG_COMPILER])dnl
4169
4474
  AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
4170
4475
  m4_if([$1], [CXX], [
4171
4476
  _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4477
+ _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
4172
4478
  case $host_os in
4173
4479
  aix[[4-9]]*)
4174
4480
  # If we're using GNU nm, then we don't want the "-C" option.
4175
4481
  # -C means demangle to AIX nm, but means don't demangle with GNU nm
4482
+ # Also, AIX nm treats weak defined symbols like other global defined
4483
+ # symbols, whereas GNU nm marks them as "W".
4176
4484
  if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
4177
- _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
4485
+ _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
4178
4486
  else
4179
4487
  _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
4180
4488
  fi
4181
4489
  ;;
4182
4490
  pw32*)
4183
4491
  _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
4184
- ;;
4492
+ ;;
4185
4493
  cygwin* | mingw* | cegcc*)
4186
- _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;/^.*[[ ]]__nm__/s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
4187
- ;;
4494
+ case $cc_basename in
4495
+ cl*) ;;
4496
+ *)
4497
+ _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
4498
+ _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
4499
+ ;;
4500
+ esac
4501
+ ;;
4188
4502
  *)
4189
4503
  _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4190
- ;;
4504
+ ;;
4191
4505
  esac
4192
- _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
4193
4506
  ], [
4194
4507
  runpath_var=
4195
4508
  _LT_TAGVAR(allow_undefined_flag, $1)=
@@ -4252,7 +4565,33 @@ dnl Note also adjust exclude_expsyms for C++ above.
4252
4565
  esac
4253
4566
 
4254
4567
  _LT_TAGVAR(ld_shlibs, $1)=yes
4568
+
4569
+ # On some targets, GNU ld is compatible enough with the native linker
4570
+ # that we're better off using the native interface for both.
4571
+ lt_use_gnu_ld_interface=no
4255
4572
  if test "$with_gnu_ld" = yes; then
4573
+ case $host_os in
4574
+ aix*)
4575
+ # The AIX port of GNU ld has always aspired to compatibility
4576
+ # with the native linker. However, as the warning in the GNU ld
4577
+ # block says, versions before 2.19.5* couldn't really create working
4578
+ # shared libraries, regardless of the interface used.
4579
+ case `$LD -v 2>&1` in
4580
+ *\ \(GNU\ Binutils\)\ 2.19.5*) ;;
4581
+ *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;;
4582
+ *\ \(GNU\ Binutils\)\ [[3-9]]*) ;;
4583
+ *)
4584
+ lt_use_gnu_ld_interface=yes
4585
+ ;;
4586
+ esac
4587
+ ;;
4588
+ *)
4589
+ lt_use_gnu_ld_interface=yes
4590
+ ;;
4591
+ esac
4592
+ fi
4593
+
4594
+ if test "$lt_use_gnu_ld_interface" = yes; then
4256
4595
  # If archive_cmds runs LD, not CC, wlarc should be empty
4257
4596
  wlarc='${wl}'
4258
4597
 
@@ -4270,6 +4609,7 @@ dnl Note also adjust exclude_expsyms for C++ above.
4270
4609
  fi
4271
4610
  supports_anon_versioning=no
4272
4611
  case `$LD -v 2>&1` in
4612
+ *GNU\ gold*) supports_anon_versioning=yes ;;
4273
4613
  *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
4274
4614
  *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
4275
4615
  *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
@@ -4285,11 +4625,12 @@ dnl Note also adjust exclude_expsyms for C++ above.
4285
4625
  _LT_TAGVAR(ld_shlibs, $1)=no
4286
4626
  cat <<_LT_EOF 1>&2
4287
4627
 
4288
- *** Warning: the GNU linker, at least up to release 2.9.1, is reported
4628
+ *** Warning: the GNU linker, at least up to release 2.19, is reported
4289
4629
  *** to be unable to reliably create shared libraries on AIX.
4290
4630
  *** Therefore, libtool is disabling shared libraries support. If you
4291
- *** really care for shared libraries, you may want to modify your PATH
4292
- *** so that a non-GNU linker is found, and then restart.
4631
+ *** really care for shared libraries, you may want to install binutils
4632
+ *** 2.20 or above, or modify your PATH so that a non-GNU linker is found.
4633
+ *** You will then need to restart the configuration process.
4293
4634
 
4294
4635
  _LT_EOF
4295
4636
  fi
@@ -4325,10 +4666,12 @@ _LT_EOF
4325
4666
  # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
4326
4667
  # as there is no search path for DLLs.
4327
4668
  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4669
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols'
4328
4670
  _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
4329
4671
  _LT_TAGVAR(always_export_symbols, $1)=no
4330
4672
  _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
4331
- _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]][[ ]]/s/.*[[ ]]//'\'' | sort | uniq > $export_symbols'
4673
+ _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
4674
+ _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
4332
4675
 
4333
4676
  if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
4334
4677
  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
@@ -4346,6 +4689,11 @@ _LT_EOF
4346
4689
  fi
4347
4690
  ;;
4348
4691
 
4692
+ haiku*)
4693
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4694
+ _LT_TAGVAR(link_all_deplibs, $1)=yes
4695
+ ;;
4696
+
4349
4697
  interix[[3-9]]*)
4350
4698
  _LT_TAGVAR(hardcode_direct, $1)=no
4351
4699
  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
@@ -4361,7 +4709,7 @@ _LT_EOF
4361
4709
  _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
4362
4710
  ;;
4363
4711
 
4364
- gnu* | linux* | tpf* | k*bsd*-gnu)
4712
+ gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
4365
4713
  tmp_diet=no
4366
4714
  if test "$host_os" = linux-dietlibc; then
4367
4715
  case $cc_basename in
@@ -4371,15 +4719,16 @@ _LT_EOF
4371
4719
  if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
4372
4720
  && test "$tmp_diet" = no
4373
4721
  then
4374
- tmp_addflag=
4722
+ tmp_addflag=' $pic_flag'
4375
4723
  tmp_sharedflag='-shared'
4376
4724
  case $cc_basename,$host_cpu in
4377
4725
  pgcc*) # Portland Group C compiler
4378
- _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
4726
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
4379
4727
  tmp_addflag=' $pic_flag'
4380
4728
  ;;
4381
- pgf77* | pgf90* | pgf95*) # Portland Group f77 and f90 compilers
4382
- _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
4729
+ pgf77* | pgf90* | pgf95* | pgfortran*)
4730
+ # Portland Group f77 and f90 compilers
4731
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
4383
4732
  tmp_addflag=' $pic_flag -Mnomain' ;;
4384
4733
  ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
4385
4734
  tmp_addflag=' -i_dynamic' ;;
@@ -4390,13 +4739,17 @@ _LT_EOF
4390
4739
  lf95*) # Lahey Fortran 8.1
4391
4740
  _LT_TAGVAR(whole_archive_flag_spec, $1)=
4392
4741
  tmp_sharedflag='--shared' ;;
4393
- xl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
4742
+ xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
4394
4743
  tmp_sharedflag='-qmkshrobj'
4395
4744
  tmp_addflag= ;;
4745
+ nvcc*) # Cuda Compiler Driver 2.2
4746
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
4747
+ _LT_TAGVAR(compiler_needs_object, $1)=yes
4748
+ ;;
4396
4749
  esac
4397
4750
  case `$CC -V 2>&1 | sed 5q` in
4398
4751
  *Sun\ C*) # Sun C 5.9
4399
- _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
4752
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
4400
4753
  _LT_TAGVAR(compiler_needs_object, $1)=yes
4401
4754
  tmp_sharedflag='-G' ;;
4402
4755
  *Sun\ F*) # Sun Fortran 8.3
@@ -4412,17 +4765,17 @@ _LT_EOF
4412
4765
  fi
4413
4766
 
4414
4767
  case $cc_basename in
4415
- xlf*)
4768
+ xlf* | bgf* | bgxlf* | mpixlf*)
4416
4769
  # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
4417
4770
  _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
4418
4771
  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
4419
4772
  _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir'
4420
- _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $compiler_flags -soname $soname -o $lib'
4773
+ _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
4421
4774
  if test "x$supports_anon_versioning" = xyes; then
4422
4775
  _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
4423
4776
  cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
4424
4777
  echo "local: *; };" >> $output_objdir/$libname.ver~
4425
- $LD -shared $libobjs $deplibs $compiler_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
4778
+ $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
4426
4779
  fi
4427
4780
  ;;
4428
4781
  esac
@@ -4436,8 +4789,8 @@ _LT_EOF
4436
4789
  _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
4437
4790
  wlarc=
4438
4791
  else
4439
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4440
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
4792
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4793
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
4441
4794
  fi
4442
4795
  ;;
4443
4796
 
@@ -4455,8 +4808,8 @@ _LT_EOF
4455
4808
 
4456
4809
  _LT_EOF
4457
4810
  elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
4458
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4459
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
4811
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4812
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
4460
4813
  else
4461
4814
  _LT_TAGVAR(ld_shlibs, $1)=no
4462
4815
  fi
@@ -4502,8 +4855,8 @@ _LT_EOF
4502
4855
 
4503
4856
  *)
4504
4857
  if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
4505
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4506
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
4858
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4859
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
4507
4860
  else
4508
4861
  _LT_TAGVAR(ld_shlibs, $1)=no
4509
4862
  fi
@@ -4543,8 +4896,10 @@ _LT_EOF
4543
4896
  else
4544
4897
  # If we're using GNU nm, then we don't want the "-C" option.
4545
4898
  # -C means demangle to AIX nm, but means don't demangle with GNU nm
4899
+ # Also, AIX nm treats weak defined symbols like other global
4900
+ # defined symbols, whereas GNU nm marks them as "W".
4546
4901
  if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
4547
- _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
4902
+ _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
4548
4903
  else
4549
4904
  _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
4550
4905
  fi
@@ -4631,9 +4986,9 @@ _LT_EOF
4631
4986
  _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
4632
4987
  # Determine the default libpath from the value encoded in an
4633
4988
  # empty executable.
4634
- _LT_SYS_MODULE_PATH_AIX
4989
+ _LT_SYS_MODULE_PATH_AIX([$1])
4635
4990
  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
4636
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
4991
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
4637
4992
  else
4638
4993
  if test "$host_cpu" = ia64; then
4639
4994
  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
@@ -4642,14 +4997,19 @@ _LT_EOF
4642
4997
  else
4643
4998
  # Determine the default libpath from the value encoded in an
4644
4999
  # empty executable.
4645
- _LT_SYS_MODULE_PATH_AIX
5000
+ _LT_SYS_MODULE_PATH_AIX([$1])
4646
5001
  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
4647
5002
  # Warning - without using the other run time loading flags,
4648
5003
  # -berok will link without error, but may produce a broken library.
4649
5004
  _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
4650
5005
  _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
4651
- # Exported symbols can be pulled into shared objects from archives
4652
- _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
5006
+ if test "$with_gnu_ld" = yes; then
5007
+ # We only use this code for GNU lds that support --whole-archive.
5008
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
5009
+ else
5010
+ # Exported symbols can be pulled into shared objects from archives
5011
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
5012
+ fi
4653
5013
  _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
4654
5014
  # This is similar to how AIX traditionally builds its shared libraries.
4655
5015
  _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
@@ -4681,20 +5041,63 @@ _LT_EOF
4681
5041
  # Microsoft Visual C++.
4682
5042
  # hardcode_libdir_flag_spec is actually meaningless, as there is
4683
5043
  # no search path for DLLs.
4684
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
4685
- _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
4686
- # Tell ltmain to make .lib files, not .a files.
4687
- libext=lib
4688
- # Tell ltmain to make .dll files, not .so files.
4689
- shrext_cmds=".dll"
4690
- # FIXME: Setting linknames here is a bad hack.
4691
- _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `$ECHO "X$deplibs" | $Xsed -e '\''s/ -lc$//'\''` -link -dll~linknames='
4692
- # The linker will automatically build a .lib file if we build a DLL.
4693
- _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
4694
- # FIXME: Should let the user specify the lib program.
4695
- _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
4696
- _LT_TAGVAR(fix_srcfile_path, $1)='`cygpath -w "$srcfile"`'
4697
- _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5044
+ case $cc_basename in
5045
+ cl*)
5046
+ # Native MSVC
5047
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5048
+ _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5049
+ _LT_TAGVAR(always_export_symbols, $1)=yes
5050
+ _LT_TAGVAR(file_list_spec, $1)='@'
5051
+ # Tell ltmain to make .lib files, not .a files.
5052
+ libext=lib
5053
+ # Tell ltmain to make .dll files, not .so files.
5054
+ shrext_cmds=".dll"
5055
+ # FIXME: Setting linknames here is a bad hack.
5056
+ _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
5057
+ _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
5058
+ sed -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
5059
+ else
5060
+ sed -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
5061
+ fi~
5062
+ $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
5063
+ linknames='
5064
+ # The linker will not automatically build a static lib if we build a DLL.
5065
+ # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
5066
+ _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5067
+ _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1,DATA/'\'' | $SED -e '\''/^[[AITW]][[ ]]/s/.*[[ ]]//'\'' | sort | uniq > $export_symbols'
5068
+ # Don't use ranlib
5069
+ _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
5070
+ _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
5071
+ lt_tool_outputfile="@TOOL_OUTPUT@"~
5072
+ case $lt_outputfile in
5073
+ *.exe|*.EXE) ;;
5074
+ *)
5075
+ lt_outputfile="$lt_outputfile.exe"
5076
+ lt_tool_outputfile="$lt_tool_outputfile.exe"
5077
+ ;;
5078
+ esac~
5079
+ if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
5080
+ $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
5081
+ $RM "$lt_outputfile.manifest";
5082
+ fi'
5083
+ ;;
5084
+ *)
5085
+ # Assume MSVC wrapper
5086
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5087
+ _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5088
+ # Tell ltmain to make .lib files, not .a files.
5089
+ libext=lib
5090
+ # Tell ltmain to make .dll files, not .so files.
5091
+ shrext_cmds=".dll"
5092
+ # FIXME: Setting linknames here is a bad hack.
5093
+ _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
5094
+ # The linker will automatically build a .lib file if we build a DLL.
5095
+ _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
5096
+ # FIXME: Should let the user specify the lib program.
5097
+ _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
5098
+ _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5099
+ ;;
5100
+ esac
4698
5101
  ;;
4699
5102
 
4700
5103
  darwin* | rhapsody*)
@@ -4732,7 +5135,7 @@ _LT_EOF
4732
5135
 
4733
5136
  # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
4734
5137
  freebsd* | dragonfly*)
4735
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
5138
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
4736
5139
  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
4737
5140
  _LT_TAGVAR(hardcode_direct, $1)=yes
4738
5141
  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
@@ -4740,7 +5143,7 @@ _LT_EOF
4740
5143
 
4741
5144
  hpux9*)
4742
5145
  if test "$GCC" = yes; then
4743
- _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
5146
+ _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
4744
5147
  else
4745
5148
  _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
4746
5149
  fi
@@ -4755,8 +5158,8 @@ _LT_EOF
4755
5158
  ;;
4756
5159
 
4757
5160
  hpux10*)
4758
- if test "$GCC" = yes -a "$with_gnu_ld" = no; then
4759
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
5161
+ if test "$GCC" = yes && test "$with_gnu_ld" = no; then
5162
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
4760
5163
  else
4761
5164
  _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
4762
5165
  fi
@@ -4774,16 +5177,16 @@ _LT_EOF
4774
5177
  ;;
4775
5178
 
4776
5179
  hpux11*)
4777
- if test "$GCC" = yes -a "$with_gnu_ld" = no; then
5180
+ if test "$GCC" = yes && test "$with_gnu_ld" = no; then
4778
5181
  case $host_cpu in
4779
5182
  hppa*64*)
4780
5183
  _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
4781
5184
  ;;
4782
5185
  ia64*)
4783
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
5186
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
4784
5187
  ;;
4785
5188
  *)
4786
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
5189
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
4787
5190
  ;;
4788
5191
  esac
4789
5192
  else
@@ -4795,7 +5198,14 @@ _LT_EOF
4795
5198
  _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
4796
5199
  ;;
4797
5200
  *)
4798
- _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
5201
+ m4_if($1, [], [
5202
+ # Older versions of the 11.00 compiler do not understand -b yet
5203
+ # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
5204
+ _LT_LINKER_OPTION([if $CC understands -b],
5205
+ _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b],
5206
+ [_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'],
5207
+ [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])],
5208
+ [_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'])
4799
5209
  ;;
4800
5210
  esac
4801
5211
  fi
@@ -4823,19 +5233,34 @@ _LT_EOF
4823
5233
 
4824
5234
  irix5* | irix6* | nonstopux*)
4825
5235
  if test "$GCC" = yes; then
4826
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
5236
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
4827
5237
  # Try to use the -exported_symbol ld option, if it does not
4828
5238
  # work, assume that -exports_file does not work either and
4829
5239
  # implicitly export all symbols.
4830
- save_LDFLAGS="$LDFLAGS"
4831
- LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
4832
- AC_LINK_IFELSE(int foo(void) {},
4833
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
4834
- )
4835
- LDFLAGS="$save_LDFLAGS"
5240
+ # This should be the same for all languages, so no per-tag cache variable.
5241
+ AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol],
5242
+ [lt_cv_irix_exported_symbol],
5243
+ [save_LDFLAGS="$LDFLAGS"
5244
+ LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
5245
+ AC_LINK_IFELSE(
5246
+ [AC_LANG_SOURCE(
5247
+ [AC_LANG_CASE([C], [[int foo (void) { return 0; }]],
5248
+ [C++], [[int foo (void) { return 0; }]],
5249
+ [Fortran 77], [[
5250
+ subroutine foo
5251
+ end]],
5252
+ [Fortran], [[
5253
+ subroutine foo
5254
+ end]])])],
5255
+ [lt_cv_irix_exported_symbol=yes],
5256
+ [lt_cv_irix_exported_symbol=no])
5257
+ LDFLAGS="$save_LDFLAGS"])
5258
+ if test "$lt_cv_irix_exported_symbol" = yes; then
5259
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
5260
+ fi
4836
5261
  else
4837
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
4838
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
5262
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
5263
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
4839
5264
  fi
4840
5265
  _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
4841
5266
  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
@@ -4897,17 +5322,17 @@ _LT_EOF
4897
5322
  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4898
5323
  _LT_TAGVAR(hardcode_minus_L, $1)=yes
4899
5324
  _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
4900
- _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$ECHO DATA >> $output_objdir/$libname.def~$ECHO " SINGLE NONSHARED" >> $output_objdir/$libname.def~$ECHO EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
5325
+ _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~echo DATA >> $output_objdir/$libname.def~echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
4901
5326
  _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
4902
5327
  ;;
4903
5328
 
4904
5329
  osf3*)
4905
5330
  if test "$GCC" = yes; then
4906
5331
  _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
4907
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
5332
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
4908
5333
  else
4909
5334
  _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
4910
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
5335
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
4911
5336
  fi
4912
5337
  _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
4913
5338
  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
@@ -4917,13 +5342,13 @@ _LT_EOF
4917
5342
  osf4* | osf5*) # as osf3* with the addition of -msym flag
4918
5343
  if test "$GCC" = yes; then
4919
5344
  _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
4920
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
5345
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $pic_flag $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
4921
5346
  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4922
5347
  else
4923
5348
  _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
4924
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
5349
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
4925
5350
  _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~
4926
- $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp'
5351
+ $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp'
4927
5352
 
4928
5353
  # Both c and cxx compiler support -rpath directly
4929
5354
  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
@@ -4936,9 +5361,9 @@ _LT_EOF
4936
5361
  _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
4937
5362
  if test "$GCC" = yes; then
4938
5363
  wlarc='${wl}'
4939
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
5364
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
4940
5365
  _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
4941
- $CC -shared ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
5366
+ $CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
4942
5367
  else
4943
5368
  case `$CC -V 2>&1` in
4944
5369
  *"Compilers 5.0"*)
@@ -5114,36 +5539,38 @@ x|xyes)
5114
5539
  # Test whether the compiler implicitly links with -lc since on some
5115
5540
  # systems, -lgcc has to come before -lc. If gcc already passes -lc
5116
5541
  # to ld, don't add -lc before -lgcc.
5117
- AC_MSG_CHECKING([whether -lc should be explicitly linked in])
5118
- $RM conftest*
5119
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
5120
-
5121
- if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
5122
- soname=conftest
5123
- lib=conftest
5124
- libobjs=conftest.$ac_objext
5125
- deplibs=
5126
- wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
5127
- pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
5128
- compiler_flags=-v
5129
- linker_flags=-v
5130
- verstring=
5131
- output_objdir=.
5132
- libname=conftest
5133
- lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
5134
- _LT_TAGVAR(allow_undefined_flag, $1)=
5135
- if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
5136
- then
5137
- _LT_TAGVAR(archive_cmds_need_lc, $1)=no
5138
- else
5139
- _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
5140
- fi
5141
- _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
5142
- else
5143
- cat conftest.err 1>&5
5144
- fi
5145
- $RM conftest*
5146
- AC_MSG_RESULT([$_LT_TAGVAR(archive_cmds_need_lc, $1)])
5542
+ AC_CACHE_CHECK([whether -lc should be explicitly linked in],
5543
+ [lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1),
5544
+ [$RM conftest*
5545
+ echo "$lt_simple_compile_test_code" > conftest.$ac_ext
5546
+
5547
+ if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
5548
+ soname=conftest
5549
+ lib=conftest
5550
+ libobjs=conftest.$ac_objext
5551
+ deplibs=
5552
+ wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
5553
+ pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
5554
+ compiler_flags=-v
5555
+ linker_flags=-v
5556
+ verstring=
5557
+ output_objdir=.
5558
+ libname=conftest
5559
+ lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
5560
+ _LT_TAGVAR(allow_undefined_flag, $1)=
5561
+ if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
5562
+ then
5563
+ lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no
5564
+ else
5565
+ lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
5566
+ fi
5567
+ _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
5568
+ else
5569
+ cat conftest.err 1>&5
5570
+ fi
5571
+ $RM conftest*
5572
+ ])
5573
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)
5147
5574
  ;;
5148
5575
  esac
5149
5576
  fi
@@ -5208,8 +5635,6 @@ _LT_TAGDECL([], [inherit_rpath], [0],
5208
5635
  to runtime path list])
5209
5636
  _LT_TAGDECL([], [link_all_deplibs], [0],
5210
5637
  [Whether libtool must link a program against all its dependency libraries])
5211
- _LT_TAGDECL([], [fix_srcfile_path], [1],
5212
- [Fix the shell variable $srcfile for the compiler])
5213
5638
  _LT_TAGDECL([], [always_export_symbols], [0],
5214
5639
  [Set to "yes" if exported symbols are required])
5215
5640
  _LT_TAGDECL([], [export_symbols_cmds], [2],
@@ -5220,6 +5645,8 @@ _LT_TAGDECL([], [include_expsyms], [1],
5220
5645
  [Symbols that must always be exported])
5221
5646
  _LT_TAGDECL([], [prelink_cmds], [2],
5222
5647
  [Commands necessary for linking programs (against libraries) with templates])
5648
+ _LT_TAGDECL([], [postlink_cmds], [2],
5649
+ [Commands necessary for finishing linking programs])
5223
5650
  _LT_TAGDECL([], [file_list_spec], [1],
5224
5651
  [Specify filename containing input files])
5225
5652
  dnl FIXME: Not yet implemented
@@ -5313,37 +5740,22 @@ CC="$lt_save_CC"
5313
5740
  ])# _LT_LANG_C_CONFIG
5314
5741
 
5315
5742
 
5316
- # _LT_PROG_CXX
5317
- # ------------
5318
- # Since AC_PROG_CXX is broken, in that it returns g++ if there is no c++
5319
- # compiler, we have our own version here.
5320
- m4_defun([_LT_PROG_CXX],
5321
- [
5322
- pushdef([AC_MSG_ERROR], [_lt_caught_CXX_error=yes])
5323
- AC_PROG_CXX
5324
- if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
5325
- ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
5326
- (test "X$CXX" != "Xg++"))) ; then
5327
- AC_PROG_CXXCPP
5328
- else
5329
- _lt_caught_CXX_error=yes
5330
- fi
5331
- popdef([AC_MSG_ERROR])
5332
- ])# _LT_PROG_CXX
5333
-
5334
- dnl aclocal-1.4 backwards compatibility:
5335
- dnl AC_DEFUN([_LT_PROG_CXX], [])
5336
-
5337
-
5338
5743
  # _LT_LANG_CXX_CONFIG([TAG])
5339
5744
  # --------------------------
5340
5745
  # Ensure that the configuration variables for a C++ compiler are suitably
5341
5746
  # defined. These variables are subsequently used by _LT_CONFIG to write
5342
5747
  # the compiler configuration to `libtool'.
5343
5748
  m4_defun([_LT_LANG_CXX_CONFIG],
5344
- [AC_REQUIRE([_LT_PROG_CXX])dnl
5345
- m4_require([_LT_FILEUTILS_DEFAULTS])dnl
5749
+ [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
5346
5750
  m4_require([_LT_DECL_EGREP])dnl
5751
+ m4_require([_LT_PATH_MANIFEST_TOOL])dnl
5752
+ if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
5753
+ ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
5754
+ (test "X$CXX" != "Xg++"))) ; then
5755
+ AC_PROG_CXXCPP
5756
+ else
5757
+ _lt_caught_CXX_error=yes
5758
+ fi
5347
5759
 
5348
5760
  AC_LANG_PUSH(C++)
5349
5761
  _LT_TAGVAR(archive_cmds_need_lc, $1)=no
@@ -5365,6 +5777,8 @@ _LT_TAGVAR(module_cmds, $1)=
5365
5777
  _LT_TAGVAR(module_expsym_cmds, $1)=
5366
5778
  _LT_TAGVAR(link_all_deplibs, $1)=unknown
5367
5779
  _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
5780
+ _LT_TAGVAR(reload_flag, $1)=$reload_flag
5781
+ _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
5368
5782
  _LT_TAGVAR(no_undefined_flag, $1)=
5369
5783
  _LT_TAGVAR(whole_archive_flag_spec, $1)=
5370
5784
  _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
@@ -5396,6 +5810,7 @@ if test "$_lt_caught_CXX_error" != yes; then
5396
5810
 
5397
5811
  # Allow CC to be a program name with arguments.
5398
5812
  lt_save_CC=$CC
5813
+ lt_save_CFLAGS=$CFLAGS
5399
5814
  lt_save_LD=$LD
5400
5815
  lt_save_GCC=$GCC
5401
5816
  GCC=$GXX
@@ -5413,6 +5828,7 @@ if test "$_lt_caught_CXX_error" != yes; then
5413
5828
  fi
5414
5829
  test -z "${LDCXX+set}" || LD=$LDCXX
5415
5830
  CC=${CXX-"c++"}
5831
+ CFLAGS=$CXXFLAGS
5416
5832
  compiler=$CC
5417
5833
  _LT_TAGVAR(compiler, $1)=$CC
5418
5834
  _LT_CC_BASENAME([$compiler])
@@ -5434,8 +5850,8 @@ if test "$_lt_caught_CXX_error" != yes; then
5434
5850
  # Check if GNU C++ uses GNU ld as the underlying linker, since the
5435
5851
  # archiving commands below assume that GNU ld is being used.
5436
5852
  if test "$with_gnu_ld" = yes; then
5437
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
5438
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
5853
+ _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
5854
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
5439
5855
 
5440
5856
  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5441
5857
  _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
@@ -5467,7 +5883,7 @@ if test "$_lt_caught_CXX_error" != yes; then
5467
5883
  # Commands to make compiler produce verbose output that lists
5468
5884
  # what "hidden" libraries, object files and flags are used when
5469
5885
  # linking a shared library.
5470
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
5886
+ output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
5471
5887
 
5472
5888
  else
5473
5889
  GXX=no
@@ -5576,10 +5992,10 @@ if test "$_lt_caught_CXX_error" != yes; then
5576
5992
  _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
5577
5993
  # Determine the default libpath from the value encoded in an empty
5578
5994
  # executable.
5579
- _LT_SYS_MODULE_PATH_AIX
5995
+ _LT_SYS_MODULE_PATH_AIX([$1])
5580
5996
  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
5581
5997
 
5582
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
5998
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
5583
5999
  else
5584
6000
  if test "$host_cpu" = ia64; then
5585
6001
  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
@@ -5588,14 +6004,19 @@ if test "$_lt_caught_CXX_error" != yes; then
5588
6004
  else
5589
6005
  # Determine the default libpath from the value encoded in an
5590
6006
  # empty executable.
5591
- _LT_SYS_MODULE_PATH_AIX
6007
+ _LT_SYS_MODULE_PATH_AIX([$1])
5592
6008
  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
5593
6009
  # Warning - without using the other run time loading flags,
5594
6010
  # -berok will link without error, but may produce a broken library.
5595
6011
  _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
5596
6012
  _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
5597
- # Exported symbols can be pulled into shared objects from archives
5598
- _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
6013
+ if test "$with_gnu_ld" = yes; then
6014
+ # We only use this code for GNU lds that support --whole-archive.
6015
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
6016
+ else
6017
+ # Exported symbols can be pulled into shared objects from archives
6018
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
6019
+ fi
5599
6020
  _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
5600
6021
  # This is similar to how AIX traditionally builds its shared
5601
6022
  # libraries.
@@ -5625,28 +6046,75 @@ if test "$_lt_caught_CXX_error" != yes; then
5625
6046
  ;;
5626
6047
 
5627
6048
  cygwin* | mingw* | pw32* | cegcc*)
5628
- # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
5629
- # as there is no search path for DLLs.
5630
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5631
- _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5632
- _LT_TAGVAR(always_export_symbols, $1)=no
5633
- _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5634
-
5635
- if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
5636
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
5637
- # If the export-symbols file already is a .def file (1st line
5638
- # is EXPORTS), use it as is; otherwise, prepend...
5639
- _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
5640
- cp $export_symbols $output_objdir/$soname.def;
5641
- else
5642
- echo EXPORTS > $output_objdir/$soname.def;
5643
- cat $export_symbols >> $output_objdir/$soname.def;
5644
- fi~
5645
- $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
5646
- else
5647
- _LT_TAGVAR(ld_shlibs, $1)=no
5648
- fi
5649
- ;;
6049
+ case $GXX,$cc_basename in
6050
+ ,cl* | no,cl*)
6051
+ # Native MSVC
6052
+ # hardcode_libdir_flag_spec is actually meaningless, as there is
6053
+ # no search path for DLLs.
6054
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
6055
+ _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6056
+ _LT_TAGVAR(always_export_symbols, $1)=yes
6057
+ _LT_TAGVAR(file_list_spec, $1)='@'
6058
+ # Tell ltmain to make .lib files, not .a files.
6059
+ libext=lib
6060
+ # Tell ltmain to make .dll files, not .so files.
6061
+ shrext_cmds=".dll"
6062
+ # FIXME: Setting linknames here is a bad hack.
6063
+ _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
6064
+ _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
6065
+ $SED -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
6066
+ else
6067
+ $SED -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
6068
+ fi~
6069
+ $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
6070
+ linknames='
6071
+ # The linker will not automatically build a static lib if we build a DLL.
6072
+ # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
6073
+ _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6074
+ # Don't use ranlib
6075
+ _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
6076
+ _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
6077
+ lt_tool_outputfile="@TOOL_OUTPUT@"~
6078
+ case $lt_outputfile in
6079
+ *.exe|*.EXE) ;;
6080
+ *)
6081
+ lt_outputfile="$lt_outputfile.exe"
6082
+ lt_tool_outputfile="$lt_tool_outputfile.exe"
6083
+ ;;
6084
+ esac~
6085
+ func_to_tool_file "$lt_outputfile"~
6086
+ if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
6087
+ $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
6088
+ $RM "$lt_outputfile.manifest";
6089
+ fi'
6090
+ ;;
6091
+ *)
6092
+ # g++
6093
+ # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
6094
+ # as there is no search path for DLLs.
6095
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6096
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols'
6097
+ _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6098
+ _LT_TAGVAR(always_export_symbols, $1)=no
6099
+ _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6100
+
6101
+ if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
6102
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
6103
+ # If the export-symbols file already is a .def file (1st line
6104
+ # is EXPORTS), use it as is; otherwise, prepend...
6105
+ _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
6106
+ cp $export_symbols $output_objdir/$soname.def;
6107
+ else
6108
+ echo EXPORTS > $output_objdir/$soname.def;
6109
+ cat $export_symbols >> $output_objdir/$soname.def;
6110
+ fi~
6111
+ $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
6112
+ else
6113
+ _LT_TAGVAR(ld_shlibs, $1)=no
6114
+ fi
6115
+ ;;
6116
+ esac
6117
+ ;;
5650
6118
  darwin* | rhapsody*)
5651
6119
  _LT_DARWIN_LINKER_FEATURES($1)
5652
6120
  ;;
@@ -5688,6 +6156,11 @@ if test "$_lt_caught_CXX_error" != yes; then
5688
6156
  gnu*)
5689
6157
  ;;
5690
6158
 
6159
+ haiku*)
6160
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6161
+ _LT_TAGVAR(link_all_deplibs, $1)=yes
6162
+ ;;
6163
+
5691
6164
  hpux9*)
5692
6165
  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
5693
6166
  _LT_TAGVAR(hardcode_libdir_separator, $1)=:
@@ -5712,11 +6185,11 @@ if test "$_lt_caught_CXX_error" != yes; then
5712
6185
  # explicitly linking system object files so we need to strip them
5713
6186
  # from the output so that they don't get included in the library
5714
6187
  # dependencies.
5715
- output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
6188
+ output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
5716
6189
  ;;
5717
6190
  *)
5718
6191
  if test "$GXX" = yes; then
5719
- _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
6192
+ _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
5720
6193
  else
5721
6194
  # FIXME: insert proper C++ library support
5722
6195
  _LT_TAGVAR(ld_shlibs, $1)=no
@@ -5777,7 +6250,7 @@ if test "$_lt_caught_CXX_error" != yes; then
5777
6250
  # explicitly linking system object files so we need to strip them
5778
6251
  # from the output so that they don't get included in the library
5779
6252
  # dependencies.
5780
- output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
6253
+ output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
5781
6254
  ;;
5782
6255
  *)
5783
6256
  if test "$GXX" = yes; then
@@ -5787,10 +6260,10 @@ if test "$_lt_caught_CXX_error" != yes; then
5787
6260
  _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
5788
6261
  ;;
5789
6262
  ia64*)
5790
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6263
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
5791
6264
  ;;
5792
6265
  *)
5793
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6266
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
5794
6267
  ;;
5795
6268
  esac
5796
6269
  fi
@@ -5820,7 +6293,7 @@ if test "$_lt_caught_CXX_error" != yes; then
5820
6293
  case $cc_basename in
5821
6294
  CC*)
5822
6295
  # SGI C++
5823
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
6296
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
5824
6297
 
5825
6298
  # Archives containing C++ object files must be created using
5826
6299
  # "CC -ar", where "CC" is the IRIX C++ compiler. This is
@@ -5831,9 +6304,9 @@ if test "$_lt_caught_CXX_error" != yes; then
5831
6304
  *)
5832
6305
  if test "$GXX" = yes; then
5833
6306
  if test "$with_gnu_ld" = no; then
5834
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
6307
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
5835
6308
  else
5836
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` -o $lib'
6309
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` -o $lib'
5837
6310
  fi
5838
6311
  fi
5839
6312
  _LT_TAGVAR(link_all_deplibs, $1)=yes
@@ -5844,7 +6317,7 @@ if test "$_lt_caught_CXX_error" != yes; then
5844
6317
  _LT_TAGVAR(inherit_rpath, $1)=yes
5845
6318
  ;;
5846
6319
 
5847
- linux* | k*bsd*-gnu)
6320
+ linux* | k*bsd*-gnu | kopensolaris*-gnu)
5848
6321
  case $cc_basename in
5849
6322
  KCC*)
5850
6323
  # Kuck and Associates, Inc. (KAI) C++ Compiler
@@ -5862,7 +6335,7 @@ if test "$_lt_caught_CXX_error" != yes; then
5862
6335
  # explicitly linking system object files so we need to strip them
5863
6336
  # from the output so that they don't get included in the library
5864
6337
  # dependencies.
5865
- output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
6338
+ output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
5866
6339
 
5867
6340
  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
5868
6341
  _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
@@ -5899,26 +6372,26 @@ if test "$_lt_caught_CXX_error" != yes; then
5899
6372
  pgCC* | pgcpp*)
5900
6373
  # Portland Group C++ compiler
5901
6374
  case `$CC -V` in
5902
- *pgCC\ [[1-5]]* | *pgcpp\ [[1-5]]*)
6375
+ *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*)
5903
6376
  _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
5904
6377
  rm -rf $tpldir~
5905
6378
  $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
5906
- compile_command="$compile_command `find $tpldir -name \*.o | $NL2SP`"'
6379
+ compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
5907
6380
  _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
5908
6381
  rm -rf $tpldir~
5909
6382
  $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
5910
- $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | $NL2SP`~
6383
+ $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
5911
6384
  $RANLIB $oldlib'
5912
6385
  _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
5913
6386
  rm -rf $tpldir~
5914
6387
  $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
5915
- $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
6388
+ $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
5916
6389
  _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
5917
6390
  rm -rf $tpldir~
5918
6391
  $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
5919
- $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
6392
+ $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
5920
6393
  ;;
5921
- *) # Version 6 will use weak symbols
6394
+ *) # Version 6 and above use weak symbols
5922
6395
  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
5923
6396
  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
5924
6397
  ;;
@@ -5926,7 +6399,7 @@ if test "$_lt_caught_CXX_error" != yes; then
5926
6399
 
5927
6400
  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
5928
6401
  _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
5929
- _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
6402
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
5930
6403
  ;;
5931
6404
  cxx*)
5932
6405
  # Compaq C++
@@ -5945,9 +6418,9 @@ if test "$_lt_caught_CXX_error" != yes; then
5945
6418
  # explicitly linking system object files so we need to strip them
5946
6419
  # from the output so that they don't get included in the library
5947
6420
  # dependencies.
5948
- output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
6421
+ output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "X$list" | $Xsed'
5949
6422
  ;;
5950
- xl*)
6423
+ xl* | mpixl* | bgxl*)
5951
6424
  # IBM XL 8.0 on PPC, with GNU ld
5952
6425
  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5953
6426
  _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
@@ -5967,13 +6440,13 @@ if test "$_lt_caught_CXX_error" != yes; then
5967
6440
  _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
5968
6441
  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols'
5969
6442
  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5970
- _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
6443
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
5971
6444
  _LT_TAGVAR(compiler_needs_object, $1)=yes
5972
6445
 
5973
6446
  # Not sure whether something based on
5974
6447
  # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
5975
6448
  # would be better.
5976
- output_verbose_link_cmd='echo'
6449
+ output_verbose_link_cmd='func_echo_all'
5977
6450
 
5978
6451
  # Archives containing C++ object files must be created using
5979
6452
  # "CC -xar", where "CC" is the Sun C++ compiler. This is
@@ -6042,7 +6515,7 @@ if test "$_lt_caught_CXX_error" != yes; then
6042
6515
  _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6043
6516
  _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
6044
6517
  fi
6045
- output_verbose_link_cmd=echo
6518
+ output_verbose_link_cmd=func_echo_all
6046
6519
  else
6047
6520
  _LT_TAGVAR(ld_shlibs, $1)=no
6048
6521
  fi
@@ -6077,15 +6550,15 @@ if test "$_lt_caught_CXX_error" != yes; then
6077
6550
  case $host in
6078
6551
  osf3*)
6079
6552
  _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
6080
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && $ECHO "X${wl}-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
6553
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && func_echo_all "${wl}-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
6081
6554
  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6082
6555
  ;;
6083
6556
  *)
6084
6557
  _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
6085
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
6558
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
6086
6559
  _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
6087
6560
  echo "-hidden">> $lib.exp~
6088
- $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~
6561
+ $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~
6089
6562
  $RM $lib.exp'
6090
6563
  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
6091
6564
  ;;
@@ -6101,17 +6574,17 @@ if test "$_lt_caught_CXX_error" != yes; then
6101
6574
  # explicitly linking system object files so we need to strip them
6102
6575
  # from the output so that they don't get included in the library
6103
6576
  # dependencies.
6104
- output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
6577
+ output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
6105
6578
  ;;
6106
6579
  *)
6107
6580
  if test "$GXX" = yes && test "$with_gnu_ld" = no; then
6108
6581
  _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
6109
6582
  case $host in
6110
6583
  osf3*)
6111
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
6584
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
6112
6585
  ;;
6113
6586
  *)
6114
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
6587
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
6115
6588
  ;;
6116
6589
  esac
6117
6590
 
@@ -6121,7 +6594,7 @@ if test "$_lt_caught_CXX_error" != yes; then
6121
6594
  # Commands to make compiler produce verbose output that lists
6122
6595
  # what "hidden" libraries, object files and flags are used when
6123
6596
  # linking a shared library.
6124
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
6597
+ output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
6125
6598
 
6126
6599
  else
6127
6600
  # FIXME: insert proper C++ library support
@@ -6157,7 +6630,7 @@ if test "$_lt_caught_CXX_error" != yes; then
6157
6630
 
6158
6631
  solaris*)
6159
6632
  case $cc_basename in
6160
- CC*)
6633
+ CC* | sunCC*)
6161
6634
  # Sun C++ 4.2, 5.x and Centerline C++
6162
6635
  _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
6163
6636
  _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
@@ -6178,7 +6651,7 @@ if test "$_lt_caught_CXX_error" != yes; then
6178
6651
  esac
6179
6652
  _LT_TAGVAR(link_all_deplibs, $1)=yes
6180
6653
 
6181
- output_verbose_link_cmd='echo'
6654
+ output_verbose_link_cmd='func_echo_all'
6182
6655
 
6183
6656
  # Archives containing C++ object files must be created using
6184
6657
  # "CC -xar", where "CC" is the Sun C++ compiler. This is
@@ -6198,14 +6671,14 @@ if test "$_lt_caught_CXX_error" != yes; then
6198
6671
  if test "$GXX" = yes && test "$with_gnu_ld" = no; then
6199
6672
  _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
6200
6673
  if $CC --version | $GREP -v '^2\.7' > /dev/null; then
6201
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
6674
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
6202
6675
  _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6203
- $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
6676
+ $CC -shared $pic_flag -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
6204
6677
 
6205
6678
  # Commands to make compiler produce verbose output that lists
6206
6679
  # what "hidden" libraries, object files and flags are used when
6207
6680
  # linking a shared library.
6208
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
6681
+ output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
6209
6682
  else
6210
6683
  # g++ 2.7 appears to require `-G' NOT `-shared' on this
6211
6684
  # platform.
@@ -6216,7 +6689,7 @@ if test "$_lt_caught_CXX_error" != yes; then
6216
6689
  # Commands to make compiler produce verbose output that lists
6217
6690
  # what "hidden" libraries, object files and flags are used when
6218
6691
  # linking a shared library.
6219
- output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
6692
+ output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
6220
6693
  fi
6221
6694
 
6222
6695
  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
@@ -6270,6 +6743,10 @@ if test "$_lt_caught_CXX_error" != yes; then
6270
6743
  CC*)
6271
6744
  _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6272
6745
  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6746
+ _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~
6747
+ '"$_LT_TAGVAR(old_archive_cmds, $1)"
6748
+ _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~
6749
+ '"$_LT_TAGVAR(reload_cmds, $1)"
6273
6750
  ;;
6274
6751
  *)
6275
6752
  _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
@@ -6325,6 +6802,7 @@ if test "$_lt_caught_CXX_error" != yes; then
6325
6802
  fi # test -n "$compiler"
6326
6803
 
6327
6804
  CC=$lt_save_CC
6805
+ CFLAGS=$lt_save_CFLAGS
6328
6806
  LDCXX=$LD
6329
6807
  LD=$lt_save_LD
6330
6808
  GCC=$lt_save_GCC
@@ -6339,6 +6817,29 @@ AC_LANG_POP
6339
6817
  ])# _LT_LANG_CXX_CONFIG
6340
6818
 
6341
6819
 
6820
+ # _LT_FUNC_STRIPNAME_CNF
6821
+ # ----------------------
6822
+ # func_stripname_cnf prefix suffix name
6823
+ # strip PREFIX and SUFFIX off of NAME.
6824
+ # PREFIX and SUFFIX must not contain globbing or regex special
6825
+ # characters, hashes, percent signs, but SUFFIX may contain a leading
6826
+ # dot (in which case that matches only a dot).
6827
+ #
6828
+ # This function is identical to the (non-XSI) version of func_stripname,
6829
+ # except this one can be used by m4 code that may be executed by configure,
6830
+ # rather than the libtool script.
6831
+ m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl
6832
+ AC_REQUIRE([_LT_DECL_SED])
6833
+ AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])
6834
+ func_stripname_cnf ()
6835
+ {
6836
+ case ${2} in
6837
+ .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;;
6838
+ *) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;;
6839
+ esac
6840
+ } # func_stripname_cnf
6841
+ ])# _LT_FUNC_STRIPNAME_CNF
6842
+
6342
6843
  # _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
6343
6844
  # ---------------------------------
6344
6845
  # Figure out "hidden" library dependencies from verbose
@@ -6347,6 +6848,7 @@ AC_LANG_POP
6347
6848
  # objects, libraries and library flags.
6348
6849
  m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
6349
6850
  [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
6851
+ AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl
6350
6852
  # Dependencies to place before and after the object being linked:
6351
6853
  _LT_TAGVAR(predep_objects, $1)=
6352
6854
  _LT_TAGVAR(postdep_objects, $1)=
@@ -6397,6 +6899,13 @@ public class foo {
6397
6899
  };
6398
6900
  _LT_EOF
6399
6901
  ])
6902
+
6903
+ _lt_libdeps_save_CFLAGS=$CFLAGS
6904
+ case "$CC $CFLAGS " in #(
6905
+ *\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;
6906
+ *\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;
6907
+ esac
6908
+
6400
6909
  dnl Parse the compiler output and extract the necessary
6401
6910
  dnl objects, libraries and library flags.
6402
6911
  if AC_TRY_EVAL(ac_compile); then
@@ -6408,7 +6917,7 @@ if AC_TRY_EVAL(ac_compile); then
6408
6917
  pre_test_object_deps_done=no
6409
6918
 
6410
6919
  for p in `eval "$output_verbose_link_cmd"`; do
6411
- case $p in
6920
+ case ${prev}${p} in
6412
6921
 
6413
6922
  -L* | -R* | -l*)
6414
6923
  # Some compilers place space between "-{L,R}" and the path.
@@ -6417,13 +6926,22 @@ if AC_TRY_EVAL(ac_compile); then
6417
6926
  test $p = "-R"; then
6418
6927
  prev=$p
6419
6928
  continue
6420
- else
6421
- prev=
6422
6929
  fi
6423
6930
 
6931
+ # Expand the sysroot to ease extracting the directories later.
6932
+ if test -z "$prev"; then
6933
+ case $p in
6934
+ -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;
6935
+ -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;
6936
+ -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;
6937
+ esac
6938
+ fi
6939
+ case $p in
6940
+ =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;
6941
+ esac
6424
6942
  if test "$pre_test_object_deps_done" = no; then
6425
- case $p in
6426
- -L* | -R*)
6943
+ case ${prev} in
6944
+ -L | -R)
6427
6945
  # Internal compiler library paths should come after those
6428
6946
  # provided the user. The postdeps already come after the
6429
6947
  # user supplied libs so there is no need to process them.
@@ -6443,8 +6961,10 @@ if AC_TRY_EVAL(ac_compile); then
6443
6961
  _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}"
6444
6962
  fi
6445
6963
  fi
6964
+ prev=
6446
6965
  ;;
6447
6966
 
6967
+ *.lto.$objext) ;; # Ignore GCC LTO objects
6448
6968
  *.$objext)
6449
6969
  # This assumes that the test object file only shows up
6450
6970
  # once in the compiler output.
@@ -6480,6 +7000,7 @@ else
6480
7000
  fi
6481
7001
 
6482
7002
  $RM -f confest.$objext
7003
+ CFLAGS=$_lt_libdeps_save_CFLAGS
6483
7004
 
6484
7005
  # PORTME: override above test on systems where it is broken
6485
7006
  m4_if([$1], [CXX],
@@ -6516,7 +7037,7 @@ linux*)
6516
7037
 
6517
7038
  solaris*)
6518
7039
  case $cc_basename in
6519
- CC*)
7040
+ CC* | sunCC*)
6520
7041
  # The more standards-conforming stlport4 library is
6521
7042
  # incompatible with the Cstd library. Avoid specifying
6522
7043
  # it if it's in CXXFLAGS. Ignore libCrun as
@@ -6560,32 +7081,16 @@ _LT_TAGDECL([], [compiler_lib_search_path], [1],
6560
7081
  ])# _LT_SYS_HIDDEN_LIBDEPS
6561
7082
 
6562
7083
 
6563
- # _LT_PROG_F77
6564
- # ------------
6565
- # Since AC_PROG_F77 is broken, in that it returns the empty string
6566
- # if there is no fortran compiler, we have our own version here.
6567
- m4_defun([_LT_PROG_F77],
6568
- [
6569
- pushdef([AC_MSG_ERROR], [_lt_disable_F77=yes])
6570
- AC_PROG_F77
6571
- if test -z "$F77" || test "X$F77" = "Xno"; then
6572
- _lt_disable_F77=yes
6573
- fi
6574
- popdef([AC_MSG_ERROR])
6575
- ])# _LT_PROG_F77
6576
-
6577
- dnl aclocal-1.4 backwards compatibility:
6578
- dnl AC_DEFUN([_LT_PROG_F77], [])
6579
-
6580
-
6581
7084
  # _LT_LANG_F77_CONFIG([TAG])
6582
7085
  # --------------------------
6583
7086
  # Ensure that the configuration variables for a Fortran 77 compiler are
6584
7087
  # suitably defined. These variables are subsequently used by _LT_CONFIG
6585
7088
  # to write the compiler configuration to `libtool'.
6586
7089
  m4_defun([_LT_LANG_F77_CONFIG],
6587
- [AC_REQUIRE([_LT_PROG_F77])dnl
6588
- AC_LANG_PUSH(Fortran 77)
7090
+ [AC_LANG_PUSH(Fortran 77)
7091
+ if test -z "$F77" || test "X$F77" = "Xno"; then
7092
+ _lt_disable_F77=yes
7093
+ fi
6589
7094
 
6590
7095
  _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6591
7096
  _LT_TAGVAR(allow_undefined_flag, $1)=
@@ -6604,6 +7109,8 @@ _LT_TAGVAR(module_cmds, $1)=
6604
7109
  _LT_TAGVAR(module_expsym_cmds, $1)=
6605
7110
  _LT_TAGVAR(link_all_deplibs, $1)=unknown
6606
7111
  _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7112
+ _LT_TAGVAR(reload_flag, $1)=$reload_flag
7113
+ _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
6607
7114
  _LT_TAGVAR(no_undefined_flag, $1)=
6608
7115
  _LT_TAGVAR(whole_archive_flag_spec, $1)=
6609
7116
  _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
@@ -6643,7 +7150,9 @@ if test "$_lt_disable_F77" != yes; then
6643
7150
  # Allow CC to be a program name with arguments.
6644
7151
  lt_save_CC="$CC"
6645
7152
  lt_save_GCC=$GCC
7153
+ lt_save_CFLAGS=$CFLAGS
6646
7154
  CC=${F77-"f77"}
7155
+ CFLAGS=$FFLAGS
6647
7156
  compiler=$CC
6648
7157
  _LT_TAGVAR(compiler, $1)=$CC
6649
7158
  _LT_CC_BASENAME([$compiler])
@@ -6697,38 +7206,24 @@ if test "$_lt_disable_F77" != yes; then
6697
7206
 
6698
7207
  GCC=$lt_save_GCC
6699
7208
  CC="$lt_save_CC"
7209
+ CFLAGS="$lt_save_CFLAGS"
6700
7210
  fi # test "$_lt_disable_F77" != yes
6701
7211
 
6702
7212
  AC_LANG_POP
6703
7213
  ])# _LT_LANG_F77_CONFIG
6704
7214
 
6705
7215
 
6706
- # _LT_PROG_FC
6707
- # -----------
6708
- # Since AC_PROG_FC is broken, in that it returns the empty string
6709
- # if there is no fortran compiler, we have our own version here.
6710
- m4_defun([_LT_PROG_FC],
6711
- [
6712
- pushdef([AC_MSG_ERROR], [_lt_disable_FC=yes])
6713
- AC_PROG_FC
6714
- if test -z "$FC" || test "X$FC" = "Xno"; then
6715
- _lt_disable_FC=yes
6716
- fi
6717
- popdef([AC_MSG_ERROR])
6718
- ])# _LT_PROG_FC
6719
-
6720
- dnl aclocal-1.4 backwards compatibility:
6721
- dnl AC_DEFUN([_LT_PROG_FC], [])
6722
-
6723
-
6724
7216
  # _LT_LANG_FC_CONFIG([TAG])
6725
7217
  # -------------------------
6726
7218
  # Ensure that the configuration variables for a Fortran compiler are
6727
7219
  # suitably defined. These variables are subsequently used by _LT_CONFIG
6728
7220
  # to write the compiler configuration to `libtool'.
6729
7221
  m4_defun([_LT_LANG_FC_CONFIG],
6730
- [AC_REQUIRE([_LT_PROG_FC])dnl
6731
- AC_LANG_PUSH(Fortran)
7222
+ [AC_LANG_PUSH(Fortran)
7223
+
7224
+ if test -z "$FC" || test "X$FC" = "Xno"; then
7225
+ _lt_disable_FC=yes
7226
+ fi
6732
7227
 
6733
7228
  _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6734
7229
  _LT_TAGVAR(allow_undefined_flag, $1)=
@@ -6747,6 +7242,8 @@ _LT_TAGVAR(module_cmds, $1)=
6747
7242
  _LT_TAGVAR(module_expsym_cmds, $1)=
6748
7243
  _LT_TAGVAR(link_all_deplibs, $1)=unknown
6749
7244
  _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7245
+ _LT_TAGVAR(reload_flag, $1)=$reload_flag
7246
+ _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
6750
7247
  _LT_TAGVAR(no_undefined_flag, $1)=
6751
7248
  _LT_TAGVAR(whole_archive_flag_spec, $1)=
6752
7249
  _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
@@ -6786,7 +7283,9 @@ if test "$_lt_disable_FC" != yes; then
6786
7283
  # Allow CC to be a program name with arguments.
6787
7284
  lt_save_CC="$CC"
6788
7285
  lt_save_GCC=$GCC
7286
+ lt_save_CFLAGS=$CFLAGS
6789
7287
  CC=${FC-"f95"}
7288
+ CFLAGS=$FCFLAGS
6790
7289
  compiler=$CC
6791
7290
  GCC=$ac_cv_fc_compiler_gnu
6792
7291
 
@@ -6842,7 +7341,8 @@ if test "$_lt_disable_FC" != yes; then
6842
7341
  fi # test -n "$compiler"
6843
7342
 
6844
7343
  GCC=$lt_save_GCC
6845
- CC="$lt_save_CC"
7344
+ CC=$lt_save_CC
7345
+ CFLAGS=$lt_save_CFLAGS
6846
7346
  fi # test "$_lt_disable_FC" != yes
6847
7347
 
6848
7348
  AC_LANG_POP
@@ -6879,10 +7379,12 @@ _LT_COMPILER_BOILERPLATE
6879
7379
  _LT_LINKER_BOILERPLATE
6880
7380
 
6881
7381
  # Allow CC to be a program name with arguments.
6882
- lt_save_CC="$CC"
7382
+ lt_save_CC=$CC
7383
+ lt_save_CFLAGS=$CFLAGS
6883
7384
  lt_save_GCC=$GCC
6884
7385
  GCC=yes
6885
7386
  CC=${GCJ-"gcj"}
7387
+ CFLAGS=$GCJFLAGS
6886
7388
  compiler=$CC
6887
7389
  _LT_TAGVAR(compiler, $1)=$CC
6888
7390
  _LT_TAGVAR(LD, $1)="$LD"
@@ -6892,6 +7394,8 @@ _LT_CC_BASENAME([$compiler])
6892
7394
  _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6893
7395
 
6894
7396
  _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7397
+ _LT_TAGVAR(reload_flag, $1)=$reload_flag
7398
+ _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
6895
7399
 
6896
7400
  ## CAVEAT EMPTOR:
6897
7401
  ## There is no encapsulation within the following macros, do not change
@@ -6911,7 +7415,8 @@ fi
6911
7415
  AC_LANG_RESTORE
6912
7416
 
6913
7417
  GCC=$lt_save_GCC
6914
- CC="$lt_save_CC"
7418
+ CC=$lt_save_CC
7419
+ CFLAGS=$lt_save_CFLAGS
6915
7420
  ])# _LT_LANG_GCJ_CONFIG
6916
7421
 
6917
7422
 
@@ -6946,9 +7451,11 @@ _LT_LINKER_BOILERPLATE
6946
7451
 
6947
7452
  # Allow CC to be a program name with arguments.
6948
7453
  lt_save_CC="$CC"
7454
+ lt_save_CFLAGS=$CFLAGS
6949
7455
  lt_save_GCC=$GCC
6950
7456
  GCC=
6951
7457
  CC=${RC-"windres"}
7458
+ CFLAGS=
6952
7459
  compiler=$CC
6953
7460
  _LT_TAGVAR(compiler, $1)=$CC
6954
7461
  _LT_CC_BASENAME([$compiler])
@@ -6961,7 +7468,8 @@ fi
6961
7468
 
6962
7469
  GCC=$lt_save_GCC
6963
7470
  AC_LANG_RESTORE
6964
- CC="$lt_save_CC"
7471
+ CC=$lt_save_CC
7472
+ CFLAGS=$lt_save_CFLAGS
6965
7473
  ])# _LT_LANG_RC_CONFIG
6966
7474
 
6967
7475
 
@@ -7020,6 +7528,15 @@ _LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
7020
7528
  AC_SUBST([OBJDUMP])
7021
7529
  ])
7022
7530
 
7531
+ # _LT_DECL_DLLTOOL
7532
+ # ----------------
7533
+ # Ensure DLLTOOL variable is set.
7534
+ m4_defun([_LT_DECL_DLLTOOL],
7535
+ [AC_CHECK_TOOL(DLLTOOL, dlltool, false)
7536
+ test -z "$DLLTOOL" && DLLTOOL=dlltool
7537
+ _LT_DECL([], [DLLTOOL], [1], [DLL creation program])
7538
+ AC_SUBST([DLLTOOL])
7539
+ ])
7023
7540
 
7024
7541
  # _LT_DECL_SED
7025
7542
  # ------------
@@ -7113,8 +7630,8 @@ m4_defun([_LT_CHECK_SHELL_FEATURES],
7113
7630
  # Try some XSI features
7114
7631
  xsi_shell=no
7115
7632
  ( _lt_dummy="a/b/c"
7116
- test "${_lt_dummy##*/},${_lt_dummy%/*},"${_lt_dummy%"$_lt_dummy"}, \
7117
- = c,a/b,, \
7633
+ test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \
7634
+ = c,a/b,b/c, \
7118
7635
  && eval 'test $(( 1 + 1 )) -eq 2 \
7119
7636
  && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
7120
7637
  && xsi_shell=yes
@@ -7153,208 +7670,162 @@ _LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
7153
7670
  ])# _LT_CHECK_SHELL_FEATURES
7154
7671
 
7155
7672
 
7156
- # _LT_PROG_XSI_SHELLFNS
7157
- # ---------------------
7158
- # Bourne and XSI compatible variants of some useful shell functions.
7159
- m4_defun([_LT_PROG_XSI_SHELLFNS],
7160
- [case $xsi_shell in
7161
- yes)
7162
- cat << \_LT_EOF >> "$cfgfile"
7163
-
7164
- # func_dirname file append nondir_replacement
7165
- # Compute the dirname of FILE. If nonempty, add APPEND to the result,
7166
- # otherwise set result to NONDIR_REPLACEMENT.
7167
- func_dirname ()
7168
- {
7169
- case ${1} in
7170
- */*) func_dirname_result="${1%/*}${2}" ;;
7171
- * ) func_dirname_result="${3}" ;;
7172
- esac
7173
- }
7174
-
7175
- # func_basename file
7176
- func_basename ()
7177
- {
7178
- func_basename_result="${1##*/}"
7179
- }
7180
-
7181
- # func_dirname_and_basename file append nondir_replacement
7182
- # perform func_basename and func_dirname in a single function
7183
- # call:
7184
- # dirname: Compute the dirname of FILE. If nonempty,
7185
- # add APPEND to the result, otherwise set result
7186
- # to NONDIR_REPLACEMENT.
7187
- # value returned in "$func_dirname_result"
7188
- # basename: Compute filename of FILE.
7189
- # value retuned in "$func_basename_result"
7190
- # Implementation must be kept synchronized with func_dirname
7191
- # and func_basename. For efficiency, we do not delegate to
7192
- # those functions but instead duplicate the functionality here.
7193
- func_dirname_and_basename ()
7194
- {
7195
- case ${1} in
7196
- */*) func_dirname_result="${1%/*}${2}" ;;
7197
- * ) func_dirname_result="${3}" ;;
7198
- esac
7199
- func_basename_result="${1##*/}"
7200
- }
7201
-
7202
- # func_stripname prefix suffix name
7203
- # strip PREFIX and SUFFIX off of NAME.
7204
- # PREFIX and SUFFIX must not contain globbing or regex special
7205
- # characters, hashes, percent signs, but SUFFIX may contain a leading
7206
- # dot (in which case that matches only a dot).
7207
- func_stripname ()
7208
- {
7209
- # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
7210
- # positional parameters, so assign one to ordinary parameter first.
7211
- func_stripname_result=${3}
7212
- func_stripname_result=${func_stripname_result#"${1}"}
7213
- func_stripname_result=${func_stripname_result%"${2}"}
7214
- }
7215
-
7216
- # func_opt_split
7217
- func_opt_split ()
7218
- {
7219
- func_opt_split_opt=${1%%=*}
7220
- func_opt_split_arg=${1#*=}
7221
- }
7222
-
7223
- # func_lo2o object
7224
- func_lo2o ()
7225
- {
7226
- case ${1} in
7227
- *.lo) func_lo2o_result=${1%.lo}.${objext} ;;
7228
- *) func_lo2o_result=${1} ;;
7229
- esac
7230
- }
7231
-
7232
- # func_xform libobj-or-source
7233
- func_xform ()
7234
- {
7235
- func_xform_result=${1%.*}.lo
7236
- }
7237
-
7238
- # func_arith arithmetic-term...
7239
- func_arith ()
7240
- {
7241
- func_arith_result=$(( $[*] ))
7242
- }
7673
+ # _LT_PROG_FUNCTION_REPLACE (FUNCNAME, REPLACEMENT-BODY)
7674
+ # ------------------------------------------------------
7675
+ # In `$cfgfile', look for function FUNCNAME delimited by `^FUNCNAME ()$' and
7676
+ # '^} FUNCNAME ', and replace its body with REPLACEMENT-BODY.
7677
+ m4_defun([_LT_PROG_FUNCTION_REPLACE],
7678
+ [dnl {
7679
+ sed -e '/^$1 ()$/,/^} # $1 /c\
7680
+ $1 ()\
7681
+ {\
7682
+ m4_bpatsubsts([$2], [$], [\\], [^\([ ]\)], [\\\1])
7683
+ } # Extended-shell $1 implementation' "$cfgfile" > $cfgfile.tmp \
7684
+ && mv -f "$cfgfile.tmp" "$cfgfile" \
7685
+ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
7686
+ test 0 -eq $? || _lt_function_replace_fail=:
7687
+ ])
7243
7688
 
7244
- # func_len string
7245
- # STRING may not start with a hyphen.
7246
- func_len ()
7247
- {
7248
- func_len_result=${#1}
7249
- }
7250
7689
 
7251
- _LT_EOF
7252
- ;;
7253
- *) # Bourne compatible functions.
7254
- cat << \_LT_EOF >> "$cfgfile"
7690
+ # _LT_PROG_REPLACE_SHELLFNS
7691
+ # -------------------------
7692
+ # Replace existing portable implementations of several shell functions with
7693
+ # equivalent extended shell implementations where those features are available..
7694
+ m4_defun([_LT_PROG_REPLACE_SHELLFNS],
7695
+ [if test x"$xsi_shell" = xyes; then
7696
+ _LT_PROG_FUNCTION_REPLACE([func_dirname], [dnl
7697
+ case ${1} in
7698
+ */*) func_dirname_result="${1%/*}${2}" ;;
7699
+ * ) func_dirname_result="${3}" ;;
7700
+ esac])
7701
+
7702
+ _LT_PROG_FUNCTION_REPLACE([func_basename], [dnl
7703
+ func_basename_result="${1##*/}"])
7704
+
7705
+ _LT_PROG_FUNCTION_REPLACE([func_dirname_and_basename], [dnl
7706
+ case ${1} in
7707
+ */*) func_dirname_result="${1%/*}${2}" ;;
7708
+ * ) func_dirname_result="${3}" ;;
7709
+ esac
7710
+ func_basename_result="${1##*/}"])
7255
7711
 
7256
- # func_dirname file append nondir_replacement
7257
- # Compute the dirname of FILE. If nonempty, add APPEND to the result,
7258
- # otherwise set result to NONDIR_REPLACEMENT.
7259
- func_dirname ()
7260
- {
7261
- # Extract subdirectory from the argument.
7262
- func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"`
7263
- if test "X$func_dirname_result" = "X${1}"; then
7264
- func_dirname_result="${3}"
7265
- else
7266
- func_dirname_result="$func_dirname_result${2}"
7267
- fi
7268
- }
7712
+ _LT_PROG_FUNCTION_REPLACE([func_stripname], [dnl
7713
+ # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
7714
+ # positional parameters, so assign one to ordinary parameter first.
7715
+ func_stripname_result=${3}
7716
+ func_stripname_result=${func_stripname_result#"${1}"}
7717
+ func_stripname_result=${func_stripname_result%"${2}"}])
7269
7718
 
7270
- # func_basename file
7271
- func_basename ()
7272
- {
7273
- func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"`
7274
- }
7719
+ _LT_PROG_FUNCTION_REPLACE([func_split_long_opt], [dnl
7720
+ func_split_long_opt_name=${1%%=*}
7721
+ func_split_long_opt_arg=${1#*=}])
7275
7722
 
7276
- dnl func_dirname_and_basename
7277
- dnl A portable version of this function is already defined in general.m4sh
7278
- dnl so there is no need for it here.
7723
+ _LT_PROG_FUNCTION_REPLACE([func_split_short_opt], [dnl
7724
+ func_split_short_opt_arg=${1#??}
7725
+ func_split_short_opt_name=${1%"$func_split_short_opt_arg"}])
7279
7726
 
7280
- # func_stripname prefix suffix name
7281
- # strip PREFIX and SUFFIX off of NAME.
7282
- # PREFIX and SUFFIX must not contain globbing or regex special
7283
- # characters, hashes, percent signs, but SUFFIX may contain a leading
7284
- # dot (in which case that matches only a dot).
7285
- # func_strip_suffix prefix name
7286
- func_stripname ()
7287
- {
7288
- case ${2} in
7289
- .*) func_stripname_result=`$ECHO "X${3}" \
7290
- | $Xsed -e "s%^${1}%%" -e "s%\\\\${2}\$%%"`;;
7291
- *) func_stripname_result=`$ECHO "X${3}" \
7292
- | $Xsed -e "s%^${1}%%" -e "s%${2}\$%%"`;;
7293
- esac
7294
- }
7727
+ _LT_PROG_FUNCTION_REPLACE([func_lo2o], [dnl
7728
+ case ${1} in
7729
+ *.lo) func_lo2o_result=${1%.lo}.${objext} ;;
7730
+ *) func_lo2o_result=${1} ;;
7731
+ esac])
7295
7732
 
7296
- # sed scripts:
7297
- my_sed_long_opt='1s/^\(-[[^=]]*\)=.*/\1/;q'
7298
- my_sed_long_arg='1s/^-[[^=]]*=//'
7733
+ _LT_PROG_FUNCTION_REPLACE([func_xform], [ func_xform_result=${1%.*}.lo])
7299
7734
 
7300
- # func_opt_split
7301
- func_opt_split ()
7302
- {
7303
- func_opt_split_opt=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_opt"`
7304
- func_opt_split_arg=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_arg"`
7305
- }
7306
-
7307
- # func_lo2o object
7308
- func_lo2o ()
7309
- {
7310
- func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"`
7311
- }
7735
+ _LT_PROG_FUNCTION_REPLACE([func_arith], [ func_arith_result=$(( $[*] ))])
7312
7736
 
7313
- # func_xform libobj-or-source
7314
- func_xform ()
7315
- {
7316
- func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/\.[[^.]]*$/.lo/'`
7317
- }
7737
+ _LT_PROG_FUNCTION_REPLACE([func_len], [ func_len_result=${#1}])
7738
+ fi
7318
7739
 
7319
- # func_arith arithmetic-term...
7320
- func_arith ()
7321
- {
7322
- func_arith_result=`expr "$[@]"`
7323
- }
7740
+ if test x"$lt_shell_append" = xyes; then
7741
+ _LT_PROG_FUNCTION_REPLACE([func_append], [ eval "${1}+=\\${2}"])
7324
7742
 
7325
- # func_len string
7326
- # STRING may not start with a hyphen.
7327
- func_len ()
7328
- {
7329
- func_len_result=`expr "$[1]" : ".*" 2>/dev/null || echo $max_cmd_len`
7330
- }
7743
+ _LT_PROG_FUNCTION_REPLACE([func_append_quoted], [dnl
7744
+ func_quote_for_eval "${2}"
7745
+ dnl m4 expansion turns \\\\ into \\, and then the shell eval turns that into \
7746
+ eval "${1}+=\\\\ \\$func_quote_for_eval_result"])
7331
7747
 
7332
- _LT_EOF
7333
- esac
7748
+ # Save a `func_append' function call where possible by direct use of '+='
7749
+ sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \
7750
+ && mv -f "$cfgfile.tmp" "$cfgfile" \
7751
+ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
7752
+ test 0 -eq $? || _lt_function_replace_fail=:
7753
+ else
7754
+ # Save a `func_append' function call even when '+=' is not available
7755
+ sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \
7756
+ && mv -f "$cfgfile.tmp" "$cfgfile" \
7757
+ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
7758
+ test 0 -eq $? || _lt_function_replace_fail=:
7759
+ fi
7334
7760
 
7335
- case $lt_shell_append in
7336
- yes)
7337
- cat << \_LT_EOF >> "$cfgfile"
7761
+ if test x"$_lt_function_replace_fail" = x":"; then
7762
+ AC_MSG_WARN([Unable to substitute extended shell functions in $ofile])
7763
+ fi
7764
+ ])
7338
7765
 
7339
- # func_append var value
7340
- # Append VALUE to the end of shell variable VAR.
7341
- func_append ()
7342
- {
7343
- eval "$[1]+=\$[2]"
7344
- }
7345
- _LT_EOF
7766
+ # _LT_PATH_CONVERSION_FUNCTIONS
7767
+ # -----------------------------
7768
+ # Determine which file name conversion functions should be used by
7769
+ # func_to_host_file (and, implicitly, by func_to_host_path). These are needed
7770
+ # for certain cross-compile configurations and native mingw.
7771
+ m4_defun([_LT_PATH_CONVERSION_FUNCTIONS],
7772
+ [AC_REQUIRE([AC_CANONICAL_HOST])dnl
7773
+ AC_REQUIRE([AC_CANONICAL_BUILD])dnl
7774
+ AC_MSG_CHECKING([how to convert $build file names to $host format])
7775
+ AC_CACHE_VAL(lt_cv_to_host_file_cmd,
7776
+ [case $host in
7777
+ *-*-mingw* )
7778
+ case $build in
7779
+ *-*-mingw* ) # actually msys
7780
+ lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32
7781
+ ;;
7782
+ *-*-cygwin* )
7783
+ lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
7784
+ ;;
7785
+ * ) # otherwise, assume *nix
7786
+ lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32
7787
+ ;;
7788
+ esac
7346
7789
  ;;
7347
- *)
7348
- cat << \_LT_EOF >> "$cfgfile"
7349
-
7350
- # func_append var value
7351
- # Append VALUE to the end of shell variable VAR.
7352
- func_append ()
7353
- {
7354
- eval "$[1]=\$$[1]\$[2]"
7355
- }
7356
-
7357
- _LT_EOF
7790
+ *-*-cygwin* )
7791
+ case $build in
7792
+ *-*-mingw* ) # actually msys
7793
+ lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin
7794
+ ;;
7795
+ *-*-cygwin* )
7796
+ lt_cv_to_host_file_cmd=func_convert_file_noop
7797
+ ;;
7798
+ * ) # otherwise, assume *nix
7799
+ lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin
7800
+ ;;
7801
+ esac
7358
7802
  ;;
7359
- esac
7803
+ * ) # unhandled hosts (and "normal" native builds)
7804
+ lt_cv_to_host_file_cmd=func_convert_file_noop
7805
+ ;;
7806
+ esac
7807
+ ])
7808
+ to_host_file_cmd=$lt_cv_to_host_file_cmd
7809
+ AC_MSG_RESULT([$lt_cv_to_host_file_cmd])
7810
+ _LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd],
7811
+ [0], [convert $build file names to $host format])dnl
7812
+
7813
+ AC_MSG_CHECKING([how to convert $build file names to toolchain format])
7814
+ AC_CACHE_VAL(lt_cv_to_tool_file_cmd,
7815
+ [#assume ordinary cross tools, or native build.
7816
+ lt_cv_to_tool_file_cmd=func_convert_file_noop
7817
+ case $host in
7818
+ *-*-mingw* )
7819
+ case $build in
7820
+ *-*-mingw* ) # actually msys
7821
+ lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32
7822
+ ;;
7823
+ esac
7824
+ ;;
7825
+ esac
7360
7826
  ])
7827
+ to_tool_file_cmd=$lt_cv_to_tool_file_cmd
7828
+ AC_MSG_RESULT([$lt_cv_to_tool_file_cmd])
7829
+ _LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd],
7830
+ [0], [convert $build files to toolchain format])dnl
7831
+ ])# _LT_PATH_CONVERSION_FUNCTIONS