1817
1940
ln conftest.a conftest.b 2>/dev/null && hard_links=no
1818
1941
AC_MSG_RESULT([$hard_links])
1819
1942
if test "$hard_links" = no; then
1820
AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
1943
AC_MSG_WARN([\`$CC' does not support \`-c -o', so \`make -j' may be unsafe])
1821
1944
need_locks=warn
1826
])# AC_LIBTOOL_SYS_HARD_LINK_LOCKS
1831
AC_DEFUN([AC_LIBTOOL_OBJDIR],
1832
[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
1833
[rm -f .libs 2>/dev/null
1834
mkdir .libs 2>/dev/null
1835
if test -d .libs; then
1950
if test "$GCC" = yes; then
1951
# Check to see if options -fno-rtti -fno-exceptions are supported by compiler
1952
AC_MSG_CHECKING([if $compiler supports -fno-rtti -fno-exceptions])
1953
echo "int some_variable = 0;" > conftest.$ac_ext
1954
save_CFLAGS="$CFLAGS"
1955
CFLAGS="$CFLAGS -fno-rtti -fno-exceptions -c conftest.$ac_ext"
1956
compiler_rtti_exceptions=no
1957
AC_TRY_COMPILE([], [int some_variable = 0;], [dnl
1958
# The compiler can only warn and ignore the option if not recognized
1959
# So say no if there are warnings
1960
if test -s conftest.err; then
1961
compiler_rtti_exceptions=no
1963
compiler_rtti_exceptions=yes
1966
CFLAGS="$save_CFLAGS"
1967
AC_MSG_RESULT([$compiler_rtti_exceptions])
1969
if test "$compiler_rtti_exceptions" = "yes"; then
1970
no_builtin_flag=' -fno-builtin -fno-rtti -fno-exceptions'
1972
no_builtin_flag=' -fno-builtin'
1976
# See if the linker supports building shared libraries.
1977
AC_MSG_CHECKING([whether the linker ($LD) supports shared libraries])
1979
allow_undefined_flag=
1981
need_lib_prefix=unknown
1982
need_version=unknown
1983
# when you set need_version to no, make sure it does not cause -set_version
1984
# flags to be left without arguments
1986
archive_expsym_cmds=
1987
old_archive_from_new_cmds=
1988
old_archive_from_expsyms_cmds=
1989
export_dynamic_flag_spec=
1990
whole_archive_flag_spec=
1991
thread_safe_flag_spec=
1992
hardcode_into_libs=no
1993
hardcode_libdir_flag_spec=
1994
hardcode_libdir_separator=
1997
hardcode_shlibpath_var=unsupported
1999
link_all_deplibs=unknown
2000
always_export_symbols=no
2001
export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols'
2002
# include_expsyms should be a list of space-separated symbols to be *always*
2003
# included in the symbol list
2005
# exclude_expsyms can be an egrep regular expression of symbols to exclude
2006
# it will be wrapped by ` (' and `)$', so one must not match beginning or
2007
# end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
2008
# as well as any symbol that contains `d'.
2009
exclude_expsyms="_GLOBAL_OFFSET_TABLE_"
2010
# Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
2011
# platforms (ab)use it in PIC code, but their linkers get confused if
2012
# the symbol is explicitly referenced. Since portable code cannot
2013
# rely on this symbol name, it's probably fine to never include it in
2014
# preloaded symbol tables.
2015
extract_expsyms_cmds=
2018
cygwin* | mingw* | pw32*)
2019
# FIXME: the MSVC++ port hasn't been tested in a loooong time
2020
# When not using gcc, we currently assume that we are using
2021
# Microsoft Visual C++.
2022
if test "$GCC" != yes; then
2032
if test "$with_gnu_ld" = yes; then
2033
# If archive_cmds runs LD, not CC, wlarc should be empty
2036
# See if GNU ld supports shared libraries.
2038
aix3* | aix4* | aix5*)
2039
# On AIX, the GNU linker is very broken
2040
# Note:Check GNU linker on AIX 5-IA64 when/if it becomes available.
2044
*** Warning: the GNU linker, at least up to release 2.9.1, is reported
2045
*** to be unable to reliably create shared libraries on AIX.
2046
*** Therefore, libtool is disabling shared libraries support. If you
2047
*** really care for shared libraries, you may want to modify your PATH
2048
*** so that a non-GNU linker is found, and then restart.
2054
archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
2055
hardcode_libdir_flag_spec='-L$libdir'
2056
hardcode_minus_L=yes
2058
# Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
2059
# that the semantics of dynamic libraries on AmigaOS, at least up
2060
# to version 4, is to share data among multiple programs linked
2061
# with the same dynamic library. Since this doesn't match the
2062
# behavior of shared libraries on other platforms, we can use
2068
if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
2069
allow_undefined_flag=unsupported
2070
# Joseph Beckenbach <jrb3@best.com> says some releases of gcc
2071
# support --undefined. This deserves some investigation. FIXME
2072
archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
2078
cygwin* | mingw* | pw32*)
2079
# hardcode_libdir_flag_spec is actually meaningless, as there is
2080
# no search path for DLLs.
2081
hardcode_libdir_flag_spec='-L$libdir'
2082
allow_undefined_flag=unsupported
2083
always_export_symbols=yes
2085
extract_expsyms_cmds='test -f $output_objdir/impgen.c || \
2086
sed -e "/^# \/\* impgen\.c starts here \*\//,/^# \/\* impgen.c ends here \*\// { s/^# //;s/^# *$//; p; }" -e d < $''0 > $output_objdir/impgen.c~
2087
test -f $output_objdir/impgen.exe || (cd $output_objdir && \
2088
if test "x$HOST_CC" != "x" ; then $HOST_CC -o impgen impgen.c ; \
2089
else $CC -o impgen impgen.c ; fi)~
2090
$output_objdir/impgen $dir/$soroot > $output_objdir/$soname-def'
2092
old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib'
2094
# cygwin and mingw dlls have different entry points and sets of symbols
2096
# FIXME: what about values for MSVC?
2097
dll_entry=__cygwin_dll_entry@12
2098
dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12~
2102
dll_entry=_DllMainCRTStartup@12
2103
dll_exclude_symbols=DllMain@12,DllMainCRTStartup@12,DllEntryPoint@12~
2107
# mingw and cygwin differ, and it's simplest to just exclude the union
2108
# of the two symbol sets.
2109
dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12,DllMainCRTStartup@12,DllEntryPoint@12
2111
# recent cygwin and mingw systems supply a stub DllMain which the user
2112
# can override, but on older systems we have to supply one (in ltdll.c)
2113
if test "x$lt_cv_need_dllmain" = "xyes"; then
2114
ltdll_obj='$output_objdir/$soname-ltdll.'"$ac_objext "
2115
ltdll_cmds='test -f $output_objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $''0 > $output_objdir/$soname-ltdll.c~
2116
test -f $output_objdir/$soname-ltdll.$ac_objext || (cd $output_objdir && $CC -c $soname-ltdll.c)~'
2122
# Extract the symbol export list from an `--export-all' def file,
2123
# then regenerate the def file from the symbol export list, so that
2124
# the compiled dll only exports the symbol export list.
2125
# Be careful not to strip the DATA tag left be newer dlltools.
2126
export_symbols_cmds="$ltdll_cmds"'
2127
$DLLTOOL --export-all --exclude-symbols '$dll_exclude_symbols' --output-def $output_objdir/$soname-def '$ltdll_obj'$libobjs $convenience~
2128
sed -e "1,/EXPORTS/d" -e "s/ @ [[0-9]]*//" -e "s/ *;.*$//" < $output_objdir/$soname-def > $export_symbols'
2130
# If the export-symbols file already is a .def file (1st line
2131
# is EXPORTS), use it as is.
2132
# If DATA tags from a recent dlltool are present, honour them!
2133
archive_expsym_cmds='if test "x`sed 1q $export_symbols`" = xEXPORTS; then
2134
cp $export_symbols $output_objdir/$soname-def;
2136
echo EXPORTS > $output_objdir/$soname-def;
2138
cat $export_symbols | while read symbol; do
2141
2) echo " \[$]2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;;
2142
4) echo " \[$]2 \[$]3 \[$]4 ; " >> $output_objdir/$soname-def; _lt_hint=`expr \$_lt_hint - 1`;;
2143
*) echo " \[$]2 @ \$_lt_hint \[$]3 ; " >> $output_objdir/$soname-def;;
2145
_lt_hint=`expr 1 + \$_lt_hint`;
2149
$CC -Wl,--base-file,$output_objdir/$soname-base '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~
2150
$DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp~
2151
$CC -Wl,--base-file,$output_objdir/$soname-base $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~
2152
$DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp --output-lib $output_objdir/$libname.dll.a~
2153
$CC $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags'
2157
if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
2158
archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
2161
archive_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
2162
archive_expsym_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
2167
if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then
2171
*** Warning: The releases 2.8.* of the GNU linker cannot reliably
2172
*** create shared libraries on Solaris systems. Therefore, libtool
2173
*** is disabling shared libraries support. We urge you to upgrade GNU
2174
*** binutils to release 2.9.1 or newer. Another option is to modify
2175
*** your PATH or compiler configuration so that the native linker is
2176
*** used, and then restart.
2179
elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
2180
archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
2181
archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
2188
archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
2191
hardcode_shlibpath_var=no
2195
if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
2196
archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
2197
archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
2204
if test "$ld_shlibs" = yes; then
2205
runpath_var=LD_RUN_PATH
2206
hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir'
2207
export_dynamic_flag_spec='${wl}--export-dynamic'
2209
cygwin* | mingw* | pw32*)
2210
# dlltool doesn't understand --whole-archive et. al.
2211
whole_archive_flag_spec=
2214
# ancient GNU ld didn't support --whole-archive et. al.
2215
if $LD --help 2>&1 | egrep 'no-whole-archive' > /dev/null; then
2216
whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
2218
whole_archive_flag_spec=
1838
# MS-DOS does not allow filenames that begin with a dot.
2224
# PORTME fill in a description of your system's linker (not GNU ld)
2227
allow_undefined_flag=unsupported
2228
always_export_symbols=yes
2229
archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
2230
# Note: this linker hardcodes the directories in LIBPATH if there
2231
# are no directories specified by -L.
2232
hardcode_minus_L=yes
2233
if test "$GCC" = yes && test -z "$link_static_flag"; then
2234
# Neither direct hardcoding nor static linking is supported with a
2236
hardcode_direct=unsupported
2241
if test "$host_cpu" = ia64; then
2242
# On IA64, the linker does run time linking by default, so we don't
2243
# have to do anything special.
2244
aix_use_runtimelinking=no
2245
exp_sym_flag='-Bexport'
2248
aix_use_runtimelinking=no
2250
# Test if we are trying to use run time linking or normal
2251
# AIX style linking. If -brtl is somewhere in LDFLAGS, we
2252
# need to do runtime linking.
2253
case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*)
2254
for ld_flag in $LDFLAGS; do
2257
aix_use_runtimelinking=yes
2264
exp_sym_flag='-bexport'
2265
no_entry_flag='-bnoentry'
2268
# When large executables or shared objects are built, AIX ld can
2269
# have problems creating the table of contents. If linking a library
2270
# or program results in "error TOC overflow" add -mminimal-toc to
2271
# CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
2272
# enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
2276
hardcode_libdir_separator=':'
2277
if test "$GCC" = yes; then
2278
case $host_os in aix4.[[012]]|aix4.[[012]].*)
2279
collect2name=`${CC} -print-prog-name=collect2`
2280
if test -f "$collect2name" && \
2281
strings "$collect2name" | grep resolve_lib_name >/dev/null
2283
# We have reworked collect2
2286
# We have old collect2
2287
hardcode_direct=unsupported
2288
# It fails to find uninstalled libraries when the uninstalled
2289
# path is not listed in the libpath. Setting hardcode_minus_L
2290
# to unsupported forces relinking
2291
hardcode_minus_L=yes
2292
hardcode_libdir_flag_spec='-L$libdir'
2293
hardcode_libdir_separator=
2297
shared_flag='-shared'
2300
if test "$host_cpu" = ia64; then
2301
shared_flag='${wl}-G'
2303
if test "$aix_use_runtimelinking" = yes; then
2304
shared_flag='${wl}-G'
2306
shared_flag='${wl}-bM:SRE'
2311
# It seems that -bexpall can do strange things, so it is better to
2312
# generate a list of symbols to export.
2313
always_export_symbols=yes
2314
if test "$aix_use_runtimelinking" = yes; then
2315
# Warning - without using the other runtime loading flags (-brtl),
2316
# -berok will link without error, but may produce a broken library.
2317
allow_undefined_flag='-berok'
2318
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib'
2319
archive_expsym_cmds="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag"
2321
if test "$host_cpu" = ia64; then
2322
hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'
2323
allow_undefined_flag="-z nodefs"
2324
archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname ${wl}-h$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"
2326
hardcode_libdir_flag_spec='${wl}-bnolibpath ${wl}-blibpath:$libdir:/usr/lib:/lib'
2327
# Warning - without using the other run time loading flags,
2328
# -berok will link without error, but may produce a broken library.
2329
allow_undefined_flag='${wl}-berok'
2330
# This is a bit strange, but is similar to how AIX traditionally builds
2331
# it's shared libraries.
2332
archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"' ~$AR -crlo $objdir/$libname$release.a $objdir/$soname'
2338
archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
2339
hardcode_libdir_flag_spec='-L$libdir'
2340
hardcode_minus_L=yes
2341
# see comment about different semantics on the GNU ld section
2345
cygwin* | mingw* | pw32*)
2346
# When not using gcc, we currently assume that we are using
2347
# Microsoft Visual C++.
2348
# hardcode_libdir_flag_spec is actually meaningless, as there is
2349
# no search path for DLLs.
2350
hardcode_libdir_flag_spec=' '
2351
allow_undefined_flag=unsupported
2352
# Tell ltmain to make .lib files, not .a files.
2354
# FIXME: Setting linknames here is a bad hack.
2355
archive_cmds='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | sed -e '\''s/ -lc$//'\''` -link -dll~linknames='
2356
# The linker will automatically build a .lib file if we build a DLL.
2357
old_archive_from_new_cmds='true'
2358
# FIXME: Should let the user specify the lib program.
2359
old_archive_cmds='lib /OUT:$oldlib$oldobjs$old_deplibs'
2360
fix_srcfile_path='`cygpath -w "$srcfile"`'
2363
darwin* | rhapsody*)
2365
rhapsody* | darwin1.[[012]])
2366
allow_undefined_flag='-undefined suppress'
2369
allow_undefined_flag='-flat_namespace -undefined suppress'
2372
# FIXME: Relying on posixy $() will cause problems for
2373
# cross-compilation, but unfortunately the echo tests do not
2374
# yet detect zsh echo's removal of \ escapes. Also zsh mangles
2375
# `"' quotes if we put them in here... so don't!
2376
archive_cmds='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs && $CC $(test .$module = .yes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib ${lib}-master.o $deplibs$linker_flags $(test .$module != .yes && echo -install_name $rpath/$soname $verstring)'
2377
# We need to add '_' to the symbols in $export_symbols first
2378
#archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols'
2380
hardcode_shlibpath_var=no
2381
whole_archive_flag_spec='-all_load $convenience'
2388
# FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
2389
# support. Future versions do this automatically, but an explicit c++rt0.o
2390
# does not break anything, and helps significantly (at the cost of a little
2393
archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
2394
hardcode_libdir_flag_spec='-R$libdir'
2396
hardcode_shlibpath_var=no
2399
# Unfortunately, older versions of FreeBSD 2 do not have this feature.
2401
archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
2403
hardcode_minus_L=yes
2404
hardcode_shlibpath_var=no
2407
# FreeBSD 3 and greater uses gcc -shared to do shared libraries.
2409
archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
2410
hardcode_libdir_flag_spec='-R$libdir'
2412
hardcode_shlibpath_var=no
2415
hpux9* | hpux10* | hpux11*)
2417
hpux9*) archive_cmds='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' ;;
2418
*) archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' ;;
2420
hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
2421
hardcode_libdir_separator=:
2423
hardcode_minus_L=yes # Not in the search PATH, but as the default
2424
# location of the library.
2425
export_dynamic_flag_spec='${wl}-E'
2428
irix5* | irix6* | nonstopux*)
2429
if test "$GCC" = yes; then
2430
archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
2431
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
2433
archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
2434
hardcode_libdir_flag_spec='-rpath $libdir'
2436
hardcode_libdir_separator=:
2437
link_all_deplibs=yes
2441
if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
2442
archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
2444
archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
2446
hardcode_libdir_flag_spec='-R$libdir'
2448
hardcode_shlibpath_var=no
2452
archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
2454
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
2455
hardcode_libdir_separator=:
2456
hardcode_shlibpath_var=no
2461
hardcode_shlibpath_var=no
2462
if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
2463
archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
2464
hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
2465
export_dynamic_flag_spec='${wl}-E'
2468
openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
2469
archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
2470
hardcode_libdir_flag_spec='-R$libdir'
2473
archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
2474
hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
2481
hardcode_libdir_flag_spec='-L$libdir'
2482
hardcode_minus_L=yes
2483
allow_undefined_flag=unsupported
2484
archive_cmds='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
2485
old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
2489
if test "$GCC" = yes; then
2490
allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
2491
archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
2493
allow_undefined_flag=' -expect_unresolved \*'
2494
archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
2496
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
2497
hardcode_libdir_separator=:
2500
osf4* | osf5*) # as osf3* with the addition of -msym flag
2501
if test "$GCC" = yes; then
2502
allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
2503
archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
2504
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
2506
allow_undefined_flag=' -expect_unresolved \*'
2507
archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
2508
archive_expsym_cmds='for i in `cat $export_symbols`; do printf "-exported_symbol " >> $lib.exp; echo "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~
2509
$LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp'
2511
#Both c and cxx compiler support -rpath directly
2512
hardcode_libdir_flag_spec='-rpath $libdir'
2514
hardcode_libdir_separator=:
2518
archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
2519
hardcode_shlibpath_var=no
2520
runpath_var=LD_RUN_PATH
2521
hardcode_runpath_var=yes
2522
export_dynamic_flag_spec='${wl}-Bexport'
2526
# gcc --version < 3.0 without binutils cannot create self contained
2527
# shared libraries reliably, requiring libgcc.a to resolve some of
2528
# the object symbols generated in some cases. Libraries that use
2529
# assert need libgcc.a to resolve __eprintf, for example. Linking
2530
# a copy of libgcc.a into every shared library to guarantee resolving
2531
# such symbols causes other problems: According to Tim Van Holder
2532
# <tim.van.holder@pandora.be>, C++ libraries end up with a separate
2533
# (to the application) exception stack for one thing.
2534
no_undefined_flag=' -z defs'
2535
if test "$GCC" = yes; then
2536
case `$CC --version 2>/dev/null` in
2540
*** Warning: Releases of GCC earlier than version 3.0 cannot reliably
2541
*** create self contained shared libraries on Solaris systems, without
2542
*** introducing a dependency on libgcc.a. Therefore, libtool is disabling
2543
*** -no-undefined support, which will at least allow you to build shared
2544
*** libraries. However, you may find that when you link such libraries
2545
*** into an application without using GCC, you have to manually add
2546
*** \`gcc --print-libgcc-file-name\` to the link command. We urge you to
2547
*** upgrade to a newer version of GCC. Another option is to rebuild your
2548
*** current GCC to use the GNU linker from GNU binutils 2.9.1 or newer.
2555
# $CC -shared without GNU ld will not create a library from C++
2556
# object files and a static libstdc++, better avoid it by now
2557
archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
2558
archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
2559
$LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
2560
hardcode_libdir_flag_spec='-R$libdir'
2561
hardcode_shlibpath_var=no
2563
solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
2564
*) # Supported since Solaris 2.6 (maybe 2.5.1?)
2565
whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;;
2567
link_all_deplibs=yes
2571
if test "x$host_vendor" = xsequent; then
2572
# Use $CC to link under sequent, because it throws in some extra .o
2573
# files that make .init and .fini sections work.
2574
archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
2576
archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
2578
hardcode_libdir_flag_spec='-L$libdir'
2580
hardcode_minus_L=yes
2581
hardcode_shlibpath_var=no
2585
case $host_vendor in
2587
archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
2588
hardcode_direct=yes # is this really true???
2591
## LD is ld it makes a PLAMLIB
2592
## CC just makes a GrossModule.
2593
archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'
2594
reload_cmds='$CC -r -o $output$reload_objs'
2598
archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
2599
hardcode_direct=no #Motorola manual says yes, but my tests say they lie
2602
runpath_var='LD_RUN_PATH'
2603
hardcode_shlibpath_var=no
2607
archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
2608
hardcode_shlibpath_var=no
2609
export_dynamic_flag_spec='-Bexport'
2613
no_undefined_flag=' -z text'
2614
# $CC -shared without GNU ld will not create a library from C++
2615
# object files and a static libstdc++, better avoid it by now
2616
archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
2617
archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
2618
$LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
2619
hardcode_libdir_flag_spec=
2620
hardcode_shlibpath_var=no
2621
runpath_var='LD_RUN_PATH'
2625
archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
2626
hardcode_libdir_flag_spec='-L$libdir'
2627
hardcode_shlibpath_var=no
2631
archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
2632
hardcode_libdir_flag_spec='-L$libdir'
2633
hardcode_shlibpath_var=no
2637
if test -d /usr/nec; then
2638
archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
2639
hardcode_shlibpath_var=no
2640
runpath_var=LD_RUN_PATH
2641
hardcode_runpath_var=yes
2647
archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'
2650
hardcode_shlibpath_var=no
2651
hardcode_runpath_var=yes
2652
runpath_var=LD_RUN_PATH
2655
sysv5uw7* | unixware7*)
2656
no_undefined_flag='${wl}-z ${wl}text'
2657
if test "$GCC" = yes; then
2658
archive_cmds='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
2660
archive_cmds='$CC -G ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
2662
runpath_var='LD_RUN_PATH'
2663
hardcode_shlibpath_var=no
1841
rmdir .libs 2>/dev/null])
1842
objdir=$lt_cv_objdir
1843
])# AC_LIBTOOL_OBJDIR
1846
# AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH([TAGNAME])
1847
# ----------------------------------------------
2671
AC_MSG_RESULT([$ld_shlibs])
2672
test "$ld_shlibs" = no && can_build_shared=no
1848
2674
# Check hardcoding attributes.
1849
AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH],
1850
[AC_MSG_CHECKING([how to hardcode library paths into programs])
1851
_LT_AC_TAGVAR(hardcode_action, $1)=
1852
if test -n "$_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)" || \
1853
test -n "$_LT_AC_TAGVAR(runpath_var $1)" || \
1854
test "X$_LT_AC_TAGVAR(hardcode_automatic, $1)"="Xyes" ; then
2675
AC_MSG_CHECKING([how to hardcode library paths into programs])
2677
if test -n "$hardcode_libdir_flag_spec" || \
2678
test -n "$runpath_var"; then
1856
2680
# We can hardcode non-existant directories.
1857
if test "$_LT_AC_TAGVAR(hardcode_direct, $1)" != no &&
2681
if test "$hardcode_direct" != no &&
1858
2682
# If the only mechanism to avoid hardcoding is shlibpath_var, we
1859
2683
# have to relink, otherwise we might link with an installed library
1860
2684
# when we should be linking with a yet-to-be-installed one
1861
## test "$_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
1862
test "$_LT_AC_TAGVAR(hardcode_minus_L, $1)" != no; then
2685
## test "$hardcode_shlibpath_var" != no &&
2686
test "$hardcode_minus_L" != no; then
1863
2687
# Linking always hardcodes the temporary library directory.
1864
_LT_AC_TAGVAR(hardcode_action, $1)=relink
2688
hardcode_action=relink
1866
2690
# We can link without hardcoding, and we can hardcode nonexisting dirs.
1867
_LT_AC_TAGVAR(hardcode_action, $1)=immediate
2691
hardcode_action=immediate
1870
2694
# We cannot hardcode anything, or else we can only hardcode existing
1872
_LT_AC_TAGVAR(hardcode_action, $1)=unsupported
1874
AC_MSG_RESULT([$_LT_AC_TAGVAR(hardcode_action, $1)])
1876
if test "$_LT_AC_TAGVAR(hardcode_action, $1)" = relink; then
1877
# Fast installation is not supported
1878
enable_fast_install=no
1879
elif test "$shlibpath_overrides_runpath" = yes ||
1880
test "$enable_shared" = no; then
1881
# Fast installation is not necessary
1882
enable_fast_install=needless
1884
])# AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH
1887
# AC_LIBTOOL_SYS_LIB_STRIP
1888
# ------------------------
1889
AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP],
2696
hardcode_action=unsupported
2698
AC_MSG_RESULT([$hardcode_action])
1892
2702
AC_MSG_CHECKING([whether stripping libraries is possible])
1893
2703
if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then
3114
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
3115
soname_spec='${libname}${release}.so$major'
3116
shlibpath_var=LD_LIBRARY_PATH
3123
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
3124
soname_spec='${libname}${release}.so$major'
3125
shlibpath_var=LD_LIBRARY_PATH
2431
3129
if test -d /usr/nec ;then
2432
3130
version_type=linux
2433
library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
2434
soname_spec='$libname${shared_ext}.$major'
3131
library_names_spec='$libname.so.$versuffix $libname.so.$major $libname.so'
3132
soname_spec='$libname.so.$major'
2435
3133
shlibpath_var=LD_LIBRARY_PATH
2441
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2442
soname_spec='${libname}${release}${shared_ext}$major'
2443
shlibpath_var=LD_LIBRARY_PATH
2447
3138
dynamic_linker=no
2450
3141
AC_MSG_RESULT([$dynamic_linker])
2451
3142
test "$dynamic_linker" = no && can_build_shared=no
2452
])# AC_LIBTOOL_SYS_DYNAMIC_LINKER
2457
AC_DEFUN([_LT_AC_TAGCONFIG],
2458
[AC_ARG_WITH([tags],
2459
[AC_HELP_STRING([--with-tags@<:@=TAGS@:>@],
2460
[include additional configurations @<:@automatic@:>@])],
2461
[tagnames="$withval"])
2463
if test -f "$ltmain" && test -n "$tagnames"; then
2464
if test ! -f "${ofile}"; then
2465
AC_MSG_WARN([output file `$ofile' does not exist])
2468
if test -z "$LTCC"; then
2469
eval "`$SHELL ${ofile} --config | grep '^LTCC='`"
2470
if test -z "$LTCC"; then
2471
AC_MSG_WARN([output file `$ofile' does not look like a libtool script])
3144
# Report the final consequences.
3145
AC_MSG_CHECKING([if libtool supports shared libraries])
3146
AC_MSG_RESULT([$can_build_shared])
3148
AC_MSG_CHECKING([whether to build shared libraries])
3149
test "$can_build_shared" = "no" && enable_shared=no
3151
# On AIX, shared libraries and static libraries use the same namespace, and
3152
# are all built from PIC.
3155
test "$enable_shared" = yes && enable_static=no
3156
if test -n "$RANLIB"; then
3157
archive_cmds="$archive_cmds~\$RANLIB \$lib"
3158
postinstall_cmds='$RANLIB $lib'
3163
if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
3164
test "$enable_shared" = yes && enable_static=no
3168
AC_MSG_RESULT([$enable_shared])
3170
AC_MSG_CHECKING([whether to build static libraries])
3171
# Make sure either enable_shared or enable_static is yes.
3172
test "$enable_shared" = yes || enable_static=yes
3173
AC_MSG_RESULT([$enable_static])
3175
if test "$hardcode_action" = relink; then
3176
# Fast installation is not supported
3177
enable_fast_install=no
3178
elif test "$shlibpath_overrides_runpath" = yes ||
3179
test "$enable_shared" = no; then
3180
# Fast installation is not necessary
3181
enable_fast_install=needless
3184
variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
3185
if test "$GCC" = yes; then
3186
variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
3189
AC_LIBTOOL_DLOPEN_SELF
3191
if test "$enable_shared" = yes && test "$GCC" = yes; then
3192
case $archive_cmds in
3194
# FIXME: we may have to deal with multi-command sequences.
3197
# Test whether the compiler implicitly links with -lc since on some
3198
# systems, -lgcc has to come before -lc. If gcc already passes -lc
3199
# to ld, don't add -lc before -lgcc.
3200
AC_MSG_CHECKING([whether -lc should be explicitly linked in])
3201
AC_CACHE_VAL([lt_cv_archive_cmds_need_lc],
3203
echo 'static int dummy;' > conftest.$ac_ext
3205
if AC_TRY_EVAL(ac_compile); then
3208
libobjs=conftest.$ac_objext
3210
wl=$lt_cv_prog_cc_wl
3216
save_allow_undefined_flag=$allow_undefined_flag
3217
allow_undefined_flag=
3218
if AC_TRY_EVAL(archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1)
3220
lt_cv_archive_cmds_need_lc=no
3222
lt_cv_archive_cmds_need_lc=yes
3224
allow_undefined_flag=$save_allow_undefined_flag
2473
AC_MSG_WARN([using `LTCC=$LTCC', extracted from `$ofile'])
2477
# Extract list of available tagged configurations in $ofile.
2478
# Note that this assumes the entire list is on one line.
2479
available_tags=`grep "^available_tags=" "${ofile}" | $SED -e 's/available_tags=\(.*$\)/\1/' -e 's/\"//g'`
2481
lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
2482
for tagname in $tagnames; do
2484
# Check whether tagname contains only valid characters
2485
case `$echo "X$tagname" | $Xsed -e 's:[[-_ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890,/]]::g'` in
2487
*) AC_MSG_ERROR([invalid tag name: $tagname])
3226
cat conftest.err 1>&5
3228
AC_MSG_RESULT([$lt_cv_archive_cmds_need_lc])
3232
need_lc=${lt_cv_archive_cmds_need_lc-yes}
3234
# The second clause should only fire when bootstrapping the
3235
# libtool distribution, otherwise you forgot to ship ltmain.sh
3236
# with your package, and you will get complaints that there are
3237
# no rules to generate ltmain.sh.
3238
if test -f "$ltmain"; then
3241
# If there is no Makefile yet, we rely on a make rule to execute
3242
# `config.status --recheck' to rerun these tests and create the
3243
# libtool script then.
3244
test -f Makefile && make "$ltmain"
3247
if test -f "$ltmain"; then
3248
trap "$rm \"${ofile}T\"; exit 1" 1 2 15
3251
echo creating $ofile
3253
# Now quote all the things that may contain metacharacters while being
3254
# careful not to overquote the AC_SUBSTed values. We take copies of the
3255
# variables and quote the copies for generation of the libtool script.
3256
for var in echo old_CC old_CFLAGS SED \
3257
AR AR_FLAGS CC LD LN_S NM SHELL \
3258
reload_flag reload_cmds wl \
3259
pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \
3260
thread_safe_flag_spec whole_archive_flag_spec libname_spec \
3261
library_names_spec soname_spec \
3262
RANLIB old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \
3263
old_postuninstall_cmds archive_cmds archive_expsym_cmds postinstall_cmds \
3264
postuninstall_cmds extract_expsyms_cmds old_archive_from_expsyms_cmds \
3265
old_striplib striplib file_magic_cmd export_symbols_cmds \
3266
deplibs_check_method allow_undefined_flag no_undefined_flag \
3267
finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \
3268
global_symbol_to_c_name_address \
3269
hardcode_libdir_flag_spec hardcode_libdir_separator \
3270
sys_lib_search_path_spec sys_lib_dlsearch_path_spec \
3271
compiler_c_o compiler_o_lo need_locks exclude_expsyms include_expsyms; do
3274
reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \
3275
old_postinstall_cmds | old_postuninstall_cmds | \
3276
export_symbols_cmds | archive_cmds | archive_expsym_cmds | \
3277
extract_expsyms_cmds | old_archive_from_expsyms_cmds | \
3278
postinstall_cmds | postuninstall_cmds | \
3279
finish_cmds | sys_lib_search_path_spec | sys_lib_dlsearch_path_spec)
3280
# Double-quote double-evaled strings.
3281
eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\""
3284
eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\""
2491
if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "${ofile}" > /dev/null
2493
AC_MSG_ERROR([tag name \"$tagname\" already exists])
2496
# Update the list of available tags.
2497
if test -n "$tagname"; then
2498
echo appending configuration tag \"$tagname\" to $ofile
2502
if test -n "$CXX" && test "X$CXX" != "Xno"; then
2503
AC_LIBTOOL_LANG_CXX_CONFIG
2510
if test -n "$F77" && test "X$F77" != "Xno"; then
2511
AC_LIBTOOL_LANG_F77_CONFIG
2518
if test -n "$GCJ" && test "X$GCJ" != "Xno"; then
2519
AC_LIBTOOL_LANG_GCJ_CONFIG
2526
AC_LIBTOOL_LANG_RC_CONFIG
2530
AC_MSG_ERROR([Unsupported tag name: $tagname])
2534
# Append the new tag name to the list of available tags.
2535
if test -n "$tagname" ; then
2536
available_tags="$available_tags $tagname"
2542
# Now substitute the updated list of available tags.
2543
if eval "sed -e 's/^available_tags=.*\$/available_tags=\"$available_tags\"/' \"$ofile\" > \"${ofile}T\""; then
2544
mv "${ofile}T" "$ofile"
2548
AC_MSG_ERROR([unable to update list of available tagged configurations.])
2551
])# _LT_AC_TAGCONFIG
2556
# enable checks for dlopen support
2557
AC_DEFUN([AC_LIBTOOL_DLOPEN],
2558
[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])
2559
])# AC_LIBTOOL_DLOPEN
2562
# AC_LIBTOOL_WIN32_DLL
2563
# --------------------
2564
# declare package support for building win32 dll's
2565
AC_DEFUN([AC_LIBTOOL_WIN32_DLL],
2566
[AC_BEFORE([$0], [AC_LIBTOOL_SETUP])
2567
])# AC_LIBTOOL_WIN32_DLL
2570
# AC_ENABLE_SHARED([DEFAULT])
2571
# ---------------------------
2572
# implement the --enable-shared flag
2573
# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
3289
cat <<__EOF__ > "${ofile}T"
3292
# `$echo "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
3293
# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
3294
# NOTE: Changes made to this file will be lost: look at ltmain.sh.
3296
# Copyright (C) 1996-2000 Free Software Foundation, Inc.
3297
# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
3299
# This program is free software; you can redistribute it and/or modify
3300
# it under the terms of the GNU General Public License as published by
3301
# the Free Software Foundation; either version 2 of the License, or
3302
# (at your option) any later version.
3304
# This program is distributed in the hope that it will be useful, but
3305
# WITHOUT ANY WARRANTY; without even the implied warranty of
3306
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
3307
# General Public License for more details.
3309
# You should have received a copy of the GNU General Public License
3310
# along with this program; if not, write to the Free Software
3311
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
3313
# As a special exception to the GNU General Public License, if you
3314
# distribute this file as part of a program that contains a
3315
# configuration script generated by Autoconf, you may include it under
3316
# the same distribution terms that you use for the rest of that program.
3318
# A sed that does not truncate output.
3321
# Sed that helps us avoid accidentally triggering echo(1) options like -n.
3322
Xsed="${SED} -e s/^X//"
3324
# The HP-UX ksh and POSIX shell print the target directory to stdout
3326
if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
3328
# ### BEGIN LIBTOOL CONFIG
3330
# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
3332
# Shell to use when invoking shell scripts.
3335
# Whether or not to build shared libraries.
3336
build_libtool_libs=$enable_shared
3338
# Whether or not to build static libraries.
3339
build_old_libs=$enable_static
3341
# Whether or not to add -lc for building shared libraries.
3342
build_libtool_need_lc=$need_lc
3344
# Whether or not to optimize for fast installation.
3345
fast_install=$enable_fast_install
3348
host_alias=$host_alias
3351
# An echo program that does not interpret backslashes.
3356
AR_FLAGS=$lt_AR_FLAGS
3358
# The default C compiler.
3361
# Is the compiler the GNU C compiler?
3364
# The linker used to build libraries.
3367
# Whether we need hard or soft links.
3370
# A BSD-compatible nm program.
3373
# A symbol stripping program
3376
# Used to examine libraries when file_magic_cmd begins "file"
3377
MAGIC_CMD=$MAGIC_CMD
3379
# Used on cygwin: DLL creation program.
3382
# Used on cygwin: object dumper.
3385
# Used on cygwin: assembler.
3388
# The name of the directory that contains temporary libtool files.
3391
# How to create reloadable object files.
3392
reload_flag=$lt_reload_flag
3393
reload_cmds=$lt_reload_cmds
3395
# How to pass a linker flag through the compiler.
3398
# Object file suffix (normally "o").
3401
# Old archive suffix (normally "a").
3404
# Executable file suffix (normally "").
3407
# Additional compiler flags for building library objects.
3408
pic_flag=$lt_pic_flag
3411
# Does compiler simultaneously support -c and -o options?
3412
compiler_c_o=$lt_compiler_c_o
3414
# Can we write directly to a .lo ?
3415
compiler_o_lo=$lt_compiler_o_lo
3417
# Must we lock files when doing compilation ?
3418
need_locks=$lt_need_locks
3420
# Do we need the lib prefix for modules?
3421
need_lib_prefix=$need_lib_prefix
3423
# Do we need a version for libraries?
3424
need_version=$need_version
3426
# Whether dlopen is supported.
3427
dlopen_support=$enable_dlopen
3429
# Whether dlopen of programs is supported.
3430
dlopen_self=$enable_dlopen_self
3432
# Whether dlopen of statically linked programs is supported.
3433
dlopen_self_static=$enable_dlopen_self_static
3435
# Compiler flag to prevent dynamic linking.
3436
link_static_flag=$lt_link_static_flag
3438
# Compiler flag to turn off builtin functions.
3439
no_builtin_flag=$lt_no_builtin_flag
3441
# Compiler flag to allow reflexive dlopens.
3442
export_dynamic_flag_spec=$lt_export_dynamic_flag_spec
3444
# Compiler flag to generate shared objects directly from archives.
3445
whole_archive_flag_spec=$lt_whole_archive_flag_spec
3447
# Compiler flag to generate thread-safe objects.
3448
thread_safe_flag_spec=$lt_thread_safe_flag_spec
3450
# Library versioning type.
3451
version_type=$version_type
3453
# Format of library name prefix.
3454
libname_spec=$lt_libname_spec
3456
# List of archive names. First name is the real one, the rest are links.
3457
# The last name is the one that the linker finds with -lNAME.
3458
library_names_spec=$lt_library_names_spec
3460
# The coded name of the library, if different from the real name.
3461
soname_spec=$lt_soname_spec
3463
# Commands used to build and install an old-style archive.
3465
old_archive_cmds=$lt_old_archive_cmds
3466
old_postinstall_cmds=$lt_old_postinstall_cmds
3467
old_postuninstall_cmds=$lt_old_postuninstall_cmds
3469
# Create an old-style archive from a shared archive.
3470
old_archive_from_new_cmds=$lt_old_archive_from_new_cmds
3472
# Create a temporary old-style archive to link instead of a shared archive.
3473
old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds
3475
# Commands used to build and install a shared archive.
3476
archive_cmds=$lt_archive_cmds
3477
archive_expsym_cmds=$lt_archive_expsym_cmds
3478
postinstall_cmds=$lt_postinstall_cmds
3479
postuninstall_cmds=$lt_postuninstall_cmds
3481
# Commands to strip libraries.
3482
old_striplib=$lt_old_striplib
3483
striplib=$lt_striplib
3485
# Method to check whether dependent libraries are shared objects.
3486
deplibs_check_method=$lt_deplibs_check_method
3488
# Command to use when deplibs_check_method == file_magic.
3489
file_magic_cmd=$lt_file_magic_cmd
3491
# Flag that allows shared libraries with undefined symbols to be built.
3492
allow_undefined_flag=$lt_allow_undefined_flag
3494
# Flag that forces no undefined symbols.
3495
no_undefined_flag=$lt_no_undefined_flag
3497
# Commands used to finish a libtool library installation in a directory.
3498
finish_cmds=$lt_finish_cmds
3500
# Same as above, but a single script fragment to be evaled but not shown.
3501
finish_eval=$lt_finish_eval
3503
# Take the output of nm and produce a listing of raw symbols and C names.
3504
global_symbol_pipe=$lt_global_symbol_pipe
3506
# Transform the output of nm in a proper C declaration
3507
global_symbol_to_cdecl=$lt_global_symbol_to_cdecl
3509
# Transform the output of nm in a C name address pair
3510
global_symbol_to_c_name_address=$lt_global_symbol_to_c_name_address
3512
# This is the shared library runtime path variable.
3513
runpath_var=$runpath_var
3515
# This is the shared library path variable.
3516
shlibpath_var=$shlibpath_var
3518
# Is shlibpath searched before the hard-coded library search path?
3519
shlibpath_overrides_runpath=$shlibpath_overrides_runpath
3521
# How to hardcode a shared library path into an executable.
3522
hardcode_action=$hardcode_action
3524
# Whether we should hardcode library paths into libraries.
3525
hardcode_into_libs=$hardcode_into_libs
3527
# Flag to hardcode \$libdir into a binary during linking.
3528
# This must work even if \$libdir does not exist.
3529
hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec
3531
# Whether we need a single -rpath flag with a separated argument.
3532
hardcode_libdir_separator=$lt_hardcode_libdir_separator
3534
# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the
3536
hardcode_direct=$hardcode_direct
3538
# Set to yes if using the -LDIR flag during linking hardcodes DIR into the
3540
hardcode_minus_L=$hardcode_minus_L
3542
# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into
3543
# the resulting binary.
3544
hardcode_shlibpath_var=$hardcode_shlibpath_var
3546
# Variables whose values should be saved in libtool wrapper scripts and
3547
# restored at relink time.
3548
variables_saved_for_relink="$variables_saved_for_relink"
3550
# Whether libtool must link a program against all its dependency libraries.
3551
link_all_deplibs=$link_all_deplibs
3553
# Compile-time system search path for libraries
3554
sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
3556
# Run-time system search path for libraries
3557
sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
3559
# Fix the shell variable \$srcfile for the compiler.
3560
fix_srcfile_path="$fix_srcfile_path"
3562
# Set to yes if exported symbols are required.
3563
always_export_symbols=$always_export_symbols
3565
# The commands to list exported symbols.
3566
export_symbols_cmds=$lt_export_symbols_cmds
3568
# The commands to extract the exported symbol list from a shared archive.
3569
extract_expsyms_cmds=$lt_extract_expsyms_cmds
3571
# Symbols that should not be listed in the preloaded symbols.
3572
exclude_expsyms=$lt_exclude_expsyms
3574
# Symbols that must always be exported.
3575
include_expsyms=$lt_include_expsyms
3577
# ### END LIBTOOL CONFIG
3583
cat <<\EOF >> "${ofile}T"
3585
# AIX sometimes has problems with the GCC collect2 program. For some
3586
# reason, if we set the COLLECT_NAMES environment variable, the problems
3587
# vanish in a puff of smoke.
3588
if test "X${COLLECT_NAMES+set}" != Xset; then
3590
export COLLECT_NAMES
3597
cygwin* | mingw* | pw32* | os2*)
3598
cat <<'EOF' >> "${ofile}T"
3599
# This is a source program that is used to create dlls on Windows
3600
# Don't remove nor modify the starting and closing comments
3601
# /* ltdll.c starts here */
3602
# #define WIN32_LEAN_AND_MEAN
3603
# #include <windows.h>
3604
# #undef WIN32_LEAN_AND_MEAN
3605
# #include <stdio.h>
3607
# #ifndef __CYGWIN__
3608
# # ifdef __CYGWIN32__
3609
# # define __CYGWIN__ __CYGWIN32__
3613
# #ifdef __cplusplus
3616
# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved);
3617
# #ifdef __cplusplus
3622
# #include <cygwin/cygwin_dll.h>
3623
# DECLARE_CYGWIN_DLL( DllMain );
3625
# HINSTANCE __hDllInstance_base;
3628
# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved)
3630
# __hDllInstance_base = hInst;
3633
# /* ltdll.c ends here */
3634
# This is a source program that is used to create import libraries
3635
# on Windows for dlls which lack them. Don't remove nor modify the
3636
# starting and closing comments
3637
# /* impgen.c starts here */
3638
# /* Copyright (C) 1999-2000 Free Software Foundation, Inc.
3640
# This file is part of GNU libtool.
3642
# This program is free software; you can redistribute it and/or modify
3643
# it under the terms of the GNU General Public License as published by
3644
# the Free Software Foundation; either version 2 of the License, or
3645
# (at your option) any later version.
3647
# This program is distributed in the hope that it will be useful,
3648
# but WITHOUT ANY WARRANTY; without even the implied warranty of
3649
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
3650
# GNU General Public License for more details.
3652
# You should have received a copy of the GNU General Public License
3653
# along with this program; if not, write to the Free Software
3654
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
3657
# #include <stdio.h> /* for printf() */
3658
# #include <unistd.h> /* for open(), lseek(), read() */
3659
# #include <fcntl.h> /* for O_RDONLY, O_BINARY */
3660
# #include <string.h> /* for strdup() */
3662
# /* O_BINARY isn't required (or even defined sometimes) under Unix */
3664
# #define O_BINARY 0
3667
# static unsigned int
3668
# pe_get16 (fd, offset)
3672
# unsigned char b[2];
3673
# lseek (fd, offset, SEEK_SET);
3675
# return b[0] + (b[1]<<8);
3678
# static unsigned int
3679
# pe_get32 (fd, offset)
3683
# unsigned char b[4];
3684
# lseek (fd, offset, SEEK_SET);
3686
# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24);
3689
# static unsigned int
3693
# unsigned char *b = ptr;
3694
# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24);
3703
# unsigned long pe_header_offset, opthdr_ofs, num_entries, i;
3704
# unsigned long export_rva, export_size, nsections, secptr, expptr;
3705
# unsigned long name_rvas, nexp;
3706
# unsigned char *expdata, *erva;
3707
# char *filename, *dll_name;
3709
# filename = argv[1];
3711
# dll = open(filename, O_RDONLY|O_BINARY);
3715
# dll_name = filename;
3717
# for (i=0; filename[i]; i++)
3718
# if (filename[i] == '/' || filename[i] == '\\' || filename[i] == ':')
3719
# dll_name = filename + i +1;
3721
# pe_header_offset = pe_get32 (dll, 0x3c);
3722
# opthdr_ofs = pe_header_offset + 4 + 20;
3723
# num_entries = pe_get32 (dll, opthdr_ofs + 92);
3725
# if (num_entries < 1) /* no exports */
3728
# export_rva = pe_get32 (dll, opthdr_ofs + 96);
3729
# export_size = pe_get32 (dll, opthdr_ofs + 100);
3730
# nsections = pe_get16 (dll, pe_header_offset + 4 +2);
3731
# secptr = (pe_header_offset + 4 + 20 +
3732
# pe_get16 (dll, pe_header_offset + 4 + 16));
3735
# for (i = 0; i < nsections; i++)
3738
# unsigned long secptr1 = secptr + 40 * i;
3739
# unsigned long vaddr = pe_get32 (dll, secptr1 + 12);
3740
# unsigned long vsize = pe_get32 (dll, secptr1 + 16);
3741
# unsigned long fptr = pe_get32 (dll, secptr1 + 20);
3742
# lseek(dll, secptr1, SEEK_SET);
3743
# read(dll, sname, 8);
3744
# if (vaddr <= export_rva && vaddr+vsize > export_rva)
3746
# expptr = fptr + (export_rva - vaddr);
3747
# if (export_rva + export_size > vaddr + vsize)
3748
# export_size = vsize - (export_rva - vaddr);
3753
# expdata = (unsigned char*)malloc(export_size);
3754
# lseek (dll, expptr, SEEK_SET);
3755
# read (dll, expdata, export_size);
3756
# erva = expdata - export_rva;
3758
# nexp = pe_as32 (expdata+24);
3759
# name_rvas = pe_as32 (expdata+32);
3761
# printf ("EXPORTS\n");
3762
# for (i = 0; i<nexp; i++)
3764
# unsigned long name_rva = pe_as32 (erva+name_rvas+i*4);
3765
# printf ("\t%s @ %ld ;\n", erva+name_rva, 1+ i);
3770
# /* impgen.c ends here */
3776
# We use sed instead of cat because bash on DJGPP gets confused if
3777
# if finds mixed CR/LF and LF-only lines. Since sed operates in
3778
# text mode, it properly converts lines to CR/LF. This bash problem
3779
# is reportedly fixed, but why not run on old versions too?
3780
sed '$q' "$ltmain" >> "${ofile}T" || (rm -f "${ofile}T"; exit 1)
3782
mv -f "${ofile}T" "$ofile" || \
3783
(rm -f "$ofile" && cp "${ofile}T" "$ofile" && rm -f "${ofile}T")
3787
])# _LT_AC_LTCONFIG_HACK
3789
# AC_LIBTOOL_DLOPEN - enable checks for dlopen support
3790
AC_DEFUN([AC_LIBTOOL_DLOPEN], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])])
3792
# AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's
3793
AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])])
3795
# AC_ENABLE_SHARED - implement the --enable-shared flag
3796
# Usage: AC_ENABLE_SHARED[(DEFAULT)]
3797
# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
2574
3799
AC_DEFUN([AC_ENABLE_SHARED],
2575
3800
[define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
2576
AC_ARG_ENABLE([shared],
2577
[AC_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
2578
[build shared libraries @<:@default=]AC_ENABLE_SHARED_DEFAULT[@:>@])],
2579
[p=${PACKAGE-default}
2581
yes) enable_shared=yes ;;
2582
no) enable_shared=no ;;
2585
# Look at the argument we got. We use all the common list separators.
2586
lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
2587
for pkg in $enableval; do
2589
if test "X$pkg" = "X$p"; then
2596
[enable_shared=]AC_ENABLE_SHARED_DEFAULT)
2597
])# AC_ENABLE_SHARED
2602
#- set the default shared flag to --disable-shared
3801
AC_ARG_ENABLE(shared,
3802
changequote(<<, >>)dnl
3803
<< --enable-shared[=PKGS] build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT],
3804
changequote([, ])dnl
3805
[p=${PACKAGE-default}
3807
yes) enable_shared=yes ;;
3808
no) enable_shared=no ;;
3811
# Look at the argument we got. We use all the common list separators.
3812
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
3813
for pkg in $enableval; do
3814
if test "X$pkg" = "X$p"; then
3821
enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl
3824
# AC_DISABLE_SHARED - set the default shared flag to --disable-shared
2603
3825
AC_DEFUN([AC_DISABLE_SHARED],
2604
3826
[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
2605
AC_ENABLE_SHARED(no)
2606
])# AC_DISABLE_SHARED
2609
# AC_ENABLE_STATIC([DEFAULT])
2610
# ---------------------------
2611
# implement the --enable-static flag
2612
# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
3827
AC_ENABLE_SHARED(no)])
3829
# AC_ENABLE_STATIC - implement the --enable-static flag
3830
# Usage: AC_ENABLE_STATIC[(DEFAULT)]
3831
# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
2613
3833
AC_DEFUN([AC_ENABLE_STATIC],
2614
3834
[define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
2615
AC_ARG_ENABLE([static],
2616
[AC_HELP_STRING([--enable-static@<:@=PKGS@:>@],
2617
[build static libraries @<:@default=]AC_ENABLE_STATIC_DEFAULT[@:>@])],
2618
[p=${PACKAGE-default}
2620
yes) enable_static=yes ;;
2621
no) enable_static=no ;;
2624
# Look at the argument we got. We use all the common list separators.
2625
lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
2626
for pkg in $enableval; do
2628
if test "X$pkg" = "X$p"; then
2635
[enable_static=]AC_ENABLE_STATIC_DEFAULT)
2636
])# AC_ENABLE_STATIC
2641
# set the default static flag to --disable-static
3835
AC_ARG_ENABLE(static,
3836
changequote(<<, >>)dnl
3837
<< --enable-static[=PKGS] build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT],
3838
changequote([, ])dnl
3839
[p=${PACKAGE-default}
3841
yes) enable_static=yes ;;
3842
no) enable_static=no ;;
3845
# Look at the argument we got. We use all the common list separators.
3846
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
3847
for pkg in $enableval; do
3848
if test "X$pkg" = "X$p"; then
3855
enable_static=AC_ENABLE_STATIC_DEFAULT)dnl
3858
# AC_DISABLE_STATIC - set the default static flag to --disable-static
2642
3859
AC_DEFUN([AC_DISABLE_STATIC],
2643
3860
[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
2644
AC_ENABLE_STATIC(no)
2645
])# AC_DISABLE_STATIC
2648
# AC_ENABLE_FAST_INSTALL([DEFAULT])
2649
# ---------------------------------
2650
# implement the --enable-fast-install flag
2651
# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
3861
AC_ENABLE_STATIC(no)])
3864
# AC_ENABLE_FAST_INSTALL - implement the --enable-fast-install flag
3865
# Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)]
3866
# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
2652
3868
AC_DEFUN([AC_ENABLE_FAST_INSTALL],
2653
3869
[define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl
2654
AC_ARG_ENABLE([fast-install],
2655
[AC_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
2656
[optimize for fast installation @<:@default=]AC_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
2657
[p=${PACKAGE-default}
2659
yes) enable_fast_install=yes ;;
2660
no) enable_fast_install=no ;;
2662
enable_fast_install=no
2663
# Look at the argument we got. We use all the common list separators.
2664
lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
2665
for pkg in $enableval; do
2667
if test "X$pkg" = "X$p"; then
2668
enable_fast_install=yes
2674
[enable_fast_install=]AC_ENABLE_FAST_INSTALL_DEFAULT)
2675
])# AC_ENABLE_FAST_INSTALL
2678
# AC_DISABLE_FAST_INSTALL
2679
# -----------------------
2680
# set the default to --disable-fast-install
3870
AC_ARG_ENABLE(fast-install,
3871
changequote(<<, >>)dnl
3872
<< --enable-fast-install[=PKGS] optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT],
3873
changequote([, ])dnl
3874
[p=${PACKAGE-default}
3876
yes) enable_fast_install=yes ;;
3877
no) enable_fast_install=no ;;
3879
enable_fast_install=no
3880
# Look at the argument we got. We use all the common list separators.
3881
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
3882
for pkg in $enableval; do
3883
if test "X$pkg" = "X$p"; then
3884
enable_fast_install=yes
3890
enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl
3893
# AC_DISABLE_FAST_INSTALL - set the default to --disable-fast-install
2681
3894
AC_DEFUN([AC_DISABLE_FAST_INSTALL],
2682
3895
[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
2683
AC_ENABLE_FAST_INSTALL(no)
2684
])# AC_DISABLE_FAST_INSTALL
2687
# AC_LIBTOOL_PICMODE([MODE])
2688
# --------------------------
2689
# implement the --with-pic flag
2690
# MODE is either `yes' or `no'. If omitted, it defaults to `both'.
3896
AC_ENABLE_FAST_INSTALL(no)])
3898
# AC_LIBTOOL_PICMODE - implement the --with-pic flag
3899
# Usage: AC_LIBTOOL_PICMODE[(MODE)]
3900
# Where MODE is either `yes' or `no'. If omitted, it defaults to
2691
3902
AC_DEFUN([AC_LIBTOOL_PICMODE],
2692
3903
[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
2693
pic_mode=ifelse($#,1,$1,default)
2694
])# AC_LIBTOOL_PICMODE
2699
# This is predefined starting with Autoconf 2.54, so this conditional
2700
# definition can be removed once we require Autoconf 2.54 or later.
2701
m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP],
2702
[AC_CACHE_CHECK([for egrep], [ac_cv_prog_egrep],
2703
[if echo a | (grep -E '(a|b)') >/dev/null 2>&1
2704
then ac_cv_prog_egrep='grep -E'
2705
else ac_cv_prog_egrep='egrep'
2707
EGREP=$ac_cv_prog_egrep
2712
# AC_PATH_TOOL_PREFIX
2713
# -------------------
2714
# find a file program which can recognise shared library
3904
pic_mode=ifelse($#,1,$1,default)])
3907
# AC_PATH_TOOL_PREFIX - find a file program which can recognise shared library
2715
3908
AC_DEFUN([AC_PATH_TOOL_PREFIX],
2716
[AC_REQUIRE([AC_PROG_EGREP])dnl
2717
AC_MSG_CHECKING([for $1])
3909
[AC_MSG_CHECKING([for $1])
2718
3910
AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
2719
3911
[case $MAGIC_CMD in
2720
[[\\/*] | ?:[\\/]*])
2721
3913
lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
2724
lt_save_MAGIC_CMD="$MAGIC_CMD"
2725
lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
3916
lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path.
3919
ac_save_MAGIC_CMD="$MAGIC_CMD"
3920
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
2726
3921
dnl $ac_dummy forces splitting on constant user-supplied paths.
2727
3922
dnl POSIX.2 word splitting is done only on the output of word expansions,
2728
3923
dnl not every word. This closes a longstanding sh security hole.
2729
3924
ac_dummy="ifelse([$2], , $PATH, [$2])"
2730
3925
for ac_dir in $ac_dummy; do
2732
3926
test -z "$ac_dir" && ac_dir=.
2733
3927
if test -f $ac_dir/$1; then
2734
3928
lt_cv_path_MAGIC_CMD="$ac_dir/$1"
3239
4373
# For backwards non-gettext consistent compatibility...
3240
4374
INCLTDL="$LTDLINCL"
3241
])# AC_LIBLTDL_INSTALLABLE
3246
# enable support for C++ libraries
3247
AC_DEFUN([AC_LIBTOOL_CXX],
3248
[AC_REQUIRE([_LT_AC_LANG_CXX])
3254
AC_DEFUN([_LT_AC_LANG_CXX],
3255
[AC_REQUIRE([AC_PROG_CXX])
3256
AC_REQUIRE([AC_PROG_CXXCPP])
3257
_LT_AC_SHELL_INIT([tagnames=`echo "$tagnames,CXX" | sed 's/^,//'`])
3263
# enable support for Fortran 77 libraries
3264
AC_DEFUN([AC_LIBTOOL_F77],
3265
[AC_REQUIRE([_LT_AC_LANG_F77])
3271
AC_DEFUN([_LT_AC_LANG_F77],
3272
[AC_REQUIRE([AC_PROG_F77])
3273
_LT_AC_SHELL_INIT([tagnames=`echo "$tagnames,F77" | sed 's/^,//'`])
3279
# enable support for GCJ libraries
3280
AC_DEFUN([AC_LIBTOOL_GCJ],
3281
[AC_REQUIRE([_LT_AC_LANG_GCJ])
3287
AC_DEFUN([_LT_AC_LANG_GCJ],
3288
[AC_PROVIDE_IFELSE([AC_PROG_GCJ],[],
3289
[AC_PROVIDE_IFELSE([A][M_PROG_GCJ],[],
3290
[AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],[],
3291
[ifdef([AC_PROG_GCJ],[AC_REQUIRE([AC_PROG_GCJ])],
3292
[ifdef([A][M_PROG_GCJ],[AC_REQUIRE([A][M_PROG_GCJ])],
3293
[AC_REQUIRE([A][C_PROG_GCJ_OR_A][M_PROG_GCJ])])])])])])
3294
_LT_AC_SHELL_INIT([tagnames=`echo "$tagnames,GCJ" | sed 's/^,//'`])
3300
# enable support for Windows resource files
3301
AC_DEFUN([AC_LIBTOOL_RC],
3302
[AC_REQUIRE([LT_AC_PROG_RC])
3303
_LT_AC_SHELL_INIT([tagnames=`echo "$tagnames,RC" | sed 's/^,//'`])
3307
# AC_LIBTOOL_LANG_C_CONFIG
3308
# ------------------------
3309
# Ensure that the configuration vars for the C compiler are
3310
# suitably defined. Those variables are subsequently used by
3311
# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
3312
AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG], [_LT_AC_LANG_C_CONFIG])
3313
AC_DEFUN([_LT_AC_LANG_C_CONFIG],
3317
# Source file extension for C test sources.
3320
# Object file extension for compiled C test sources.
3322
_LT_AC_TAGVAR(objext, $1)=$objext
3324
# Code to be used in simple compile tests
3325
lt_simple_compile_test_code="int some_variable = 0;\n"
3327
# Code to be used in simple link tests
3328
lt_simple_link_test_code='int main(){return(0);}\n'
3333
# Check for any special shared library compilation flags.
3335
_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)=
3336
if test "$GCC" = no; then
3339
_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)='-belf'
3343
if test -n "$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)"; then
3344
AC_MSG_WARN([`$CC' requires `$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)' to build shared libraries])
3345
if echo "$old_CC $old_CFLAGS " | grep "[[ ]]$]_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)[[[ ]]" >/dev/null; then :
3347
AC_MSG_WARN([add `$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)' to the CC or CFLAGS env variable and reconfigure])
3348
_LT_AC_TAGVAR(lt_cv_prog_cc_can_build_shared, $1)=no
3354
# Check to make sure the static flag actually works.
3356
AC_LIBTOOL_LINKER_OPTION([if $compiler static flag $_LT_AC_TAGVAR(lt_prog_compiler_static, $1) works],
3357
_LT_AC_TAGVAR(lt_prog_compiler_static_works, $1),
3358
$_LT_AC_TAGVAR(lt_prog_compiler_static, $1),
3360
[_LT_AC_TAGVAR(lt_prog_compiler_static, $1)=])
3363
AC_LIBTOOL_PROG_COMPILER_NO_RTTI($1)
3364
AC_LIBTOOL_PROG_COMPILER_PIC($1)
3365
AC_LIBTOOL_PROG_CC_C_O($1)
3366
AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1)
3367
AC_LIBTOOL_PROG_LD_SHLIBS($1)
3368
AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1)
3369
AC_LIBTOOL_SYS_LIB_STRIP
3370
AC_LIBTOOL_SYS_DYNAMIC_LINKER($1)
3371
AC_LIBTOOL_DLOPEN_SELF($1)
3373
# Report which librarie types wil actually be built
3374
AC_MSG_CHECKING([if libtool supports shared libraries])
3375
AC_MSG_RESULT([$can_build_shared])
3377
AC_MSG_CHECKING([whether to build shared libraries])
3378
test "$can_build_shared" = "no" && enable_shared=no
3380
# On AIX, shared libraries and static libraries use the same namespace, and
3381
# are all built from PIC.
3384
test "$enable_shared" = yes && enable_static=no
3385
if test -n "$RANLIB"; then
3386
archive_cmds="$archive_cmds~\$RANLIB \$lib"
3387
postinstall_cmds='$RANLIB $lib'
3392
if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
3393
test "$enable_shared" = yes && enable_static=no
3396
darwin* | rhapsody*)
3397
if $CC -v 2>&1 | grep 'Apple' >/dev/null ; then
3398
_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
3400
rhapsody* | darwin1.[[012]])
3401
_LT_AC_TAGVAR(allow_undefined_flag, $1)='-undefined suppress'
3404
test -z ${LD_TWOLEVEL_NAMESPACE} && _LT_AC_TAGVAR(allow_undefined_flag, $1)='-flat_namespace -undefined suppress'
3407
# FIXME: Relying on posixy $() will cause problems for
3408
# cross-compilation, but unfortunately the echo tests do not
3409
# yet detect zsh echo's removal of \ escapes. Also zsh mangles
3410
# `"' quotes if we put them in here... so don't!
3411
output_verbose_link_cmd='echo'
3412
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs$compiler_flags -install_name $rpath/$soname $verstring'
3413
_LT_AC_TAGVAR(module_cmds, $1)='$CC -bundle $allow_undefined_flag -o $lib $libobjs $deplibs$compiler_flags'
3414
# Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
3415
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs$compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
3416
_LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -bundle $allow_undefined_flag -o $lib $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
3417
_LT_AC_TAGVAR(hardcode_direct, $1)=no
3418
_LT_AC_TAGVAR(hardcode_automatic, $1)=yes
3419
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
3420
_LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-all_load $convenience'
3421
_LT_AC_TAGVAR(link_all_deplibs, $1)=yes
3425
AC_MSG_RESULT([$enable_shared])
3427
AC_MSG_CHECKING([whether to build static libraries])
3428
# Make sure either enable_shared or enable_static is yes.
3429
test "$enable_shared" = yes || enable_static=yes
3430
AC_MSG_RESULT([$enable_static])
3432
AC_LIBTOOL_CONFIG($1)
3436
])# AC_LIBTOOL_LANG_C_CONFIG
3439
# AC_LIBTOOL_LANG_CXX_CONFIG
3440
# --------------------------
3441
# Ensure that the configuration vars for the C compiler are
3442
# suitably defined. Those variables are subsequently used by
3443
# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
3444
AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG], [_LT_AC_LANG_CXX_CONFIG(CXX)])
3445
AC_DEFUN([_LT_AC_LANG_CXX_CONFIG],
3447
AC_REQUIRE([AC_PROG_CXX])
3448
AC_REQUIRE([AC_PROG_CXXCPP])
3450
_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
3451
_LT_AC_TAGVAR(allow_undefined_flag, $1)=
3452
_LT_AC_TAGVAR(always_export_symbols, $1)=no
3453
_LT_AC_TAGVAR(archive_expsym_cmds, $1)=
3454
_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)=
3455
_LT_AC_TAGVAR(hardcode_direct, $1)=no
3456
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=
3457
_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
3458
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
3459
_LT_AC_TAGVAR(hardcode_minus_L, $1)=no
3460
_LT_AC_TAGVAR(hardcode_automatic, $1)=no
3461
_LT_AC_TAGVAR(module_cmds, $1)=
3462
_LT_AC_TAGVAR(module_expsym_cmds, $1)=
3463
_LT_AC_TAGVAR(link_all_deplibs, $1)=unknown
3464
_LT_AC_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
3465
_LT_AC_TAGVAR(no_undefined_flag, $1)=
3466
_LT_AC_TAGVAR(whole_archive_flag_spec, $1)=
3467
_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no
3469
# Dependencies to place before and after the object being linked:
3470
_LT_AC_TAGVAR(predep_objects, $1)=
3471
_LT_AC_TAGVAR(postdep_objects, $1)=
3472
_LT_AC_TAGVAR(predeps, $1)=
3473
_LT_AC_TAGVAR(postdeps, $1)=
3474
_LT_AC_TAGVAR(compiler_lib_search_path, $1)=
3476
# Source file extension for C++ test sources.
3479
# Object file extension for compiled C++ test sources.
3481
_LT_AC_TAGVAR(objext, $1)=$objext
3483
# Code to be used in simple compile tests
3484
lt_simple_compile_test_code="int some_variable = 0;\n"
3486
# Code to be used in simple link tests
3487
lt_simple_link_test_code='int main(int, char *[]) { return(0); }\n'
3489
# ltmain only uses $CC for tagged configurations so make sure $CC is set.
3492
# Allow CC to be a program name with arguments.
3497
lt_save_with_gnu_ld=$with_gnu_ld
3498
lt_save_path_LD=$lt_cv_path_LD
3499
if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
3500
lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
3502
unset lt_cv_prog_gnu_ld
3504
if test -n "${lt_cv_path_LDCXX+set}"; then
3505
lt_cv_path_LD=$lt_cv_path_LDCXX
3509
test -z "${LDCXX+set}" || LD=$LDCXX
3512
_LT_AC_TAGVAR(compiler, $1)=$CC
3513
cc_basename=`$echo X"$compiler" | $Xsed -e 's%^.*/%%'`
3515
# We don't want -fno-exception wen compiling C++ code, so set the
3516
# no_builtin_flag separately
3517
if test "$GXX" = yes; then
3518
_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
3520
_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
3523
if test "$GXX" = yes; then
3524
# Set up default GNU C++ configuration
3528
# Check if GNU C++ uses GNU ld as the underlying linker, since the
3529
# archiving commands below assume that GNU ld is being used.
3530
if test "$with_gnu_ld" = yes; then
3531
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
3532
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
3534
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
3535
_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
3537
# If archive_cmds runs LD, not CC, wlarc should be empty
3538
# XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
3539
# investigate it a little bit more. (MM)
3542
# ancient GNU ld didn't support --whole-archive et. al.
3543
if eval "`$CC -print-prog-name=ld` --help 2>&1" | \
3544
grep 'no-whole-archive' > /dev/null; then
3545
_LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
3547
_LT_AC_TAGVAR(whole_archive_flag_spec, $1)=
3553
# A generic and very simple default shared library creation
3554
# command for GNU C++ for the case where it uses the native
3555
# linker, instead of GNU ld. If possible, this setting should
3556
# overridden to take advantage of the native linker features on
3557
# the platform it is being used on.
3558
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
3561
# Commands to make compiler produce verbose output that lists
3562
# what "hidden" libraries, object files and flags are used when
3563
# linking a shared library.
3564
output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"'
3572
# PORTME: fill in a description of your system's C++ link characteristics
3573
AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
3574
_LT_AC_TAGVAR(ld_shlibs, $1)=yes
3577
# FIXME: insert proper C++ library support
3578
_LT_AC_TAGVAR(ld_shlibs, $1)=no
3581
if test "$host_cpu" = ia64; then
3582
# On IA64, the linker does run time linking by default, so we don't
3583
# have to do anything special.
3584
aix_use_runtimelinking=no
3585
exp_sym_flag='-Bexport'
3588
aix_use_runtimelinking=no
3590
# Test if we are trying to use run time linking or normal
3591
# AIX style linking. If -brtl is somewhere in LDFLAGS, we
3592
# need to do runtime linking.
3593
case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*)
3594
for ld_flag in $LDFLAGS; do
3597
aix_use_runtimelinking=yes
3604
exp_sym_flag='-bexport'
3605
no_entry_flag='-bnoentry'
3608
# When large executables or shared objects are built, AIX ld can
3609
# have problems creating the table of contents. If linking a library
3610
# or program results in "error TOC overflow" add -mminimal-toc to
3611
# CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
3612
# enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
3614
_LT_AC_TAGVAR(archive_cmds, $1)=''
3615
_LT_AC_TAGVAR(hardcode_direct, $1)=yes
3616
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':'
3617
_LT_AC_TAGVAR(link_all_deplibs, $1)=yes
3619
if test "$GXX" = yes; then
3620
case $host_os in aix4.[012]|aix4.[012].*)
3621
# We only want to do this on AIX 4.2 and lower, the check
3622
# below for broken collect2 doesn't work under 4.3+
3623
collect2name=`${CC} -print-prog-name=collect2`
3624
if test -f "$collect2name" && \
3625
strings "$collect2name" | grep resolve_lib_name >/dev/null
3627
# We have reworked collect2
3628
_LT_AC_TAGVAR(hardcode_direct, $1)=yes
3630
# We have old collect2
3631
_LT_AC_TAGVAR(hardcode_direct, $1)=unsupported
3632
# It fails to find uninstalled libraries when the uninstalled
3633
# path is not listed in the libpath. Setting hardcode_minus_L
3634
# to unsupported forces relinking
3635
_LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
3636
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
3637
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
3640
shared_flag='-shared'
3643
if test "$host_cpu" = ia64; then
3644
# VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
3645
# chokes on -Wl,-G. The following line is correct:
3648
if test "$aix_use_runtimelinking" = yes; then
3649
shared_flag='${wl}-G'
3651
shared_flag='${wl}-bM:SRE'
3656
# It seems that -bexpall does not export symbols beginning with
3657
# underscore (_), so it is better to generate a list of symbols to export.
3658
_LT_AC_TAGVAR(always_export_symbols, $1)=yes
3659
if test "$aix_use_runtimelinking" = yes; then
3660
# Warning - without using the other runtime loading flags (-brtl),
3661
# -berok will link without error, but may produce a broken library.
3662
_LT_AC_TAGVAR(allow_undefined_flag, $1)='-berok'
3663
# Determine the default libpath from the value encoded in an empty executable.
3664
_LT_AC_SYS_LIBPATH_AIX
3665
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
3667
_LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag"
3669
if test "$host_cpu" = ia64; then
3670
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
3671
_LT_AC_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
3672
_LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"
3674
# Determine the default libpath from the value encoded in an empty executable.
3675
_LT_AC_SYS_LIBPATH_AIX
3676
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
3677
# Warning - without using the other run time loading flags,
3678
# -berok will link without error, but may produce a broken library.
3679
_LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
3680
_LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
3681
# -bexpall does not export symbols beginning with underscore (_)
3682
_LT_AC_TAGVAR(always_export_symbols, $1)=yes
3683
# Exported symbols can be pulled into shared objects from archives
3684
_LT_AC_TAGVAR(whole_archive_flag_spec, $1)=' '
3685
_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes
3686
# This is similar to how AIX traditionally builds it's shared libraries.
3687
_LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
3692
case $cc_basename in
3694
# FIXME: insert proper C++ library support
3695
_LT_AC_TAGVAR(ld_shlibs, $1)=no
3700
cygwin* | mingw* | pw32*)
3701
# _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
3702
# as there is no search path for DLLs.
3703
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
3704
_LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
3705
_LT_AC_TAGVAR(always_export_symbols, $1)=no
3706
_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
3708
if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then
3709
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib'
3710
# If the export-symbols file already is a .def file (1st line
3711
# is EXPORTS), use it as is; otherwise, prepend...
3712
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
3713
cp $export_symbols $output_objdir/$soname.def;
3715
echo EXPORTS > $output_objdir/$soname.def;
3716
cat $export_symbols >> $output_objdir/$soname.def;
3718
$CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib'
3720
_LT_AC_TAGVAR(ld_shlibs, $1)=no
3724
darwin* | rhapsody*)
3725
if $CC -v 2>&1 | grep 'Apple' >/dev/null ; then
3726
_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
3728
rhapsody* | darwin1.[[012]])
3729
_LT_AC_TAGVAR(allow_undefined_flag, $1)='-undefined suppress'
3732
test -z ${LD_TWOLEVEL_NAMESPACE} && _LT_AC_TAGVAR(allow_undefined_flag, $1)='-flat_namespace -undefined suppress'
3735
lt_int_apple_cc_single_mod=no
3736
output_verbose_link_cmd='echo'
3737
if $CC -dumpspecs 2>&1 | grep 'single_module' >/dev/null ; then
3738
lt_int_apple_cc_single_mod=yes
3740
if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
3741
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
3743
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -r ${wl}-bind_at_load -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'
3745
_LT_AC_TAGVAR(module_cmds, $1)='$CC -bundle ${wl}-bind_at_load $allow_undefined_flag -o $lib $libobjs $deplibs$compiler_flags'
3747
# Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
3748
if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
3749
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
3751
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r ${wl}-bind_at_load -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~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
3753
_LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -bundle $allow_undefined_flag -o $lib $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
3754
_LT_AC_TAGVAR(hardcode_direct, $1)=no
3755
_LT_AC_TAGVAR(hardcode_automatic, $1)=yes
3756
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
3757
_LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-all_load $convenience'
3758
_LT_AC_TAGVAR(link_all_deplibs, $1)=yes
3763
case $cc_basename in
3765
# FIXME: insert proper C++ library support
3766
_LT_AC_TAGVAR(ld_shlibs, $1)=no
3769
# Green Hills C++ Compiler
3770
# FIXME: insert proper C++ library support
3771
_LT_AC_TAGVAR(ld_shlibs, $1)=no
3774
# FIXME: insert proper C++ library support
3775
_LT_AC_TAGVAR(ld_shlibs, $1)=no
3780
# C++ shared libraries reported to be fairly broken before switch to ELF
3781
_LT_AC_TAGVAR(ld_shlibs, $1)=no
3784
_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
3787
# FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
3789
_LT_AC_TAGVAR(ld_shlibs, $1)=yes
3794
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
3795
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
3796
_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
3797
_LT_AC_TAGVAR(hardcode_direct, $1)=yes
3798
_LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
3799
# but as the default
3800
# location of the library.
3802
case $cc_basename in
3804
# FIXME: insert proper C++ library support
3805
_LT_AC_TAGVAR(ld_shlibs, $1)=no
3808
_LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
3809
# Commands to make compiler produce verbose output that lists
3810
# what "hidden" libraries, object files and flags are used when
3811
# linking a shared library.
3813
# There doesn't appear to be a way to prevent this compiler from
3814
# explicitly linking system object files so we need to strip them
3815
# from the output so that they don't get included in the library
3817
output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | egrep "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
3820
if test "$GXX" = yes; then
3821
_LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
3823
# FIXME: insert proper C++ library support
3824
_LT_AC_TAGVAR(ld_shlibs, $1)=no
3830
if test $with_gnu_ld = no; then
3833
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
3834
_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir'
3835
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
3838
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
3841
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
3842
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
3843
_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
3849
_LT_AC_TAGVAR(hardcode_direct, $1)=no
3850
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
3853
_LT_AC_TAGVAR(hardcode_direct, $1)=no
3854
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
3855
_LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
3856
# but as the default
3857
# location of the library.
3860
_LT_AC_TAGVAR(hardcode_direct, $1)=yes
3861
_LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
3862
# but as the default
3863
# location of the library.
3867
case $cc_basename in
3869
# FIXME: insert proper C++ library support
3870
_LT_AC_TAGVAR(ld_shlibs, $1)=no
3875
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $linker_flags $libobjs $deplibs'
3878
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
3881
# Commands to make compiler produce verbose output that lists
3882
# what "hidden" libraries, object files and flags are used when
3883
# linking a shared library.
3885
# There doesn't appear to be a way to prevent this compiler from
3886
# explicitly linking system object files so we need to strip them
3887
# from the output so that they don't get included in the library
3889
output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | grep "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
3892
if test "$GXX" = yes; then
3893
if test $with_gnu_ld = no; then
3896
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $linker_flags $libobjs $deplibs'
3899
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
3904
# FIXME: insert proper C++ library support
3905
_LT_AC_TAGVAR(ld_shlibs, $1)=no
3911
case $cc_basename in
3914
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib'
3916
# Archives containing C++ object files must be created using
3917
# "CC -ar", where "CC" is the IRIX C++ compiler. This is
3918
# necessary to make sure instantiated templates are included
3920
_LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
3923
if test "$GXX" = yes; then
3924
if test "$with_gnu_ld" = no; then
3925
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib'
3927
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` -o $lib'
3930
_LT_AC_TAGVAR(link_all_deplibs, $1)=yes
3933
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
3934
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
3937
case $cc_basename in
3939
# Kuck and Associates, Inc. (KAI) C++ Compiler
3941
# KCC will only create a shared library if the output file
3942
# ends with ".so" (or ".sl" for HP-UX), so rename the library
3943
# to its proper name (with version) after linking.
3944
_LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
3945
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib'
3946
# Commands to make compiler produce verbose output that lists
3947
# what "hidden" libraries, object files and flags are used when
3948
# linking a shared library.
3950
# There doesn't appear to be a way to prevent this compiler from
3951
# explicitly linking system object files so we need to strip them
3952
# from the output so that they don't get included in the library
3954
output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | grep "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
3956
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath,$libdir'
3957
_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
3959
# Archives containing C++ object files must be created using
3960
# "CC -Bstatic", where "CC" is the KAI C++ compiler.
3961
_LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
3966
_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
3967
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
3968
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
3969
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
3970
_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
3971
_LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
3975
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
3976
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols'
3978
runpath_var=LD_RUN_PATH
3979
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
3980
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
3982
# Commands to make compiler produce verbose output that lists
3983
# what "hidden" libraries, object files and flags are used when
3984
# linking a shared library.
3986
# There doesn't appear to be a way to prevent this compiler from
3987
# explicitly linking system object files so we need to strip them
3988
# from the output so that they don't get included in the library
3990
output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
3995
# FIXME: insert proper C++ library support
3996
_LT_AC_TAGVAR(ld_shlibs, $1)=no
3999
# FIXME: insert proper C++ library support
4000
_LT_AC_TAGVAR(ld_shlibs, $1)=no
4003
case $cc_basename in
4005
# FIXME: insert proper C++ library support
4006
_LT_AC_TAGVAR(ld_shlibs, $1)=no
4009
# FIXME: insert proper C++ library support
4010
_LT_AC_TAGVAR(ld_shlibs, $1)=no
4015
if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
4016
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
4018
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
4019
_LT_AC_TAGVAR(hardcode_direct, $1)=yes
4020
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
4022
# Workaround some broken pre-1.5 toolchains
4023
output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
4026
case $cc_basename in
4028
# Kuck and Associates, Inc. (KAI) C++ Compiler
4030
# KCC will only create a shared library if the output file
4031
# ends with ".so" (or ".sl" for HP-UX), so rename the library
4032
# to its proper name (with version) after linking.
4033
_LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
4035
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
4036
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
4038
# Archives containing C++ object files must be created using
4039
# "CC -Bstatic", where "CC" is the KAI C++ compiler.
4040
_LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
4044
# Rational C++ 2.4.1
4045
# FIXME: insert proper C++ library support
4046
_LT_AC_TAGVAR(ld_shlibs, $1)=no
4049
_LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
4050
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && echo ${wl}-set_version $verstring` -update_registry ${objdir}/so_locations -o $lib'
4052
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4053
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
4055
# Commands to make compiler produce verbose output that lists
4056
# what "hidden" libraries, object files and flags are used when
4057
# linking a shared library.
4059
# There doesn't appear to be a way to prevent this compiler from
4060
# explicitly linking system object files so we need to strip them
4061
# from the output so that they don't get included in the library
4063
output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld" | grep -v "ld:"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
4066
if test "$GXX" = yes && test "$with_gnu_ld" = no; then
4067
_LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
4068
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib'
4070
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4071
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
4073
# Commands to make compiler produce verbose output that lists
4074
# what "hidden" libraries, object files and flags are used when
4075
# linking a shared library.
4076
output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"'
4079
# FIXME: insert proper C++ library support
4080
_LT_AC_TAGVAR(ld_shlibs, $1)=no
4086
case $cc_basename in
4088
# Kuck and Associates, Inc. (KAI) C++ Compiler
4090
# KCC will only create a shared library if the output file
4091
# ends with ".so" (or ".sl" for HP-UX), so rename the library
4092
# to its proper name (with version) after linking.
4093
_LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
4095
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
4096
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
4098
# Archives containing C++ object files must be created using
4099
# the KAI C++ compiler.
4100
_LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs'
4103
# Rational C++ 2.4.1
4104
# FIXME: insert proper C++ library support
4105
_LT_AC_TAGVAR(ld_shlibs, $1)=no
4108
_LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
4109
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib'
4110
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
4111
echo "-hidden">> $lib.exp~
4112
$CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname -Wl,-input -Wl,$lib.exp `test -n "$verstring" && echo -set_version $verstring` -update_registry $objdir/so_locations -o $lib~
4115
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
4116
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
4118
# Commands to make compiler produce verbose output that lists
4119
# what "hidden" libraries, object files and flags are used when
4120
# linking a shared library.
4122
# There doesn't appear to be a way to prevent this compiler from
4123
# explicitly linking system object files so we need to strip them
4124
# from the output so that they don't get included in the library
4126
output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld" | grep -v "ld:"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
4129
if test "$GXX" = yes && test "$with_gnu_ld" = no; then
4130
_LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
4131
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib'
4133
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4134
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
4136
# Commands to make compiler produce verbose output that lists
4137
# what "hidden" libraries, object files and flags are used when
4138
# linking a shared library.
4139
output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"'
4142
# FIXME: insert proper C++ library support
4143
_LT_AC_TAGVAR(ld_shlibs, $1)=no
4149
# FIXME: insert proper C++ library support
4150
_LT_AC_TAGVAR(ld_shlibs, $1)=no
4153
_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
4154
case $cc_basename in
4156
# FIXME: insert proper C++ library support
4157
_LT_AC_TAGVAR(ld_shlibs, $1)=no
4160
# FIXME: insert proper C++ library support
4161
_LT_AC_TAGVAR(ld_shlibs, $1)=no
4166
case $cc_basename in
4169
# FIXME: insert proper C++ library support
4170
_LT_AC_TAGVAR(ld_shlibs, $1)=no
4174
# FIXME: insert proper C++ library support
4175
_LT_AC_TAGVAR(ld_shlibs, $1)=no
4178
# FIXME: insert proper C++ library support
4179
_LT_AC_TAGVAR(ld_shlibs, $1)=no
4184
case $cc_basename in
4186
# Sun C++ 4.2, 5.x and Centerline C++
4187
_LT_AC_TAGVAR(no_undefined_flag, $1)=' -zdefs'
4188
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -nolib -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
4189
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
4190
$CC -G${allow_undefined_flag} -nolib ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp'
4192
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
4193
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
4195
solaris2.[0-5] | solaris2.[0-5].*) ;;
4197
# The C++ compiler is used as linker so we must use $wl
4198
# flag to pass the commands to the underlying system
4200
# Supported since Solaris 2.6 (maybe 2.5.1?)
4201
_LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
4204
_LT_AC_TAGVAR(link_all_deplibs, $1)=yes
4206
# Commands to make compiler produce verbose output that lists
4207
# what "hidden" libraries, object files and flags are used when
4208
# linking a shared library.
4210
# There doesn't appear to be a way to prevent this compiler from
4211
# explicitly linking system object files so we need to strip them
4212
# from the output so that they don't get included in the library
4214
output_verbose_link_cmd='templist=`$CC -G $CFLAGS -v conftest.$objext 2>&1 | grep "\-[[LR]]"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
4216
# Archives containing C++ object files must be created using
4217
# "CC -xar", where "CC" is the Sun C++ compiler. This is
4218
# necessary to make sure instantiated templates are included
4220
_LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
4223
# Green Hills C++ Compiler
4224
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
4226
# The C++ compiler must be used to create the archive.
4227
_LT_AC_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
4230
# GNU C++ compiler with Solaris linker
4231
if test "$GXX" = yes && test "$with_gnu_ld" = no; then
4232
_LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
4233
if $CC --version | grep -v '^2\.7' > /dev/null; then
4234
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
4235
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
4236
$CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp'
4238
# Commands to make compiler produce verbose output that lists
4239
# what "hidden" libraries, object files and flags are used when
4240
# linking a shared library.
4241
output_verbose_link_cmd="$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep \"\-L\""
4243
# g++ 2.7 appears to require `-G' NOT `-shared' on this
4245
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
4246
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
4247
$CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp'
4249
# Commands to make compiler produce verbose output that lists
4250
# what "hidden" libraries, object files and flags are used when
4251
# linking a shared library.
4252
output_verbose_link_cmd="$CC -G $CFLAGS -v conftest.$objext 2>&1 | grep \"\-L\""
4255
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
4260
sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[[78]]* | unixware7*)
4261
_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
4264
case $cc_basename in
4266
# NonStop-UX NCC 3.20
4267
# FIXME: insert proper C++ library support
4268
_LT_AC_TAGVAR(ld_shlibs, $1)=no
4271
# FIXME: insert proper C++ library support
4272
_LT_AC_TAGVAR(ld_shlibs, $1)=no
4277
# FIXME: insert proper C++ library support
4278
_LT_AC_TAGVAR(ld_shlibs, $1)=no
4281
# FIXME: insert proper C++ library support
4282
_LT_AC_TAGVAR(ld_shlibs, $1)=no
4285
AC_MSG_RESULT([$_LT_AC_TAGVAR(ld_shlibs, $1)])
4286
test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
4288
_LT_AC_TAGVAR(GCC, $1)="$GXX"
4289
_LT_AC_TAGVAR(LD, $1)="$LD"
4291
AC_LIBTOOL_POSTDEP_PREDEP($1)
4292
AC_LIBTOOL_PROG_COMPILER_PIC($1)
4293
AC_LIBTOOL_PROG_CC_C_O($1)
4294
AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1)
4295
AC_LIBTOOL_PROG_LD_SHLIBS($1)
4296
AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1)
4297
AC_LIBTOOL_SYS_LIB_STRIP
4298
AC_LIBTOOL_SYS_DYNAMIC_LINKER($1)
4299
AC_LIBTOOL_DLOPEN_SELF($1)
4301
AC_LIBTOOL_CONFIG($1)
4308
with_gnu_ldcxx=$with_gnu_ld
4309
with_gnu_ld=$lt_save_with_gnu_ld
4310
lt_cv_path_LDCXX=$lt_cv_path_LD
4311
lt_cv_path_LD=$lt_save_path_LD
4312
lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
4313
lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
4314
])# AC_LIBTOOL_LANG_CXX_CONFIG
4316
# AC_LIBTOOL_POSTDEP_PREDEP([TAGNAME])
4317
# ------------------------
4318
# Figure out "hidden" library dependencies from verbose
4319
# compiler output when linking a shared library.
4320
# Parse the compiler output and extract the necessary
4321
# objects, libraries and library flags.
4322
AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP],[
4323
dnl we can't use the lt_simple_compile_test_code here,
4324
dnl because it contains code intended for an executable,
4325
dnl not a library. It's possible we should let each
4326
dnl tag define a new lt_????_link_test_code variable,
4327
dnl but it's only used here...
4328
ifelse([$1],[],[cat > conftest.$ac_ext <<EOF
4330
void foo (void) { a = 0; }
4332
],[$1],[CXX],[cat > conftest.$ac_ext <<EOF
4336
Foo (void) { a = 0; }
4341
],[$1],[F77],[cat > conftest.$ac_ext <<EOF
4349
],[$1],[GCJ],[cat > conftest.$ac_ext <<EOF
4352
public void bar (void) {
4358
dnl Parse the compiler output and extract the necessary
4359
dnl objects, libraries and library flags.
4360
if AC_TRY_EVAL(ac_compile); then
4361
# Parse the compiler output and extract the necessary
4362
# objects, libraries and library flags.
4364
# Sentinel used to keep track of whether or not we are before
4365
# the conftest object file.
4366
pre_test_object_deps_done=no
4368
# The `*' in the case matches for architectures that use `case' in
4369
# $output_verbose_cmd can trigger glob expansion during the loop
4370
# eval without this substitution.
4371
output_verbose_link_cmd="`$echo \"X$output_verbose_link_cmd\" | $Xsed -e \"$no_glob_subst\"`"
4373
for p in `eval $output_verbose_link_cmd`; do
4377
# Some compilers place space between "-{L,R}" and the path.
4380
|| test $p = "-R"; then
4387
if test "$pre_test_object_deps_done" = no; then
4390
# Internal compiler library paths should come after those
4391
# provided the user. The postdeps already come after the
4392
# user supplied libs so there is no need to process them.
4393
if test -z "$_LT_AC_TAGVAR(compiler_lib_search_path, $1)"; then
4394
_LT_AC_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}"
4396
_LT_AC_TAGVAR(compiler_lib_search_path, $1)="${_LT_AC_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}"
4399
# The "-l" case would never come before the object being
4400
# linked, so don't bother handling this case.
4403
if test -z "$_LT_AC_TAGVAR(postdeps, $1)"; then
4404
_LT_AC_TAGVAR(postdeps, $1)="${prev}${p}"
4406
_LT_AC_TAGVAR(postdeps, $1)="${_LT_AC_TAGVAR(postdeps, $1)} ${prev}${p}"
4412
# This assumes that the test object file only shows up
4413
# once in the compiler output.
4414
if test "$p" = "conftest.$objext"; then
4415
pre_test_object_deps_done=yes
4419
if test "$pre_test_object_deps_done" = no; then
4420
if test -z "$_LT_AC_TAGVAR(predep_objects, $1)"; then
4421
_LT_AC_TAGVAR(predep_objects, $1)="$p"
4423
_LT_AC_TAGVAR(predep_objects, $1)="$_LT_AC_TAGVAR(predep_objects, $1) $p"
4426
if test -z "$_LT_AC_TAGVAR(postdep_objects, $1)"; then
4427
_LT_AC_TAGVAR(postdep_objects, $1)="$p"
4429
_LT_AC_TAGVAR(postdep_objects, $1)="$_LT_AC_TAGVAR(postdep_objects, $1) $p"
4434
*) ;; # Ignore the rest.
4442
echo "libtool.m4: error: problem compiling $1 test program"
4445
$rm -f confest.$objext
4447
case " $_LT_AC_TAGVAR(postdeps, $1) " in
4448
*" -lc "*) _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no ;;
4450
])# AC_LIBTOOL_POSTDEP_PREDEP
4452
# AC_LIBTOOL_LANG_F77_CONFIG
4453
# ------------------------
4454
# Ensure that the configuration vars for the C compiler are
4455
# suitably defined. Those variables are subsequently used by
4456
# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
4457
AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG], [_LT_AC_LANG_F77_CONFIG(F77)])
4458
AC_DEFUN([_LT_AC_LANG_F77_CONFIG],
4459
[AC_REQUIRE([AC_PROG_F77])
4460
AC_LANG_PUSH(Fortran 77)
4462
_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
4463
_LT_AC_TAGVAR(allow_undefined_flag, $1)=
4464
_LT_AC_TAGVAR(always_export_symbols, $1)=no
4465
_LT_AC_TAGVAR(archive_expsym_cmds, $1)=
4466
_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)=
4467
_LT_AC_TAGVAR(hardcode_direct, $1)=no
4468
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=
4469
_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
4470
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
4471
_LT_AC_TAGVAR(hardcode_minus_L, $1)=no
4472
_LT_AC_TAGVAR(hardcode_automatic, $1)=no
4473
_LT_AC_TAGVAR(module_cmds, $1)=
4474
_LT_AC_TAGVAR(module_expsym_cmds, $1)=
4475
_LT_AC_TAGVAR(link_all_deplibs, $1)=unknown
4476
_LT_AC_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
4477
_LT_AC_TAGVAR(no_undefined_flag, $1)=
4478
_LT_AC_TAGVAR(whole_archive_flag_spec, $1)=
4479
_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no
4481
# Source file extension for f77 test sources.
4484
# Object file extension for compiled f77 test sources.
4486
_LT_AC_TAGVAR(objext, $1)=$objext
4488
# Code to be used in simple compile tests
4489
lt_simple_compile_test_code=" subroutine t\n return\n end\n"
4491
# Code to be used in simple link tests
4492
lt_simple_link_test_code=" program t\n end\n"
4494
# ltmain only uses $CC for tagged configurations so make sure $CC is set.
4497
# Allow CC to be a program name with arguments.
4501
_LT_AC_TAGVAR(compiler, $1)=$CC
4502
cc_basename=`$echo X"$compiler" | $Xsed -e 's%^.*/%%'`
4504
AC_MSG_CHECKING([if libtool supports shared libraries])
4505
AC_MSG_RESULT([$can_build_shared])
4507
AC_MSG_CHECKING([whether to build shared libraries])
4508
test "$can_build_shared" = "no" && enable_shared=no
4510
# On AIX, shared libraries and static libraries use the same namespace, and
4511
# are all built from PIC.
4514
test "$enable_shared" = yes && enable_static=no
4515
if test -n "$RANLIB"; then
4516
archive_cmds="$archive_cmds~\$RANLIB \$lib"
4517
postinstall_cmds='$RANLIB $lib'
4521
test "$enable_shared" = yes && enable_static=no
4524
AC_MSG_RESULT([$enable_shared])
4526
AC_MSG_CHECKING([whether to build static libraries])
4527
# Make sure either enable_shared or enable_static is yes.
4528
test "$enable_shared" = yes || enable_static=yes
4529
AC_MSG_RESULT([$enable_static])
4531
test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
4533
_LT_AC_TAGVAR(GCC, $1)="$G77"
4534
_LT_AC_TAGVAR(LD, $1)="$LD"
4536
AC_LIBTOOL_PROG_COMPILER_PIC($1)
4537
AC_LIBTOOL_PROG_CC_C_O($1)
4538
AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1)
4539
AC_LIBTOOL_PROG_LD_SHLIBS($1)
4540
AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1)
4541
AC_LIBTOOL_SYS_LIB_STRIP
4542
AC_LIBTOOL_SYS_DYNAMIC_LINKER($1)
4544
AC_LIBTOOL_CONFIG($1)
4548
])# AC_LIBTOOL_LANG_F77_CONFIG
4551
# AC_LIBTOOL_LANG_GCJ_CONFIG
4552
# --------------------------
4553
# Ensure that the configuration vars for the C compiler are
4554
# suitably defined. Those variables are subsequently used by
4555
# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
4556
AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG], [_LT_AC_LANG_GCJ_CONFIG(GCJ)])
4557
AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG],
4560
# Source file extension for Java test sources.
4563
# Object file extension for compiled Java test sources.
4565
_LT_AC_TAGVAR(objext, $1)=$objext
4567
# Code to be used in simple compile tests
4568
lt_simple_compile_test_code="class foo {}\n"
4570
# Code to be used in simple link tests
4571
lt_simple_link_test_code='public class conftest { public static void main(String[] argv) {}; }\n'
4573
# ltmain only uses $CC for tagged configurations so make sure $CC is set.
4576
# Allow CC to be a program name with arguments.
4580
_LT_AC_TAGVAR(compiler, $1)=$CC
4582
# GCJ did not exist at the time GCC didn't implicitly link libc in.
4583
_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
4585
AC_LIBTOOL_PROG_COMPILER_NO_RTTI($1)
4586
AC_LIBTOOL_PROG_COMPILER_PIC($1)
4587
AC_LIBTOOL_PROG_CC_C_O($1)
4588
AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1)
4589
AC_LIBTOOL_PROG_LD_SHLIBS($1)
4590
AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1)
4591
AC_LIBTOOL_SYS_LIB_STRIP
4592
AC_LIBTOOL_SYS_DYNAMIC_LINKER($1)
4593
AC_LIBTOOL_DLOPEN_SELF($1)
4595
AC_LIBTOOL_CONFIG($1)
4599
])# AC_LIBTOOL_LANG_GCJ_CONFIG
4602
# AC_LIBTOOL_LANG_RC_CONFIG
4603
# --------------------------
4604
# Ensure that the configuration vars for the Windows resource compiler are
4605
# suitably defined. Those variables are subsequently used by
4606
# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
4607
AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG], [_LT_AC_LANG_RC_CONFIG(RC)])
4608
AC_DEFUN([_LT_AC_LANG_RC_CONFIG],
4611
# Source file extension for RC test sources.
4614
# Object file extension for compiled RC test sources.
4616
_LT_AC_TAGVAR(objext, $1)=$objext
4618
# Code to be used in simple compile tests
4619
lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }\n'
4621
# Code to be used in simple link tests
4622
lt_simple_link_test_code="$lt_simple_compile_test_code"
4624
# ltmain only uses $CC for tagged configurations so make sure $CC is set.
4627
# Allow CC to be a program name with arguments.
4631
_LT_AC_TAGVAR(compiler, $1)=$CC
4632
_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
4634
AC_LIBTOOL_CONFIG($1)
4638
])# AC_LIBTOOL_LANG_RC_CONFIG
4641
# AC_LIBTOOL_CONFIG([TAGNAME])
4642
# ----------------------------
4643
# If TAGNAME is not passed, then create an initial libtool script
4644
# with a default configuration from the untagged config vars. Otherwise
4645
# add code to config.status for appending the configuration named by
4646
# TAGNAME from the matching tagged config vars.
4647
AC_DEFUN([AC_LIBTOOL_CONFIG],
4648
[# The else clause should only fire when bootstrapping the
4649
# libtool distribution, otherwise you forgot to ship ltmain.sh
4650
# with your package, and you will get complaints that there are
4651
# no rules to generate ltmain.sh.
4652
if test -f "$ltmain"; then
4653
# See if we are running on zsh, and set the options which allow our commands through
4654
# without removal of \ escapes.
4655
if test -n "${ZSH_VERSION+set}" ; then
4656
setopt NO_GLOB_SUBST
4658
# Now quote all the things that may contain metacharacters while being
4659
# careful not to overquote the AC_SUBSTed values. We take copies of the
4660
# variables and quote the copies for generation of the libtool script.
4661
for var in echo old_CC old_CFLAGS AR AR_FLAGS EGREP RANLIB LN_S LTCC NM SED SHELL \
4662
libname_spec library_names_spec soname_spec extract_expsyms_cmds \
4663
old_striplib striplib file_magic_cmd finish_cmds finish_eval \
4664
deplibs_check_method reload_flag reload_cmds need_locks \
4665
lt_cv_sys_global_symbol_pipe lt_cv_sys_global_symbol_to_cdecl \
4666
lt_cv_sys_global_symbol_to_c_name_address \
4667
sys_lib_search_path_spec sys_lib_dlsearch_path_spec \
4668
old_postinstall_cmds old_postuninstall_cmds \
4669
_LT_AC_TAGVAR(compiler, $1) \
4670
_LT_AC_TAGVAR(CC, $1) \
4671
_LT_AC_TAGVAR(LD, $1) \
4672
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1) \
4673
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) \
4674
_LT_AC_TAGVAR(lt_prog_compiler_static, $1) \
4675
_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) \
4676
_LT_AC_TAGVAR(export_dynamic_flag_spec, $1) \
4677
_LT_AC_TAGVAR(thread_safe_flag_spec, $1) \
4678
_LT_AC_TAGVAR(whole_archive_flag_spec, $1) \
4679
_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1) \
4680
_LT_AC_TAGVAR(old_archive_cmds, $1) \
4681
_LT_AC_TAGVAR(old_archive_from_new_cmds, $1) \
4682
_LT_AC_TAGVAR(predep_objects, $1) \
4683
_LT_AC_TAGVAR(postdep_objects, $1) \
4684
_LT_AC_TAGVAR(predeps, $1) \
4685
_LT_AC_TAGVAR(postdeps, $1) \
4686
_LT_AC_TAGVAR(compiler_lib_search_path, $1) \
4687
_LT_AC_TAGVAR(archive_cmds, $1) \
4688
_LT_AC_TAGVAR(archive_expsym_cmds, $1) \
4689
_LT_AC_TAGVAR(postinstall_cmds, $1) \
4690
_LT_AC_TAGVAR(postuninstall_cmds, $1) \
4691
_LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1) \
4692
_LT_AC_TAGVAR(allow_undefined_flag, $1) \
4693
_LT_AC_TAGVAR(no_undefined_flag, $1) \
4694
_LT_AC_TAGVAR(export_symbols_cmds, $1) \
4695
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) \
4696
_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1) \
4697
_LT_AC_TAGVAR(hardcode_libdir_separator, $1) \
4698
_LT_AC_TAGVAR(hardcode_automatic, $1) \
4699
_LT_AC_TAGVAR(module_cmds, $1) \
4700
_LT_AC_TAGVAR(module_expsym_cmds, $1) \
4701
_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1) \
4702
_LT_AC_TAGVAR(exclude_expsyms, $1) \
4703
_LT_AC_TAGVAR(include_expsyms, $1); do
4706
_LT_AC_TAGVAR(old_archive_cmds, $1) | \
4707
_LT_AC_TAGVAR(old_archive_from_new_cmds, $1) | \
4708
_LT_AC_TAGVAR(archive_cmds, $1) | \
4709
_LT_AC_TAGVAR(archive_expsym_cmds, $1) | \
4710
_LT_AC_TAGVAR(module_cmds, $1) | \
4711
_LT_AC_TAGVAR(module_expsym_cmds, $1) | \
4712
_LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1) | \
4713
_LT_AC_TAGVAR(export_symbols_cmds, $1) | \
4714
extract_expsyms_cmds | reload_cmds | finish_cmds | \
4715
postinstall_cmds | postuninstall_cmds | \
4716
old_postinstall_cmds | old_postuninstall_cmds | \
4717
sys_lib_search_path_spec | sys_lib_dlsearch_path_spec)
4718
# Double-quote double-evaled strings.
4719
eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\""
4722
eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\""
4728
*'\[$]0 --fallback-echo"')
4729
lt_echo=`$echo "X$lt_echo" | $Xsed -e 's/\\\\\\\[$]0 --fallback-echo"[$]/[$]0 --fallback-echo"/'`
4734
[cfgfile="${ofile}T"
4735
trap "$rm \"$cfgfile\"; exit 1" 1 2 15
4737
AC_MSG_NOTICE([creating $ofile])],
4740
cat <<__EOF__ >> "$cfgfile"
4744
# `$echo "$cfgfile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
4745
# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
4746
# NOTE: Changes made to this file will be lost: look at ltmain.sh.
4748
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001
4749
# Free Software Foundation, Inc.
4751
# This file is part of GNU Libtool:
4752
# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
4754
# This program is free software; you can redistribute it and/or modify
4755
# it under the terms of the GNU General Public License as published by
4756
# the Free Software Foundation; either version 2 of the License, or
4757
# (at your option) any later version.
4759
# This program is distributed in the hope that it will be useful, but
4760
# WITHOUT ANY WARRANTY; without even the implied warranty of
4761
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
4762
# General Public License for more details.
4764
# You should have received a copy of the GNU General Public License
4765
# along with this program; if not, write to the Free Software
4766
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
4768
# As a special exception to the GNU General Public License, if you
4769
# distribute this file as part of a program that contains a
4770
# configuration script generated by Autoconf, you may include it under
4771
# the same distribution terms that you use for the rest of that program.
4773
# A sed program that does not truncate output.
4776
# Sed that helps us avoid accidentally triggering echo(1) options like -n.
4777
Xsed="$SED -e s/^X//"
4779
# The HP-UX ksh and POSIX shell print the target directory to stdout
4781
if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
4783
# The names of the tagged configurations supported by this script.
4786
# ### BEGIN LIBTOOL CONFIG],
4787
[# ### BEGIN LIBTOOL TAG CONFIG: $tagname])
4789
# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
4791
# Shell to use when invoking shell scripts.
4794
# Whether or not to build shared libraries.
4795
build_libtool_libs=$enable_shared
4797
# Whether or not to build static libraries.
4798
build_old_libs=$enable_static
4800
# Whether or not to add -lc for building shared libraries.
4801
build_libtool_need_lc=$_LT_AC_TAGVAR(archive_cmds_need_lc, $1)
4803
# Whether or not to disallow shared libs when runtime libs are static
4804
allow_libtool_libs_with_static_runtimes=$_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)
4806
# Whether or not to optimize for fast installation.
4807
fast_install=$enable_fast_install
4810
host_alias=$host_alias
4813
# An echo program that does not interpret backslashes.
4818
AR_FLAGS=$lt_AR_FLAGS
4823
# A language-specific compiler.
4824
CC=$lt_[]_LT_AC_TAGVAR(compiler, $1)
4826
# Is the compiler the GNU C compiler?
4827
with_gcc=$_LT_AC_TAGVAR(GCC, $1)
4832
# The linker used to build libraries.
4833
LD=$lt_[]_LT_AC_TAGVAR(LD, $1)
4835
# Whether we need hard or soft links.
4838
# A BSD-compatible nm program.
4841
# A symbol stripping program
4844
# Used to examine libraries when file_magic_cmd begins "file"
4845
MAGIC_CMD=$MAGIC_CMD
4847
# Used on cygwin: DLL creation program.
4850
# Used on cygwin: object dumper.
4853
# Used on cygwin: assembler.
4856
# The name of the directory that contains temporary libtool files.
4859
# How to create reloadable object files.
4860
reload_flag=$lt_reload_flag
4861
reload_cmds=$lt_reload_cmds
4863
# How to pass a linker flag through the compiler.
4864
wl=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)
4866
# Object file suffix (normally "o").
4869
# Old archive suffix (normally "a").
4872
# Shared library suffix (normally ".so").
4875
# Executable file suffix (normally "").
4878
# Additional compiler flags for building library objects.
4879
pic_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)
4882
# What is the maximum length of a command?
4883
max_cmd_len=$lt_cv_sys_max_cmd_len
4885
# Does compiler simultaneously support -c and -o options?
4886
compiler_c_o=$lt_[]_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)
4888
# Must we lock files when doing compilation ?
4889
need_locks=$lt_need_locks
4891
# Do we need the lib prefix for modules?
4892
need_lib_prefix=$need_lib_prefix
4894
# Do we need a version for libraries?
4895
need_version=$need_version
4897
# Whether dlopen is supported.
4898
dlopen_support=$enable_dlopen
4900
# Whether dlopen of programs is supported.
4901
dlopen_self=$enable_dlopen_self
4903
# Whether dlopen of statically linked programs is supported.
4904
dlopen_self_static=$enable_dlopen_self_static
4906
# Compiler flag to prevent dynamic linking.
4907
link_static_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_static, $1)
4909
# Compiler flag to turn off builtin functions.
4910
no_builtin_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)
4912
# Compiler flag to allow reflexive dlopens.
4913
export_dynamic_flag_spec=$lt_[]_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)
4915
# Compiler flag to generate shared objects directly from archives.
4916
whole_archive_flag_spec=$lt_[]_LT_AC_TAGVAR(whole_archive_flag_spec, $1)
4918
# Compiler flag to generate thread-safe objects.
4919
thread_safe_flag_spec=$lt_[]_LT_AC_TAGVAR(thread_safe_flag_spec, $1)
4921
# Library versioning type.
4922
version_type=$version_type
4924
# Format of library name prefix.
4925
libname_spec=$lt_libname_spec
4927
# List of archive names. First name is the real one, the rest are links.
4928
# The last name is the one that the linker finds with -lNAME.
4929
library_names_spec=$lt_library_names_spec
4931
# The coded name of the library, if different from the real name.
4932
soname_spec=$lt_soname_spec
4934
# Commands used to build and install an old-style archive.
4936
old_archive_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_cmds, $1)
4937
old_postinstall_cmds=$lt_old_postinstall_cmds
4938
old_postuninstall_cmds=$lt_old_postuninstall_cmds
4940
# Create an old-style archive from a shared archive.
4941
old_archive_from_new_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_from_new_cmds, $1)
4943
# Create a temporary old-style archive to link instead of a shared archive.
4944
old_archive_from_expsyms_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1)
4946
# Commands used to build and install a shared archive.
4947
archive_cmds=$lt_[]_LT_AC_TAGVAR(archive_cmds, $1)
4948
archive_expsym_cmds=$lt_[]_LT_AC_TAGVAR(archive_expsym_cmds, $1)
4949
postinstall_cmds=$lt_postinstall_cmds
4950
postuninstall_cmds=$lt_postuninstall_cmds
4952
# Commands used to build a loadable module (assumed same as above if empty)
4953
module_cmds=$lt_[]_LT_AC_TAGVAR(module_cmds, $1)
4954
module_expsym_cmds=$lt_[]_LT_AC_TAGVAR(module_expsym_cmds, $1)
4956
# Commands to strip libraries.
4957
old_striplib=$lt_old_striplib
4958
striplib=$lt_striplib
4960
# Dependencies to place before the objects being linked to create a
4962
predep_objects=$lt_[]_LT_AC_TAGVAR(predep_objects, $1)
4964
# Dependencies to place after the objects being linked to create a
4966
postdep_objects=$lt_[]_LT_AC_TAGVAR(postdep_objects, $1)
4968
# Dependencies to place before the objects being linked to create a
4970
predeps=$lt_[]_LT_AC_TAGVAR(predeps, $1)
4972
# Dependencies to place after the objects being linked to create a
4974
postdeps=$lt_[]_LT_AC_TAGVAR(postdeps, $1)
4976
# The library search path used internally by the compiler when linking
4978
compiler_lib_search_path=$lt_[]_LT_AC_TAGVAR(compiler_lib_search_path, $1)
4980
# Method to check whether dependent libraries are shared objects.
4981
deplibs_check_method=$lt_deplibs_check_method
4983
# Command to use when deplibs_check_method == file_magic.
4984
file_magic_cmd=$lt_file_magic_cmd
4986
# Flag that allows shared libraries with undefined symbols to be built.
4987
allow_undefined_flag=$lt_[]_LT_AC_TAGVAR(allow_undefined_flag, $1)
4989
# Flag that forces no undefined symbols.
4990
no_undefined_flag=$lt_[]_LT_AC_TAGVAR(no_undefined_flag, $1)
4992
# Commands used to finish a libtool library installation in a directory.
4993
finish_cmds=$lt_finish_cmds
4995
# Same as above, but a single script fragment to be evaled but not shown.
4996
finish_eval=$lt_finish_eval
4998
# Take the output of nm and produce a listing of raw symbols and C names.
4999
global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe
5001
# Transform the output of nm in a proper C declaration
5002
global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl
5004
# Transform the output of nm in a C name address pair
5005
global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
5007
# This is the shared library runtime path variable.
5008
runpath_var=$runpath_var
5010
# This is the shared library path variable.
5011
shlibpath_var=$shlibpath_var
5013
# Is shlibpath searched before the hard-coded library search path?
5014
shlibpath_overrides_runpath=$shlibpath_overrides_runpath
5016
# How to hardcode a shared library path into an executable.
5017
hardcode_action=$_LT_AC_TAGVAR(hardcode_action, $1)
5019
# Whether we should hardcode library paths into libraries.
5020
hardcode_into_libs=$hardcode_into_libs
5022
# Flag to hardcode \$libdir into a binary during linking.
5023
# This must work even if \$libdir does not exist.
5024
hardcode_libdir_flag_spec=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)
5026
# If ld is used when linking, flag to hardcode \$libdir into
5027
# a binary during linking. This must work even if \$libdir does
5029
hardcode_libdir_flag_spec_ld=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)
5031
# Whether we need a single -rpath flag with a separated argument.
5032
hardcode_libdir_separator=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_separator, $1)
5034
# Set to yes if using DIR/libNAME${shared_ext} during linking hardcodes DIR into the
5036
hardcode_direct=$_LT_AC_TAGVAR(hardcode_direct, $1)
5038
# Set to yes if using the -LDIR flag during linking hardcodes DIR into the
5040
hardcode_minus_L=$_LT_AC_TAGVAR(hardcode_minus_L, $1)
5042
# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into
5043
# the resulting binary.
5044
hardcode_shlibpath_var=$_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)
5046
# Set to yes if building a shared library automatically hardcodes DIR into the library
5047
# and all subsequent libraries and executables linked against it.
5048
hardcode_automatic=$_LT_AC_TAGVAR(hardcode_automatic, $1)
5050
# Variables whose values should be saved in libtool wrapper scripts and
5051
# restored at relink time.
5052
variables_saved_for_relink="$variables_saved_for_relink"
5054
# Whether libtool must link a program against all its dependency libraries.
5055
link_all_deplibs=$_LT_AC_TAGVAR(link_all_deplibs, $1)
5057
# Compile-time system search path for libraries
5058
sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
5060
# Run-time system search path for libraries
5061
sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
5063
# Fix the shell variable \$srcfile for the compiler.
5064
fix_srcfile_path="$_LT_AC_TAGVAR(fix_srcfile_path, $1)"
5066
# Set to yes if exported symbols are required.
5067
always_export_symbols=$_LT_AC_TAGVAR(always_export_symbols, $1)
5069
# The commands to list exported symbols.
5070
export_symbols_cmds=$lt_[]_LT_AC_TAGVAR(export_symbols_cmds, $1)
5072
# The commands to extract the exported symbol list from a shared archive.
5073
extract_expsyms_cmds=$lt_extract_expsyms_cmds
5075
# Symbols that should not be listed in the preloaded symbols.
5076
exclude_expsyms=$lt_[]_LT_AC_TAGVAR(exclude_expsyms, $1)
5078
# Symbols that must always be exported.
5079
include_expsyms=$lt_[]_LT_AC_TAGVAR(include_expsyms, $1)
5082
[# ### END LIBTOOL CONFIG],
5083
[# ### END LIBTOOL TAG CONFIG: $tagname])
5090
cat <<\EOF >> "$cfgfile"
5092
# AIX sometimes has problems with the GCC collect2 program. For some
5093
# reason, if we set the COLLECT_NAMES environment variable, the problems
5094
# vanish in a puff of smoke.
5095
if test "X${COLLECT_NAMES+set}" != Xset; then
5097
export COLLECT_NAMES
5103
# We use sed instead of cat because bash on DJGPP gets confused if
5104
# if finds mixed CR/LF and LF-only lines. Since sed operates in
5105
# text mode, it properly converts lines to CR/LF. This bash problem
5106
# is reportedly fixed, but why not run on old versions too?
5107
sed '$q' "$ltmain" >> "$cfgfile" || (rm -f "$cfgfile"; exit 1)
5109
mv -f "$cfgfile" "$ofile" || \
5110
(rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
5114
# If there is no Makefile yet, we rely on a make rule to execute
5115
# `config.status --recheck' to rerun these tests and create the
5116
# libtool script then.
5117
test -f Makefile && make "$ltmain"
5119
])# AC_LIBTOOL_CONFIG
5122
# AC_LIBTOOL_PROG_COMPILER_NO_RTTI([TAGNAME])
5123
# -------------------------------------------
5124
AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI],
5125
[AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl
5127
_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
5129
if test "$GCC" = yes; then
5130
_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
5132
AC_LIBTOOL_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
5133
lt_cv_prog_compiler_rtti_exceptions,
5134
[-fno-rtti -fno-exceptions], [],
5135
[_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
5137
])# AC_LIBTOOL_PROG_COMPILER_NO_RTTI
5140
# AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE
5141
# ---------------------------------
5142
AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE],
5143
[AC_REQUIRE([AC_CANONICAL_HOST])
5144
AC_REQUIRE([AC_PROG_NM])
5145
AC_REQUIRE([AC_OBJEXT])
5146
# Check for command to grab the raw symbol name followed by C symbol from nm.
5147
AC_MSG_CHECKING([command to parse $NM output from $compiler object])
5148
AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
5150
# These are sane defaults that work on at least a few old systems.
5151
# [They come from Ultrix. What could be older than Ultrix?!! ;)]
5153
# Character class describing NM global symbol codes.
5154
symcode='[[BCDEGRST]]'
5156
# Regexp to match symbols that can be accessed directly from C.
5157
sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
5159
# Transform the above into a raw symbol and a C symbol.
5160
symxfrm='\1 \2\3 \3'
5162
# Transform an extracted symbol line into a proper C declaration
5163
lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern int \1;/p'"
5165
# Transform an extracted symbol line into symbol name and symbol address
5166
lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'"
5168
# Define system-specific variables.
5173
cygwin* | mingw* | pw32*)
5174
symcode='[[ABCDGISTW]]'
5176
hpux*) # Its linker distinguishes data from code symbols
5177
if test "$host_cpu" = ia64; then
5178
symcode='[[ABCDEGRST]]'
5180
lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
5181
lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'"
5184
symcode='[[BCDEGRST]]'
5187
symcode='[[BCDEGQRST]]'
5193
symcode='[[DFNSTU]]'
5197
# Handle CRLF in mingw tool chain
5201
opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp
5205
# If we're using GNU nm, then use its standard symbol codes.
5206
case `$NM -V 2>&1` in
5207
*GNU* | *'with BFD'*)
5208
symcode='[[ABCDGIRSTW]]' ;;
5211
# Try without a prefix undercore, then with it.
5212
for ac_symprfx in "" "_"; do
5214
# Write the raw and C identifiers.
5215
lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'"
5217
# Check to see that the pipe works correctly.
5221
cat > conftest.$ac_ext <<EOF
5226
void nm_test_func(){}
5230
int main(){nm_test_var='a';nm_test_func();return(0);}
5233
if AC_TRY_EVAL(ac_compile); then
5234
# Now try to grab the symbols.
5236
if AC_TRY_EVAL(NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) && test -s "$nlist"; then
5237
# Try sorting and uniquifying the output.
5238
if sort "$nlist" | uniq > "$nlist"T; then
5239
mv -f "$nlist"T "$nlist"
5244
# Make sure that we snagged all the symbols we need.
5245
if grep ' nm_test_var$' "$nlist" >/dev/null; then
5246
if grep ' nm_test_func$' "$nlist" >/dev/null; then
5247
cat <<EOF > conftest.$ac_ext
5253
# Now generate the symbol file.
5254
eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | grep -v main >> conftest.$ac_ext'
5256
cat <<EOF >> conftest.$ac_ext
5257
#if defined (__STDC__) && __STDC__
5258
# define lt_ptr_t void *
5260
# define lt_ptr_t char *
5264
/* The mapping between symbol names and symbols. */
5269
lt_preloaded_symbols[[]] =
5272
$SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (lt_ptr_t) \&\2},/" < "$nlist" | grep -v main >> conftest.$ac_ext
5273
cat <<\EOF >> conftest.$ac_ext
5281
# Now try linking the two files.
5282
mv conftest.$ac_objext conftstm.$ac_objext
5283
lt_save_LIBS="$LIBS"
5284
lt_save_CFLAGS="$CFLAGS"
5285
LIBS="conftstm.$ac_objext"
5286
CFLAGS="$CFLAGS$_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
5287
if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then
5290
LIBS="$lt_save_LIBS"
5291
CFLAGS="$lt_save_CFLAGS"
5293
echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
5296
echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
5299
echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
5302
echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
5303
cat conftest.$ac_ext >&5
5305
rm -f conftest* conftst*
5307
# Do not use the global_symbol_pipe unless it works.
5308
if test "$pipe_works" = yes; then
5311
lt_cv_sys_global_symbol_pipe=
5315
if test -z "$lt_cv_sys_global_symbol_pipe"; then
5316
lt_cv_sys_global_symbol_to_cdecl=
5318
if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
5319
AC_MSG_RESULT(failed)
5323
]) # AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE
5326
# AC_LIBTOOL_PROG_COMPILER_PIC([TAGNAME])
5327
# ---------------------------------------
5328
AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC],
5329
[_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)=
5330
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
5331
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)=
5333
AC_MSG_CHECKING([for $compiler option to produce PIC])
5335
# C++ specific cases for pic, static, wl, etc.
5336
if test "$GXX" = yes; then
5337
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5338
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static'
5342
# All AIX code is PIC.
5343
if test "$host_cpu" = ia64; then
5344
# AIX 5 now supports IA64 processor
5345
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5349
# FIXME: we need at least 68020 code to build shared libraries, but
5350
# adding the `-m68020' flag to GCC prevents building anything better,
5352
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
5354
beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
5355
# PIC is the default for these OSes.
5357
mingw* | os2* | pw32*)
5358
# This hack is so that the source file can tell whether it is being
5359
# built for inclusion in a dll (and should export symbols for example).
5360
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'
5362
darwin* | rhapsody*)
5363
# PIC is the default on this platform
5364
# Common symbols not allowed in MH_DYLIB files
5365
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
5368
# DJGPP does not support shared libraries at all
5369
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
5372
if test -d /usr/nec; then
5373
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
5377
# PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
5383
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
5388
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
5394
# All AIX code is PIC.
5395
if test "$host_cpu" = ia64; then
5396
# AIX 5 now supports IA64 processor
5397
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5399
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
5403
case $cc_basename in
5405
# Green Hills C++ Compiler
5406
# _LT_AC_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a"
5411
case $cc_basename in
5413
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
5416
# Green Hills C++ Compiler
5417
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
5424
# FreeBSD uses GNU C++
5426
hpux9* | hpux10* | hpux11*)
5427
case $cc_basename in
5429
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5430
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive"
5431
if test "$host_cpu" != ia64; then
5432
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
5436
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5437
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive"
5443
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
5451
irix5* | irix6* | nonstopux*)
5452
case $cc_basename in
5454
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5455
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
5456
# CC pic flag -KPIC is the default.
5463
case $cc_basename in
5466
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
5467
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
5471
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5472
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
5473
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static'
5477
# Make sure the PIC flag is empty. It appears that all Alpha
5478
# Linux and Compaq Tru64 Unix objects are PIC.
5479
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
5480
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
5491
case $cc_basename in
5493
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
5501
osf3* | osf4* | osf5*)
5502
case $cc_basename in
5504
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
5507
# Rational C++ 2.4.1
5508
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
5511
# Digital/Compaq C++
5512
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5513
# Make sure the PIC flag is empty. It appears that all Alpha
5514
# Linux and Compaq Tru64 Unix objects are PIC.
5515
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
5516
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
5525
case $cc_basename in
5527
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
5534
case $cc_basename in
5536
# Sun C++ 4.2, 5.x and Centerline C++
5537
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
5538
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5539
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
5542
# Green Hills C++ Compiler
5543
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
5550
case $cc_basename in
5553
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
5554
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5558
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
5565
case $cc_basename in
5567
# NonStop-UX NCC 3.20
5568
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
5579
_LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
5585
if test "$GCC" = yes; then
5586
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5587
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static'
5591
# All AIX code is PIC.
5592
if test "$host_cpu" = ia64; then
5593
# AIX 5 now supports IA64 processor
5594
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5599
# FIXME: we need at least 68020 code to build shared libraries, but
5600
# adding the `-m68020' flag to GCC prevents building anything better,
5602
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
5605
beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
5606
# PIC is the default for these OSes.
5609
mingw* | pw32* | os2*)
5610
# This hack is so that the source file can tell whether it is being
5611
# built for inclusion in a dll (and should export symbols for example).
5612
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'
5615
darwin* | rhapsody*)
5616
# PIC is the default on this platform
5617
# Common symbols not allowed in MH_DYLIB files
5618
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
5622
# Just because we use GCC doesn't mean we suddenly get shared libraries
5623
# on systems that don't support them.
5624
_LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
5629
if test -d /usr/nec; then
5630
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
5635
# PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
5642
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
5648
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
5652
# PORTME Check for flag to pass linker flags through the system compiler.
5655
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5656
if test "$host_cpu" = ia64; then
5657
# AIX 5 now supports IA64 processor
5658
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5660
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
5664
mingw* | pw32* | os2*)
5665
# This hack is so that the source file can tell whether it is being
5666
# built for inclusion in a dll (and should export symbols for example).
5667
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'
5670
hpux9* | hpux10* | hpux11*)
5671
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5672
# PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
5679
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
5682
# Is there a better lt_prog_compiler_static that works with the bundled CC?
5683
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
5686
irix5* | irix6* | nonstopux*)
5687
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5688
# PIC (with -KPIC) is the default.
5689
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
5693
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
5694
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5700
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5701
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
5702
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static'
5705
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5706
# All Alpha code is PIC.
5707
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
5712
osf3* | osf4* | osf5*)
5713
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5714
# All OSF/1 code is PIC.
5715
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
5719
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-Kpic'
5720
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-dn'
5724
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5725
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
5726
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5730
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
5731
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
5732
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5735
sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
5736
_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5737
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
5738
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5742
if test -d /usr/nec ;then
5743
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
5744
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5749
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
5750
_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5754
_LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
5759
AC_MSG_RESULT([$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)])
5762
# Check to make sure the PIC flag actually works.
5764
if test -n "$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)"; then
5765
AC_LIBTOOL_COMPILER_OPTION([if $compiler PIC flag $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) works],
5766
_LT_AC_TAGVAR(lt_prog_compiler_pic_works, $1),
5767
[$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)ifelse([$1],[],[ -DPIC],[ifelse([$1],[CXX],[ -DPIC],[])])], [],
5768
[case $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) in
5770
*) _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)" ;;
5772
[_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
5773
_LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
5776
# For platforms which do not support PIC, -DPIC is meaningless:
5778
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
5781
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)ifelse([$1],[],[ -DPIC],[ifelse([$1],[CXX],[ -DPIC],[])])"
5787
# AC_LIBTOOL_PROG_LD_SHLIBS([TAGNAME])
5788
# ------------------------------------
5789
# See if the linker supports building shared libraries.
5790
AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS],
5791
[AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
5793
_LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
5796
# If we're using GNU nm, then we don't want the "-C" option.
5797
# -C means demangle to AIX nm, but means don't demangle with GNU nm
5798
if $NM -V 2>&1 | grep 'GNU' > /dev/null; then
5799
_LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols'
5801
_LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols'
5805
_LT_AC_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
5808
_LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGS]] /s/.* \([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]] /s/.* //'\'' | sort | uniq > $export_symbols'
5811
_LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
5816
_LT_AC_TAGVAR(allow_undefined_flag, $1)=
5817
_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no
5818
_LT_AC_TAGVAR(archive_cmds, $1)=
5819
_LT_AC_TAGVAR(archive_expsym_cmds, $1)=
5820
_LT_AC_TAGVAR(old_archive_From_new_cmds, $1)=
5821
_LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1)=
5822
_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)=
5823
_LT_AC_TAGVAR(whole_archive_flag_spec, $1)=
5824
_LT_AC_TAGVAR(thread_safe_flag_spec, $1)=
5825
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=
5826
_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
5827
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
5828
_LT_AC_TAGVAR(hardcode_direct, $1)=no
5829
_LT_AC_TAGVAR(hardcode_minus_L, $1)=no
5830
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
5831
_LT_AC_TAGVAR(link_all_deplibs, $1)=unknown
5832
_LT_AC_TAGVAR(hardcode_automatic, $1)=no
5833
_LT_AC_TAGVAR(module_cmds, $1)=
5834
_LT_AC_TAGVAR(module_expsym_cmds, $1)=
5835
_LT_AC_TAGVAR(always_export_symbols, $1)=no
5836
_LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
5837
# include_expsyms should be a list of space-separated symbols to be *always*
5838
# included in the symbol list
5839
_LT_AC_TAGVAR(include_expsyms, $1)=
5840
# exclude_expsyms can be an extended regexp of symbols to exclude
5841
# it will be wrapped by ` (' and `)$', so one must not match beginning or
5842
# end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
5843
# as well as any symbol that contains `d'.
5844
_LT_AC_TAGVAR(exclude_expsyms, $1)="_GLOBAL_OFFSET_TABLE_"
5845
# Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
5846
# platforms (ab)use it in PIC code, but their linkers get confused if
5847
# the symbol is explicitly referenced. Since portable code cannot
5848
# rely on this symbol name, it's probably fine to never include it in
5849
# preloaded symbol tables.
5850
extract_expsyms_cmds=
5853
cygwin* | mingw* | pw32*)
5854
# FIXME: the MSVC++ port hasn't been tested in a loooong time
5855
# When not using gcc, we currently assume that we are using
5856
# Microsoft Visual C++.
5857
if test "$GCC" != yes; then
5866
_LT_AC_TAGVAR(ld_shlibs, $1)=yes
5867
if test "$with_gnu_ld" = yes; then
5868
# If archive_cmds runs LD, not CC, wlarc should be empty
5871
# See if GNU ld supports shared libraries.
5873
aix3* | aix4* | aix5*)
5874
# On AIX/PPC, the GNU linker is very broken
5875
if test "$host_cpu" != ia64; then
5876
_LT_AC_TAGVAR(ld_shlibs, $1)=no
5879
*** Warning: the GNU linker, at least up to release 2.9.1, is reported
5880
*** to be unable to reliably create shared libraries on AIX.
5881
*** Therefore, libtool is disabling shared libraries support. If you
5882
*** really care for shared libraries, you may want to modify your PATH
5883
*** so that a non-GNU linker is found, and then restart.
5890
_LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
5891
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5892
_LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
5894
# Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
5895
# that the semantics of dynamic libraries on AmigaOS, at least up
5896
# to version 4, is to share data among multiple programs linked
5897
# with the same dynamic library. Since this doesn't match the
5898
# behavior of shared libraries on other platforms, we can't use
5900
_LT_AC_TAGVAR(ld_shlibs, $1)=no
5904
if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
5905
_LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
5906
# Joseph Beckenbach <jrb3@best.com> says some releases of gcc
5907
# support --undefined. This deserves some investigation. FIXME
5908
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
5910
_LT_AC_TAGVAR(ld_shlibs, $1)=no
5914
cygwin* | mingw* | pw32*)
5915
# _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
5916
# as there is no search path for DLLs.
5917
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5918
_LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
5919
_LT_AC_TAGVAR(always_export_symbols, $1)=no
5920
_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5921
_LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGS]] /s/.* \([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]] /s/.* //'\'' | sort | uniq > $export_symbols'
5923
if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then
5924
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib'
5925
# If the export-symbols file already is a .def file (1st line
5926
# is EXPORTS), use it as is; otherwise, prepend...
5927
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
5928
cp $export_symbols $output_objdir/$soname.def;
5930
echo EXPORTS > $output_objdir/$soname.def;
5931
cat $export_symbols >> $output_objdir/$soname.def;
5933
$CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib'
5940
if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
5941
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
5944
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
5945
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
5950
if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then
5951
_LT_AC_TAGVAR(ld_shlibs, $1)=no
5954
*** Warning: The releases 2.8.* of the GNU linker cannot reliably
5955
*** create shared libraries on Solaris systems. Therefore, libtool
5956
*** is disabling shared libraries support. We urge you to upgrade GNU
5957
*** binutils to release 2.9.1 or newer. Another option is to modify
5958
*** your PATH or compiler configuration so that the native linker is
5959
*** used, and then restart.
5962
elif $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
5963
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
5964
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
5966
_LT_AC_TAGVAR(ld_shlibs, $1)=no
5971
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5973
_LT_AC_TAGVAR(hardcode_direct, $1)=yes
5974
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
5978
if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
5979
tmp_archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
5980
_LT_AC_TAGVAR(archive_cmds, $1)="$tmp_archive_cmds"
5981
supports_anon_versioning=no
5982
case `$LD -v 2>/dev/null` in
5983
*\ [01].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
5984
*\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
5985
*\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
5986
*\ 2.11.*) ;; # other 2.11 versions
5987
*) supports_anon_versioning=yes ;;
5989
if test $supports_anon_versioning = yes; then
5990
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $output_objdir/$libname.ver~
5991
cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
5992
$echo "local: *; };" >> $output_objdir/$libname.ver~
5993
$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
5995
_LT_AC_TAGVAR(archive_expsym_cmds, $1)="$tmp_archive_cmds"
5998
_LT_AC_TAGVAR(ld_shlibs, $1)=no
6003
if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
6004
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6005
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
6007
_LT_AC_TAGVAR(ld_shlibs, $1)=no
6012
if test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = yes; then
6013
runpath_var=LD_RUN_PATH
6014
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
6015
_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
6016
# ancient GNU ld didn't support --whole-archive et. al.
6017
if $LD --help 2>&1 | grep 'no-whole-archive' > /dev/null; then
6018
_LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
6020
_LT_AC_TAGVAR(whole_archive_flag_spec, $1)=
6024
# PORTME fill in a description of your system's linker (not GNU ld)
6027
_LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
6028
_LT_AC_TAGVAR(always_export_symbols, $1)=yes
6029
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
6030
# Note: this linker hardcodes the directories in LIBPATH if there
6031
# are no directories specified by -L.
6032
_LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
6033
if test "$GCC" = yes && test -z "$link_static_flag"; then
6034
# Neither direct hardcoding nor static linking is supported with a
6036
_LT_AC_TAGVAR(hardcode_direct, $1)=unsupported
6041
if test "$host_cpu" = ia64; then
6042
# On IA64, the linker does run time linking by default, so we don't
6043
# have to do anything special.
6044
aix_use_runtimelinking=no
6045
exp_sym_flag='-Bexport'
6048
# If we're using GNU nm, then we don't want the "-C" option.
6049
# -C means demangle to AIX nm, but means don't demangle with GNU nm
6050
if $NM -V 2>&1 | grep 'GNU' > /dev/null; then
6051
_LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols'
6053
_LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols'
6055
aix_use_runtimelinking=no
6057
# Test if we are trying to use run time linking or normal
6058
# AIX style linking. If -brtl is somewhere in LDFLAGS, we
6059
# need to do runtime linking.
6060
case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*)
6061
for ld_flag in $LDFLAGS; do
6062
if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
6063
aix_use_runtimelinking=yes
6069
exp_sym_flag='-bexport'
6070
no_entry_flag='-bnoentry'
6073
# When large executables or shared objects are built, AIX ld can
6074
# have problems creating the table of contents. If linking a library
6075
# or program results in "error TOC overflow" add -mminimal-toc to
6076
# CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
6077
# enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
6079
_LT_AC_TAGVAR(archive_cmds, $1)=''
6080
_LT_AC_TAGVAR(hardcode_direct, $1)=yes
6081
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':'
6082
_LT_AC_TAGVAR(link_all_deplibs, $1)=yes
6084
if test "$GCC" = yes; then
6085
case $host_os in aix4.[012]|aix4.[012].*)
6086
# We only want to do this on AIX 4.2 and lower, the check
6087
# below for broken collect2 doesn't work under 4.3+
6088
collect2name=`${CC} -print-prog-name=collect2`
6089
if test -f "$collect2name" && \
6090
strings "$collect2name" | grep resolve_lib_name >/dev/null
6092
# We have reworked collect2
6093
_LT_AC_TAGVAR(hardcode_direct, $1)=yes
6095
# We have old collect2
6096
_LT_AC_TAGVAR(hardcode_direct, $1)=unsupported
6097
# It fails to find uninstalled libraries when the uninstalled
6098
# path is not listed in the libpath. Setting hardcode_minus_L
6099
# to unsupported forces relinking
6100
_LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
6101
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6102
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
6105
shared_flag='-shared'
6108
if test "$host_cpu" = ia64; then
6109
# VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
6110
# chokes on -Wl,-G. The following line is correct:
6113
if test "$aix_use_runtimelinking" = yes; then
6114
shared_flag='${wl}-G'
6116
shared_flag='${wl}-bM:SRE'
6121
# It seems that -bexpall does not export symbols beginning with
6122
# underscore (_), so it is better to generate a list of symbols to export.
6123
_LT_AC_TAGVAR(always_export_symbols, $1)=yes
6124
if test "$aix_use_runtimelinking" = yes; then
6125
# Warning - without using the other runtime loading flags (-brtl),
6126
# -berok will link without error, but may produce a broken library.
6127
_LT_AC_TAGVAR(allow_undefined_flag, $1)='-berok'
6128
# Determine the default libpath from the value encoded in an empty executable.
6129
_LT_AC_SYS_LIBPATH_AIX
6130
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
6131
_LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag"
6133
if test "$host_cpu" = ia64; then
6134
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
6135
_LT_AC_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
6136
_LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"
6138
# Determine the default libpath from the value encoded in an empty executable.
6139
_LT_AC_SYS_LIBPATH_AIX
6140
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
6141
# Warning - without using the other run time loading flags,
6142
# -berok will link without error, but may produce a broken library.
6143
_LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
6144
_LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
6145
# -bexpall does not export symbols beginning with underscore (_)
6146
_LT_AC_TAGVAR(always_export_symbols, $1)=yes
6147
# Exported symbols can be pulled into shared objects from archives
6148
_LT_AC_TAGVAR(whole_archive_flag_spec, $1)=' '
6149
_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes
6150
# This is similar to how AIX traditionally builds it's shared libraries.
6151
_LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
6157
_LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
6158
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6159
_LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
6160
# see comment about different semantics on the GNU ld section
6161
_LT_AC_TAGVAR(ld_shlibs, $1)=no
6165
_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
6168
cygwin* | mingw* | pw32*)
6169
# When not using gcc, we currently assume that we are using
6170
# Microsoft Visual C++.
6171
# hardcode_libdir_flag_spec is actually meaningless, as there is
6172
# no search path for DLLs.
6173
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
6174
_LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
6175
# Tell ltmain to make .lib files, not .a files.
6177
# Tell ltmain to make .dll files, not .so files.
6179
# FIXME: Setting linknames here is a bad hack.
6180
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | $SED -e '\''s/ -lc$//'\''` -link -dll~linknames='
6181
# The linker will automatically build a .lib file if we build a DLL.
6182
_LT_AC_TAGVAR(old_archive_From_new_cmds, $1)='true'
6183
# FIXME: Should let the user specify the lib program.
6184
_LT_AC_TAGVAR(old_archive_cmds, $1)='lib /OUT:$oldlib$oldobjs$old_deplibs'
6185
fix_srcfile_path='`cygpath -w "$srcfile"`'
6186
_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6189
darwin* | rhapsody*)
6190
if $CC -v 2>&1 | grep 'Apple' >/dev/null ; then
6191
_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
6193
rhapsody* | darwin1.[[012]])
6194
_LT_AC_TAGVAR(allow_undefined_flag, $1)='-undefined suppress'
6197
test -z ${LD_TWOLEVEL_NAMESPACE} && _LT_AC_TAGVAR(allow_undefined_flag, $1)='-flat_namespace -undefined suppress'
6200
# FIXME: Relying on posixy $() will cause problems for
6201
# cross-compilation, but unfortunately the echo tests do not
6202
# yet detect zsh echo's removal of \ escapes. Also zsh mangles
6203
# `"' quotes if we put them in here... so don't!
6204
lt_int_apple_cc_single_mod=no
6205
output_verbose_link_cmd='echo'
6206
if $CC -dumpspecs 2>&1 | grep 'single_module' >/dev/null ; then
6207
lt_int_apple_cc_single_mod=yes
6209
if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
6210
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
6212
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -r ${wl}-bind_at_load -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'
6214
_LT_AC_TAGVAR(module_cmds, $1)='$CC -bundle ${wl}-bind_at_load $allow_undefined_flag -o $lib $libobjs $deplibs$compiler_flags'
6215
# Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
6216
if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
6217
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
6219
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r ${wl}-bind_at_load -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~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
6221
_LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -bundle $allow_undefined_flag -o $lib $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
6222
_LT_AC_TAGVAR(hardcode_direct, $1)=no
6223
_LT_AC_TAGVAR(hardcode_automatic, $1)=yes
6224
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
6225
_LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-all_load $convenience'
6226
_LT_AC_TAGVAR(link_all_deplibs, $1)=yes
6231
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6232
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6233
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6237
_LT_AC_TAGVAR(ld_shlibs, $1)=no
6240
# FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
6241
# support. Future versions do this automatically, but an explicit c++rt0.o
6242
# does not break anything, and helps significantly (at the cost of a little
6245
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
6246
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6247
_LT_AC_TAGVAR(hardcode_direct, $1)=yes
6248
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6251
# Unfortunately, older versions of FreeBSD 2 do not have this feature.
6253
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
6254
_LT_AC_TAGVAR(hardcode_direct, $1)=yes
6255
_LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
6256
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6259
# FreeBSD 3 and greater uses gcc -shared to do shared libraries.
6261
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
6262
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6263
_LT_AC_TAGVAR(hardcode_direct, $1)=yes
6264
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6268
if test "$GCC" = yes; then
6269
_LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
6271
_LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
6273
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
6274
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
6275
_LT_AC_TAGVAR(hardcode_direct, $1)=yes
6277
# hardcode_minus_L: Not really in the search PATH,
6278
# but as the default location of the library.
6279
_LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
6280
_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6284
if test "$GCC" = yes -a "$with_gnu_ld" = no; then
6287
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
6290
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
6296
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $libobjs $deplibs $linker_flags'
6299
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
6303
if test "$with_gnu_ld" = no; then
6306
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
6307
_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir'
6308
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
6309
_LT_AC_TAGVAR(hardcode_direct, $1)=no
6310
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6313
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6314
_LT_AC_TAGVAR(hardcode_direct, $1)=no
6315
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6317
# hardcode_minus_L: Not really in the search PATH,
6318
# but as the default location of the library.
6319
_LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
6322
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
6323
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
6324
_LT_AC_TAGVAR(hardcode_direct, $1)=yes
6325
_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6327
# hardcode_minus_L: Not really in the search PATH,
6328
# but as the default location of the library.
6329
_LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
6335
irix5* | irix6* | nonstopux*)
6336
if test "$GCC" = yes; then
6337
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
6339
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
6340
_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir'
6342
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6343
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
6344
_LT_AC_TAGVAR(link_all_deplibs, $1)=yes
6348
if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
6349
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
6351
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
6353
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6354
_LT_AC_TAGVAR(hardcode_direct, $1)=yes
6355
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6359
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6360
_LT_AC_TAGVAR(hardcode_direct, $1)=yes
6361
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6362
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
6363
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6367
_LT_AC_TAGVAR(hardcode_direct, $1)=yes
6368
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6369
if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
6370
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
6371
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6372
_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6375
openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
6376
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
6377
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6380
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
6381
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6388
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6389
_LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
6390
_LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
6391
_LT_AC_TAGVAR(archive_cmds, $1)='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
6392
_LT_AC_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
6396
if test "$GCC" = yes; then
6397
_LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
6398
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
6400
_LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
6401
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
6403
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6404
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
6407
osf4* | osf5*) # as osf3* with the addition of -msym flag
6408
if test "$GCC" = yes; then
6409
_LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
6410
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
6411
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6413
_LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
6414
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
6415
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~
6416
$LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp'
6418
# Both c and cxx compiler support -rpath directly
6419
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
6421
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
6425
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6426
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6427
_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
6428
runpath_var=LD_RUN_PATH
6429
hardcode_runpath_var=yes
6433
_LT_AC_TAGVAR(no_undefined_flag, $1)=' -z text'
6434
if test "$GCC" = yes; then
6435
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
6436
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
6437
$CC -shared ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$rm $lib.exp'
6439
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
6440
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
6441
$LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
6443
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6444
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6446
solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
6447
*) # Supported since Solaris 2.6 (maybe 2.5.1?)
6448
_LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' ;;
6450
_LT_AC_TAGVAR(link_all_deplibs, $1)=yes
6454
if test "x$host_vendor" = xsequent; then
6455
# Use $CC to link under sequent, because it throws in some extra .o
6456
# files that make .init and .fini sections work.
6457
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
6459
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
6461
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6462
_LT_AC_TAGVAR(hardcode_direct, $1)=yes
6463
_LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
6464
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6468
case $host_vendor in
6470
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6471
_LT_AC_TAGVAR(hardcode_direct, $1)=yes # is this really true???
6474
## LD is ld it makes a PLAMLIB
6475
## CC just makes a GrossModule.
6476
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
6477
_LT_AC_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
6478
_LT_AC_TAGVAR(hardcode_direct, $1)=no
6481
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6482
_LT_AC_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
6485
runpath_var='LD_RUN_PATH'
6486
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6490
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6491
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6492
_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
6496
if test -d /usr/nec; then
6497
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6498
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6499
runpath_var=LD_RUN_PATH
6500
hardcode_runpath_var=yes
6501
_LT_AC_TAGVAR(ld_shlibs, $1)=yes
6506
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
6507
_LT_AC_TAGVAR(hardcode_direct, $1)=yes
6508
_LT_AC_TAGVAR(hardcode_minus_L, $1)=no
6509
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6510
hardcode_runpath_var=yes
6511
runpath_var=LD_RUN_PATH
6514
sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[[78]]* | unixware7*)
6515
_LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z ${wl}text'
6516
if test "$GCC" = yes; then
6517
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
6519
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
6521
runpath_var='LD_RUN_PATH'
6522
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6526
_LT_AC_TAGVAR(no_undefined_flag, $1)=' -z text'
6527
# $CC -shared without GNU ld will not create a library from C++
6528
# object files and a static libstdc++, better avoid it by now
6529
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
6530
_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
6531
$LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
6532
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=
6533
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6534
runpath_var='LD_RUN_PATH'
6538
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6539
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6540
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6544
_LT_AC_TAGVAR(ld_shlibs, $1)=no
6549
AC_MSG_RESULT([$_LT_AC_TAGVAR(ld_shlibs, $1)])
6550
test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
6552
variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
6553
if test "$GCC" = yes; then
6554
variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
6558
# Do we need to explicitly link libc?
6560
case "x$_LT_AC_TAGVAR(archive_cmds_need_lc, $1)" in
6562
# Assume -lc should be added
6563
_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes
6565
if test "$enable_shared" = yes && test "$GCC" = yes; then
6566
case $_LT_AC_TAGVAR(archive_cmds, $1) in
6568
# FIXME: we may have to deal with multi-command sequences.
6571
# Test whether the compiler implicitly links with -lc since on some
6572
# systems, -lgcc has to come before -lc. If gcc already passes -lc
6573
# to ld, don't add -lc before -lgcc.
6574
AC_MSG_CHECKING([whether -lc should be explicitly linked in])
6576
printf "$lt_simple_compile_test_code" > conftest.$ac_ext
6578
if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
6581
libobjs=conftest.$ac_objext
6583
wl=$_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)
6589
lt_save_allow_undefined_flag=$_LT_AC_TAGVAR(allow_undefined_flag, $1)
6590
_LT_AC_TAGVAR(allow_undefined_flag, $1)=
6591
if AC_TRY_EVAL(_LT_AC_TAGVAR(archive_cmds, $1) 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1)
6593
_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
6595
_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes
6597
_LT_AC_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
6599
cat conftest.err 1>&5
6602
AC_MSG_RESULT([$_LT_AC_TAGVAR(archive_cmds_need_lc, $1)])
6608
])# AC_LIBTOOL_PROG_LD_SHLIBS
6611
# _LT_AC_FILE_LTDLL_C
6612
# -------------------
6613
# Be careful that the start marker always follows a newline.
6614
AC_DEFUN([_LT_AC_FILE_LTDLL_C], [
6615
# /* ltdll.c starts here */
6616
# #define WIN32_LEAN_AND_MEAN
6617
# #include <windows.h>
6618
# #undef WIN32_LEAN_AND_MEAN
6619
# #include <stdio.h>
6621
# #ifndef __CYGWIN__
6622
# # ifdef __CYGWIN32__
6623
# # define __CYGWIN__ __CYGWIN32__
6627
# #ifdef __cplusplus
6630
# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved);
6631
# #ifdef __cplusplus
6636
# #include <cygwin/cygwin_dll.h>
6637
# DECLARE_CYGWIN_DLL( DllMain );
6639
# HINSTANCE __hDllInstance_base;
6642
# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved)
6644
# __hDllInstance_base = hInst;
6647
# /* ltdll.c ends here */
6648
])# _LT_AC_FILE_LTDLL_C
6651
# _LT_AC_TAGVAR(VARNAME, [TAGNAME])
6652
# ---------------------------------
6653
AC_DEFUN([_LT_AC_TAGVAR], [ifelse([$2], [], [$1], [$1_$2])])
6657
4378
AC_DEFUN([AM_PROG_LIBTOOL], [AC_PROG_LIBTOOL])