Package list libatasmart / bce57cb
Imported Upstream version 0.18 Michael Biebl 9 years ago
25 changed file(s) with 15601 addition(s) and 16372 deletion(s). Raw diff Collapse all Expand all
1818 dist_doc_DATA = README
1919
2020 EXTRA_DIST = \
21 bootstrap.sh \
21 autogen.sh \
2222 LGPL \
2323 README \
2424 atasmart.c \
4343 blob-examples/WDC_WD5000AAKS--00TMA0-12.01C01 \
4444 vala/atasmart.vapi
4545
46 SUBDIRS =
46 # build the strpool tool first
47 SUBDIRS = strpool .
4748
4849 CLEANFILES = atasmart.strpool.c
4950
6263 sbin_PROGRAMS = \
6364 skdump \
6465 sktest
65
66 noinst_PROGRAMS = \
67 strpool
6866
6967 lib_LTLIBRARIES = \
7068 libatasmart.la
8987 libatasmart_la_CFLAGS = \
9088 $(LIBUDEV_CFLAGS)
9189
92 strpool_SOURCES = \
93 strpool.c
94
9590 BUILT_SOURCES = \
9691 atasmart.strpool.c
9792
98 atasmart.strpool.c: atasmart.c strpool
99 $(top_builddir)/strpool $< $@
93 strpool/strpool:
94 $(MAKE) -C strpool strpool
95
96 atasmart.strpool.c: atasmart.c strpool/strpool
97 $(top_builddir)/strpool/strpool $< $@
10098
10199 ACLOCAL_AMFLAGS = -I m4
5555 build_triplet = @build@
5656 host_triplet = @host@
5757 sbin_PROGRAMS = skdump$(EXEEXT) sktest$(EXEEXT)
58 noinst_PROGRAMS = strpool$(EXEEXT)
5958 subdir = .
6059 DIST_COMMON = README $(am__configure_deps) $(dist_doc_DATA) \
6160 $(include_HEADERS) $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
6362 $(top_srcdir)/configure compile config.guess config.rpath \
6463 config.sub depcomp install-sh ltmain.sh missing
6564 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
66 am__aclocal_m4_deps = $(top_srcdir)/configure.ac
65 am__aclocal_m4_deps = $(top_srcdir)/m4/attributes.m4 \
66 $(top_srcdir)/m4/ax_cc_for_build.m4 \
67 $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
68 $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
69 $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac
6770 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
6871 $(ACLOCAL_M4)
6972 am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
108111 $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
109112 $(libatasmart_la_CFLAGS) $(CFLAGS) $(libatasmart_la_LDFLAGS) \
110113 $(LDFLAGS) -o $@
111 PROGRAMS = $(noinst_PROGRAMS) $(sbin_PROGRAMS)
114 PROGRAMS = $(sbin_PROGRAMS)
112115 am_skdump_OBJECTS = skdump.$(OBJEXT)
113116 skdump_OBJECTS = $(am_skdump_OBJECTS)
114117 skdump_DEPENDENCIES = libatasmart.la
115118 sktest_SOURCES = sktest.c
116119 sktest_OBJECTS = sktest.$(OBJEXT)
117120 sktest_DEPENDENCIES = libatasmart.la
118 am_strpool_OBJECTS = strpool.$(OBJEXT)
119 strpool_OBJECTS = $(am_strpool_OBJECTS)
120 strpool_LDADD = $(LDADD)
121121 DEFAULT_INCLUDES = -I.@am__isrc@
122122 depcomp = $(SHELL) $(top_srcdir)/depcomp
123123 am__depfiles_maybe = depfiles
144144 AM_V_GEN = $(am__v_GEN_$(V))
145145 am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY))
146146 am__v_GEN_0 = @echo " GEN " $@;
147 SOURCES = $(libatasmart_la_SOURCES) $(skdump_SOURCES) sktest.c \
148 $(strpool_SOURCES)
149 DIST_SOURCES = $(libatasmart_la_SOURCES) $(skdump_SOURCES) sktest.c \
150 $(strpool_SOURCES)
147 SOURCES = $(libatasmart_la_SOURCES) $(skdump_SOURCES) sktest.c
148 DIST_SOURCES = $(libatasmart_la_SOURCES) $(skdump_SOURCES) sktest.c
151149 RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
152150 html-recursive info-recursive install-data-recursive \
153151 install-dvi-recursive install-exec-recursive \
209207 AUTOHEADER = @AUTOHEADER@
210208 AUTOMAKE = @AUTOMAKE@
211209 AWK = @AWK@
210 BUILD_CFLAGS = @BUILD_CFLAGS@
211 BUILD_LDFLAGS = @BUILD_LDFLAGS@
212212 CC = @CC@
213213 CCDEPMODE = @CCDEPMODE@
214 CC_FOR_BUILD = @CC_FOR_BUILD@
214215 CFLAGS = @CFLAGS@
215216 CPP = @CPP@
216217 CPPFLAGS = @CPPFLAGS@
217 CXX = @CXX@
218 CXXCPP = @CXXCPP@
219 CXXDEPMODE = @CXXDEPMODE@
220 CXXFLAGS = @CXXFLAGS@
221218 CYGPATH_W = @CYGPATH_W@
222219 DEFS = @DEFS@
223220 DEPDIR = @DEPDIR@
221 DLLTOOL = @DLLTOOL@
224222 DSYMUTIL = @DSYMUTIL@
225223 DUMPBIN = @DUMPBIN@
226224 ECHO_C = @ECHO_C@
228226 ECHO_T = @ECHO_T@
229227 EGREP = @EGREP@
230228 EXEEXT = @EXEEXT@
229 EXEEXT_FOR_BUILD = @EXEEXT_FOR_BUILD@
231230 FGREP = @FGREP@
232231 GREP = @GREP@
233232 INSTALL = @INSTALL@
247246 LN_S = @LN_S@
248247 LTLIBOBJS = @LTLIBOBJS@
249248 MAKEINFO = @MAKEINFO@
249 MANIFEST_TOOL = @MANIFEST_TOOL@
250250 MKDIR_P = @MKDIR_P@
251251 NM = @NM@
252252 NMEDIT = @NMEDIT@
263263 PACKAGE_VERSION = @PACKAGE_VERSION@
264264 PATH_SEPARATOR = @PATH_SEPARATOR@
265265 PKG_CONFIG = @PKG_CONFIG@
266 PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
267 PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
266268 RANLIB = @RANLIB@
267269 SED = @SED@
268270 SET_MAKE = @SET_MAKE@
273275 abs_srcdir = @abs_srcdir@
274276 abs_top_builddir = @abs_top_builddir@
275277 abs_top_srcdir = @abs_top_srcdir@
278 ac_ct_AR = @ac_ct_AR@
276279 ac_ct_CC = @ac_ct_CC@
277 ac_ct_CXX = @ac_ct_CXX@
278280 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
279281 am__include = @am__include@
280282 am__leading_dot = @am__leading_dot@
306308 libexecdir = @libexecdir@
307309 localedir = @localedir@
308310 localstatedir = @localstatedir@
309 lt_ECHO = @lt_ECHO@
310311 mandir = @mandir@
311312 mkdir_p = @mkdir_p@
312313 oldincludedir = @oldincludedir@
324325 top_srcdir = @top_srcdir@
325326 dist_doc_DATA = README
326327 EXTRA_DIST = \
327 bootstrap.sh \
328 autogen.sh \
328329 LGPL \
329330 README \
330331 atasmart.c \
349350 blob-examples/WDC_WD5000AAKS--00TMA0-12.01C01 \
350351 vala/atasmart.vapi
351352
352 SUBDIRS =
353
354 # build the strpool tool first
355 SUBDIRS = strpool .
353356 CLEANFILES = atasmart.strpool.c
354357 MAINTAINERCLEANFILES =
355358 noinst_DATA =
387390
388391 libatasmart_la_CFLAGS = \
389392 $(LIBUDEV_CFLAGS)
390
391 strpool_SOURCES = \
392 strpool.c
393393
394394 BUILT_SOURCES = \
395395 atasmart.strpool.c
486486 done
487487 libatasmart.la: $(libatasmart_la_OBJECTS) $(libatasmart_la_DEPENDENCIES)
488488 $(AM_V_CCLD)$(libatasmart_la_LINK) -rpath $(libdir) $(libatasmart_la_OBJECTS) $(libatasmart_la_LIBADD) $(LIBS)
489
490 clean-noinstPROGRAMS:
491 @list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \
492 echo " rm -f" $$list; \
493 rm -f $$list || exit $$?; \
494 test -n "$(EXEEXT)" || exit 0; \
495 list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
496 echo " rm -f" $$list; \
497 rm -f $$list
498489 install-sbinPROGRAMS: $(sbin_PROGRAMS)
499490 @$(NORMAL_INSTALL)
500491 test -z "$(sbindir)" || $(MKDIR_P) "$(DESTDIR)$(sbindir)"
544535 sktest$(EXEEXT): $(sktest_OBJECTS) $(sktest_DEPENDENCIES)
545536 @rm -f sktest$(EXEEXT)
546537 $(AM_V_CCLD)$(LINK) $(sktest_OBJECTS) $(sktest_LDADD) $(LIBS)
547 strpool$(EXEEXT): $(strpool_OBJECTS) $(strpool_DEPENDENCIES)
548 @rm -f strpool$(EXEEXT)
549 $(AM_V_CCLD)$(LINK) $(strpool_OBJECTS) $(strpool_LDADD) $(LIBS)
550538
551539 mostlyclean-compile:
552540 -rm -f *.$(OBJEXT)
557545 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libatasmart_la-atasmart.strpool.Plo@am__quote@
558546 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/skdump.Po@am__quote@
559547 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sktest.Po@am__quote@
560 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strpool.Po@am__quote@
561548
562549 .c.o:
563550 @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
10321019 clean: clean-recursive
10331020
10341021 clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
1035 clean-noinstPROGRAMS clean-sbinPROGRAMS mostlyclean-am
1022 clean-sbinPROGRAMS mostlyclean-am
10361023
10371024 distclean: distclean-recursive
10381025 -rm -f $(am__CONFIG_DISTCLEAN_FILES)
11121099
11131100 .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
11141101 all all-am am--refresh check check-am clean clean-generic \
1115 clean-libLTLIBRARIES clean-libtool clean-noinstPROGRAMS \
1116 clean-sbinPROGRAMS ctags ctags-recursive dist dist-all \
1117 dist-bzip2 dist-gzip dist-lzma dist-shar dist-tarZ dist-xz \
1118 dist-zip distcheck distclean distclean-compile \
1119 distclean-generic distclean-hdr distclean-libtool \
1120 distclean-tags distcleancheck distdir distuninstallcheck dvi \
1121 dvi-am html html-am info info-am install install-am \
1122 install-data install-data-am install-dist_docDATA install-dvi \
1123 install-dvi-am install-exec install-exec-am install-html \
1124 install-html-am install-includeHEADERS install-info \
1125 install-info-am install-libLTLIBRARIES install-man install-pdf \
1126 install-pdf-am install-pkgconfigDATA install-ps install-ps-am \
1102 clean-libLTLIBRARIES clean-libtool clean-sbinPROGRAMS ctags \
1103 ctags-recursive dist dist-all dist-bzip2 dist-gzip dist-lzma \
1104 dist-shar dist-tarZ dist-xz dist-zip distcheck distclean \
1105 distclean-compile distclean-generic distclean-hdr \
1106 distclean-libtool distclean-tags distcleancheck distdir \
1107 distuninstallcheck dvi dvi-am html html-am info info-am \
1108 install install-am install-data install-data-am \
1109 install-dist_docDATA install-dvi install-dvi-am install-exec \
1110 install-exec-am install-html install-html-am \
1111 install-includeHEADERS install-info install-info-am \
1112 install-libLTLIBRARIES install-man install-pdf install-pdf-am \
1113 install-pkgconfigDATA install-ps install-ps-am \
11271114 install-sbinPROGRAMS install-strip install-vapiDATA \
11281115 installcheck installcheck-am installdirs installdirs-am \
11291116 maintainer-clean maintainer-clean-generic mostlyclean \
11341121 uninstall-sbinPROGRAMS uninstall-vapiDATA
11351122
11361123
1137 atasmart.strpool.c: atasmart.c strpool
1138 $(top_builddir)/strpool $< $@
1124 strpool/strpool:
1125 $(MAKE) -C strpool strpool
1126
1127 atasmart.strpool.c: atasmart.c strpool/strpool
1128 $(top_builddir)/strpool/strpool $< $@
11391129
11401130 # Tell versions [3.59,3.63) of GNU make to not export all variables.
11411131 # Otherwise a system limit (for SysV at least) may be exceeded.
1212
1313 m4_ifndef([AC_AUTOCONF_VERSION],
1414 [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
15 m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.65],,
16 [m4_warning([this file was generated for autoconf 2.65.
15 m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.68],,
16 [m4_warning([this file was generated for autoconf 2.68.
1717 You have another version of autoconf. It may work, but is not guaranteed to.
1818 If you have problems, you may need to regenerate the build system entirely.
1919 To do so, use the procedure documented by the package, typically `autoreconf'.])])
2020
21 # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
22 #
23 # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
24 # 2006, 2007, 2008 Free Software Foundation, Inc.
25 # Written by Gordon Matzigkeit, 1996
26 #
27 # This file is free software; the Free Software Foundation gives
28 # unlimited permission to copy and/or distribute it, with or without
29 # modifications, as long as this notice is preserved.
30
31 m4_define([_LT_COPYING], [dnl
32 # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
33 # 2006, 2007, 2008 Free Software Foundation, Inc.
34 # Written by Gordon Matzigkeit, 1996
35 #
36 # This file is part of GNU Libtool.
37 #
38 # GNU Libtool is free software; you can redistribute it and/or
39 # modify it under the terms of the GNU General Public License as
40 # published by the Free Software Foundation; either version 2 of
41 # the License, or (at your option) any later version.
42 #
43 # As a special exception to the GNU General Public License,
44 # if you distribute this file as part of a program or library that
45 # is built using GNU Libtool, you may include this file under the
46 # same distribution terms that you use for the rest of that program.
47 #
48 # GNU Libtool is distributed in the hope that it will be useful,
49 # but WITHOUT ANY WARRANTY; without even the implied warranty of
50 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
51 # GNU General Public License for more details.
52 #
53 # You should have received a copy of the GNU General Public License
54 # along with GNU Libtool; see the file COPYING. If not, a copy
55 # can be downloaded from http://www.gnu.org/licenses/gpl.html, or
56 # obtained by writing to the Free Software Foundation, Inc.,
57 # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
58 ])
59
60 # serial 56 LT_INIT
61
62
63 # LT_PREREQ(VERSION)
64 # ------------------
65 # Complain and exit if this libtool version is less that VERSION.
66 m4_defun([LT_PREREQ],
67 [m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
68 [m4_default([$3],
69 [m4_fatal([Libtool version $1 or higher is required],
70 63)])],
71 [$2])])
72
73
74 # _LT_CHECK_BUILDDIR
75 # ------------------
76 # Complain if the absolute build directory name contains unusual characters
77 m4_defun([_LT_CHECK_BUILDDIR],
78 [case `pwd` in
79 *\ * | *\ *)
80 AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
81 esac
82 ])
83
84
85 # LT_INIT([OPTIONS])
86 # ------------------
87 AC_DEFUN([LT_INIT],
88 [AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT
89 AC_BEFORE([$0], [LT_LANG])dnl
90 AC_BEFORE([$0], [LT_OUTPUT])dnl
91 AC_BEFORE([$0], [LTDL_INIT])dnl
92 m4_require([_LT_CHECK_BUILDDIR])dnl
93
94 dnl Autoconf doesn't catch unexpanded LT_ macros by default:
95 m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
96 m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
97 dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
98 dnl unless we require an AC_DEFUNed macro:
99 AC_REQUIRE([LTOPTIONS_VERSION])dnl
100 AC_REQUIRE([LTSUGAR_VERSION])dnl
101 AC_REQUIRE([LTVERSION_VERSION])dnl
102 AC_REQUIRE([LTOBSOLETE_VERSION])dnl
103 m4_require([_LT_PROG_LTMAIN])dnl
104
105 dnl Parse OPTIONS
106 _LT_SET_OPTIONS([$0], [$1])
107
108 # This can be used to rebuild libtool when needed
109 LIBTOOL_DEPS="$ltmain"
110
111 # Always use our own libtool.
112 LIBTOOL='$(SHELL) $(top_builddir)/libtool'
113 AC_SUBST(LIBTOOL)dnl
114
115 _LT_SETUP
116
117 # Only expand once:
118 m4_define([LT_INIT])
119 ])# LT_INIT
120
121 # Old names:
122 AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
123 AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
124 dnl aclocal-1.4 backwards compatibility:
125 dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
126 dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
127
128
129 # _LT_CC_BASENAME(CC)
130 # -------------------
131 # Calculate cc_basename. Skip known compiler wrappers and cross-prefix.
132 m4_defun([_LT_CC_BASENAME],
133 [for cc_temp in $1""; do
134 case $cc_temp in
135 compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
136 distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
137 \-*) ;;
138 *) break;;
139 esac
140 done
141 cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
142 ])
143
144
145 # _LT_FILEUTILS_DEFAULTS
146 # ----------------------
147 # It is okay to use these file commands and assume they have been set
148 # sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'.
149 m4_defun([_LT_FILEUTILS_DEFAULTS],
150 [: ${CP="cp -f"}
151 : ${MV="mv -f"}
152 : ${RM="rm -f"}
153 ])# _LT_FILEUTILS_DEFAULTS
154
155
156 # _LT_SETUP
157 # ---------
158 m4_defun([_LT_SETUP],
159 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
160 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
161 _LT_DECL([], [host_alias], [0], [The host system])dnl
162 _LT_DECL([], [host], [0])dnl
163 _LT_DECL([], [host_os], [0])dnl
164 dnl
165 _LT_DECL([], [build_alias], [0], [The build system])dnl
166 _LT_DECL([], [build], [0])dnl
167 _LT_DECL([], [build_os], [0])dnl
168 dnl
169 AC_REQUIRE([AC_PROG_CC])dnl
170 AC_REQUIRE([LT_PATH_LD])dnl
171 AC_REQUIRE([LT_PATH_NM])dnl
172 dnl
173 AC_REQUIRE([AC_PROG_LN_S])dnl
174 test -z "$LN_S" && LN_S="ln -s"
175 _LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
176 dnl
177 AC_REQUIRE([LT_CMD_MAX_LEN])dnl
178 _LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
179 _LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
180 dnl
181 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
182 m4_require([_LT_CHECK_SHELL_FEATURES])dnl
183 m4_require([_LT_CMD_RELOAD])dnl
184 m4_require([_LT_CHECK_MAGIC_METHOD])dnl
185 m4_require([_LT_CMD_OLD_ARCHIVE])dnl
186 m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
187
188 _LT_CONFIG_LIBTOOL_INIT([
189 # See if we are running on zsh, and set the options which allow our
190 # commands through without removal of \ escapes INIT.
191 if test -n "\${ZSH_VERSION+set}" ; then
192 setopt NO_GLOB_SUBST
193 fi
194 ])
195 if test -n "${ZSH_VERSION+set}" ; then
196 setopt NO_GLOB_SUBST
197 fi
198
199 _LT_CHECK_OBJDIR
200
201 m4_require([_LT_TAG_COMPILER])dnl
202 _LT_PROG_ECHO_BACKSLASH
203
204 case $host_os in
205 aix3*)
206 # AIX sometimes has problems with the GCC collect2 program. For some
207 # reason, if we set the COLLECT_NAMES environment variable, the problems
208 # vanish in a puff of smoke.
209 if test "X${COLLECT_NAMES+set}" != Xset; then
210 COLLECT_NAMES=
211 export COLLECT_NAMES
212 fi
213 ;;
214 esac
215
216 # Sed substitution that helps us do robust quoting. It backslashifies
217 # metacharacters that are still active within double-quoted strings.
218 sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
219
220 # Same as above, but do not quote variable references.
221 double_quote_subst='s/\([["`\\]]\)/\\\1/g'
222
223 # Sed substitution to delay expansion of an escaped shell variable in a
224 # double_quote_subst'ed string.
225 delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
226
227 # Sed substitution to delay expansion of an escaped single quote.
228 delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
229
230 # Sed substitution to avoid accidental globbing in evaled expressions
231 no_glob_subst='s/\*/\\\*/g'
232
233 # Global variables:
234 ofile=libtool
235 can_build_shared=yes
236
237 # All known linkers require a `.a' archive for static linking (except MSVC,
238 # which needs '.lib').
239 libext=a
240
241 with_gnu_ld="$lt_cv_prog_gnu_ld"
242
243 old_CC="$CC"
244 old_CFLAGS="$CFLAGS"
245
246 # Set sane defaults for various variables
247 test -z "$CC" && CC=cc
248 test -z "$LTCC" && LTCC=$CC
249 test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
250 test -z "$LD" && LD=ld
251 test -z "$ac_objext" && ac_objext=o
252
253 _LT_CC_BASENAME([$compiler])
254
255 # Only perform the check for file, if the check method requires it
256 test -z "$MAGIC_CMD" && MAGIC_CMD=file
257 case $deplibs_check_method in
258 file_magic*)
259 if test "$file_magic_cmd" = '$MAGIC_CMD'; then
260 _LT_PATH_MAGIC
261 fi
262 ;;
263 esac
264
265 # Use C for the default configuration in the libtool script
266 LT_SUPPORTED_TAG([CC])
267 _LT_LANG_C_CONFIG
268 _LT_LANG_DEFAULT_CONFIG
269 _LT_CONFIG_COMMANDS
270 ])# _LT_SETUP
271
272
273 # _LT_PROG_LTMAIN
274 # ---------------
275 # Note that this code is called both from `configure', and `config.status'
276 # now that we use AC_CONFIG_COMMANDS to generate libtool. Notably,
277 # `config.status' has no value for ac_aux_dir unless we are using Automake,
278 # so we pass a copy along to make sure it has a sensible value anyway.
279 m4_defun([_LT_PROG_LTMAIN],
280 [m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
281 _LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
282 ltmain="$ac_aux_dir/ltmain.sh"
283 ])# _LT_PROG_LTMAIN
284
285
286
287 # So that we can recreate a full libtool script including additional
288 # tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
289 # in macros and then make a single call at the end using the `libtool'
290 # label.
291
292
293 # _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
294 # ----------------------------------------
295 # Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
296 m4_define([_LT_CONFIG_LIBTOOL_INIT],
297 [m4_ifval([$1],
298 [m4_append([_LT_OUTPUT_LIBTOOL_INIT],
299 [$1
300 ])])])
301
302 # Initialize.
303 m4_define([_LT_OUTPUT_LIBTOOL_INIT])
304
305
306 # _LT_CONFIG_LIBTOOL([COMMANDS])
307 # ------------------------------
308 # Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
309 m4_define([_LT_CONFIG_LIBTOOL],
310 [m4_ifval([$1],
311 [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
312 [$1
313 ])])])
314
315 # Initialize.
316 m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
317
318
319 # _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
320 # -----------------------------------------------------
321 m4_defun([_LT_CONFIG_SAVE_COMMANDS],
322 [_LT_CONFIG_LIBTOOL([$1])
323 _LT_CONFIG_LIBTOOL_INIT([$2])
324 ])
325
326
327 # _LT_FORMAT_COMMENT([COMMENT])
328 # -----------------------------
329 # Add leading comment marks to the start of each line, and a trailing
330 # full-stop to the whole comment if one is not present already.
331 m4_define([_LT_FORMAT_COMMENT],
332 [m4_ifval([$1], [
333 m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
334 [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
335 )])
336
337
338
339
340
341 # _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
342 # -------------------------------------------------------------------
343 # CONFIGNAME is the name given to the value in the libtool script.
344 # VARNAME is the (base) name used in the configure script.
345 # VALUE may be 0, 1 or 2 for a computed quote escaped value based on
346 # VARNAME. Any other value will be used directly.
347 m4_define([_LT_DECL],
348 [lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
349 [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
350 [m4_ifval([$1], [$1], [$2])])
351 lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
352 m4_ifval([$4],
353 [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
354 lt_dict_add_subkey([lt_decl_dict], [$2],
355 [tagged?], [m4_ifval([$5], [yes], [no])])])
356 ])
357
358
359 # _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
360 # --------------------------------------------------------
361 m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
362
363
364 # lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
365 # ------------------------------------------------
366 m4_define([lt_decl_tag_varnames],
367 [_lt_decl_filter([tagged?], [yes], $@)])
368
369
370 # _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
371 # ---------------------------------------------------------
372 m4_define([_lt_decl_filter],
373 [m4_case([$#],
374 [0], [m4_fatal([$0: too few arguments: $#])],
375 [1], [m4_fatal([$0: too few arguments: $#: $1])],
376 [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
377 [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
378 [lt_dict_filter([lt_decl_dict], $@)])[]dnl
379 ])
380
381
382 # lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
383 # --------------------------------------------------
384 m4_define([lt_decl_quote_varnames],
385 [_lt_decl_filter([value], [1], $@)])
386
387
388 # lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
389 # ---------------------------------------------------
390 m4_define([lt_decl_dquote_varnames],
391 [_lt_decl_filter([value], [2], $@)])
392
393
394 # lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
395 # ---------------------------------------------------
396 m4_define([lt_decl_varnames_tagged],
397 [m4_assert([$# <= 2])dnl
398 _$0(m4_quote(m4_default([$1], [[, ]])),
399 m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
400 m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
401 m4_define([_lt_decl_varnames_tagged],
402 [m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
403
404
405 # lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
406 # ------------------------------------------------
407 m4_define([lt_decl_all_varnames],
408 [_$0(m4_quote(m4_default([$1], [[, ]])),
409 m4_if([$2], [],
410 m4_quote(lt_decl_varnames),
411 m4_quote(m4_shift($@))))[]dnl
412 ])
413 m4_define([_lt_decl_all_varnames],
414 [lt_join($@, lt_decl_varnames_tagged([$1],
415 lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
416 ])
417
418
419 # _LT_CONFIG_STATUS_DECLARE([VARNAME])
420 # ------------------------------------
421 # Quote a variable value, and forward it to `config.status' so that its
422 # declaration there will have the same value as in `configure'. VARNAME
423 # must have a single quote delimited value for this to work.
424 m4_define([_LT_CONFIG_STATUS_DECLARE],
425 [$1='`$ECHO "X$][$1" | $Xsed -e "$delay_single_quote_subst"`'])
426
427
428 # _LT_CONFIG_STATUS_DECLARATIONS
429 # ------------------------------
430 # We delimit libtool config variables with single quotes, so when
431 # we write them to config.status, we have to be sure to quote all
432 # embedded single quotes properly. In configure, this macro expands
433 # each variable declared with _LT_DECL (and _LT_TAGDECL) into:
434 #
435 # <var>='`$ECHO "X$<var>" | $Xsed -e "$delay_single_quote_subst"`'
436 m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
437 [m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
438 [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
439
440
441 # _LT_LIBTOOL_TAGS
442 # ----------------
443 # Output comment and list of tags supported by the script
444 m4_defun([_LT_LIBTOOL_TAGS],
445 [_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
446 available_tags="_LT_TAGS"dnl
447 ])
448
449
450 # _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
451 # -----------------------------------
452 # Extract the dictionary values for VARNAME (optionally with TAG) and
453 # expand to a commented shell variable setting:
454 #
455 # # Some comment about what VAR is for.
456 # visible_name=$lt_internal_name
457 m4_define([_LT_LIBTOOL_DECLARE],
458 [_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
459 [description])))[]dnl
460 m4_pushdef([_libtool_name],
461 m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
462 m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
463 [0], [_libtool_name=[$]$1],
464 [1], [_libtool_name=$lt_[]$1],
465 [2], [_libtool_name=$lt_[]$1],
466 [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
467 m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
468 ])
469
470
471 # _LT_LIBTOOL_CONFIG_VARS
472 # -----------------------
473 # Produce commented declarations of non-tagged libtool config variables
474 # suitable for insertion in the LIBTOOL CONFIG section of the `libtool'
475 # script. Tagged libtool config variables (even for the LIBTOOL CONFIG
476 # section) are produced by _LT_LIBTOOL_TAG_VARS.
477 m4_defun([_LT_LIBTOOL_CONFIG_VARS],
478 [m4_foreach([_lt_var],
479 m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
480 [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
481
482
483 # _LT_LIBTOOL_TAG_VARS(TAG)
484 # -------------------------
485 m4_define([_LT_LIBTOOL_TAG_VARS],
486 [m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
487 [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
488
489
490 # _LT_TAGVAR(VARNAME, [TAGNAME])
491 # ------------------------------
492 m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
493
494
495 # _LT_CONFIG_COMMANDS
496 # -------------------
497 # Send accumulated output to $CONFIG_STATUS. Thanks to the lists of
498 # variables for single and double quote escaping we saved from calls
499 # to _LT_DECL, we can put quote escaped variables declarations
500 # into `config.status', and then the shell code to quote escape them in
501 # for loops in `config.status'. Finally, any additional code accumulated
502 # from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
503 m4_defun([_LT_CONFIG_COMMANDS],
504 [AC_PROVIDE_IFELSE([LT_OUTPUT],
505 dnl If the libtool generation code has been placed in $CONFIG_LT,
506 dnl instead of duplicating it all over again into config.status,
507 dnl then we will have config.status run $CONFIG_LT later, so it
508 dnl needs to know what name is stored there:
509 [AC_CONFIG_COMMANDS([libtool],
510 [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
511 dnl If the libtool generation code is destined for config.status,
512 dnl expand the accumulated commands and init code now:
513 [AC_CONFIG_COMMANDS([libtool],
514 [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
515 ])#_LT_CONFIG_COMMANDS
516
517
518 # Initialize.
519 m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
520 [
521
522 # The HP-UX ksh and POSIX shell print the target directory to stdout
523 # if CDPATH is set.
524 (unset CDPATH) >/dev/null 2>&1 && unset CDPATH
525
526 sed_quote_subst='$sed_quote_subst'
527 double_quote_subst='$double_quote_subst'
528 delay_variable_subst='$delay_variable_subst'
529 _LT_CONFIG_STATUS_DECLARATIONS
530 LTCC='$LTCC'
531 LTCFLAGS='$LTCFLAGS'
532 compiler='$compiler_DEFAULT'
533
534 # Quote evaled strings.
535 for var in lt_decl_all_varnames([[ \
536 ]], lt_decl_quote_varnames); do
537 case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
538 *[[\\\\\\\`\\"\\\$]]*)
539 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
540 ;;
541 *)
542 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
543 ;;
544 esac
545 done
546
547 # Double-quote double-evaled strings.
548 for var in lt_decl_all_varnames([[ \
549 ]], lt_decl_dquote_varnames); do
550 case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
551 *[[\\\\\\\`\\"\\\$]]*)
552 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
553 ;;
554 *)
555 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
556 ;;
557 esac
558 done
559
560 # Fix-up fallback echo if it was mangled by the above quoting rules.
561 case \$lt_ECHO in
562 *'\\\[$]0 --fallback-echo"')dnl "
563 lt_ECHO=\`\$ECHO "X\$lt_ECHO" | \$Xsed -e 's/\\\\\\\\\\\\\\\[$]0 --fallback-echo"\[$]/\[$]0 --fallback-echo"/'\`
564 ;;
565 esac
566
567 _LT_OUTPUT_LIBTOOL_INIT
568 ])
569
570
571 # LT_OUTPUT
572 # ---------
573 # This macro allows early generation of the libtool script (before
574 # AC_OUTPUT is called), incase it is used in configure for compilation
575 # tests.
576 AC_DEFUN([LT_OUTPUT],
577 [: ${CONFIG_LT=./config.lt}
578 AC_MSG_NOTICE([creating $CONFIG_LT])
579 cat >"$CONFIG_LT" <<_LTEOF
580 #! $SHELL
581 # Generated by $as_me.
582 # Run this file to recreate a libtool stub with the current configuration.
583
584 lt_cl_silent=false
585 SHELL=\${CONFIG_SHELL-$SHELL}
586 _LTEOF
587
588 cat >>"$CONFIG_LT" <<\_LTEOF
589 AS_SHELL_SANITIZE
590 _AS_PREPARE
591
592 exec AS_MESSAGE_FD>&1
593 exec AS_MESSAGE_LOG_FD>>config.log
594 {
595 echo
596 AS_BOX([Running $as_me.])
597 } >&AS_MESSAGE_LOG_FD
598
599 lt_cl_help="\
600 \`$as_me' creates a local libtool stub from the current configuration,
601 for use in further configure time tests before the real libtool is
602 generated.
603
604 Usage: $[0] [[OPTIONS]]
605
606 -h, --help print this help, then exit
607 -V, --version print version number, then exit
608 -q, --quiet do not print progress messages
609 -d, --debug don't remove temporary files
610
611 Report bugs to <bug-libtool@gnu.org>."
612
613 lt_cl_version="\
614 m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
615 m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
616 configured by $[0], generated by m4_PACKAGE_STRING.
617
618 Copyright (C) 2008 Free Software Foundation, Inc.
619 This config.lt script is free software; the Free Software Foundation
620 gives unlimited permision to copy, distribute and modify it."
621
622 while test $[#] != 0
623 do
624 case $[1] in
625 --version | --v* | -V )
626 echo "$lt_cl_version"; exit 0 ;;
627 --help | --h* | -h )
628 echo "$lt_cl_help"; exit 0 ;;
629 --debug | --d* | -d )
630 debug=: ;;
631 --quiet | --q* | --silent | --s* | -q )
632 lt_cl_silent=: ;;
633
634 -*) AC_MSG_ERROR([unrecognized option: $[1]
635 Try \`$[0] --help' for more information.]) ;;
636
637 *) AC_MSG_ERROR([unrecognized argument: $[1]
638 Try \`$[0] --help' for more information.]) ;;
639 esac
640 shift
641 done
642
643 if $lt_cl_silent; then
644 exec AS_MESSAGE_FD>/dev/null
645 fi
646 _LTEOF
647
648 cat >>"$CONFIG_LT" <<_LTEOF
649 _LT_OUTPUT_LIBTOOL_COMMANDS_INIT
650 _LTEOF
651
652 cat >>"$CONFIG_LT" <<\_LTEOF
653 AC_MSG_NOTICE([creating $ofile])
654 _LT_OUTPUT_LIBTOOL_COMMANDS
655 AS_EXIT(0)
656 _LTEOF
657 chmod +x "$CONFIG_LT"
658
659 # configure is writing to config.log, but config.lt does its own redirection,
660 # appending to config.log, which fails on DOS, as config.log is still kept
661 # open by configure. Here we exec the FD to /dev/null, effectively closing
662 # config.log, so it can be properly (re)opened and appended to by config.lt.
663 if test "$no_create" != yes; then
664 lt_cl_success=:
665 test "$silent" = yes &&
666 lt_config_lt_args="$lt_config_lt_args --quiet"
667 exec AS_MESSAGE_LOG_FD>/dev/null
668 $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
669 exec AS_MESSAGE_LOG_FD>>config.log
670 $lt_cl_success || AS_EXIT(1)
671 fi
672 ])# LT_OUTPUT
673
674
675 # _LT_CONFIG(TAG)
676 # ---------------
677 # If TAG is the built-in tag, create an initial libtool script with a
678 # default configuration from the untagged config vars. Otherwise add code
679 # to config.status for appending the configuration named by TAG from the
680 # matching tagged config vars.
681 m4_defun([_LT_CONFIG],
682 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
683 _LT_CONFIG_SAVE_COMMANDS([
684 m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
685 m4_if(_LT_TAG, [C], [
686 # See if we are running on zsh, and set the options which allow our
687 # commands through without removal of \ escapes.
688 if test -n "${ZSH_VERSION+set}" ; then
689 setopt NO_GLOB_SUBST
690 fi
691
692 cfgfile="${ofile}T"
693 trap "$RM \"$cfgfile\"; exit 1" 1 2 15
694 $RM "$cfgfile"
695
696 cat <<_LT_EOF >> "$cfgfile"
697 #! $SHELL
698
699 # `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
700 # Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
701 # Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
702 # NOTE: Changes made to this file will be lost: look at ltmain.sh.
703 #
704 _LT_COPYING
705 _LT_LIBTOOL_TAGS
706
707 # ### BEGIN LIBTOOL CONFIG
708 _LT_LIBTOOL_CONFIG_VARS
709 _LT_LIBTOOL_TAG_VARS
710 # ### END LIBTOOL CONFIG
711
712 _LT_EOF
713
714 case $host_os in
715 aix3*)
716 cat <<\_LT_EOF >> "$cfgfile"
717 # AIX sometimes has problems with the GCC collect2 program. For some
718 # reason, if we set the COLLECT_NAMES environment variable, the problems
719 # vanish in a puff of smoke.
720 if test "X${COLLECT_NAMES+set}" != Xset; then
721 COLLECT_NAMES=
722 export COLLECT_NAMES
723 fi
724 _LT_EOF
725 ;;
726 esac
727
728 _LT_PROG_LTMAIN
729
730 # We use sed instead of cat because bash on DJGPP gets confused if
731 # if finds mixed CR/LF and LF-only lines. Since sed operates in
732 # text mode, it properly converts lines to CR/LF. This bash problem
733 # is reportedly fixed, but why not run on old versions too?
734 sed '/^# Generated shell functions inserted here/q' "$ltmain" >> "$cfgfile" \
735 || (rm -f "$cfgfile"; exit 1)
736
737 _LT_PROG_XSI_SHELLFNS
738
739 sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \
740 || (rm -f "$cfgfile"; exit 1)
741
742 mv -f "$cfgfile" "$ofile" ||
743 (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
744 chmod +x "$ofile"
745 ],
746 [cat <<_LT_EOF >> "$ofile"
747
748 dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
749 dnl in a comment (ie after a #).
750 # ### BEGIN LIBTOOL TAG CONFIG: $1
751 _LT_LIBTOOL_TAG_VARS(_LT_TAG)
752 # ### END LIBTOOL TAG CONFIG: $1
753 _LT_EOF
754 ])dnl /m4_if
755 ],
756 [m4_if([$1], [], [
757 PACKAGE='$PACKAGE'
758 VERSION='$VERSION'
759 TIMESTAMP='$TIMESTAMP'
760 RM='$RM'
761 ofile='$ofile'], [])
762 ])dnl /_LT_CONFIG_SAVE_COMMANDS
763 ])# _LT_CONFIG
764
765
766 # LT_SUPPORTED_TAG(TAG)
767 # ---------------------
768 # Trace this macro to discover what tags are supported by the libtool
769 # --tag option, using:
770 # autoconf --trace 'LT_SUPPORTED_TAG:$1'
771 AC_DEFUN([LT_SUPPORTED_TAG], [])
772
773
774 # C support is built-in for now
775 m4_define([_LT_LANG_C_enabled], [])
776 m4_define([_LT_TAGS], [])
777
778
779 # LT_LANG(LANG)
780 # -------------
781 # Enable libtool support for the given language if not already enabled.
782 AC_DEFUN([LT_LANG],
783 [AC_BEFORE([$0], [LT_OUTPUT])dnl
784 m4_case([$1],
785 [C], [_LT_LANG(C)],
786 [C++], [_LT_LANG(CXX)],
787 [Java], [_LT_LANG(GCJ)],
788 [Fortran 77], [_LT_LANG(F77)],
789 [Fortran], [_LT_LANG(FC)],
790 [Windows Resource], [_LT_LANG(RC)],
791 [m4_ifdef([_LT_LANG_]$1[_CONFIG],
792 [_LT_LANG($1)],
793 [m4_fatal([$0: unsupported language: "$1"])])])dnl
794 ])# LT_LANG
795
796
797 # _LT_LANG(LANGNAME)
798 # ------------------
799 m4_defun([_LT_LANG],
800 [m4_ifdef([_LT_LANG_]$1[_enabled], [],
801 [LT_SUPPORTED_TAG([$1])dnl
802 m4_append([_LT_TAGS], [$1 ])dnl
803 m4_define([_LT_LANG_]$1[_enabled], [])dnl
804 _LT_LANG_$1_CONFIG($1)])dnl
805 ])# _LT_LANG
806
807
808 # _LT_LANG_DEFAULT_CONFIG
809 # -----------------------
810 m4_defun([_LT_LANG_DEFAULT_CONFIG],
811 [AC_PROVIDE_IFELSE([AC_PROG_CXX],
812 [LT_LANG(CXX)],
813 [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
814
815 AC_PROVIDE_IFELSE([AC_PROG_F77],
816 [LT_LANG(F77)],
817 [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
818
819 AC_PROVIDE_IFELSE([AC_PROG_FC],
820 [LT_LANG(FC)],
821 [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
822
823 dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
824 dnl pulling things in needlessly.
825 AC_PROVIDE_IFELSE([AC_PROG_GCJ],
826 [LT_LANG(GCJ)],
827 [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
828 [LT_LANG(GCJ)],
829 [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
830 [LT_LANG(GCJ)],
831 [m4_ifdef([AC_PROG_GCJ],
832 [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
833 m4_ifdef([A][M_PROG_GCJ],
834 [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
835 m4_ifdef([LT_PROG_GCJ],
836 [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
837
838 AC_PROVIDE_IFELSE([LT_PROG_RC],
839 [LT_LANG(RC)],
840 [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
841 ])# _LT_LANG_DEFAULT_CONFIG
842
843 # Obsolete macros:
844 AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
845 AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
846 AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
847 AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
848 dnl aclocal-1.4 backwards compatibility:
849 dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
850 dnl AC_DEFUN([AC_LIBTOOL_F77], [])
851 dnl AC_DEFUN([AC_LIBTOOL_FC], [])
852 dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
853
854
855 # _LT_TAG_COMPILER
856 # ----------------
857 m4_defun([_LT_TAG_COMPILER],
858 [AC_REQUIRE([AC_PROG_CC])dnl
859
860 _LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
861 _LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
862 _LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
863 _LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
864
865 # If no C compiler was specified, use CC.
866 LTCC=${LTCC-"$CC"}
867
868 # If no C compiler flags were specified, use CFLAGS.
869 LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
870
871 # Allow CC to be a program name with arguments.
872 compiler=$CC
873 ])# _LT_TAG_COMPILER
874
875
876 # _LT_COMPILER_BOILERPLATE
877 # ------------------------
878 # Check for compiler boilerplate output or warnings with
879 # the simple compiler test code.
880 m4_defun([_LT_COMPILER_BOILERPLATE],
881 [m4_require([_LT_DECL_SED])dnl
882 ac_outfile=conftest.$ac_objext
883 echo "$lt_simple_compile_test_code" >conftest.$ac_ext
884 eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
885 _lt_compiler_boilerplate=`cat conftest.err`
886 $RM conftest*
887 ])# _LT_COMPILER_BOILERPLATE
888
889
890 # _LT_LINKER_BOILERPLATE
891 # ----------------------
892 # Check for linker boilerplate output or warnings with
893 # the simple link test code.
894 m4_defun([_LT_LINKER_BOILERPLATE],
895 [m4_require([_LT_DECL_SED])dnl
896 ac_outfile=conftest.$ac_objext
897 echo "$lt_simple_link_test_code" >conftest.$ac_ext
898 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
899 _lt_linker_boilerplate=`cat conftest.err`
900 $RM -r conftest*
901 ])# _LT_LINKER_BOILERPLATE
902
903 # _LT_REQUIRED_DARWIN_CHECKS
904 # -------------------------
905 m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
906 case $host_os in
907 rhapsody* | darwin*)
908 AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
909 AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
910 AC_CHECK_TOOL([LIPO], [lipo], [:])
911 AC_CHECK_TOOL([OTOOL], [otool], [:])
912 AC_CHECK_TOOL([OTOOL64], [otool64], [:])
913 _LT_DECL([], [DSYMUTIL], [1],
914 [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
915 _LT_DECL([], [NMEDIT], [1],
916 [Tool to change global to local symbols on Mac OS X])
917 _LT_DECL([], [LIPO], [1],
918 [Tool to manipulate fat objects and archives on Mac OS X])
919 _LT_DECL([], [OTOOL], [1],
920 [ldd/readelf like tool for Mach-O binaries on Mac OS X])
921 _LT_DECL([], [OTOOL64], [1],
922 [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
923
924 AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
925 [lt_cv_apple_cc_single_mod=no
926 if test -z "${LT_MULTI_MODULE}"; then
927 # By default we will add the -single_module flag. You can override
928 # by either setting the environment variable LT_MULTI_MODULE
929 # non-empty at configure time, or by adding -multi_module to the
930 # link flags.
931 rm -rf libconftest.dylib*
932 echo "int foo(void){return 1;}" > conftest.c
933 echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
934 -dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
935 $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
936 -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
937 _lt_result=$?
938 if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then
939 lt_cv_apple_cc_single_mod=yes
940 else
941 cat conftest.err >&AS_MESSAGE_LOG_FD
942 fi
943 rm -rf libconftest.dylib*
944 rm -f conftest.*
945 fi])
946 AC_CACHE_CHECK([for -exported_symbols_list linker flag],
947 [lt_cv_ld_exported_symbols_list],
948 [lt_cv_ld_exported_symbols_list=no
949 save_LDFLAGS=$LDFLAGS
950 echo "_main" > conftest.sym
951 LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
952 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
953 [lt_cv_ld_exported_symbols_list=yes],
954 [lt_cv_ld_exported_symbols_list=no])
955 LDFLAGS="$save_LDFLAGS"
956 ])
957 case $host_os in
958 rhapsody* | darwin1.[[012]])
959 _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
960 darwin1.*)
961 _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
962 darwin*) # darwin 5.x on
963 # if running on 10.5 or later, the deployment target defaults
964 # to the OS version, if on x86, and 10.4, the deployment
965 # target defaults to 10.4. Don't you love it?
966 case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
967 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
968 _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
969 10.[[012]]*)
970 _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
971 10.*)
972 _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
973 esac
974 ;;
975 esac
976 if test "$lt_cv_apple_cc_single_mod" = "yes"; then
977 _lt_dar_single_mod='$single_module'
978 fi
979 if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
980 _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
981 else
982 _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
983 fi
984 if test "$DSYMUTIL" != ":"; then
985 _lt_dsymutil='~$DSYMUTIL $lib || :'
986 else
987 _lt_dsymutil=
988 fi
989 ;;
990 esac
991 ])
992
993
994 # _LT_DARWIN_LINKER_FEATURES
995 # --------------------------
996 # Checks for linker and compiler features on darwin
997 m4_defun([_LT_DARWIN_LINKER_FEATURES],
998 [
999 m4_require([_LT_REQUIRED_DARWIN_CHECKS])
1000 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
1001 _LT_TAGVAR(hardcode_direct, $1)=no
1002 _LT_TAGVAR(hardcode_automatic, $1)=yes
1003 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
1004 _LT_TAGVAR(whole_archive_flag_spec, $1)=''
1005 _LT_TAGVAR(link_all_deplibs, $1)=yes
1006 _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined"
1007 case $cc_basename in
1008 ifort*) _lt_dar_can_shared=yes ;;
1009 *) _lt_dar_can_shared=$GCC ;;
1010 esac
1011 if test "$_lt_dar_can_shared" = "yes"; then
1012 output_verbose_link_cmd=echo
1013 _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}"
1014 _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
1015 _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}"
1016 _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
1017 m4_if([$1], [CXX],
1018 [ if test "$lt_cv_apple_cc_single_mod" != "yes"; then
1019 _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
1020 _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
1021 fi
1022 ],[])
1023 else
1024 _LT_TAGVAR(ld_shlibs, $1)=no
1025 fi
1026 ])
1027
1028 # _LT_SYS_MODULE_PATH_AIX
1029 # -----------------------
1030 # Links a minimal program and checks the executable
1031 # for the system default hardcoded library path. In most cases,
1032 # this is /usr/lib:/lib, but when the MPI compilers are used
1033 # the location of the communication and MPI libs are included too.
1034 # If we don't find anything, use the default library path according
1035 # to the aix ld manual.
1036 m4_defun([_LT_SYS_MODULE_PATH_AIX],
1037 [m4_require([_LT_DECL_SED])dnl
1038 AC_LINK_IFELSE(AC_LANG_PROGRAM,[
1039 lt_aix_libpath_sed='
1040 /Import File Strings/,/^$/ {
1041 /^0/ {
1042 s/^0 *\(.*\)$/\1/
1043 p
1044 }
1045 }'
1046 aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1047 # Check for a 64-bit object if we didn't find anything.
1048 if test -z "$aix_libpath"; then
1049 aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1050 fi],[])
1051 if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
1052 ])# _LT_SYS_MODULE_PATH_AIX
1053
1054
1055 # _LT_SHELL_INIT(ARG)
1056 # -------------------
1057 m4_define([_LT_SHELL_INIT],
1058 [ifdef([AC_DIVERSION_NOTICE],
1059 [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)],
1060 [AC_DIVERT_PUSH(NOTICE)])
1061 $1
1062 AC_DIVERT_POP
1063 ])# _LT_SHELL_INIT
1064
1065
1066 # _LT_PROG_ECHO_BACKSLASH
1067 # -----------------------
1068 # Add some code to the start of the generated configure script which
1069 # will find an echo command which doesn't interpret backslashes.
1070 m4_defun([_LT_PROG_ECHO_BACKSLASH],
1071 [_LT_SHELL_INIT([
1072 # Check that we are running under the correct shell.
1073 SHELL=${CONFIG_SHELL-/bin/sh}
1074
1075 case X$lt_ECHO in
1076 X*--fallback-echo)
1077 # Remove one level of quotation (which was required for Make).
1078 ECHO=`echo "$lt_ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','`
1079 ;;
1080 esac
1081
1082 ECHO=${lt_ECHO-echo}
1083 if test "X[$]1" = X--no-reexec; then
1084 # Discard the --no-reexec flag, and continue.
1085 shift
1086 elif test "X[$]1" = X--fallback-echo; then
1087 # Avoid inline document here, it may be left over
1088 :
1089 elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' ; then
1090 # Yippee, $ECHO works!
1091 :
1092 else
1093 # Restart under the correct shell.
1094 exec $SHELL "[$]0" --no-reexec ${1+"[$]@"}
1095 fi
1096
1097 if test "X[$]1" = X--fallback-echo; then
1098 # used as fallback echo
1099 shift
1100 cat <<_LT_EOF
1101 [$]*
1102 _LT_EOF
1103 exit 0
1104 fi
1105
1106 # The HP-UX ksh and POSIX shell print the target directory to stdout
1107 # if CDPATH is set.
1108 (unset CDPATH) >/dev/null 2>&1 && unset CDPATH
1109
1110 if test -z "$lt_ECHO"; then
1111 if test "X${echo_test_string+set}" != Xset; then
1112 # find a string as large as possible, as long as the shell can cope with it
1113 for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do
1114 # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
1115 if { echo_test_string=`eval $cmd`; } 2>/dev/null &&
1116 { test "X$echo_test_string" = "X$echo_test_string"; } 2>/dev/null
1117 then
1118 break
1119 fi
1120 done
1121 fi
1122
1123 if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
1124 echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
1125 test "X$echo_testing_string" = "X$echo_test_string"; then
1126 :
1127 else
1128 # The Solaris, AIX, and Digital Unix default echo programs unquote
1129 # backslashes. This makes it impossible to quote backslashes using
1130 # echo "$something" | sed 's/\\/\\\\/g'
1131 #
1132 # So, first we look for a working echo in the user's PATH.
1133
1134 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
1135 for dir in $PATH /usr/ucb; do
1136 IFS="$lt_save_ifs"
1137 if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
1138 test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
1139 echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
1140 test "X$echo_testing_string" = "X$echo_test_string"; then
1141 ECHO="$dir/echo"
1142 break
1143 fi
1144 done
1145 IFS="$lt_save_ifs"
1146
1147 if test "X$ECHO" = Xecho; then
1148 # We didn't find a better echo, so look for alternatives.
1149 if test "X`{ print -r '\t'; } 2>/dev/null`" = 'X\t' &&
1150 echo_testing_string=`{ print -r "$echo_test_string"; } 2>/dev/null` &&
1151 test "X$echo_testing_string" = "X$echo_test_string"; then
1152 # This shell has a builtin print -r that does the trick.
1153 ECHO='print -r'
1154 elif { test -f /bin/ksh || test -f /bin/ksh$ac_exeext; } &&
1155 test "X$CONFIG_SHELL" != X/bin/ksh; then
1156 # If we have ksh, try running configure again with it.
1157 ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
1158 export ORIGINAL_CONFIG_SHELL
1159 CONFIG_SHELL=/bin/ksh
1160 export CONFIG_SHELL
1161 exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"}
1162 else
1163 # Try using printf.
1164 ECHO='printf %s\n'
1165 if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
1166 echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
1167 test "X$echo_testing_string" = "X$echo_test_string"; then
1168 # Cool, printf works
1169 :
1170 elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
1171 test "X$echo_testing_string" = 'X\t' &&
1172 echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
1173 test "X$echo_testing_string" = "X$echo_test_string"; then
1174 CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
1175 export CONFIG_SHELL
1176 SHELL="$CONFIG_SHELL"
1177 export SHELL
1178 ECHO="$CONFIG_SHELL [$]0 --fallback-echo"
1179 elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
1180 test "X$echo_testing_string" = 'X\t' &&
1181 echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
1182 test "X$echo_testing_string" = "X$echo_test_string"; then
1183 ECHO="$CONFIG_SHELL [$]0 --fallback-echo"
1184 else
1185 # maybe with a smaller string...
1186 prev=:
1187
1188 for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do
1189 if { test "X$echo_test_string" = "X`eval $cmd`"; } 2>/dev/null
1190 then
1191 break
1192 fi
1193 prev="$cmd"
1194 done
1195
1196 if test "$prev" != 'sed 50q "[$]0"'; then
1197 echo_test_string=`eval $prev`
1198 export echo_test_string
1199 exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"}
1200 else
1201 # Oops. We lost completely, so just stick with echo.
1202 ECHO=echo
1203 fi
1204 fi
1205 fi
1206 fi
1207 fi
1208 fi
1209
1210 # Copy echo and quote the copy suitably for passing to libtool from
1211 # the Makefile, instead of quoting the original, which is used later.
1212 lt_ECHO=$ECHO
1213 if test "X$lt_ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then
1214 lt_ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo"
1215 fi
1216
1217 AC_SUBST(lt_ECHO)
1218 ])
1219 _LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
1220 _LT_DECL([], [ECHO], [1],
1221 [An echo program that does not interpret backslashes])
1222 ])# _LT_PROG_ECHO_BACKSLASH
1223
1224
1225 # _LT_ENABLE_LOCK
1226 # ---------------
1227 m4_defun([_LT_ENABLE_LOCK],
1228 [AC_ARG_ENABLE([libtool-lock],
1229 [AS_HELP_STRING([--disable-libtool-lock],
1230 [avoid locking (might break parallel builds)])])
1231 test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
1232
1233 # Some flags need to be propagated to the compiler or linker for good
1234 # libtool support.
1235 case $host in
1236 ia64-*-hpux*)
1237 # Find out which ABI we are using.
1238 echo 'int i;' > conftest.$ac_ext
1239 if AC_TRY_EVAL(ac_compile); then
1240 case `/usr/bin/file conftest.$ac_objext` in
1241 *ELF-32*)
1242 HPUX_IA64_MODE="32"
1243 ;;
1244 *ELF-64*)
1245 HPUX_IA64_MODE="64"
1246 ;;
1247 esac
1248 fi
1249 rm -rf conftest*
1250 ;;
1251 *-*-irix6*)
1252 # Find out which ABI we are using.
1253 echo '[#]line __oline__ "configure"' > conftest.$ac_ext
1254 if AC_TRY_EVAL(ac_compile); then
1255 if test "$lt_cv_prog_gnu_ld" = yes; then
1256 case `/usr/bin/file conftest.$ac_objext` in
1257 *32-bit*)
1258 LD="${LD-ld} -melf32bsmip"
1259 ;;
1260 *N32*)
1261 LD="${LD-ld} -melf32bmipn32"
1262 ;;
1263 *64-bit*)
1264 LD="${LD-ld} -melf64bmip"
1265 ;;
1266 esac
1267 else
1268 case `/usr/bin/file conftest.$ac_objext` in
1269 *32-bit*)
1270 LD="${LD-ld} -32"
1271 ;;
1272 *N32*)
1273 LD="${LD-ld} -n32"
1274 ;;
1275 *64-bit*)
1276 LD="${LD-ld} -64"
1277 ;;
1278 esac
1279 fi
1280 fi
1281 rm -rf conftest*
1282 ;;
1283
1284 x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
1285 s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
1286 # Find out which ABI we are using.
1287 echo 'int i;' > conftest.$ac_ext
1288 if AC_TRY_EVAL(ac_compile); then
1289 case `/usr/bin/file conftest.o` in
1290 *32-bit*)
1291 case $host in
1292 x86_64-*kfreebsd*-gnu)
1293 LD="${LD-ld} -m elf_i386_fbsd"
1294 ;;
1295 x86_64-*linux*)
1296 LD="${LD-ld} -m elf_i386"
1297 ;;
1298 ppc64-*linux*|powerpc64-*linux*)
1299 LD="${LD-ld} -m elf32ppclinux"
1300 ;;
1301 s390x-*linux*)
1302 LD="${LD-ld} -m elf_s390"
1303 ;;
1304 sparc64-*linux*)
1305 LD="${LD-ld} -m elf32_sparc"
1306 ;;
1307 esac
1308 ;;
1309 *64-bit*)
1310 case $host in
1311 x86_64-*kfreebsd*-gnu)
1312 LD="${LD-ld} -m elf_x86_64_fbsd"
1313 ;;
1314 x86_64-*linux*)
1315 LD="${LD-ld} -m elf_x86_64"
1316 ;;
1317 ppc*-*linux*|powerpc*-*linux*)
1318 LD="${LD-ld} -m elf64ppc"
1319 ;;
1320 s390*-*linux*|s390*-*tpf*)
1321 LD="${LD-ld} -m elf64_s390"
1322 ;;
1323 sparc*-*linux*)
1324 LD="${LD-ld} -m elf64_sparc"
1325 ;;
1326 esac
1327 ;;
1328 esac
1329 fi
1330 rm -rf conftest*
1331 ;;
1332
1333 *-*-sco3.2v5*)
1334 # On SCO OpenServer 5, we need -belf to get full-featured binaries.
1335 SAVE_CFLAGS="$CFLAGS"
1336 CFLAGS="$CFLAGS -belf"
1337 AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
1338 [AC_LANG_PUSH(C)
1339 AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
1340 AC_LANG_POP])
1341 if test x"$lt_cv_cc_needs_belf" != x"yes"; then
1342 # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
1343 CFLAGS="$SAVE_CFLAGS"
1344 fi
1345 ;;
1346 sparc*-*solaris*)
1347 # Find out which ABI we are using.
1348 echo 'int i;' > conftest.$ac_ext
1349 if AC_TRY_EVAL(ac_compile); then
1350 case `/usr/bin/file conftest.o` in
1351 *64-bit*)
1352 case $lt_cv_prog_gnu_ld in
1353 yes*) LD="${LD-ld} -m elf64_sparc" ;;
1354 *)
1355 if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
1356 LD="${LD-ld} -64"
1357 fi
1358 ;;
1359 esac
1360 ;;
1361 esac
1362 fi
1363 rm -rf conftest*
1364 ;;
1365 esac
1366
1367 need_locks="$enable_libtool_lock"
1368 ])# _LT_ENABLE_LOCK
1369
1370
1371 # _LT_CMD_OLD_ARCHIVE
1372 # -------------------
1373 m4_defun([_LT_CMD_OLD_ARCHIVE],
1374 [AC_CHECK_TOOL(AR, ar, false)
1375 test -z "$AR" && AR=ar
1376 test -z "$AR_FLAGS" && AR_FLAGS=cru
1377 _LT_DECL([], [AR], [1], [The archiver])
1378 _LT_DECL([], [AR_FLAGS], [1])
1379
1380 AC_CHECK_TOOL(STRIP, strip, :)
1381 test -z "$STRIP" && STRIP=:
1382 _LT_DECL([], [STRIP], [1], [A symbol stripping program])
1383
1384 AC_CHECK_TOOL(RANLIB, ranlib, :)
1385 test -z "$RANLIB" && RANLIB=:
1386 _LT_DECL([], [RANLIB], [1],
1387 [Commands used to install an old-style archive])
1388
1389 # Determine commands to create old-style static archives.
1390 old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
1391 old_postinstall_cmds='chmod 644 $oldlib'
1392 old_postuninstall_cmds=
1393
1394 if test -n "$RANLIB"; then
1395 case $host_os in
1396 openbsd*)
1397 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib"
1398 ;;
1399 *)
1400 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib"
1401 ;;
1402 esac
1403 old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
1404 fi
1405 _LT_DECL([], [old_postinstall_cmds], [2])
1406 _LT_DECL([], [old_postuninstall_cmds], [2])
1407 _LT_TAGDECL([], [old_archive_cmds], [2],
1408 [Commands used to build an old-style archive])
1409 ])# _LT_CMD_OLD_ARCHIVE
1410
1411
1412 # _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1413 # [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
1414 # ----------------------------------------------------------------
1415 # Check whether the given compiler option works
1416 AC_DEFUN([_LT_COMPILER_OPTION],
1417 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1418 m4_require([_LT_DECL_SED])dnl
1419 AC_CACHE_CHECK([$1], [$2],
1420 [$2=no
1421 m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
1422 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
1423 lt_compiler_flag="$3"
1424 # Insert the option either (1) after the last *FLAGS variable, or
1425 # (2) before a word containing "conftest.", or (3) at the end.
1426 # Note that $ac_compile itself does not contain backslashes and begins
1427 # with a dollar sign (not a hyphen), so the echo should work correctly.
1428 # The option is referenced via a variable to avoid confusing sed.
1429 lt_compile=`echo "$ac_compile" | $SED \
1430 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1431 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
1432 -e 's:$: $lt_compiler_flag:'`
1433 (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
1434 (eval "$lt_compile" 2>conftest.err)
1435 ac_status=$?
1436 cat conftest.err >&AS_MESSAGE_LOG_FD
1437 echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
1438 if (exit $ac_status) && test -s "$ac_outfile"; then
1439 # The compiler can only warn and ignore the option if not recognized
1440 # So say no if there are warnings other than the usual output.
1441 $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
1442 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1443 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
1444 $2=yes
1445 fi
1446 fi
1447 $RM conftest*
1448 ])
1449
1450 if test x"[$]$2" = xyes; then
1451 m4_if([$5], , :, [$5])
1452 else
1453 m4_if([$6], , :, [$6])
1454 fi
1455 ])# _LT_COMPILER_OPTION
1456
1457 # Old name:
1458 AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
1459 dnl aclocal-1.4 backwards compatibility:
1460 dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
1461
1462
1463 # _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1464 # [ACTION-SUCCESS], [ACTION-FAILURE])
1465 # ----------------------------------------------------
1466 # Check whether the given linker option works
1467 AC_DEFUN([_LT_LINKER_OPTION],
1468 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1469 m4_require([_LT_DECL_SED])dnl
1470 AC_CACHE_CHECK([$1], [$2],
1471 [$2=no
1472 save_LDFLAGS="$LDFLAGS"
1473 LDFLAGS="$LDFLAGS $3"
1474 echo "$lt_simple_link_test_code" > conftest.$ac_ext
1475 if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
1476 # The linker can only warn and ignore the option if not recognized
1477 # So say no if there are warnings
1478 if test -s conftest.err; then
1479 # Append any errors to the config.log.
1480 cat conftest.err 1>&AS_MESSAGE_LOG_FD
1481 $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
1482 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1483 if diff conftest.exp conftest.er2 >/dev/null; then
1484 $2=yes
1485 fi
1486 else
1487 $2=yes
1488 fi
1489 fi
1490 $RM -r conftest*
1491 LDFLAGS="$save_LDFLAGS"
1492 ])
1493
1494 if test x"[$]$2" = xyes; then
1495 m4_if([$4], , :, [$4])
1496 else
1497 m4_if([$5], , :, [$5])
1498 fi
1499 ])# _LT_LINKER_OPTION
1500
1501 # Old name:
1502 AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
1503 dnl aclocal-1.4 backwards compatibility:
1504 dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
1505
1506
1507 # LT_CMD_MAX_LEN
1508 #---------------
1509 AC_DEFUN([LT_CMD_MAX_LEN],
1510 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
1511 # find the maximum length of command line arguments
1512 AC_MSG_CHECKING([the maximum length of command line arguments])
1513 AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
1514 i=0
1515 teststring="ABCD"
1516
1517 case $build_os in
1518 msdosdjgpp*)
1519 # On DJGPP, this test can blow up pretty badly due to problems in libc
1520 # (any single argument exceeding 2000 bytes causes a buffer overrun
1521 # during glob expansion). Even if it were fixed, the result of this
1522 # check would be larger than it should be.
1523 lt_cv_sys_max_cmd_len=12288; # 12K is about right
1524 ;;
1525
1526 gnu*)
1527 # Under GNU Hurd, this test is not required because there is
1528 # no limit to the length of command line arguments.
1529 # Libtool will interpret -1 as no limit whatsoever
1530 lt_cv_sys_max_cmd_len=-1;
1531 ;;
1532
1533 cygwin* | mingw* | cegcc*)
1534 # On Win9x/ME, this test blows up -- it succeeds, but takes
1535 # about 5 minutes as the teststring grows exponentially.
1536 # Worse, since 9x/ME are not pre-emptively multitasking,
1537 # you end up with a "frozen" computer, even though with patience
1538 # the test eventually succeeds (with a max line length of 256k).
1539 # Instead, let's just punt: use the minimum linelength reported by
1540 # all of the supported platforms: 8192 (on NT/2K/XP).
1541 lt_cv_sys_max_cmd_len=8192;
1542 ;;
1543
1544 amigaos*)
1545 # On AmigaOS with pdksh, this test takes hours, literally.
1546 # So we just punt and use a minimum line length of 8192.
1547 lt_cv_sys_max_cmd_len=8192;
1548 ;;
1549
1550 netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
1551 # This has been around since 386BSD, at least. Likely further.
1552 if test -x /sbin/sysctl; then
1553 lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
1554 elif test -x /usr/sbin/sysctl; then
1555 lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
1556 else
1557 lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
1558 fi
1559 # And add a safety zone
1560 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1561 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1562 ;;
1563
1564 interix*)
1565 # We know the value 262144 and hardcode it with a safety zone (like BSD)
1566 lt_cv_sys_max_cmd_len=196608
1567 ;;
1568
1569 osf*)
1570 # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
1571 # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
1572 # nice to cause kernel panics so lets avoid the loop below.
1573 # First set a reasonable default.
1574 lt_cv_sys_max_cmd_len=16384
1575 #
1576 if test -x /sbin/sysconfig; then
1577 case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
1578 *1*) lt_cv_sys_max_cmd_len=-1 ;;
1579 esac
1580 fi
1581 ;;
1582 sco3.2v5*)
1583 lt_cv_sys_max_cmd_len=102400
1584 ;;
1585 sysv5* | sco5v6* | sysv4.2uw2*)
1586 kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
1587 if test -n "$kargmax"; then
1588 lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'`
1589 else
1590 lt_cv_sys_max_cmd_len=32768
1591 fi
1592 ;;
1593 *)
1594 lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
1595 if test -n "$lt_cv_sys_max_cmd_len"; then
1596 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1597 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1598 else
1599 # Make teststring a little bigger before we do anything with it.
1600 # a 1K string should be a reasonable start.
1601 for i in 1 2 3 4 5 6 7 8 ; do
1602 teststring=$teststring$teststring
1603 done
1604 SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
1605 # If test is not a shell built-in, we'll probably end up computing a
1606 # maximum length that is only half of the actual maximum length, but
1607 # we can't tell.
1608 while { test "X"`$SHELL [$]0 --fallback-echo "X$teststring$teststring" 2>/dev/null` \
1609 = "XX$teststring$teststring"; } >/dev/null 2>&1 &&
1610 test $i != 17 # 1/2 MB should be enough
1611 do
1612 i=`expr $i + 1`
1613 teststring=$teststring$teststring
1614 done
1615 # Only check the string length outside the loop.
1616 lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
1617 teststring=
1618 # Add a significant safety factor because C++ compilers can tack on
1619 # massive amounts of additional arguments before passing them to the
1620 # linker. It appears as though 1/2 is a usable value.
1621 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
1622 fi
1623 ;;
1624 esac
1625 ])
1626 if test -n $lt_cv_sys_max_cmd_len ; then
1627 AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
1628 else
1629 AC_MSG_RESULT(none)
1630 fi
1631 max_cmd_len=$lt_cv_sys_max_cmd_len
1632 _LT_DECL([], [max_cmd_len], [0],
1633 [What is the maximum length of a command?])
1634 ])# LT_CMD_MAX_LEN
1635
1636 # Old name:
1637 AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
1638 dnl aclocal-1.4 backwards compatibility:
1639 dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
1640
1641
1642 # _LT_HEADER_DLFCN
1643 # ----------------
1644 m4_defun([_LT_HEADER_DLFCN],
1645 [AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
1646 ])# _LT_HEADER_DLFCN
1647
1648
1649 # _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
1650 # ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
1651 # ----------------------------------------------------------------
1652 m4_defun([_LT_TRY_DLOPEN_SELF],
1653 [m4_require([_LT_HEADER_DLFCN])dnl
1654 if test "$cross_compiling" = yes; then :
1655 [$4]
1656 else
1657 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
1658 lt_status=$lt_dlunknown
1659 cat > conftest.$ac_ext <<_LT_EOF
1660 [#line __oline__ "configure"
1661 #include "confdefs.h"
1662
1663 #if HAVE_DLFCN_H
1664 #include <dlfcn.h>
1665 #endif
1666
1667 #include <stdio.h>
1668
1669 #ifdef RTLD_GLOBAL
1670 # define LT_DLGLOBAL RTLD_GLOBAL
1671 #else
1672 # ifdef DL_GLOBAL
1673 # define LT_DLGLOBAL DL_GLOBAL
1674 # else
1675 # define LT_DLGLOBAL 0
1676 # endif
1677 #endif
1678
1679 /* We may have to define LT_DLLAZY_OR_NOW in the command line if we
1680 find out it does not work in some platform. */
1681 #ifndef LT_DLLAZY_OR_NOW
1682 # ifdef RTLD_LAZY
1683 # define LT_DLLAZY_OR_NOW RTLD_LAZY
1684 # else
1685 # ifdef DL_LAZY
1686 # define LT_DLLAZY_OR_NOW DL_LAZY
1687 # else
1688 # ifdef RTLD_NOW
1689 # define LT_DLLAZY_OR_NOW RTLD_NOW
1690 # else
1691 # ifdef DL_NOW
1692 # define LT_DLLAZY_OR_NOW DL_NOW
1693 # else
1694 # define LT_DLLAZY_OR_NOW 0
1695 # endif
1696 # endif
1697 # endif
1698 # endif
1699 #endif
1700
1701 void fnord() { int i=42;}
1702 int main ()
1703 {
1704 void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
1705 int status = $lt_dlunknown;
1706
1707 if (self)
1708 {
1709 if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
1710 else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
1711 /* dlclose (self); */
1712 }
1713 else
1714 puts (dlerror ());
1715
1716 return status;
1717 }]
1718 _LT_EOF
1719 if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
1720 (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
1721 lt_status=$?
1722 case x$lt_status in
1723 x$lt_dlno_uscore) $1 ;;
1724 x$lt_dlneed_uscore) $2 ;;
1725 x$lt_dlunknown|x*) $3 ;;
1726 esac
1727 else :
1728 # compilation failed
1729 $3
1730 fi
1731 fi
1732 rm -fr conftest*
1733 ])# _LT_TRY_DLOPEN_SELF
1734
1735
1736 # LT_SYS_DLOPEN_SELF
1737 # ------------------
1738 AC_DEFUN([LT_SYS_DLOPEN_SELF],
1739 [m4_require([_LT_HEADER_DLFCN])dnl
1740 if test "x$enable_dlopen" != xyes; then
1741 enable_dlopen=unknown
1742 enable_dlopen_self=unknown
1743 enable_dlopen_self_static=unknown
1744 else
1745 lt_cv_dlopen=no
1746 lt_cv_dlopen_libs=
1747
1748 case $host_os in
1749 beos*)
1750 lt_cv_dlopen="load_add_on"
1751 lt_cv_dlopen_libs=
1752 lt_cv_dlopen_self=yes
1753 ;;
1754
1755 mingw* | pw32* | cegcc*)
1756 lt_cv_dlopen="LoadLibrary"
1757 lt_cv_dlopen_libs=
1758 ;;
1759
1760 cygwin*)
1761 lt_cv_dlopen="dlopen"
1762 lt_cv_dlopen_libs=
1763 ;;
1764
1765 darwin*)
1766 # if libdl is installed we need to link against it
1767 AC_CHECK_LIB([dl], [dlopen],
1768 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
1769 lt_cv_dlopen="dyld"
1770 lt_cv_dlopen_libs=
1771 lt_cv_dlopen_self=yes
1772 ])
1773 ;;
1774
1775 *)
1776 AC_CHECK_FUNC([shl_load],
1777 [lt_cv_dlopen="shl_load"],
1778 [AC_CHECK_LIB([dld], [shl_load],
1779 [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
1780 [AC_CHECK_FUNC([dlopen],
1781 [lt_cv_dlopen="dlopen"],
1782 [AC_CHECK_LIB([dl], [dlopen],
1783 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
1784 [AC_CHECK_LIB([svld], [dlopen],
1785 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
1786 [AC_CHECK_LIB([dld], [dld_link],
1787 [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
1788 ])
1789 ])
1790 ])
1791 ])
1792 ])
1793 ;;
1794 esac
1795
1796 if test "x$lt_cv_dlopen" != xno; then
1797 enable_dlopen=yes
1798 else
1799 enable_dlopen=no
1800 fi
1801
1802 case $lt_cv_dlopen in
1803 dlopen)
1804 save_CPPFLAGS="$CPPFLAGS"
1805 test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
1806
1807 save_LDFLAGS="$LDFLAGS"
1808 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
1809
1810 save_LIBS="$LIBS"
1811 LIBS="$lt_cv_dlopen_libs $LIBS"
1812
1813 AC_CACHE_CHECK([whether a program can dlopen itself],
1814 lt_cv_dlopen_self, [dnl
1815 _LT_TRY_DLOPEN_SELF(
1816 lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
1817 lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
1818 ])
1819
1820 if test "x$lt_cv_dlopen_self" = xyes; then
1821 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
1822 AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
1823 lt_cv_dlopen_self_static, [dnl
1824 _LT_TRY_DLOPEN_SELF(
1825 lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
1826 lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
1827 ])
1828 fi
1829
1830 CPPFLAGS="$save_CPPFLAGS"
1831 LDFLAGS="$save_LDFLAGS"
1832 LIBS="$save_LIBS"
1833 ;;
1834 esac
1835
1836 case $lt_cv_dlopen_self in
1837 yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
1838 *) enable_dlopen_self=unknown ;;
1839 esac
1840
1841 case $lt_cv_dlopen_self_static in
1842 yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
1843 *) enable_dlopen_self_static=unknown ;;
1844 esac
1845 fi
1846 _LT_DECL([dlopen_support], [enable_dlopen], [0],
1847 [Whether dlopen is supported])
1848 _LT_DECL([dlopen_self], [enable_dlopen_self], [0],
1849 [Whether dlopen of programs is supported])
1850 _LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
1851 [Whether dlopen of statically linked programs is supported])
1852 ])# LT_SYS_DLOPEN_SELF
1853
1854 # Old name:
1855 AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
1856 dnl aclocal-1.4 backwards compatibility:
1857 dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
1858
1859
1860 # _LT_COMPILER_C_O([TAGNAME])
1861 # ---------------------------
1862 # Check to see if options -c and -o are simultaneously supported by compiler.
1863 # This macro does not hard code the compiler like AC_PROG_CC_C_O.
1864 m4_defun([_LT_COMPILER_C_O],
1865 [m4_require([_LT_DECL_SED])dnl
1866 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1867 m4_require([_LT_TAG_COMPILER])dnl
1868 AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
1869 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
1870 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
1871 $RM -r conftest 2>/dev/null
1872 mkdir conftest
1873 cd conftest
1874 mkdir out
1875 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
1876
1877 lt_compiler_flag="-o out/conftest2.$ac_objext"
1878 # Insert the option either (1) after the last *FLAGS variable, or
1879 # (2) before a word containing "conftest.", or (3) at the end.
1880 # Note that $ac_compile itself does not contain backslashes and begins
1881 # with a dollar sign (not a hyphen), so the echo should work correctly.
1882 lt_compile=`echo "$ac_compile" | $SED \
1883 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1884 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
1885 -e 's:$: $lt_compiler_flag:'`
1886 (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
1887 (eval "$lt_compile" 2>out/conftest.err)
1888 ac_status=$?
1889 cat out/conftest.err >&AS_MESSAGE_LOG_FD
1890 echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
1891 if (exit $ac_status) && test -s out/conftest2.$ac_objext
1892 then
1893 # The compiler can only warn and ignore the option if not recognized
1894 # So say no if there are warnings
1895 $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp
1896 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
1897 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
1898 _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
1899 fi
1900 fi
1901 chmod u+w . 2>&AS_MESSAGE_LOG_FD
1902 $RM conftest*
1903 # SGI C++ compiler will create directory out/ii_files/ for
1904 # template instantiation
1905 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
1906 $RM out/* && rmdir out
1907 cd ..
1908 $RM -r conftest
1909 $RM conftest*
1910 ])
1911 _LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
1912 [Does compiler simultaneously support -c and -o options?])
1913 ])# _LT_COMPILER_C_O
1914
1915
1916 # _LT_COMPILER_FILE_LOCKS([TAGNAME])
1917 # ----------------------------------
1918 # Check to see if we can do hard links to lock some files if needed
1919 m4_defun([_LT_COMPILER_FILE_LOCKS],
1920 [m4_require([_LT_ENABLE_LOCK])dnl
1921 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1922 _LT_COMPILER_C_O([$1])
1923
1924 hard_links="nottested"
1925 if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
1926 # do not overwrite the value of need_locks provided by the user
1927 AC_MSG_CHECKING([if we can lock with hard links])
1928 hard_links=yes
1929 $RM conftest*
1930 ln conftest.a conftest.b 2>/dev/null && hard_links=no
1931 touch conftest.a
1932 ln conftest.a conftest.b 2>&5 || hard_links=no
1933 ln conftest.a conftest.b 2>/dev/null && hard_links=no
1934 AC_MSG_RESULT([$hard_links])
1935 if test "$hard_links" = no; then
1936 AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
1937 need_locks=warn
1938 fi
1939 else
1940 need_locks=no
1941 fi
1942 _LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
1943 ])# _LT_COMPILER_FILE_LOCKS
1944
1945
1946 # _LT_CHECK_OBJDIR
1947 # ----------------
1948 m4_defun([_LT_CHECK_OBJDIR],
1949 [AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
1950 [rm -f .libs 2>/dev/null
1951 mkdir .libs 2>/dev/null
1952 if test -d .libs; then
1953 lt_cv_objdir=.libs
1954 else
1955 # MS-DOS does not allow filenames that begin with a dot.
1956 lt_cv_objdir=_libs
1957 fi
1958 rmdir .libs 2>/dev/null])
1959 objdir=$lt_cv_objdir
1960 _LT_DECL([], [objdir], [0],
1961 [The name of the directory that contains temporary libtool files])dnl
1962 m4_pattern_allow([LT_OBJDIR])dnl
1963 AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/",
1964 [Define to the sub-directory in which libtool stores uninstalled libraries.])
1965 ])# _LT_CHECK_OBJDIR
1966
1967
1968 # _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
1969 # --------------------------------------
1970 # Check hardcoding attributes.
1971 m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
1972 [AC_MSG_CHECKING([how to hardcode library paths into programs])
1973 _LT_TAGVAR(hardcode_action, $1)=
1974 if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
1975 test -n "$_LT_TAGVAR(runpath_var, $1)" ||
1976 test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then
1977
1978 # We can hardcode non-existent directories.
1979 if test "$_LT_TAGVAR(hardcode_direct, $1)" != no &&
1980 # If the only mechanism to avoid hardcoding is shlibpath_var, we
1981 # have to relink, otherwise we might link with an installed library
1982 # when we should be linking with a yet-to-be-installed one
1983 ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
1984 test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then
1985 # Linking always hardcodes the temporary library directory.
1986 _LT_TAGVAR(hardcode_action, $1)=relink
1987 else
1988 # We can link without hardcoding, and we can hardcode nonexisting dirs.
1989 _LT_TAGVAR(hardcode_action, $1)=immediate
1990 fi
1991 else
1992 # We cannot hardcode anything, or else we can only hardcode existing
1993 # directories.
1994 _LT_TAGVAR(hardcode_action, $1)=unsupported
1995 fi
1996 AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
1997
1998 if test "$_LT_TAGVAR(hardcode_action, $1)" = relink ||
1999 test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then
2000 # Fast installation is not supported
2001 enable_fast_install=no
2002 elif test "$shlibpath_overrides_runpath" = yes ||
2003 test "$enable_shared" = no; then
2004 # Fast installation is not necessary
2005 enable_fast_install=needless
2006 fi
2007 _LT_TAGDECL([], [hardcode_action], [0],
2008 [How to hardcode a shared library path into an executable])
2009 ])# _LT_LINKER_HARDCODE_LIBPATH
2010
2011
2012 # _LT_CMD_STRIPLIB
2013 # ----------------
2014 m4_defun([_LT_CMD_STRIPLIB],
2015 [m4_require([_LT_DECL_EGREP])
2016 striplib=
2017 old_striplib=
2018 AC_MSG_CHECKING([whether stripping libraries is possible])
2019 if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
2020 test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
2021 test -z "$striplib" && striplib="$STRIP --strip-unneeded"
2022 AC_MSG_RESULT([yes])
2023 else
2024 # FIXME - insert some real tests, host_os isn't really good enough
2025 case $host_os in
2026 darwin*)
2027 if test -n "$STRIP" ; then
2028 striplib="$STRIP -x"
2029 old_striplib="$STRIP -S"
2030 AC_MSG_RESULT([yes])
2031 else
2032 AC_MSG_RESULT([no])
2033 fi
2034 ;;
2035 *)
2036 AC_MSG_RESULT([no])
2037 ;;
2038 esac
2039 fi
2040 _LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
2041 _LT_DECL([], [striplib], [1])
2042 ])# _LT_CMD_STRIPLIB
2043
2044
2045 # _LT_SYS_DYNAMIC_LINKER([TAG])
2046 # -----------------------------
2047 # PORTME Fill in your ld.so characteristics
2048 m4_defun([_LT_SYS_DYNAMIC_LINKER],
2049 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
2050 m4_require([_LT_DECL_EGREP])dnl
2051 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2052 m4_require([_LT_DECL_OBJDUMP])dnl
2053 m4_require([_LT_DECL_SED])dnl
2054 AC_MSG_CHECKING([dynamic linker characteristics])
2055 m4_if([$1],
2056 [], [
2057 if test "$GCC" = yes; then
2058 case $host_os in
2059 darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
2060 *) lt_awk_arg="/^libraries:/" ;;
2061 esac
2062 lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e "s,=/,/,g"`
2063 if $ECHO "$lt_search_path_spec" | $GREP ';' >/dev/null ; then
2064 # if the path contains ";" then we assume it to be the separator
2065 # otherwise default to the standard path separator (i.e. ":") - it is
2066 # assumed that no part of a normal pathname contains ";" but that should
2067 # okay in the real world where ";" in dirpaths is itself problematic.
2068 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e 's/;/ /g'`
2069 else
2070 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2071 fi
2072 # Ok, now we have the path, separated by spaces, we can step through it
2073 # and add multilib dir if necessary.
2074 lt_tmp_lt_search_path_spec=
2075 lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
2076 for lt_sys_path in $lt_search_path_spec; do
2077 if test -d "$lt_sys_path/$lt_multi_os_dir"; then
2078 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
2079 else
2080 test -d "$lt_sys_path" && \
2081 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
2082 fi
2083 done
2084 lt_search_path_spec=`$ECHO $lt_tmp_lt_search_path_spec | awk '
2085 BEGIN {RS=" "; FS="/|\n";} {
2086 lt_foo="";
2087 lt_count=0;
2088 for (lt_i = NF; lt_i > 0; lt_i--) {
2089 if ($lt_i != "" && $lt_i != ".") {
2090 if ($lt_i == "..") {
2091 lt_count++;
2092 } else {
2093 if (lt_count == 0) {
2094 lt_foo="/" $lt_i lt_foo;
2095 } else {
2096 lt_count--;
2097 }
2098 }
2099 }
2100 }
2101 if (lt_foo != "") { lt_freq[[lt_foo]]++; }
2102 if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
2103 }'`
2104 sys_lib_search_path_spec=`$ECHO $lt_search_path_spec`
2105 else
2106 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
2107 fi])
2108 library_names_spec=
2109 libname_spec='lib$name'
2110 soname_spec=
2111 shrext_cmds=".so"
2112 postinstall_cmds=
2113 postuninstall_cmds=
2114 finish_cmds=
2115 finish_eval=
2116 shlibpath_var=
2117 shlibpath_overrides_runpath=unknown
2118 version_type=none
2119 dynamic_linker="$host_os ld.so"
2120 sys_lib_dlsearch_path_spec="/lib /usr/lib"
2121 need_lib_prefix=unknown
2122 hardcode_into_libs=no
2123
2124 # when you set need_version to no, make sure it does not cause -set_version
2125 # flags to be left without arguments
2126 need_version=unknown
2127
2128 case $host_os in
2129 aix3*)
2130 version_type=linux
2131 library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
2132 shlibpath_var=LIBPATH
2133
2134 # AIX 3 has no versioning support, so we append a major version to the name.
2135 soname_spec='${libname}${release}${shared_ext}$major'
2136 ;;
2137
2138 aix[[4-9]]*)
2139 version_type=linux
2140 need_lib_prefix=no
2141 need_version=no
2142 hardcode_into_libs=yes
2143 if test "$host_cpu" = ia64; then
2144 # AIX 5 supports IA64
2145 library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
2146 shlibpath_var=LD_LIBRARY_PATH
2147 else
2148 # With GCC up to 2.95.x, collect2 would create an import file
2149 # for dependence libraries. The import file would start with
2150 # the line `#! .'. This would cause the generated library to
2151 # depend on `.', always an invalid library. This was fixed in
2152 # development snapshots of GCC prior to 3.0.
2153 case $host_os in
2154 aix4 | aix4.[[01]] | aix4.[[01]].*)
2155 if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
2156 echo ' yes '
2157 echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
2158 :
2159 else
2160 can_build_shared=no
2161 fi
2162 ;;
2163 esac
2164 # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
2165 # soname into executable. Probably we can add versioning support to
2166 # collect2, so additional links can be useful in future.
2167 if test "$aix_use_runtimelinking" = yes; then
2168 # If using run time linking (on AIX 4.2 or later) use lib<name>.so
2169 # instead of lib<name>.a to let people know that these are not
2170 # typical AIX shared libraries.
2171 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2172 else
2173 # We preserve .a as extension for shared libraries through AIX4.2
2174 # and later when we are not doing run time linking.
2175 library_names_spec='${libname}${release}.a $libname.a'
2176 soname_spec='${libname}${release}${shared_ext}$major'
2177 fi
2178 shlibpath_var=LIBPATH
2179 fi
2180 ;;
2181
2182 amigaos*)
2183 case $host_cpu in
2184 powerpc)
2185 # Since July 2007 AmigaOS4 officially supports .so libraries.
2186 # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
2187 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2188 ;;
2189 m68k)
2190 library_names_spec='$libname.ixlibrary $libname.a'
2191 # Create ${libname}_ixlibrary.a entries in /sys/libs.
2192 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'
2193 ;;
2194 esac
2195 ;;
2196
2197 beos*)
2198 library_names_spec='${libname}${shared_ext}'
2199 dynamic_linker="$host_os ld.so"
2200 shlibpath_var=LIBRARY_PATH
2201 ;;
2202
2203 bsdi[[45]]*)
2204 version_type=linux
2205 need_version=no
2206 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2207 soname_spec='${libname}${release}${shared_ext}$major'
2208 finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
2209 shlibpath_var=LD_LIBRARY_PATH
2210 sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
2211 sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
2212 # the default ld.so.conf also contains /usr/contrib/lib and
2213 # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
2214 # libtool to hard-code these into programs
2215 ;;
2216
2217 cygwin* | mingw* | pw32* | cegcc*)
2218 version_type=windows
2219 shrext_cmds=".dll"
2220 need_version=no
2221 need_lib_prefix=no
2222
2223 case $GCC,$host_os in
2224 yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*)
2225 library_names_spec='$libname.dll.a'
2226 # DLL is installed to $(libdir)/../bin by postinstall_cmds
2227 postinstall_cmds='base_file=`basename \${file}`~
2228 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
2229 dldir=$destdir/`dirname \$dlpath`~
2230 test -d \$dldir || mkdir -p \$dldir~
2231 $install_prog $dir/$dlname \$dldir/$dlname~
2232 chmod a+x \$dldir/$dlname~
2233 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
2234 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
2235 fi'
2236 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2237 dlpath=$dir/\$dldll~
2238 $RM \$dlpath'
2239 shlibpath_overrides_runpath=yes
2240
2241 case $host_os in
2242 cygwin*)
2243 # Cygwin DLLs use 'cyg' prefix rather than 'lib'
2244 soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2245 sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
2246 ;;
2247 mingw* | cegcc*)
2248 # MinGW DLLs use traditional 'lib' prefix
2249 soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2250 sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
2251 if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
2252 # It is most probably a Windows format PATH printed by
2253 # mingw gcc, but we are running on Cygwin. Gcc prints its search
2254 # path with ; separators, and with drive letters. We can handle the
2255 # drive letters (cygwin fileutils understands them), so leave them,
2256 # especially as we might pass files found there to a mingw objdump,
2257 # which wouldn't understand a cygwinified path. Ahh.
2258 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
2259 else
2260 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2261 fi
2262 ;;
2263 pw32*)
2264 # pw32 DLLs use 'pw' prefix rather than 'lib'
2265 library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2266 ;;
2267 esac
2268 ;;
2269
2270 *)
2271 library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
2272 ;;
2273 esac
2274 dynamic_linker='Win32 ld.exe'
2275 # FIXME: first we should search . and the directory the executable is in
2276 shlibpath_var=PATH
2277 ;;
2278
2279 darwin* | rhapsody*)
2280 dynamic_linker="$host_os dyld"
2281 version_type=darwin
2282 need_lib_prefix=no
2283 need_version=no
2284 library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
2285 soname_spec='${libname}${release}${major}$shared_ext'
2286 shlibpath_overrides_runpath=yes
2287 shlibpath_var=DYLD_LIBRARY_PATH
2288 shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
2289 m4_if([$1], [],[
2290 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
2291 sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
2292 ;;
2293
2294 dgux*)
2295 version_type=linux
2296 need_lib_prefix=no
2297 need_version=no
2298 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
2299 soname_spec='${libname}${release}${shared_ext}$major'
2300 shlibpath_var=LD_LIBRARY_PATH
2301 ;;
2302
2303 freebsd1*)
2304 dynamic_linker=no
2305 ;;
2306
2307 freebsd* | dragonfly*)
2308 # DragonFly does not have aout. When/if they implement a new
2309 # versioning mechanism, adjust this.
2310 if test -x /usr/bin/objformat; then
2311 objformat=`/usr/bin/objformat`
2312 else
2313 case $host_os in
2314 freebsd[[123]]*) objformat=aout ;;
2315 *) objformat=elf ;;
2316 esac
2317 fi
2318 version_type=freebsd-$objformat
2319 case $version_type in
2320 freebsd-elf*)
2321 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
2322 need_version=no
2323 need_lib_prefix=no
2324 ;;
2325 freebsd-*)
2326 library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
2327 need_version=yes
2328 ;;
2329 esac
2330 shlibpath_var=LD_LIBRARY_PATH
2331 case $host_os in
2332 freebsd2*)
2333 shlibpath_overrides_runpath=yes
2334 ;;
2335 freebsd3.[[01]]* | freebsdelf3.[[01]]*)
2336 shlibpath_overrides_runpath=yes
2337 hardcode_into_libs=yes
2338 ;;
2339 freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
2340 freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
2341 shlibpath_overrides_runpath=no
2342 hardcode_into_libs=yes
2343 ;;
2344 *) # from 4.6 on, and DragonFly
2345 shlibpath_overrides_runpath=yes
2346 hardcode_into_libs=yes
2347 ;;
2348 esac
2349 ;;
2350
2351 gnu*)
2352 version_type=linux
2353 need_lib_prefix=no
2354 need_version=no
2355 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
2356 soname_spec='${libname}${release}${shared_ext}$major'
2357 shlibpath_var=LD_LIBRARY_PATH
2358 hardcode_into_libs=yes
2359 ;;
2360
2361 hpux9* | hpux10* | hpux11*)
2362 # Give a soname corresponding to the major version so that dld.sl refuses to
2363 # link against other versions.
2364 version_type=sunos
2365 need_lib_prefix=no
2366 need_version=no
2367 case $host_cpu in
2368 ia64*)
2369 shrext_cmds='.so'
2370 hardcode_into_libs=yes
2371 dynamic_linker="$host_os dld.so"
2372 shlibpath_var=LD_LIBRARY_PATH
2373 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2374 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2375 soname_spec='${libname}${release}${shared_ext}$major'
2376 if test "X$HPUX_IA64_MODE" = X32; then
2377 sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
2378 else
2379 sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
2380 fi
2381 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2382 ;;
2383 hppa*64*)
2384 shrext_cmds='.sl'
2385 hardcode_into_libs=yes
2386 dynamic_linker="$host_os dld.sl"
2387 shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
2388 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2389 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2390 soname_spec='${libname}${release}${shared_ext}$major'
2391 sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
2392 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2393 ;;
2394 *)
2395 shrext_cmds='.sl'
2396 dynamic_linker="$host_os dld.sl"
2397 shlibpath_var=SHLIB_PATH
2398 shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
2399 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2400 soname_spec='${libname}${release}${shared_ext}$major'
2401 ;;
2402 esac
2403 # HP-UX runs *really* slowly unless shared libraries are mode 555.
2404 postinstall_cmds='chmod 555 $lib'
2405 ;;
2406
2407 interix[[3-9]]*)
2408 version_type=linux
2409 need_lib_prefix=no
2410 need_version=no
2411 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2412 soname_spec='${libname}${release}${shared_ext}$major'
2413 dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
2414 shlibpath_var=LD_LIBRARY_PATH
2415 shlibpath_overrides_runpath=no
2416 hardcode_into_libs=yes
2417 ;;
2418
2419 irix5* | irix6* | nonstopux*)
2420 case $host_os in
2421 nonstopux*) version_type=nonstopux ;;
2422 *)
2423 if test "$lt_cv_prog_gnu_ld" = yes; then
2424 version_type=linux
2425 else
2426 version_type=irix
2427 fi ;;
2428 esac
2429 need_lib_prefix=no
2430 need_version=no
2431 soname_spec='${libname}${release}${shared_ext}$major'
2432 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
2433 case $host_os in
2434 irix5* | nonstopux*)
2435 libsuff= shlibsuff=
2436 ;;
2437 *)
2438 case $LD in # libtool.m4 will add one of these switches to LD
2439 *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
2440 libsuff= shlibsuff= libmagic=32-bit;;
2441 *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
2442 libsuff=32 shlibsuff=N32 libmagic=N32;;
2443 *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
2444 libsuff=64 shlibsuff=64 libmagic=64-bit;;
2445 *) libsuff= shlibsuff= libmagic=never-match;;
2446 esac
2447 ;;
2448 esac
2449 shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
2450 shlibpath_overrides_runpath=no
2451 sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
2452 sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
2453 hardcode_into_libs=yes
2454 ;;
2455
2456 # No shared lib support for Linux oldld, aout, or coff.
2457 linux*oldld* | linux*aout* | linux*coff*)
2458 dynamic_linker=no
2459 ;;
2460
2461 # This must be Linux ELF.
2462 linux* | k*bsd*-gnu | kopensolaris*-gnu)
2463 version_type=linux
2464 need_lib_prefix=no
2465 need_version=no
2466 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2467 soname_spec='${libname}${release}${shared_ext}$major'
2468 finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
2469 shlibpath_var=LD_LIBRARY_PATH
2470 shlibpath_overrides_runpath=no
2471 # Some binutils ld are patched to set DT_RUNPATH
2472 save_LDFLAGS=$LDFLAGS
2473 save_libdir=$libdir
2474 eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
2475 LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
2476 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
2477 [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
2478 [shlibpath_overrides_runpath=yes])])
2479 LDFLAGS=$save_LDFLAGS
2480 libdir=$save_libdir
2481
2482 # This implies no fast_install, which is unacceptable.
2483 # Some rework will be needed to allow for fast_install
2484 # before this can be enabled.
2485 hardcode_into_libs=yes
2486
2487 # Append ld.so.conf contents to the search path
2488 if test -f /etc/ld.so.conf; then
2489 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' ' '`
2490 sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
2491 fi
2492
2493 # We used to test for /lib/ld.so.1 and disable shared libraries on
2494 # powerpc, because MkLinux only supported shared libraries with the
2495 # GNU dynamic linker. Since this was broken with cross compilers,
2496 # most powerpc-linux boxes support dynamic linking these days and
2497 # people can always --disable-shared, the test was removed, and we
2498 # assume the GNU/Linux dynamic linker is in use.
2499 dynamic_linker='GNU/Linux ld.so'
2500 ;;
2501
2502 netbsdelf*-gnu)
2503 version_type=linux
2504 need_lib_prefix=no
2505 need_version=no
2506 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2507 soname_spec='${libname}${release}${shared_ext}$major'
2508 shlibpath_var=LD_LIBRARY_PATH
2509 shlibpath_overrides_runpath=no
2510 hardcode_into_libs=yes
2511 dynamic_linker='NetBSD ld.elf_so'
2512 ;;
2513
2514 netbsd*)
2515 version_type=sunos
2516 need_lib_prefix=no
2517 need_version=no
2518 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
2519 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2520 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2521 dynamic_linker='NetBSD (a.out) ld.so'
2522 else
2523 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2524 soname_spec='${libname}${release}${shared_ext}$major'
2525 dynamic_linker='NetBSD ld.elf_so'
2526 fi
2527 shlibpath_var=LD_LIBRARY_PATH
2528 shlibpath_overrides_runpath=yes
2529 hardcode_into_libs=yes
2530 ;;
2531
2532 newsos6)
2533 version_type=linux
2534 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2535 shlibpath_var=LD_LIBRARY_PATH
2536 shlibpath_overrides_runpath=yes
2537 ;;
2538
2539 *nto* | *qnx*)
2540 version_type=qnx
2541 need_lib_prefix=no
2542 need_version=no
2543 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2544 soname_spec='${libname}${release}${shared_ext}$major'
2545 shlibpath_var=LD_LIBRARY_PATH
2546 shlibpath_overrides_runpath=no
2547 hardcode_into_libs=yes
2548 dynamic_linker='ldqnx.so'
2549 ;;
2550
2551 openbsd*)
2552 version_type=sunos
2553 sys_lib_dlsearch_path_spec="/usr/lib"
2554 need_lib_prefix=no
2555 # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
2556 case $host_os in
2557 openbsd3.3 | openbsd3.3.*) need_version=yes ;;
2558 *) need_version=no ;;
2559 esac
2560 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2561 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2562 shlibpath_var=LD_LIBRARY_PATH
2563 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
2564 case $host_os in
2565 openbsd2.[[89]] | openbsd2.[[89]].*)
2566 shlibpath_overrides_runpath=no
2567 ;;
2568 *)
2569 shlibpath_overrides_runpath=yes
2570 ;;
2571 esac
2572 else
2573 shlibpath_overrides_runpath=yes
2574 fi
2575 ;;
2576
2577 os2*)
2578 libname_spec='$name'
2579 shrext_cmds=".dll"
2580 need_lib_prefix=no
2581 library_names_spec='$libname${shared_ext} $libname.a'
2582 dynamic_linker='OS/2 ld.exe'
2583 shlibpath_var=LIBPATH
2584 ;;
2585
2586 osf3* | osf4* | osf5*)
2587 version_type=osf
2588 need_lib_prefix=no
2589 need_version=no
2590 soname_spec='${libname}${release}${shared_ext}$major'
2591 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2592 shlibpath_var=LD_LIBRARY_PATH
2593 sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
2594 sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
2595 ;;
2596
2597 rdos*)
2598 dynamic_linker=no
2599 ;;
2600
2601 solaris*)
2602 version_type=linux
2603 need_lib_prefix=no
2604 need_version=no
2605 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2606 soname_spec='${libname}${release}${shared_ext}$major'
2607 shlibpath_var=LD_LIBRARY_PATH
2608 shlibpath_overrides_runpath=yes
2609 hardcode_into_libs=yes
2610 # ldd complains unless libraries are executable
2611 postinstall_cmds='chmod +x $lib'
2612 ;;
2613
2614 sunos4*)
2615 version_type=sunos
2616 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2617 finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
2618 shlibpath_var=LD_LIBRARY_PATH
2619 shlibpath_overrides_runpath=yes
2620 if test "$with_gnu_ld" = yes; then
2621 need_lib_prefix=no
2622 fi
2623 need_version=yes
2624 ;;
2625
2626 sysv4 | sysv4.3*)
2627 version_type=linux
2628 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2629 soname_spec='${libname}${release}${shared_ext}$major'
2630 shlibpath_var=LD_LIBRARY_PATH
2631 case $host_vendor in
2632 sni)
2633 shlibpath_overrides_runpath=no
2634 need_lib_prefix=no
2635 runpath_var=LD_RUN_PATH
2636 ;;
2637 siemens)
2638 need_lib_prefix=no
2639 ;;
2640 motorola)
2641 need_lib_prefix=no
2642 need_version=no
2643 shlibpath_overrides_runpath=no
2644 sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
2645 ;;
2646 esac
2647 ;;
2648
2649 sysv4*MP*)
2650 if test -d /usr/nec ;then
2651 version_type=linux
2652 library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
2653 soname_spec='$libname${shared_ext}.$major'
2654 shlibpath_var=LD_LIBRARY_PATH
2655 fi
2656 ;;
2657
2658 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
2659 version_type=freebsd-elf
2660 need_lib_prefix=no
2661 need_version=no
2662 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
2663 soname_spec='${libname}${release}${shared_ext}$major'
2664 shlibpath_var=LD_LIBRARY_PATH
2665 shlibpath_overrides_runpath=yes
2666 hardcode_into_libs=yes
2667 if test "$with_gnu_ld" = yes; then
2668 sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
2669 else
2670 sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
2671 case $host_os in
2672 sco3.2v5*)
2673 sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
2674 ;;
2675 esac
2676 fi
2677 sys_lib_dlsearch_path_spec='/usr/lib'
2678 ;;
2679
2680 tpf*)
2681 # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
2682 version_type=linux
2683 need_lib_prefix=no
2684 need_version=no
2685 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2686 shlibpath_var=LD_LIBRARY_PATH
2687 shlibpath_overrides_runpath=no
2688 hardcode_into_libs=yes
2689 ;;
2690
2691 uts4*)
2692 version_type=linux
2693 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2694 soname_spec='${libname}${release}${shared_ext}$major'
2695 shlibpath_var=LD_LIBRARY_PATH
2696 ;;
2697
2698 *)
2699 dynamic_linker=no
2700 ;;
2701 esac
2702 AC_MSG_RESULT([$dynamic_linker])
2703 test "$dynamic_linker" = no && can_build_shared=no
2704
2705 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
2706 if test "$GCC" = yes; then
2707 variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
2708 fi
2709
2710 if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
2711 sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
2712 fi
2713 if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
2714 sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
2715 fi
2716
2717 _LT_DECL([], [variables_saved_for_relink], [1],
2718 [Variables whose values should be saved in libtool wrapper scripts and
2719 restored at link time])
2720 _LT_DECL([], [need_lib_prefix], [0],
2721 [Do we need the "lib" prefix for modules?])
2722 _LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
2723 _LT_DECL([], [version_type], [0], [Library versioning type])
2724 _LT_DECL([], [runpath_var], [0], [Shared library runtime path variable])
2725 _LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
2726 _LT_DECL([], [shlibpath_overrides_runpath], [0],
2727 [Is shlibpath searched before the hard-coded library search path?])
2728 _LT_DECL([], [libname_spec], [1], [Format of library name prefix])
2729 _LT_DECL([], [library_names_spec], [1],
2730 [[List of archive names. First name is the real one, the rest are links.
2731 The last name is the one that the linker finds with -lNAME]])
2732 _LT_DECL([], [soname_spec], [1],
2733 [[The coded name of the library, if different from the real name]])
2734 _LT_DECL([], [postinstall_cmds], [2],
2735 [Command to use after installation of a shared archive])
2736 _LT_DECL([], [postuninstall_cmds], [2],
2737 [Command to use after uninstallation of a shared archive])
2738 _LT_DECL([], [finish_cmds], [2],
2739 [Commands used to finish a libtool library installation in a directory])
2740 _LT_DECL([], [finish_eval], [1],
2741 [[As "finish_cmds", except a single script fragment to be evaled but
2742 not shown]])
2743 _LT_DECL([], [hardcode_into_libs], [0],
2744 [Whether we should hardcode library paths into libraries])
2745 _LT_DECL([], [sys_lib_search_path_spec], [2],
2746 [Compile-time system search path for libraries])
2747 _LT_DECL([], [sys_lib_dlsearch_path_spec], [2],
2748 [Run-time system search path for libraries])
2749 ])# _LT_SYS_DYNAMIC_LINKER
2750
2751
2752 # _LT_PATH_TOOL_PREFIX(TOOL)
2753 # --------------------------
2754 # find a file program which can recognize shared library
2755 AC_DEFUN([_LT_PATH_TOOL_PREFIX],
2756 [m4_require([_LT_DECL_EGREP])dnl
2757 AC_MSG_CHECKING([for $1])
2758 AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
2759 [case $MAGIC_CMD in
2760 [[\\/*] | ?:[\\/]*])
2761 lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
2762 ;;
2763 *)
2764 lt_save_MAGIC_CMD="$MAGIC_CMD"
2765 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
2766 dnl $ac_dummy forces splitting on constant user-supplied paths.
2767 dnl POSIX.2 word splitting is done only on the output of word expansions,
2768 dnl not every word. This closes a longstanding sh security hole.
2769 ac_dummy="m4_if([$2], , $PATH, [$2])"
2770 for ac_dir in $ac_dummy; do
2771 IFS="$lt_save_ifs"
2772 test -z "$ac_dir" && ac_dir=.
2773 if test -f $ac_dir/$1; then
2774 lt_cv_path_MAGIC_CMD="$ac_dir/$1"
2775 if test -n "$file_magic_test_file"; then
2776 case $deplibs_check_method in
2777 "file_magic "*)
2778 file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
2779 MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
2780 if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
2781 $EGREP "$file_magic_regex" > /dev/null; then
2782 :
2783 else
2784 cat <<_LT_EOF 1>&2
2785
2786 *** Warning: the command libtool uses to detect shared libraries,
2787 *** $file_magic_cmd, produces output that libtool cannot recognize.
2788 *** The result is that libtool may fail to recognize shared libraries
2789 *** as such. This will affect the creation of libtool libraries that
2790 *** depend on shared libraries, but programs linked with such libtool
2791 *** libraries will work regardless of this problem. Nevertheless, you
2792 *** may want to report the problem to your system manager and/or to
2793 *** bug-libtool@gnu.org
2794
2795 _LT_EOF
2796 fi ;;
2797 esac
2798 fi
2799 break
2800 fi
2801 done
2802 IFS="$lt_save_ifs"
2803 MAGIC_CMD="$lt_save_MAGIC_CMD"
2804 ;;
2805 esac])
2806 MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
2807 if test -n "$MAGIC_CMD"; then
2808 AC_MSG_RESULT($MAGIC_CMD)
2809 else
2810 AC_MSG_RESULT(no)
2811 fi
2812 _LT_DECL([], [MAGIC_CMD], [0],
2813 [Used to examine libraries when file_magic_cmd begins with "file"])dnl
2814 ])# _LT_PATH_TOOL_PREFIX
2815
2816 # Old name:
2817 AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
2818 dnl aclocal-1.4 backwards compatibility:
2819 dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
2820
2821
2822 # _LT_PATH_MAGIC
2823 # --------------
2824 # find a file program which can recognize a shared library
2825 m4_defun([_LT_PATH_MAGIC],
2826 [_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
2827 if test -z "$lt_cv_path_MAGIC_CMD"; then
2828 if test -n "$ac_tool_prefix"; then
2829 _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
2830 else
2831 MAGIC_CMD=:
2832 fi
2833 fi
2834 ])# _LT_PATH_MAGIC
2835
2836
2837 # LT_PATH_LD
2838 # ----------
2839 # find the pathname to the GNU or non-GNU linker
2840 AC_DEFUN([LT_PATH_LD],
2841 [AC_REQUIRE([AC_PROG_CC])dnl
2842 AC_REQUIRE([AC_CANONICAL_HOST])dnl
2843 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
2844 m4_require([_LT_DECL_SED])dnl
2845 m4_require([_LT_DECL_EGREP])dnl
2846
2847 AC_ARG_WITH([gnu-ld],
2848 [AS_HELP_STRING([--with-gnu-ld],
2849 [assume the C compiler uses GNU ld @<:@default=no@:>@])],
2850 [test "$withval" = no || with_gnu_ld=yes],
2851 [with_gnu_ld=no])dnl
2852
2853 ac_prog=ld
2854 if test "$GCC" = yes; then
2855 # Check if gcc -print-prog-name=ld gives a path.
2856 AC_MSG_CHECKING([for ld used by $CC])
2857 case $host in
2858 *-*-mingw*)
2859 # gcc leaves a trailing carriage return which upsets mingw
2860 ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
2861 *)
2862 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
2863 esac
2864 case $ac_prog in
2865 # Accept absolute paths.
2866 [[\\/]]* | ?:[[\\/]]*)
2867 re_direlt='/[[^/]][[^/]]*/\.\./'
2868 # Canonicalize the pathname of ld
2869 ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
2870 while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
2871 ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
2872 done
2873 test -z "$LD" && LD="$ac_prog"
2874 ;;
2875 "")
2876 # If it fails, then pretend we aren't using GCC.
2877 ac_prog=ld
2878 ;;
2879 *)
2880 # If it is relative, then search for the first ld in PATH.
2881 with_gnu_ld=unknown
2882 ;;
2883 esac
2884 elif test "$with_gnu_ld" = yes; then
2885 AC_MSG_CHECKING([for GNU ld])
2886 else
2887 AC_MSG_CHECKING([for non-GNU ld])
2888 fi
2889 AC_CACHE_VAL(lt_cv_path_LD,
2890 [if test -z "$LD"; then
2891 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
2892 for ac_dir in $PATH; do
2893 IFS="$lt_save_ifs"
2894 test -z "$ac_dir" && ac_dir=.
2895 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
2896 lt_cv_path_LD="$ac_dir/$ac_prog"
2897 # Check to see if the program is GNU ld. I'd rather use --version,
2898 # but apparently some variants of GNU ld only accept -v.
2899 # Break only if it was the GNU/non-GNU ld that we prefer.
2900 case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
2901 *GNU* | *'with BFD'*)
2902 test "$with_gnu_ld" != no && break
2903 ;;
2904 *)
2905 test "$with_gnu_ld" != yes && break
2906 ;;
2907 esac
2908 fi
2909 done
2910 IFS="$lt_save_ifs"
2911 else
2912 lt_cv_path_LD="$LD" # Let the user override the test with a path.
2913 fi])
2914 LD="$lt_cv_path_LD"
2915 if test -n "$LD"; then
2916 AC_MSG_RESULT($LD)
2917 else
2918 AC_MSG_RESULT(no)
2919 fi
2920 test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
2921 _LT_PATH_LD_GNU
2922 AC_SUBST([LD])
2923
2924 _LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
2925 ])# LT_PATH_LD
2926
2927 # Old names:
2928 AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
2929 AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
2930 dnl aclocal-1.4 backwards compatibility:
2931 dnl AC_DEFUN([AM_PROG_LD], [])
2932 dnl AC_DEFUN([AC_PROG_LD], [])
2933
2934
2935 # _LT_PATH_LD_GNU
2936 #- --------------
2937 m4_defun([_LT_PATH_LD_GNU],
2938 [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
2939 [# I'd rather use --version here, but apparently some GNU lds only accept -v.
2940 case `$LD -v 2>&1 </dev/null` in
2941 *GNU* | *'with BFD'*)
2942 lt_cv_prog_gnu_ld=yes
2943 ;;
2944 *)
2945 lt_cv_prog_gnu_ld=no
2946 ;;
2947 esac])
2948 with_gnu_ld=$lt_cv_prog_gnu_ld
2949 ])# _LT_PATH_LD_GNU
2950
2951
2952 # _LT_CMD_RELOAD
2953 # --------------
2954 # find reload flag for linker
2955 # -- PORTME Some linkers may need a different reload flag.
2956 m4_defun([_LT_CMD_RELOAD],
2957 [AC_CACHE_CHECK([for $LD option to reload object files],
2958 lt_cv_ld_reload_flag,
2959 [lt_cv_ld_reload_flag='-r'])
2960 reload_flag=$lt_cv_ld_reload_flag
2961 case $reload_flag in
2962 "" | " "*) ;;
2963 *) reload_flag=" $reload_flag" ;;
2964 esac
2965 reload_cmds='$LD$reload_flag -o $output$reload_objs'
2966 case $host_os in
2967 darwin*)
2968 if test "$GCC" = yes; then
2969 reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
2970 else
2971 reload_cmds='$LD$reload_flag -o $output$reload_objs'
2972 fi
2973 ;;
2974 esac
2975 _LT_DECL([], [reload_flag], [1], [How to create reloadable object files])dnl
2976 _LT_DECL([], [reload_cmds], [2])dnl
2977 ])# _LT_CMD_RELOAD
2978
2979
2980 # _LT_CHECK_MAGIC_METHOD
2981 # ----------------------
2982 # how to check for library dependencies
2983 # -- PORTME fill in with the dynamic library characteristics
2984 m4_defun([_LT_CHECK_MAGIC_METHOD],
2985 [m4_require([_LT_DECL_EGREP])
2986 m4_require([_LT_DECL_OBJDUMP])
2987 AC_CACHE_CHECK([how to recognize dependent libraries],
2988 lt_cv_deplibs_check_method,
2989 [lt_cv_file_magic_cmd='$MAGIC_CMD'
2990 lt_cv_file_magic_test_file=
2991 lt_cv_deplibs_check_method='unknown'
2992 # Need to set the preceding variable on all platforms that support
2993 # interlibrary dependencies.
2994 # 'none' -- dependencies not supported.
2995 # `unknown' -- same as none, but documents that we really don't know.
2996 # 'pass_all' -- all dependencies passed with no checks.
2997 # 'test_compile' -- check by making test program.
2998 # 'file_magic [[regex]]' -- check by looking for files in library path
2999 # which responds to the $file_magic_cmd with a given extended regex.
3000 # If you have `file' or equivalent on your system and you're not sure
3001 # whether `pass_all' will *always* work, you probably want this one.
3002
3003 case $host_os in
3004 aix[[4-9]]*)
3005 lt_cv_deplibs_check_method=pass_all
3006 ;;
3007
3008 beos*)
3009 lt_cv_deplibs_check_method=pass_all
3010 ;;
3011
3012 bsdi[[45]]*)
3013 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
3014 lt_cv_file_magic_cmd='/usr/bin/file -L'
3015 lt_cv_file_magic_test_file=/shlib/libc.so
3016 ;;
3017
3018 cygwin*)
3019 # func_win32_libid is a shell function defined in ltmain.sh
3020 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3021 lt_cv_file_magic_cmd='func_win32_libid'
3022 ;;
3023
3024 mingw* | pw32*)
3025 # Base MSYS/MinGW do not provide the 'file' command needed by
3026 # func_win32_libid shell function, so use a weaker test based on 'objdump',
3027 # unless we find 'file', for example because we are cross-compiling.
3028 if ( file / ) >/dev/null 2>&1; then
3029 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3030 lt_cv_file_magic_cmd='func_win32_libid'
3031 else
3032 lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
3033 lt_cv_file_magic_cmd='$OBJDUMP -f'
3034 fi
3035 ;;
3036
3037 cegcc)
3038 # use the weaker test based on 'objdump'. See mingw*.
3039 lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
3040 lt_cv_file_magic_cmd='$OBJDUMP -f'
3041 ;;
3042
3043 darwin* | rhapsody*)
3044 lt_cv_deplibs_check_method=pass_all
3045 ;;
3046
3047 freebsd* | dragonfly*)
3048 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
3049 case $host_cpu in
3050 i*86 )
3051 # Not sure whether the presence of OpenBSD here was a mistake.
3052 # Let's accept both of them until this is cleared up.
3053 lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
3054 lt_cv_file_magic_cmd=/usr/bin/file
3055 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
3056 ;;
3057 esac
3058 else
3059 lt_cv_deplibs_check_method=pass_all
3060 fi
3061 ;;
3062
3063 gnu*)
3064 lt_cv_deplibs_check_method=pass_all
3065 ;;
3066
3067 hpux10.20* | hpux11*)
3068 lt_cv_file_magic_cmd=/usr/bin/file
3069 case $host_cpu in
3070 ia64*)
3071 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
3072 lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
3073 ;;
3074 hppa*64*)
3075 [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]']
3076 lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
3077 ;;
3078 *)
3079 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library'
3080 lt_cv_file_magic_test_file=/usr/lib/libc.sl
3081 ;;
3082 esac
3083 ;;
3084
3085 interix[[3-9]]*)
3086 # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
3087 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
3088 ;;
3089
3090 irix5* | irix6* | nonstopux*)
3091 case $LD in
3092 *-32|*"-32 ") libmagic=32-bit;;
3093 *-n32|*"-n32 ") libmagic=N32;;
3094 *-64|*"-64 ") libmagic=64-bit;;
3095 *) libmagic=never-match;;
3096 esac
3097 lt_cv_deplibs_check_method=pass_all
3098 ;;
3099
3100 # This must be Linux ELF.
3101 linux* | k*bsd*-gnu | kopensolaris*-gnu)
3102 lt_cv_deplibs_check_method=pass_all
3103 ;;
3104
3105 netbsd* | netbsdelf*-gnu)
3106 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
3107 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
3108 else
3109 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
3110 fi
3111 ;;
3112
3113 newos6*)
3114 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
3115 lt_cv_file_magic_cmd=/usr/bin/file
3116 lt_cv_file_magic_test_file=/usr/lib/libnls.so
3117 ;;
3118
3119 *nto* | *qnx*)
3120 lt_cv_deplibs_check_method=pass_all
3121 ;;
3122
3123 openbsd*)
3124 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
3125 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
3126 else
3127 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
3128 fi
3129 ;;
3130
3131 osf3* | osf4* | osf5*)
3132 lt_cv_deplibs_check_method=pass_all
3133 ;;
3134
3135 rdos*)
3136 lt_cv_deplibs_check_method=pass_all
3137 ;;
3138
3139 solaris*)
3140 lt_cv_deplibs_check_method=pass_all
3141 ;;
3142
3143 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
3144 lt_cv_deplibs_check_method=pass_all
3145 ;;
3146
3147 sysv4 | sysv4.3*)
3148 case $host_vendor in
3149 motorola)
3150 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]'
3151 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
3152 ;;
3153 ncr)
3154 lt_cv_deplibs_check_method=pass_all
3155 ;;
3156 sequent)
3157 lt_cv_file_magic_cmd='/bin/file'
3158 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
3159 ;;
3160 sni)
3161 lt_cv_file_magic_cmd='/bin/file'
3162 lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
3163 lt_cv_file_magic_test_file=/lib/libc.so
3164 ;;
3165 siemens)
3166 lt_cv_deplibs_check_method=pass_all
3167 ;;
3168 pc)
3169 lt_cv_deplibs_check_method=pass_all
3170 ;;
3171 esac
3172 ;;
3173
3174 tpf*)
3175 lt_cv_deplibs_check_method=pass_all
3176 ;;
3177 esac
3178 ])
3179 file_magic_cmd=$lt_cv_file_magic_cmd
3180 deplibs_check_method=$lt_cv_deplibs_check_method
3181 test -z "$deplibs_check_method" && deplibs_check_method=unknown
3182
3183 _LT_DECL([], [deplibs_check_method], [1],
3184 [Method to check whether dependent libraries are shared objects])
3185 _LT_DECL([], [file_magic_cmd], [1],
3186 [Command to use when deplibs_check_method == "file_magic"])
3187 ])# _LT_CHECK_MAGIC_METHOD
3188
3189
3190 # LT_PATH_NM
3191 # ----------
3192 # find the pathname to a BSD- or MS-compatible name lister
3193 AC_DEFUN([LT_PATH_NM],
3194 [AC_REQUIRE([AC_PROG_CC])dnl
3195 AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
3196 [if test -n "$NM"; then
3197 # Let the user override the test.
3198 lt_cv_path_NM="$NM"
3199 else
3200 lt_nm_to_check="${ac_tool_prefix}nm"
3201 if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
3202 lt_nm_to_check="$lt_nm_to_check nm"
3203 fi
3204 for lt_tmp_nm in $lt_nm_to_check; do
3205 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
3206 for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
3207 IFS="$lt_save_ifs"
3208 test -z "$ac_dir" && ac_dir=.
3209 tmp_nm="$ac_dir/$lt_tmp_nm"
3210 if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
3211 # Check to see if the nm accepts a BSD-compat flag.
3212 # Adding the `sed 1q' prevents false positives on HP-UX, which says:
3213 # nm: unknown option "B" ignored
3214 # Tru64's nm complains that /dev/null is an invalid object file
3215 case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
3216 */dev/null* | *'Invalid file or object type'*)
3217 lt_cv_path_NM="$tmp_nm -B"
3218 break
3219 ;;
3220 *)
3221 case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
3222 */dev/null*)
3223 lt_cv_path_NM="$tmp_nm -p"
3224 break
3225 ;;
3226 *)
3227 lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
3228 continue # so that we can try to find one that supports BSD flags
3229 ;;
3230 esac
3231 ;;
3232 esac
3233 fi
3234 done
3235 IFS="$lt_save_ifs"
3236 done
3237 : ${lt_cv_path_NM=no}
3238 fi])
3239 if test "$lt_cv_path_NM" != "no"; then
3240 NM="$lt_cv_path_NM"
3241 else
3242 # Didn't find any BSD compatible name lister, look for dumpbin.
3243 AC_CHECK_TOOLS(DUMPBIN, ["dumpbin -symbols" "link -dump -symbols"], :)
3244 AC_SUBST([DUMPBIN])
3245 if test "$DUMPBIN" != ":"; then
3246 NM="$DUMPBIN"
3247 fi
3248 fi
3249 test -z "$NM" && NM=nm
3250 AC_SUBST([NM])
3251 _LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
3252
3253 AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
3254 [lt_cv_nm_interface="BSD nm"
3255 echo "int some_variable = 0;" > conftest.$ac_ext
3256 (eval echo "\"\$as_me:__oline__: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
3257 (eval "$ac_compile" 2>conftest.err)
3258 cat conftest.err >&AS_MESSAGE_LOG_FD
3259 (eval echo "\"\$as_me:__oline__: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
3260 (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
3261 cat conftest.err >&AS_MESSAGE_LOG_FD
3262 (eval echo "\"\$as_me:__oline__: output\"" >&AS_MESSAGE_LOG_FD)
3263 cat conftest.out >&AS_MESSAGE_LOG_FD
3264 if $GREP 'External.*some_variable' conftest.out > /dev/null; then
3265 lt_cv_nm_interface="MS dumpbin"
3266 fi
3267 rm -f conftest*])
3268 ])# LT_PATH_NM
3269
3270 # Old names:
3271 AU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
3272 AU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
3273 dnl aclocal-1.4 backwards compatibility:
3274 dnl AC_DEFUN([AM_PROG_NM], [])
3275 dnl AC_DEFUN([AC_PROG_NM], [])
3276
3277
3278 # LT_LIB_M
3279 # --------
3280 # check for math library
3281 AC_DEFUN([LT_LIB_M],
3282 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
3283 LIBM=
3284 case $host in
3285 *-*-beos* | *-*-cygwin* | *-*-pw32* | *-*-darwin*)
3286 # These system don't have libm, or don't need it
3287 ;;
3288 *-ncr-sysv4.3*)
3289 AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
3290 AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
3291 ;;
3292 *)
3293 AC_CHECK_LIB(m, cos, LIBM="-lm")
3294 ;;
3295 esac
3296 AC_SUBST([LIBM])
3297 ])# LT_LIB_M
3298
3299 # Old name:
3300 AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
3301 dnl aclocal-1.4 backwards compatibility:
3302 dnl AC_DEFUN([AC_CHECK_LIBM], [])
3303
3304
3305 # _LT_COMPILER_NO_RTTI([TAGNAME])
3306 # -------------------------------
3307 m4_defun([_LT_COMPILER_NO_RTTI],
3308 [m4_require([_LT_TAG_COMPILER])dnl
3309
3310 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
3311
3312 if test "$GCC" = yes; then
3313 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
3314
3315 _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
3316 lt_cv_prog_compiler_rtti_exceptions,
3317 [-fno-rtti -fno-exceptions], [],
3318 [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
3319 fi
3320 _LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
3321 [Compiler flag to turn off builtin functions])
3322 ])# _LT_COMPILER_NO_RTTI
3323
3324
3325 # _LT_CMD_GLOBAL_SYMBOLS
3326 # ----------------------
3327 m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
3328 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
3329 AC_REQUIRE([AC_PROG_CC])dnl
3330 AC_REQUIRE([LT_PATH_NM])dnl
3331 AC_REQUIRE([LT_PATH_LD])dnl
3332 m4_require([_LT_DECL_SED])dnl
3333 m4_require([_LT_DECL_EGREP])dnl
3334 m4_require([_LT_TAG_COMPILER])dnl
3335
3336 # Check for command to grab the raw symbol name followed by C symbol from nm.
3337 AC_MSG_CHECKING([command to parse $NM output from $compiler object])
3338 AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
3339 [
3340 # These are sane defaults that work on at least a few old systems.
3341 # [They come from Ultrix. What could be older than Ultrix?!! ;)]
3342
3343 # Character class describing NM global symbol codes.
3344 symcode='[[BCDEGRST]]'
3345
3346 # Regexp to match symbols that can be accessed directly from C.
3347 sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
3348
3349 # Define system-specific variables.
3350 case $host_os in
3351 aix*)
3352 symcode='[[BCDT]]'
3353 ;;
3354 cygwin* | mingw* | pw32* | cegcc*)
3355 symcode='[[ABCDGISTW]]'
3356 ;;
3357 hpux*)
3358 if test "$host_cpu" = ia64; then
3359 symcode='[[ABCDEGRST]]'
3360 fi
3361 ;;
3362 irix* | nonstopux*)
3363 symcode='[[BCDEGRST]]'
3364 ;;
3365 osf*)
3366 symcode='[[BCDEGQRST]]'
3367 ;;
3368 solaris*)
3369 symcode='[[BDRT]]'
3370 ;;
3371 sco3.2v5*)
3372 symcode='[[DT]]'
3373 ;;
3374 sysv4.2uw2*)
3375 symcode='[[DT]]'
3376 ;;
3377 sysv5* | sco5v6* | unixware* | OpenUNIX*)
3378 symcode='[[ABDT]]'
3379 ;;
3380 sysv4)
3381 symcode='[[DFNSTU]]'
3382 ;;
3383 esac
3384
3385 # If we're using GNU nm, then use its standard symbol codes.
3386 case `$NM -V 2>&1` in
3387 *GNU* | *'with BFD'*)
3388 symcode='[[ABCDGIRSTW]]' ;;
3389 esac
3390
3391 # Transform an extracted symbol line into a proper C declaration.
3392 # Some systems (esp. on ia64) link data and code symbols differently,
3393 # so use this general approach.
3394 lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
3395
3396 # Transform an extracted symbol line into symbol name and symbol address
3397 lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p'"
3398 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'"
3399
3400 # Handle CRLF in mingw tool chain
3401 opt_cr=
3402 case $build_os in
3403 mingw*)
3404 opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
3405 ;;
3406 esac
3407
3408 # Try without a prefix underscore, then with it.
3409 for ac_symprfx in "" "_"; do
3410
3411 # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
3412 symxfrm="\\1 $ac_symprfx\\2 \\2"
3413
3414 # Write the raw and C identifiers.
3415 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
3416 # Fake it for dumpbin and say T for any non-static function
3417 # and D for any global variable.
3418 # Also find C++ and __fastcall symbols from MSVC++,
3419 # which start with @ or ?.
3420