libtool.m4
上传用户:nini_0081
上传日期:2022-07-21
资源大小:2628k
文件大小:254k
源码类别:

多媒体编程

开发平台:

DOS

  1.     esac
  2.     ;;
  3.   *)
  4.     ;;
  5. esac
  6. ;;
  7.       interix*)
  8. # This is c89, which is MS Visual C++ (no shared libs)
  9. # Anyone wants to do a port?
  10. ;;
  11.       irix5* | irix6* | nonstopux*)
  12. case $cc_basename in
  13.   CC*)
  14.     _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  15.     _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
  16.     # CC pic flag -KPIC is the default.
  17.     ;;
  18.   *)
  19.     ;;
  20. esac
  21. ;;
  22.       linux* | k*bsd*-gnu)
  23. case $cc_basename in
  24.   KCC*)
  25.     # KAI C++ Compiler
  26.     _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
  27.     _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
  28.     ;;
  29.   ecpc* )
  30.     # old Intel C++ for x86_64 which still supported -KPIC.
  31.     _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  32.     _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
  33.     _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
  34.     ;;
  35.   icpc* )
  36.     # Intel C++, used to be incompatible with GCC.
  37.     # ICC 10 doesn't accept -KPIC any more.
  38.     _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  39.     _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
  40.     _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
  41.     ;;
  42.   pgCC* | pgcpp*)
  43.     # Portland Group C++ compiler
  44.     _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  45.     _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
  46.     _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  47.     ;;
  48.   cxx*)
  49.     # Compaq C++
  50.     # Make sure the PIC flag is empty.  It appears that all Alpha
  51.     # Linux and Compaq Tru64 Unix objects are PIC.
  52.     _LT_TAGVAR(lt_prog_compiler_pic, $1)=
  53.     _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
  54.     ;;
  55.   xlc* | xlC*)
  56.     # IBM XL 8.0 on PPC
  57.     _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  58.     _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
  59.     _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
  60.     ;;
  61.   *)
  62.     case `$CC -V 2>&1 | sed 5q` in
  63.     *Sun C*)
  64.       # Sun C++ 5.9
  65.       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
  66.       _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  67.       _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
  68.       ;;
  69.     esac
  70.     ;;
  71. esac
  72. ;;
  73.       lynxos*)
  74. ;;
  75.       m88k*)
  76. ;;
  77.       mvs*)
  78. case $cc_basename in
  79.   cxx*)
  80.     _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
  81.     ;;
  82.   *)
  83.     ;;
  84. esac
  85. ;;
  86.       netbsd*)
  87. ;;
  88.       *qnx* | *nto*)
  89.         # QNX uses GNU C++, but need to define -shared option too, otherwise
  90.         # it will coredump.
  91.         _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
  92.         ;;
  93.       osf3* | osf4* | osf5*)
  94. case $cc_basename in
  95.   KCC*)
  96.     _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
  97.     ;;
  98.   RCC*)
  99.     # Rational C++ 2.4.1
  100.     _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
  101.     ;;
  102.   cxx*)
  103.     # Digital/Compaq C++
  104.     _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  105.     # Make sure the PIC flag is empty.  It appears that all Alpha
  106.     # Linux and Compaq Tru64 Unix objects are PIC.
  107.     _LT_TAGVAR(lt_prog_compiler_pic, $1)=
  108.     _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
  109.     ;;
  110.   *)
  111.     ;;
  112. esac
  113. ;;
  114.       psos*)
  115. ;;
  116.       solaris*)
  117. case $cc_basename in
  118.   CC*)
  119.     # Sun C++ 4.2, 5.x and Centerline C++
  120.     _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
  121.     _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  122.     _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
  123.     ;;
  124.   gcx*)
  125.     # Green Hills C++ Compiler
  126.     _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
  127.     ;;
  128.   *)
  129.     ;;
  130. esac
  131. ;;
  132.       sunos4*)
  133. case $cc_basename in
  134.   CC*)
  135.     # Sun C++ 4.x
  136.     _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
  137.     _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  138.     ;;
  139.   lcc*)
  140.     # Lucid
  141.     _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
  142.     ;;
  143.   *)
  144.     ;;
  145. esac
  146. ;;
  147.       sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
  148. case $cc_basename in
  149.   CC*)
  150.     _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  151.     _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
  152.     _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  153.     ;;
  154. esac
  155. ;;
  156.       tandem*)
  157. case $cc_basename in
  158.   NCC*)
  159.     # NonStop-UX NCC 3.20
  160.     _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
  161.     ;;
  162.   *)
  163.     ;;
  164. esac
  165. ;;
  166.       vxworks*)
  167. ;;
  168.       *)
  169. _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
  170. ;;
  171.     esac
  172.   fi
  173. ],
  174. [
  175.   if test "$GCC" = yes; then
  176.     _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  177.     _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
  178.     case $host_os in
  179.       aix*)
  180.       # All AIX code is PIC.
  181.       if test "$host_cpu" = ia64; then
  182. # AIX 5 now supports IA64 processor
  183. _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  184.       fi
  185.       ;;
  186.     amigaos*)
  187.       case $host_cpu in
  188.       powerpc)
  189.             # see comment about AmigaOS4 .so support
  190.             _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
  191.         ;;
  192.       m68k)
  193.             # FIXME: we need at least 68020 code to build shared libraries, but
  194.             # adding the `-m68020' flag to GCC prevents building anything better,
  195.             # like `-m68040'.
  196.             _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
  197.         ;;
  198.       esac
  199.       ;;
  200.     beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
  201.       # PIC is the default for these OSes.
  202.       ;;
  203.     mingw* | cygwin* | pw32* | os2* | cegcc*)
  204.       # This hack is so that the source file can tell whether it is being
  205.       # built for inclusion in a dll (and should export symbols for example).
  206.       # Although the cygwin gcc ignores -fPIC, still need this for old-style
  207.       # (--disable-auto-import) libraries
  208.       m4_if([$1], [GCJ], [],
  209. [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
  210.       ;;
  211.     darwin* | rhapsody*)
  212.       # PIC is the default on this platform
  213.       # Common symbols not allowed in MH_DYLIB files
  214.       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
  215.       ;;
  216.     hpux*)
  217.       # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
  218.       # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag
  219.       # sets the default TLS model and affects inlining.
  220.       case $host_cpu in
  221.       hppa*64*)
  222. # +Z the default
  223. ;;
  224.       *)
  225. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
  226. ;;
  227.       esac
  228.       ;;
  229.     interix[[3-9]]*)
  230.       # Interix 3.x gcc -fpic/-fPIC options generate broken code.
  231.       # Instead, we relocate shared libraries at runtime.
  232.       ;;
  233.     msdosdjgpp*)
  234.       # Just because we use GCC doesn't mean we suddenly get shared libraries
  235.       # on systems that don't support them.
  236.       _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
  237.       enable_shared=no
  238.       ;;
  239.     *nto* | *qnx*)
  240.       # QNX uses GNU C++, but need to define -shared option too, otherwise
  241.       # it will coredump.
  242.       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
  243.       ;;
  244.     sysv4*MP*)
  245.       if test -d /usr/nec; then
  246. _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
  247.       fi
  248.       ;;
  249.     *)
  250.       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
  251.       ;;
  252.     esac
  253.   else
  254.     # PORTME Check for flag to pass linker flags through the system compiler.
  255.     case $host_os in
  256.     aix*)
  257.       _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  258.       if test "$host_cpu" = ia64; then
  259. # AIX 5 now supports IA64 processor
  260. _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  261.       else
  262. _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
  263.       fi
  264.       ;;
  265.     mingw* | cygwin* | pw32* | os2* | cegcc*)
  266.       # This hack is so that the source file can tell whether it is being
  267.       # built for inclusion in a dll (and should export symbols for example).
  268.       m4_if([$1], [GCJ], [],
  269. [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
  270.       ;;
  271.     hpux9* | hpux10* | hpux11*)
  272.       _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  273.       # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
  274.       # not for PA HP-UX.
  275.       case $host_cpu in
  276.       hppa*64*|ia64*)
  277. # +Z the default
  278. ;;
  279.       *)
  280. _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
  281. ;;
  282.       esac
  283.       # Is there a better lt_prog_compiler_static that works with the bundled CC?
  284.       _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
  285.       ;;
  286.     irix5* | irix6* | nonstopux*)
  287.       _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  288.       # PIC (with -KPIC) is the default.
  289.       _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
  290.       ;;
  291.     linux* | k*bsd*-gnu)
  292.       case $cc_basename in
  293.       # old Intel for x86_64 which still supported -KPIC.
  294.       ecc*)
  295. _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  296. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
  297. _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
  298.         ;;
  299.       # icc used to be incompatible with GCC.
  300.       # ICC 10 doesn't accept -KPIC any more.
  301.       icc* | ifort*)
  302. _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  303. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
  304. _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
  305.         ;;
  306.       # Lahey Fortran 8.1.
  307.       lf95*)
  308. _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  309. _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
  310. _LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
  311. ;;
  312.       pgcc* | pgf77* | pgf90* | pgf95*)
  313.         # Portland Group compilers (*not* the Pentium gcc compiler,
  314. # which looks to be a dead project)
  315. _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  316. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
  317. _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  318.         ;;
  319.       ccc*)
  320.         _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  321.         # All Alpha code is PIC.
  322.         _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
  323.         ;;
  324.       xl*)
  325. # IBM XL C 8.0/Fortran 10.1 on PPC
  326. _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  327. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
  328. _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
  329. ;;
  330.       *)
  331. case `$CC -V 2>&1 | sed 5q` in
  332. *Sun C*)
  333.   # Sun C 5.9
  334.   _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
  335.   _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  336.   _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  337.   ;;
  338. *Sun F*)
  339.   # Sun Fortran 8.3 passes all unrecognized flags to the linker
  340.   _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
  341.   _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  342.   _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
  343.   ;;
  344. esac
  345. ;;
  346.       esac
  347.       ;;
  348.     newsos6)
  349.       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
  350.       _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  351.       ;;
  352.     *nto* | *qnx*)
  353.       # QNX uses GNU C++, but need to define -shared option too, otherwise
  354.       # it will coredump.
  355.       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
  356.       ;;
  357.     osf3* | osf4* | osf5*)
  358.       _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  359.       # All OSF/1 code is PIC.
  360.       _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
  361.       ;;
  362.     rdos*)
  363.       _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
  364.       ;;
  365.     solaris*)
  366.       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
  367.       _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  368.       case $cc_basename in
  369.       f77* | f90* | f95*)
  370. _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
  371.       *)
  372. _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
  373.       esac
  374.       ;;
  375.     sunos4*)
  376.       _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
  377.       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
  378.       _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  379.       ;;
  380.     sysv4 | sysv4.2uw2* | sysv4.3*)
  381.       _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  382.       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
  383.       _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  384.       ;;
  385.     sysv4*MP*)
  386.       if test -d /usr/nec ;then
  387. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
  388. _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  389.       fi
  390.       ;;
  391.     sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
  392.       _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  393.       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
  394.       _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  395.       ;;
  396.     unicos*)
  397.       _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  398.       _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
  399.       ;;
  400.     uts4*)
  401.       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
  402.       _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  403.       ;;
  404.     *)
  405.       _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
  406.       ;;
  407.     esac
  408.   fi
  409. ])
  410. case $host_os in
  411.   # For platforms which do not support PIC, -DPIC is meaningless:
  412.   *djgpp*)
  413.     _LT_TAGVAR(lt_prog_compiler_pic, $1)=
  414.     ;;
  415.   *)
  416.     _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
  417.     ;;
  418. esac
  419. AC_MSG_RESULT([$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
  420. _LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
  421. [How to pass a linker flag through the compiler])
  422. #
  423. # Check to make sure the PIC flag actually works.
  424. #
  425. if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
  426.   _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
  427.     [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
  428.     [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
  429.     [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
  430.      "" | " "*) ;;
  431.      *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
  432.      esac],
  433.     [_LT_TAGVAR(lt_prog_compiler_pic, $1)=
  434.      _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
  435. fi
  436. _LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
  437. [Additional compiler flags for building library objects])
  438. #
  439. # Check to make sure the static flag actually works.
  440. #
  441. wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag="$_LT_TAGVAR(lt_prog_compiler_static, $1)"
  442. _LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
  443.   _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
  444.   $lt_tmp_static_flag,
  445.   [],
  446.   [_LT_TAGVAR(lt_prog_compiler_static, $1)=])
  447. _LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
  448. [Compiler flag to prevent dynamic linking])
  449. ])# _LT_COMPILER_PIC
  450. # _LT_LINKER_SHLIBS([TAGNAME])
  451. # ----------------------------
  452. # See if the linker supports building shared libraries.
  453. m4_defun([_LT_LINKER_SHLIBS],
  454. [AC_REQUIRE([LT_PATH_LD])dnl
  455. AC_REQUIRE([LT_PATH_NM])dnl
  456. m4_require([_LT_FILEUTILS_DEFAULTS])dnl
  457. m4_require([_LT_DECL_EGREP])dnl
  458. m4_require([_LT_DECL_SED])dnl
  459. m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
  460. m4_require([_LT_TAG_COMPILER])dnl
  461. AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
  462. m4_if([$1], [CXX], [
  463.   _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '''s/.* //''' | sort | uniq > $export_symbols'
  464.   case $host_os in
  465.   aix[[4-9]]*)
  466.     # If we're using GNU nm, then we don't want the "-C" option.
  467.     # -C means demangle to AIX nm, but means don't demangle with GNU nm
  468.     if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
  469.       _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '''{ if ((($ 2 == "T") || ($ 2 == "D") || ($ 2 == "B")) && ([substr]($ 3,1,1) != ".")) { print $ 3 } }''' | sort -u > $export_symbols'
  470.     else
  471.       _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '''{ if ((($ 2 == "T") || ($ 2 == "D") || ($ 2 == "B")) && ([substr]($ 3,1,1) != ".")) { print $ 3 } }''' | sort -u > $export_symbols'
  472.     fi
  473.     ;;
  474.   pw32*)
  475.     _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
  476.   ;;
  477.   cygwin* | mingw* | cegcc*)
  478.     _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '''/^[[BCDGRS]][[ ]]/s/.*[[ ]]([[^ ]]*)/1 DATA/;/^.*[[ ]]__nm__/s/^.*[[ ]]__nm__([[^ ]]*)[[ ]][[^ ]]*/1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //''' | sort | uniq > $export_symbols'
  479.   ;;
  480.   *)
  481.     _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '''s/.* //''' | sort | uniq > $export_symbols'
  482.   ;;
  483.   esac
  484.   _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
  485. ], [
  486.   runpath_var=
  487.   _LT_TAGVAR(allow_undefined_flag, $1)=
  488.   _LT_TAGVAR(always_export_symbols, $1)=no
  489.   _LT_TAGVAR(archive_cmds, $1)=
  490.   _LT_TAGVAR(archive_expsym_cmds, $1)=
  491.   _LT_TAGVAR(compiler_needs_object, $1)=no
  492.   _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
  493.   _LT_TAGVAR(export_dynamic_flag_spec, $1)=
  494.   _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '''s/.* //''' | sort | uniq > $export_symbols'
  495.   _LT_TAGVAR(hardcode_automatic, $1)=no
  496.   _LT_TAGVAR(hardcode_direct, $1)=no
  497.   _LT_TAGVAR(hardcode_direct_absolute, $1)=no
  498.   _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
  499.   _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
  500.   _LT_TAGVAR(hardcode_libdir_separator, $1)=
  501.   _LT_TAGVAR(hardcode_minus_L, $1)=no
  502.   _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
  503.   _LT_TAGVAR(inherit_rpath, $1)=no
  504.   _LT_TAGVAR(link_all_deplibs, $1)=unknown
  505.   _LT_TAGVAR(module_cmds, $1)=
  506.   _LT_TAGVAR(module_expsym_cmds, $1)=
  507.   _LT_TAGVAR(old_archive_from_new_cmds, $1)=
  508.   _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
  509.   _LT_TAGVAR(thread_safe_flag_spec, $1)=
  510.   _LT_TAGVAR(whole_archive_flag_spec, $1)=
  511.   # include_expsyms should be a list of space-separated symbols to be *always*
  512.   # included in the symbol list
  513.   _LT_TAGVAR(include_expsyms, $1)=
  514.   # exclude_expsyms can be an extended regexp of symbols to exclude
  515.   # it will be wrapped by ` (' and `)$', so one must not match beginning or
  516.   # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
  517.   # as well as any symbol that contains `d'.
  518.   _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
  519.   # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
  520.   # platforms (ab)use it in PIC code, but their linkers get confused if
  521.   # the symbol is explicitly referenced.  Since portable code cannot
  522.   # rely on this symbol name, it's probably fine to never include it in
  523.   # preloaded symbol tables.
  524.   # Exclude shared library initialization/finalization symbols.
  525. dnl Note also adjust exclude_expsyms for C++ above.
  526.   extract_expsyms_cmds=
  527.   case $host_os in
  528.   cygwin* | mingw* | pw32* | cegcc*)
  529.     # FIXME: the MSVC++ port hasn't been tested in a loooong time
  530.     # When not using gcc, we currently assume that we are using
  531.     # Microsoft Visual C++.
  532.     if test "$GCC" != yes; then
  533.       with_gnu_ld=no
  534.     fi
  535.     ;;
  536.   interix*)
  537.     # we just hope/assume this is gcc and not c89 (= MSVC++)
  538.     with_gnu_ld=yes
  539.     ;;
  540.   openbsd*)
  541.     with_gnu_ld=no
  542.     ;;
  543.   esac
  544.   _LT_TAGVAR(ld_shlibs, $1)=yes
  545.   if test "$with_gnu_ld" = yes; then
  546.     # If archive_cmds runs LD, not CC, wlarc should be empty
  547.     wlarc='${wl}'
  548.     # Set some defaults for GNU ld with shared library support. These
  549.     # are reset later if shared libraries are not supported. Putting them
  550.     # here allows them to be overridden if necessary.
  551.     runpath_var=LD_RUN_PATH
  552.     _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
  553.     _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
  554.     # ancient GNU ld didn't support --whole-archive et. al.
  555.     if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
  556.       _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
  557.     else
  558.       _LT_TAGVAR(whole_archive_flag_spec, $1)=
  559.     fi
  560.     supports_anon_versioning=no
  561.     case `$LD -v 2>&1` in
  562.       * [[01]].* | * 2.[[0-9]].* | * 2.10.*) ;; # catch versions < 2.11
  563.       * 2.11.93.0.2 *) supports_anon_versioning=yes ;; # RH7.3 ...
  564.       * 2.11.92.0.12 *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
  565.       * 2.11.*) ;; # other 2.11 versions
  566.       *) supports_anon_versioning=yes ;;
  567.     esac
  568.     # See if GNU ld supports shared libraries.
  569.     case $host_os in
  570.     aix[[3-9]]*)
  571.       # On AIX/PPC, the GNU linker is very broken
  572.       if test "$host_cpu" != ia64; then
  573. _LT_TAGVAR(ld_shlibs, $1)=no
  574. cat <<_LT_EOF 1>&2
  575. *** Warning: the GNU linker, at least up to release 2.9.1, is reported
  576. *** to be unable to reliably create shared libraries on AIX.
  577. *** Therefore, libtool is disabling shared libraries support.  If you
  578. *** really care for shared libraries, you may want to modify your PATH
  579. *** so that a non-GNU linker is found, and then restart.
  580. _LT_EOF
  581.       fi
  582.       ;;
  583.     amigaos*)
  584.       case $host_cpu in
  585.       powerpc)
  586.             # see comment about AmigaOS4 .so support
  587.             _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
  588.             _LT_TAGVAR(archive_expsym_cmds, $1)=''
  589.         ;;
  590.       m68k)
  591.             _LT_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)'
  592.             _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
  593.             _LT_TAGVAR(hardcode_minus_L, $1)=yes
  594.         ;;
  595.       esac
  596.       ;;
  597.     beos*)
  598.       if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
  599. _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
  600. # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
  601. # support --undefined.  This deserves some investigation.  FIXME
  602. _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
  603.       else
  604. _LT_TAGVAR(ld_shlibs, $1)=no
  605.       fi
  606.       ;;
  607.     cygwin* | mingw* | pw32* | cegcc*)
  608.       # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
  609.       # as there is no search path for DLLs.
  610.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
  611.       _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
  612.       _LT_TAGVAR(always_export_symbols, $1)=no
  613.       _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
  614.       _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '''/^[[BCDGRS]][[ ]]/s/.*[[ ]]([[^ ]]*)/1 DATA/''' | $SED -e '''/^[[AITW]][[ ]]/s/.*[[ ]]//''' | sort | uniq > $export_symbols'
  615.       if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
  616.         _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
  617. # If the export-symbols file already is a .def file (1st line
  618. # is EXPORTS), use it as is; otherwise, prepend...
  619. _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
  620.   cp $export_symbols $output_objdir/$soname.def;
  621. else
  622.   echo EXPORTS > $output_objdir/$soname.def;
  623.   cat $export_symbols >> $output_objdir/$soname.def;
  624. fi~
  625. $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
  626.       else
  627. _LT_TAGVAR(ld_shlibs, $1)=no
  628.       fi
  629.       ;;
  630.     interix[[3-9]]*)
  631.       _LT_TAGVAR(hardcode_direct, $1)=no
  632.       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  633.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
  634.       _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
  635.       # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
  636.       # Instead, shared libraries are loaded at an image base (0x10000000 by
  637.       # default) and relocated if they conflict, which is a slow very memory
  638.       # consuming and fragmenting process.  To avoid this, we pick a random,
  639.       # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
  640.       # time.  Moving up from 0x10000000 also allows more sbrk(2) space.
  641.       _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 * 262144 + 1342177280` -o $lib'
  642.       _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 * 262144 + 1342177280` -o $lib'
  643.       ;;
  644.     gnu* | linux* | tpf* | k*bsd*-gnu)
  645.       tmp_diet=no
  646.       if test "$host_os" = linux-dietlibc; then
  647. case $cc_basename in
  648.   diet *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)
  649. esac
  650.       fi
  651.       if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null 
  652.  && test "$tmp_diet" = no
  653.       then
  654. tmp_addflag=
  655. tmp_sharedflag='-shared'
  656. case $cc_basename,$host_cpu in
  657.         pgcc*) # Portland Group C compiler
  658.   _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience""; do test  -n "$conv" && new_convenience="$new_convenience,$conv"; done; $ECHO "$new_convenience"` ${wl}--no-whole-archive'
  659.   tmp_addflag=' $pic_flag'
  660.   ;;
  661. pgf77* | pgf90* | pgf95*) # Portland Group f77 and f90 compilers
  662.   _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience""; do test  -n "$conv" && new_convenience="$new_convenience,$conv"; done; $ECHO "$new_convenience"` ${wl}--no-whole-archive'
  663.   tmp_addflag=' $pic_flag -Mnomain' ;;
  664. ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
  665.   tmp_addflag=' -i_dynamic' ;;
  666. efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
  667.   tmp_addflag=' -i_dynamic -nofor_main' ;;
  668. ifc* | ifort*) # Intel Fortran compiler
  669.   tmp_addflag=' -nofor_main' ;;
  670. lf95*) # Lahey Fortran 8.1
  671.   _LT_TAGVAR(whole_archive_flag_spec, $1)=
  672.   tmp_sharedflag='--shared' ;;
  673. xl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
  674.   tmp_sharedflag='-qmkshrobj'
  675.   tmp_addflag= ;;
  676. esac
  677. case `$CC -V 2>&1 | sed 5q` in
  678. *Sun C*) # Sun C 5.9
  679.   _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience""; do test -z "$conv" || new_convenience="$new_convenience,$conv"; done; $ECHO "$new_convenience"` ${wl}--no-whole-archive'
  680.   _LT_TAGVAR(compiler_needs_object, $1)=yes
  681.   tmp_sharedflag='-G' ;;
  682. *Sun F*) # Sun Fortran 8.3
  683.   tmp_sharedflag='-G' ;;
  684. esac
  685. _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
  686.         if test "x$supports_anon_versioning" = xyes; then
  687.           _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
  688.     cat $export_symbols | sed -e "s/(.*)/1;/" >> $output_objdir/$libname.ver~
  689.     echo "local: *; };" >> $output_objdir/$libname.ver~
  690.     $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
  691.         fi
  692. case $cc_basename in
  693. xlf*)
  694.   # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
  695.   _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
  696.   _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
  697.   _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir'
  698.   _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $compiler_flags -soname $soname -o $lib'
  699.   if test "x$supports_anon_versioning" = xyes; then
  700.     _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
  701.       cat $export_symbols | sed -e "s/(.*)/1;/" >> $output_objdir/$libname.ver~
  702.       echo "local: *; };" >> $output_objdir/$libname.ver~
  703.       $LD -shared $libobjs $deplibs $compiler_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
  704.   fi
  705.   ;;
  706. esac
  707.       else
  708.         _LT_TAGVAR(ld_shlibs, $1)=no
  709.       fi
  710.       ;;
  711.     netbsd*)
  712.       if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
  713. _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
  714. wlarc=
  715.       else
  716. _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
  717. _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
  718.       fi
  719.       ;;
  720.     solaris*)
  721.       if $LD -v 2>&1 | $GREP 'BFD 2.8' > /dev/null; then
  722. _LT_TAGVAR(ld_shlibs, $1)=no
  723. cat <<_LT_EOF 1>&2
  724. *** Warning: The releases 2.8.* of the GNU linker cannot reliably
  725. *** create shared libraries on Solaris systems.  Therefore, libtool
  726. *** is disabling shared libraries support.  We urge you to upgrade GNU
  727. *** binutils to release 2.9.1 or newer.  Another option is to modify
  728. *** your PATH or compiler configuration so that the native linker is
  729. *** used, and then restart.
  730. _LT_EOF
  731.       elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
  732. _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
  733. _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
  734.       else
  735. _LT_TAGVAR(ld_shlibs, $1)=no
  736.       fi
  737.       ;;
  738.     sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
  739.       case `$LD -v 2>&1` in
  740.         * [[01]].* | * 2.[[0-9]].* | * 2.1[[0-5]].*)
  741. _LT_TAGVAR(ld_shlibs, $1)=no
  742. cat <<_LT_EOF 1>&2
  743. *** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
  744. *** reliably create shared libraries on SCO systems.  Therefore, libtool
  745. *** is disabling shared libraries support.  We urge you to upgrade GNU
  746. *** binutils to release 2.16.91.0.3 or newer.  Another option is to modify
  747. *** your PATH or compiler configuration so that the native linker is
  748. *** used, and then restart.
  749. _LT_EOF
  750. ;;
  751. *)
  752.   # For security reasons, it is highly recommended that you always
  753.   # use absolute paths for naming shared libraries, and exclude the
  754.   # DT_RUNPATH tag from executables and libraries.  But doing so
  755.   # requires that you compile everything twice, which is a pain.
  756.   if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
  757.     _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
  758.     _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
  759.     _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
  760.   else
  761.     _LT_TAGVAR(ld_shlibs, $1)=no
  762.   fi
  763. ;;
  764.       esac
  765.       ;;
  766.     sunos4*)
  767.       _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
  768.       wlarc=
  769.       _LT_TAGVAR(hardcode_direct, $1)=yes
  770.       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  771.       ;;
  772.     *)
  773.       if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
  774. _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
  775. _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
  776.       else
  777. _LT_TAGVAR(ld_shlibs, $1)=no
  778.       fi
  779.       ;;
  780.     esac
  781.     if test "$_LT_TAGVAR(ld_shlibs, $1)" = no; then
  782.       runpath_var=
  783.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
  784.       _LT_TAGVAR(export_dynamic_flag_spec, $1)=
  785.       _LT_TAGVAR(whole_archive_flag_spec, $1)=
  786.     fi
  787.   else
  788.     # PORTME fill in a description of your system's linker (not GNU ld)
  789.     case $host_os in
  790.     aix3*)
  791.       _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
  792.       _LT_TAGVAR(always_export_symbols, $1)=yes
  793.       _LT_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'
  794.       # Note: this linker hardcodes the directories in LIBPATH if there
  795.       # are no directories specified by -L.
  796.       _LT_TAGVAR(hardcode_minus_L, $1)=yes
  797.       if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
  798. # Neither direct hardcoding nor static linking is supported with a
  799. # broken collect2.
  800. _LT_TAGVAR(hardcode_direct, $1)=unsupported
  801.       fi
  802.       ;;
  803.     aix[[4-9]]*)
  804.       if test "$host_cpu" = ia64; then
  805. # On IA64, the linker does run time linking by default, so we don't
  806. # have to do anything special.
  807. aix_use_runtimelinking=no
  808. exp_sym_flag='-Bexport'
  809. no_entry_flag=""
  810.       else
  811. # If we're using GNU nm, then we don't want the "-C" option.
  812. # -C means demangle to AIX nm, but means don't demangle with GNU nm
  813. if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
  814.   _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '''{ if ((($ 2 == "T") || ($ 2 == "D") || ($ 2 == "B")) && ([substr]($ 3,1,1) != ".")) { print $ 3 } }''' | sort -u > $export_symbols'
  815. else
  816.   _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '''{ if ((($ 2 == "T") || ($ 2 == "D") || ($ 2 == "B")) && ([substr]($ 3,1,1) != ".")) { print $ 3 } }''' | sort -u > $export_symbols'
  817. fi
  818. aix_use_runtimelinking=no
  819. # Test if we are trying to use run time linking or normal
  820. # AIX style linking. If -brtl is somewhere in LDFLAGS, we
  821. # need to do runtime linking.
  822. case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
  823.   for ld_flag in $LDFLAGS; do
  824.   if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
  825.     aix_use_runtimelinking=yes
  826.     break
  827.   fi
  828.   done
  829.   ;;
  830. esac
  831. exp_sym_flag='-bexport'
  832. no_entry_flag='-bnoentry'
  833.       fi
  834.       # When large executables or shared objects are built, AIX ld can
  835.       # have problems creating the table of contents.  If linking a library
  836.       # or program results in "error TOC overflow" add -mminimal-toc to
  837.       # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
  838.       # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
  839.       _LT_TAGVAR(archive_cmds, $1)=''
  840.       _LT_TAGVAR(hardcode_direct, $1)=yes
  841.       _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
  842.       _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
  843.       _LT_TAGVAR(link_all_deplibs, $1)=yes
  844.       _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
  845.       if test "$GCC" = yes; then
  846. case $host_os in aix4.[[012]]|aix4.[[012]].*)
  847. # We only want to do this on AIX 4.2 and lower, the check
  848. # below for broken collect2 doesn't work under 4.3+
  849.   collect2name=`${CC} -print-prog-name=collect2`
  850.   if test -f "$collect2name" &&
  851.    strings "$collect2name" | $GREP resolve_lib_name >/dev/null
  852.   then
  853.   # We have reworked collect2
  854.   :
  855.   else
  856.   # We have old collect2
  857.   _LT_TAGVAR(hardcode_direct, $1)=unsupported
  858.   # It fails to find uninstalled libraries when the uninstalled
  859.   # path is not listed in the libpath.  Setting hardcode_minus_L
  860.   # to unsupported forces relinking
  861.   _LT_TAGVAR(hardcode_minus_L, $1)=yes
  862.   _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
  863.   _LT_TAGVAR(hardcode_libdir_separator, $1)=
  864.   fi
  865.   ;;
  866. esac
  867. shared_flag='-shared'
  868. if test "$aix_use_runtimelinking" = yes; then
  869.   shared_flag="$shared_flag "'${wl}-G'
  870. fi
  871.       else
  872. # not using gcc
  873. if test "$host_cpu" = ia64; then
  874. # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
  875. # chokes on -Wl,-G. The following line is correct:
  876.   shared_flag='-G'
  877. else
  878.   if test "$aix_use_runtimelinking" = yes; then
  879.     shared_flag='${wl}-G'
  880.   else
  881.     shared_flag='${wl}-bM:SRE'
  882.   fi
  883. fi
  884.       fi
  885.       _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
  886.       # It seems that -bexpall does not export symbols beginning with
  887.       # underscore (_), so it is better to generate a list of symbols to export.
  888.       _LT_TAGVAR(always_export_symbols, $1)=yes
  889.       if test "$aix_use_runtimelinking" = yes; then
  890. # Warning - without using the other runtime loading flags (-brtl),
  891. # -berok will link without error, but may produce a broken library.
  892. _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
  893.         # Determine the default libpath from the value encoded in an
  894.         # empty executable.
  895.         _LT_SYS_MODULE_PATH_AIX
  896.         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
  897.         _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"${wl}$exp_sym_flag:$export_symbols $shared_flag"
  898.       else
  899. if test "$host_cpu" = ia64; then
  900.   _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
  901.   _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
  902.   _LT_TAGVAR(archive_expsym_cmds, $1)="$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"${wl}$exp_sym_flag:$export_symbols"
  903. else
  904.  # Determine the default libpath from the value encoded in an
  905.  # empty executable.
  906.  _LT_SYS_MODULE_PATH_AIX
  907.  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
  908.   # Warning - without using the other run time loading flags,
  909.   # -berok will link without error, but may produce a broken library.
  910.   _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
  911.   _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
  912.   # Exported symbols can be pulled into shared objects from archives
  913.   _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
  914.   _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
  915.   # This is similar to how AIX traditionally builds its shared libraries.
  916.   _LT_TAGVAR(archive_expsym_cmds, $1)="$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
  917. fi
  918.       fi
  919.       ;;
  920.     amigaos*)
  921.       case $host_cpu in
  922.       powerpc)
  923.             # see comment about AmigaOS4 .so support
  924.             _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
  925.             _LT_TAGVAR(archive_expsym_cmds, $1)=''
  926.         ;;
  927.       m68k)
  928.             _LT_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)'
  929.             _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
  930.             _LT_TAGVAR(hardcode_minus_L, $1)=yes
  931.         ;;
  932.       esac
  933.       ;;
  934.     bsdi[[45]]*)
  935.       _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
  936.       ;;
  937.     cygwin* | mingw* | pw32* | cegcc*)
  938.       # When not using gcc, we currently assume that we are using
  939.       # Microsoft Visual C++.
  940.       # hardcode_libdir_flag_spec is actually meaningless, as there is
  941.       # no search path for DLLs.
  942.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
  943.       _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
  944.       # Tell ltmain to make .lib files, not .a files.
  945.       libext=lib
  946.       # Tell ltmain to make .dll files, not .so files.
  947.       shrext_cmds=".dll"
  948.       # FIXME: Setting linknames here is a bad hack.
  949.       _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `$ECHO "X$deplibs" | $Xsed -e '''s/ -lc$//'''` -link -dll~linknames='
  950.       # The linker will automatically build a .lib file if we build a DLL.
  951.       _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
  952.       # FIXME: Should let the user specify the lib program.
  953.       _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
  954.       _LT_TAGVAR(fix_srcfile_path, $1)='`cygpath -w "$srcfile"`'
  955.       _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
  956.       ;;
  957.     darwin* | rhapsody*)
  958.       _LT_DARWIN_LINKER_FEATURES($1)
  959.       ;;
  960.     dgux*)
  961.       _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
  962.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
  963.       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  964.       ;;
  965.     freebsd1*)
  966.       _LT_TAGVAR(ld_shlibs, $1)=no
  967.       ;;
  968.     # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
  969.     # support.  Future versions do this automatically, but an explicit c++rt0.o
  970.     # does not break anything, and helps significantly (at the cost of a little
  971.     # extra space).
  972.     freebsd2.2*)
  973.       _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
  974.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
  975.       _LT_TAGVAR(hardcode_direct, $1)=yes
  976.       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  977.       ;;
  978.     # Unfortunately, older versions of FreeBSD 2 do not have this feature.
  979.     freebsd2*)
  980.       _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
  981.       _LT_TAGVAR(hardcode_direct, $1)=yes
  982.       _LT_TAGVAR(hardcode_minus_L, $1)=yes
  983.       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  984.       ;;
  985.     # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
  986.     freebsd* | dragonfly*)
  987.       _LT_TAGVAR(archive_cmds, $1)='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
  988.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
  989.       _LT_TAGVAR(hardcode_direct, $1)=yes
  990.       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  991.       ;;
  992.     hpux9*)
  993.       if test "$GCC" = yes; then
  994. _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
  995.       else
  996. _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
  997.       fi
  998.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
  999.       _LT_TAGVAR(hardcode_libdir_separator, $1)=:
  1000.       _LT_TAGVAR(hardcode_direct, $1)=yes
  1001.       # hardcode_minus_L: Not really in the search PATH,
  1002.       # but as the default location of the library.
  1003.       _LT_TAGVAR(hardcode_minus_L, $1)=yes
  1004.       _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
  1005.       ;;
  1006.     hpux10*)
  1007.       if test "$GCC" = yes -a "$with_gnu_ld" = no; then
  1008. _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
  1009.       else
  1010. _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
  1011.       fi
  1012.       if test "$with_gnu_ld" = no; then
  1013. _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
  1014. _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir'
  1015. _LT_TAGVAR(hardcode_libdir_separator, $1)=:
  1016. _LT_TAGVAR(hardcode_direct, $1)=yes
  1017. _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
  1018. _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
  1019. # hardcode_minus_L: Not really in the search PATH,
  1020. # but as the default location of the library.
  1021. _LT_TAGVAR(hardcode_minus_L, $1)=yes
  1022.       fi
  1023.       ;;
  1024.     hpux11*)
  1025.       if test "$GCC" = yes -a "$with_gnu_ld" = no; then
  1026. case $host_cpu in
  1027. hppa*64*)
  1028.   _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
  1029.   ;;
  1030. ia64*)
  1031.   _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
  1032.   ;;
  1033. *)
  1034.   _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
  1035.   ;;
  1036. esac
  1037.       else
  1038. case $host_cpu in
  1039. hppa*64*)
  1040.   _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
  1041.   ;;
  1042. ia64*)
  1043.   _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
  1044.   ;;
  1045. *)
  1046.   _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
  1047.   ;;
  1048. esac
  1049.       fi
  1050.       if test "$with_gnu_ld" = no; then
  1051. _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
  1052. _LT_TAGVAR(hardcode_libdir_separator, $1)=:
  1053. case $host_cpu in
  1054. hppa*64*|ia64*)
  1055.   _LT_TAGVAR(hardcode_direct, $1)=no
  1056.   _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  1057.   ;;
  1058. *)
  1059.   _LT_TAGVAR(hardcode_direct, $1)=yes
  1060.   _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
  1061.   _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
  1062.   # hardcode_minus_L: Not really in the search PATH,
  1063.   # but as the default location of the library.
  1064.   _LT_TAGVAR(hardcode_minus_L, $1)=yes
  1065.   ;;
  1066. esac
  1067.       fi
  1068.       ;;
  1069.     irix5* | irix6* | nonstopux*)
  1070.       if test "$GCC" = yes; then
  1071. _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
  1072. # Try to use the -exported_symbol ld option, if it does not
  1073. # work, assume that -exports_file does not work either and
  1074. # implicitly export all symbols.
  1075.         save_LDFLAGS="$LDFLAGS"
  1076.         LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
  1077.         AC_LINK_IFELSE(int foo(void) {},
  1078.           _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
  1079.         )
  1080.         LDFLAGS="$save_LDFLAGS"
  1081.       else
  1082. _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
  1083. _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
  1084.       fi
  1085.       _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
  1086.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
  1087.       _LT_TAGVAR(hardcode_libdir_separator, $1)=:
  1088.       _LT_TAGVAR(inherit_rpath, $1)=yes
  1089.       _LT_TAGVAR(link_all_deplibs, $1)=yes
  1090.       ;;
  1091.     netbsd*)
  1092.       if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
  1093. _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
  1094.       else
  1095. _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags'      # ELF
  1096.       fi
  1097.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
  1098.       _LT_TAGVAR(hardcode_direct, $1)=yes
  1099.       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  1100.       ;;
  1101.     newsos6)
  1102.       _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
  1103.       _LT_TAGVAR(hardcode_direct, $1)=yes
  1104.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
  1105.       _LT_TAGVAR(hardcode_libdir_separator, $1)=:
  1106.       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  1107.       ;;
  1108.     *nto* | *qnx*)
  1109.       ;;
  1110.     openbsd*)
  1111.       if test -f /usr/libexec/ld.so; then
  1112. _LT_TAGVAR(hardcode_direct, $1)=yes
  1113. _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  1114. _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
  1115. if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
  1116.   _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
  1117.   _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
  1118.   _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
  1119.   _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
  1120. else
  1121.   case $host_os in
  1122.    openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
  1123.      _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
  1124.      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
  1125.      ;;
  1126.    *)
  1127.      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
  1128.      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
  1129.      ;;
  1130.   esac
  1131. fi
  1132.       else
  1133. _LT_TAGVAR(ld_shlibs, $1)=no
  1134.       fi
  1135.       ;;
  1136.     os2*)
  1137.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
  1138.       _LT_TAGVAR(hardcode_minus_L, $1)=yes
  1139.       _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
  1140.       _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION "$libname"" >> $output_objdir/$libname.def~$ECHO DATA >> $output_objdir/$libname.def~$ECHO " SINGLE NONSHARED" >> $output_objdir/$libname.def~$ECHO EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
  1141.       _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
  1142.       ;;
  1143.     osf3*)
  1144.       if test "$GCC" = yes; then
  1145. _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}*'
  1146. _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
  1147.       else
  1148. _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved *'
  1149. _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
  1150.       fi
  1151.       _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
  1152.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
  1153.       _LT_TAGVAR(hardcode_libdir_separator, $1)=:
  1154.       ;;
  1155.     osf4* | osf5*) # as osf3* with the addition of -msym flag
  1156.       if test "$GCC" = yes; then
  1157. _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}*'
  1158. _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
  1159. _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
  1160.       else
  1161. _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved *'
  1162. _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
  1163. _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\n" -exported_symbol "$i" >> $lib.exp; done; printf "%s\n" "-hidden">> $lib.exp~
  1164. $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp'
  1165. # Both c and cxx compiler support -rpath directly
  1166. _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
  1167.       fi
  1168.       _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
  1169.       _LT_TAGVAR(hardcode_libdir_separator, $1)=:
  1170.       ;;
  1171.     solaris*)
  1172.       _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
  1173.       if test "$GCC" = yes; then
  1174. wlarc='${wl}'
  1175. _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
  1176. _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/(.*)/1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
  1177.   $CC -shared ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
  1178.       else
  1179. case `$CC -V 2>&1` in
  1180. *"Compilers 5.0"*)
  1181.   wlarc=''
  1182.   _LT_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
  1183.   _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/(.*)/1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
  1184.   $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
  1185.   ;;
  1186. *)
  1187.   wlarc='${wl}'
  1188.   _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
  1189.   _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/(.*)/1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
  1190.   $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
  1191.   ;;
  1192. esac
  1193.       fi
  1194.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
  1195.       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  1196.       case $host_os in
  1197.       solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
  1198.       *)
  1199. # The compiler driver will combine and reorder linker options,
  1200. # but understands `-z linker_flag'.  GCC discards it without `$wl',
  1201. # but is careful enough not to reorder.
  1202. # Supported since Solaris 2.6 (maybe 2.5.1?)
  1203. if test "$GCC" = yes; then
  1204.   _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
  1205. else
  1206.   _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
  1207. fi
  1208. ;;
  1209.       esac
  1210.       _LT_TAGVAR(link_all_deplibs, $1)=yes
  1211.       ;;
  1212.     sunos4*)
  1213.       if test "x$host_vendor" = xsequent; then
  1214. # Use $CC to link under sequent, because it throws in some extra .o
  1215. # files that make .init and .fini sections work.
  1216. _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
  1217.       else
  1218. _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
  1219.       fi
  1220.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
  1221.       _LT_TAGVAR(hardcode_direct, $1)=yes
  1222.       _LT_TAGVAR(hardcode_minus_L, $1)=yes
  1223.       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  1224.       ;;
  1225.     sysv4)
  1226.       case $host_vendor in
  1227. sni)
  1228.   _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
  1229.   _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
  1230. ;;
  1231. siemens)
  1232.   ## LD is ld it makes a PLAMLIB
  1233.   ## CC just makes a GrossModule.
  1234.   _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
  1235.   _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
  1236.   _LT_TAGVAR(hardcode_direct, $1)=no
  1237.         ;;
  1238. motorola)
  1239.   _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
  1240.   _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
  1241. ;;
  1242.       esac
  1243.       runpath_var='LD_RUN_PATH'
  1244.       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  1245.       ;;
  1246.     sysv4.3*)
  1247.       _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
  1248.       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  1249.       _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
  1250.       ;;
  1251.     sysv4*MP*)
  1252.       if test -d /usr/nec; then
  1253. _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
  1254. _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  1255. runpath_var=LD_RUN_PATH
  1256. hardcode_runpath_var=yes
  1257. _LT_TAGVAR(ld_shlibs, $1)=yes
  1258.       fi
  1259.       ;;
  1260.     sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
  1261.       _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
  1262.       _LT_TAGVAR(archive_cmds_need_lc, $1)=no
  1263.       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  1264.       runpath_var='LD_RUN_PATH'
  1265.       if test "$GCC" = yes; then
  1266. _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
  1267. _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
  1268.       else
  1269. _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
  1270. _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
  1271.       fi
  1272.       ;;
  1273.     sysv5* | sco3.2v5* | sco5v6*)
  1274.       # Note: We can NOT use -z defs as we might desire, because we do not
  1275.       # link with -lc, and that would cause any symbols used from libc to
  1276.       # always be unresolved, which means just about no library would
  1277.       # ever link correctly.  If we're not using GNU ld we use -z text
  1278.       # though, which does catch some bad symbols but isn't as heavy-handed
  1279.       # as -z defs.
  1280.       _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
  1281.       _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
  1282.       _LT_TAGVAR(archive_cmds_need_lc, $1)=no
  1283.       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  1284.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
  1285.       _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
  1286.       _LT_TAGVAR(link_all_deplibs, $1)=yes
  1287.       _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
  1288.       runpath_var='LD_RUN_PATH'
  1289.       if test "$GCC" = yes; then
  1290. _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
  1291. _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
  1292.       else
  1293. _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
  1294. _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
  1295.       fi
  1296.       ;;
  1297.     uts4*)
  1298.       _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
  1299.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
  1300.       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  1301.       ;;
  1302.     *)
  1303.       _LT_TAGVAR(ld_shlibs, $1)=no
  1304.       ;;
  1305.     esac
  1306.     if test x$host_vendor = xsni; then
  1307.       case $host in
  1308.       sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
  1309. _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym'
  1310. ;;
  1311.       esac
  1312.     fi
  1313.   fi
  1314. ])
  1315. AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
  1316. test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
  1317. _LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
  1318. _LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
  1319. _LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
  1320. _LT_DECL([], [extract_expsyms_cmds], [2],
  1321.     [The commands to extract the exported symbol list from a shared archive])
  1322. #
  1323. # Do we need to explicitly link libc?
  1324. #
  1325. case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
  1326. x|xyes)
  1327.   # Assume -lc should be added
  1328.   _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
  1329.   if test "$enable_shared" = yes && test "$GCC" = yes; then
  1330.     case $_LT_TAGVAR(archive_cmds, $1) in
  1331.     *'~'*)
  1332.       # FIXME: we may have to deal with multi-command sequences.
  1333.       ;;
  1334.     '$CC '*)
  1335.       # Test whether the compiler implicitly links with -lc since on some
  1336.       # systems, -lgcc has to come before -lc. If gcc already passes -lc
  1337.       # to ld, don't add -lc before -lgcc.
  1338.       AC_MSG_CHECKING([whether -lc should be explicitly linked in])
  1339.       $RM conftest*
  1340.       echo "$lt_simple_compile_test_code" > conftest.$ac_ext
  1341.       if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
  1342.         soname=conftest
  1343.         lib=conftest
  1344.         libobjs=conftest.$ac_objext
  1345.         deplibs=
  1346.         wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
  1347. pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
  1348.         compiler_flags=-v
  1349.         linker_flags=-v
  1350.         verstring=
  1351.         output_objdir=.
  1352.         libname=conftest
  1353.         lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
  1354.         _LT_TAGVAR(allow_undefined_flag, $1)=
  1355.         if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2>&1 | $GREP " -lc " >/dev/null 2>&1)
  1356.         then
  1357.   _LT_TAGVAR(archive_cmds_need_lc, $1)=no
  1358.         else
  1359.   _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
  1360.         fi
  1361.         _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
  1362.       else
  1363.         cat conftest.err 1>&5
  1364.       fi
  1365.       $RM conftest*
  1366.       AC_MSG_RESULT([$_LT_TAGVAR(archive_cmds_need_lc, $1)])
  1367.       ;;
  1368.     esac
  1369.   fi
  1370.   ;;
  1371. esac
  1372. _LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
  1373.     [Whether or not to add -lc for building shared libraries])
  1374. _LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
  1375.     [enable_shared_with_static_runtimes], [0],
  1376.     [Whether or not to disallow shared libs when runtime libs are static])
  1377. _LT_TAGDECL([], [export_dynamic_flag_spec], [1],
  1378.     [Compiler flag to allow reflexive dlopens])
  1379. _LT_TAGDECL([], [whole_archive_flag_spec], [1],
  1380.     [Compiler flag to generate shared objects directly from archives])
  1381. _LT_TAGDECL([], [compiler_needs_object], [1],
  1382.     [Whether the compiler copes with passing no objects directly])
  1383. _LT_TAGDECL([], [old_archive_from_new_cmds], [2],
  1384.     [Create an old-style archive from a shared archive])
  1385. _LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
  1386.     [Create a temporary old-style archive to link instead of a shared archive])
  1387. _LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
  1388. _LT_TAGDECL([], [archive_expsym_cmds], [2])
  1389. _LT_TAGDECL([], [module_cmds], [2],
  1390.     [Commands used to build a loadable module if different from building
  1391.     a shared archive.])
  1392. _LT_TAGDECL([], [module_expsym_cmds], [2])
  1393. _LT_TAGDECL([], [with_gnu_ld], [1],
  1394.     [Whether we are building with GNU ld or not])
  1395. _LT_TAGDECL([], [allow_undefined_flag], [1],
  1396.     [Flag that allows shared libraries with undefined symbols to be built])
  1397. _LT_TAGDECL([], [no_undefined_flag], [1],
  1398.     [Flag that enforces no undefined symbols])
  1399. _LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
  1400.     [Flag to hardcode $libdir into a binary during linking.
  1401.     This must work even if $libdir does not exist])
  1402. _LT_TAGDECL([], [hardcode_libdir_flag_spec_ld], [1],
  1403.     [[If ld is used when linking, flag to hardcode $libdir into a binary
  1404.     during linking.  This must work even if $libdir does not exist]])
  1405. _LT_TAGDECL([], [hardcode_libdir_separator], [1],
  1406.     [Whether we need a single "-rpath" flag with a separated argument])
  1407. _LT_TAGDECL([], [hardcode_direct], [0],
  1408.     [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
  1409.     DIR into the resulting binary])
  1410. _LT_TAGDECL([], [hardcode_direct_absolute], [0],
  1411.     [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
  1412.     DIR into the resulting binary and the resulting library dependency is
  1413.     "absolute", i.e impossible to change by setting ${shlibpath_var} if the
  1414.     library is relocated])
  1415. _LT_TAGDECL([], [hardcode_minus_L], [0],
  1416.     [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
  1417.     into the resulting binary])
  1418. _LT_TAGDECL([], [hardcode_shlibpath_var], [0],
  1419.     [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
  1420.     into the resulting binary])
  1421. _LT_TAGDECL([], [hardcode_automatic], [0],
  1422.     [Set to "yes" if building a shared library automatically hardcodes DIR
  1423.     into the library and all subsequent libraries and executables linked
  1424.     against it])
  1425. _LT_TAGDECL([], [inherit_rpath], [0],
  1426.     [Set to yes if linker adds runtime paths of dependent libraries
  1427.     to runtime path list])
  1428. _LT_TAGDECL([], [link_all_deplibs], [0],
  1429.     [Whether libtool must link a program against all its dependency libraries])
  1430. _LT_TAGDECL([], [fix_srcfile_path], [1],
  1431.     [Fix the shell variable $srcfile for the compiler])
  1432. _LT_TAGDECL([], [always_export_symbols], [0],
  1433.     [Set to "yes" if exported symbols are required])
  1434. _LT_TAGDECL([], [export_symbols_cmds], [2],
  1435.     [The commands to list exported symbols])
  1436. _LT_TAGDECL([], [exclude_expsyms], [1],
  1437.     [Symbols that should not be listed in the preloaded symbols])
  1438. _LT_TAGDECL([], [include_expsyms], [1],
  1439.     [Symbols that must always be exported])
  1440. _LT_TAGDECL([], [prelink_cmds], [2],
  1441.     [Commands necessary for linking programs (against libraries) with templates])
  1442. _LT_TAGDECL([], [file_list_spec], [1],
  1443.     [Specify filename containing input files])
  1444. dnl FIXME: Not yet implemented
  1445. dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
  1446. dnl    [Compiler flag to generate thread safe objects])
  1447. ])# _LT_LINKER_SHLIBS
  1448. # _LT_LANG_C_CONFIG([TAG])
  1449. # ------------------------
  1450. # Ensure that the configuration variables for a C compiler are suitably
  1451. # defined.  These variables are subsequently used by _LT_CONFIG to write
  1452. # the compiler configuration to `libtool'.
  1453. m4_defun([_LT_LANG_C_CONFIG],
  1454. [m4_require([_LT_DECL_EGREP])dnl
  1455. lt_save_CC="$CC"
  1456. AC_LANG_PUSH(C)
  1457. # Source file extension for C test sources.
  1458. ac_ext=c
  1459. # Object file extension for compiled C test sources.
  1460. objext=o
  1461. _LT_TAGVAR(objext, $1)=$objext
  1462. # Code to be used in simple compile tests
  1463. lt_simple_compile_test_code="int some_variable = 0;"
  1464. # Code to be used in simple link tests
  1465. lt_simple_link_test_code='int main(){return(0);}'
  1466. _LT_TAG_COMPILER
  1467. # Save the default compiler, since it gets overwritten when the other
  1468. # tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
  1469. compiler_DEFAULT=$CC
  1470. # save warnings/boilerplate of simple test code
  1471. _LT_COMPILER_BOILERPLATE
  1472. _LT_LINKER_BOILERPLATE
  1473. ## CAVEAT EMPTOR:
  1474. ## There is no encapsulation within the following macros, do not change
  1475. ## the running order or otherwise move them around unless you know exactly
  1476. ## what you are doing...
  1477. if test -n "$compiler"; then
  1478.   _LT_COMPILER_NO_RTTI($1)
  1479.   _LT_COMPILER_PIC($1)
  1480.   _LT_COMPILER_C_O($1)
  1481.   _LT_COMPILER_FILE_LOCKS($1)
  1482.   _LT_LINKER_SHLIBS($1)
  1483.   _LT_SYS_DYNAMIC_LINKER($1)
  1484.   _LT_LINKER_HARDCODE_LIBPATH($1)
  1485.   LT_SYS_DLOPEN_SELF
  1486.   _LT_CMD_STRIPLIB
  1487.   # Report which library types will actually be built
  1488.   AC_MSG_CHECKING([if libtool supports shared libraries])
  1489.   AC_MSG_RESULT([$can_build_shared])
  1490.   AC_MSG_CHECKING([whether to build shared libraries])
  1491.   test "$can_build_shared" = "no" && enable_shared=no
  1492.   # On AIX, shared libraries and static libraries use the same namespace, and
  1493.   # are all built from PIC.
  1494.   case $host_os in
  1495.   aix3*)
  1496.     test "$enable_shared" = yes && enable_static=no
  1497.     if test -n "$RANLIB"; then
  1498.       archive_cmds="$archive_cmds~$RANLIB $lib"
  1499.       postinstall_cmds='$RANLIB $lib'
  1500.     fi
  1501.     ;;
  1502.   aix[[4-9]]*)
  1503.     if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
  1504.       test "$enable_shared" = yes && enable_static=no
  1505.     fi
  1506.     ;;
  1507.   esac
  1508.   AC_MSG_RESULT([$enable_shared])
  1509.   AC_MSG_CHECKING([whether to build static libraries])
  1510.   # Make sure either enable_shared or enable_static is yes.
  1511.   test "$enable_shared" = yes || enable_static=yes
  1512.   AC_MSG_RESULT([$enable_static])
  1513.   _LT_CONFIG($1)
  1514. fi
  1515. AC_LANG_POP
  1516. CC="$lt_save_CC"
  1517. ])# _LT_LANG_C_CONFIG
  1518. # _LT_PROG_CXX
  1519. # ------------
  1520. # Since AC_PROG_CXX is broken, in that it returns g++ if there is no c++
  1521. # compiler, we have our own version here.
  1522. m4_defun([_LT_PROG_CXX],
  1523. [
  1524. pushdef([AC_MSG_ERROR], [_lt_caught_CXX_error=yes])
  1525. AC_PROG_CXX
  1526. if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
  1527.     ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
  1528.     (test "X$CXX" != "Xg++"))) ; then
  1529.   AC_PROG_CXXCPP
  1530. else
  1531.   _lt_caught_CXX_error=yes
  1532. fi
  1533. popdef([AC_MSG_ERROR])
  1534. ])# _LT_PROG_CXX
  1535. dnl aclocal-1.4 backwards compatibility:
  1536. dnl AC_DEFUN([_LT_PROG_CXX], [])
  1537. # _LT_LANG_CXX_CONFIG([TAG])
  1538. # --------------------------
  1539. # Ensure that the configuration variables for a C++ compiler are suitably
  1540. # defined.  These variables are subsequently used by _LT_CONFIG to write
  1541. # the compiler configuration to `libtool'.
  1542. m4_defun([_LT_LANG_CXX_CONFIG],
  1543. [AC_REQUIRE([_LT_PROG_CXX])dnl
  1544. m4_require([_LT_FILEUTILS_DEFAULTS])dnl
  1545. m4_require([_LT_DECL_EGREP])dnl
  1546. AC_LANG_PUSH(C++)
  1547. _LT_TAGVAR(archive_cmds_need_lc, $1)=no
  1548. _LT_TAGVAR(allow_undefined_flag, $1)=
  1549. _LT_TAGVAR(always_export_symbols, $1)=no
  1550. _LT_TAGVAR(archive_expsym_cmds, $1)=
  1551. _LT_TAGVAR(compiler_needs_object, $1)=no
  1552. _LT_TAGVAR(export_dynamic_flag_spec, $1)=
  1553. _LT_TAGVAR(hardcode_direct, $1)=no
  1554. _LT_TAGVAR(hardcode_direct_absolute, $1)=no
  1555. _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
  1556. _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
  1557. _LT_TAGVAR(hardcode_libdir_separator, $1)=
  1558. _LT_TAGVAR(hardcode_minus_L, $1)=no
  1559. _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
  1560. _LT_TAGVAR(hardcode_automatic, $1)=no
  1561. _LT_TAGVAR(inherit_rpath, $1)=no
  1562. _LT_TAGVAR(module_cmds, $1)=
  1563. _LT_TAGVAR(module_expsym_cmds, $1)=
  1564. _LT_TAGVAR(link_all_deplibs, $1)=unknown
  1565. _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
  1566. _LT_TAGVAR(no_undefined_flag, $1)=
  1567. _LT_TAGVAR(whole_archive_flag_spec, $1)=
  1568. _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
  1569. # Source file extension for C++ test sources.
  1570. ac_ext=cpp
  1571. # Object file extension for compiled C++ test sources.
  1572. objext=o
  1573. _LT_TAGVAR(objext, $1)=$objext
  1574. # No sense in running all these tests if we already determined that
  1575. # the CXX compiler isn't working.  Some variables (like enable_shared)
  1576. # are currently assumed to apply to all compilers on this platform,
  1577. # and will be corrupted by setting them based on a non-working compiler.
  1578. if test "$_lt_caught_CXX_error" != yes; then
  1579.   # Code to be used in simple compile tests
  1580.   lt_simple_compile_test_code="int some_variable = 0;"
  1581.   # Code to be used in simple link tests
  1582.   lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
  1583.   # ltmain only uses $CC for tagged configurations so make sure $CC is set.
  1584.   _LT_TAG_COMPILER
  1585.   # save warnings/boilerplate of simple test code
  1586.   _LT_COMPILER_BOILERPLATE
  1587.   _LT_LINKER_BOILERPLATE
  1588.   # Allow CC to be a program name with arguments.
  1589.   lt_save_CC=$CC
  1590.   lt_save_LD=$LD
  1591.   lt_save_GCC=$GCC
  1592.   GCC=$GXX
  1593.   lt_save_with_gnu_ld=$with_gnu_ld
  1594.   lt_save_path_LD=$lt_cv_path_LD
  1595.   if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
  1596.     lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
  1597.   else
  1598.     $as_unset lt_cv_prog_gnu_ld
  1599.   fi
  1600.   if test -n "${lt_cv_path_LDCXX+set}"; then
  1601.     lt_cv_path_LD=$lt_cv_path_LDCXX
  1602.   else
  1603.     $as_unset lt_cv_path_LD
  1604.   fi
  1605.   test -z "${LDCXX+set}" || LD=$LDCXX
  1606.   CC=${CXX-"c++"}
  1607.   compiler=$CC
  1608.   _LT_TAGVAR(compiler, $1)=$CC
  1609.   _LT_CC_BASENAME([$compiler])
  1610.   if test -n "$compiler"; then
  1611.     # We don't want -fno-exception when compiling C++ code, so set the
  1612.     # no_builtin_flag separately
  1613.     if test "$GXX" = yes; then
  1614.       _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
  1615.     else
  1616.       _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
  1617.     fi
  1618.     if test "$GXX" = yes; then
  1619.       # Set up default GNU C++ configuration
  1620.       LT_PATH_LD
  1621.       # Check if GNU C++ uses GNU ld as the underlying linker, since the
  1622.       # archiving commands below assume that GNU ld is being used.
  1623.       if test "$with_gnu_ld" = yes; then
  1624.         _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
  1625.         _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
  1626.         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
  1627.         _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
  1628.         # If archive_cmds runs LD, not CC, wlarc should be empty
  1629.         # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
  1630.         #     investigate it a little bit more. (MM)
  1631.         wlarc='${wl}'
  1632.         # ancient GNU ld didn't support --whole-archive et. al.
  1633.         if eval "`$CC -print-prog-name=ld` --help 2>&1" |
  1634.   $GREP 'no-whole-archive' > /dev/null; then
  1635.           _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
  1636.         else
  1637.           _LT_TAGVAR(whole_archive_flag_spec, $1)=
  1638.         fi
  1639.       else
  1640.         with_gnu_ld=no
  1641.         wlarc=
  1642.         # A generic and very simple default shared library creation
  1643.         # command for GNU C++ for the case where it uses the native
  1644.         # linker, instead of GNU ld.  If possible, this setting should
  1645.         # overridden to take advantage of the native linker features on
  1646.         # the platform it is being used on.
  1647.         _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
  1648.       fi
  1649.       # Commands to make compiler produce verbose output that lists
  1650.       # what "hidden" libraries, object files and flags are used when
  1651.       # linking a shared library.
  1652.       output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "-L"'
  1653.     else
  1654.       GXX=no
  1655.       with_gnu_ld=no
  1656.       wlarc=
  1657.     fi
  1658.     # PORTME: fill in a description of your system's C++ link characteristics
  1659.     AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
  1660.     _LT_TAGVAR(ld_shlibs, $1)=yes
  1661.     case $host_os in
  1662.       aix3*)
  1663.         # FIXME: insert proper C++ library support
  1664.         _LT_TAGVAR(ld_shlibs, $1)=no
  1665.         ;;
  1666.       aix[[4-9]]*)
  1667.         if test "$host_cpu" = ia64; then
  1668.           # On IA64, the linker does run time linking by default, so we don't
  1669.           # have to do anything special.
  1670.           aix_use_runtimelinking=no
  1671.           exp_sym_flag='-Bexport'
  1672.           no_entry_flag=""
  1673.         else
  1674.           aix_use_runtimelinking=no
  1675.           # Test if we are trying to use run time linking or normal
  1676.           # AIX style linking. If -brtl is somewhere in LDFLAGS, we
  1677.           # need to do runtime linking.
  1678.           case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
  1679.     for ld_flag in $LDFLAGS; do
  1680.       case $ld_flag in
  1681.       *-brtl*)
  1682.         aix_use_runtimelinking=yes
  1683.         break
  1684.         ;;
  1685.       esac
  1686.     done
  1687.     ;;
  1688.           esac
  1689.           exp_sym_flag='-bexport'
  1690.           no_entry_flag='-bnoentry'
  1691.         fi
  1692.         # When large executables or shared objects are built, AIX ld can
  1693.         # have problems creating the table of contents.  If linking a library
  1694.         # or program results in "error TOC overflow" add -mminimal-toc to
  1695.         # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
  1696.         # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
  1697.         _LT_TAGVAR(archive_cmds, $1)=''
  1698.         _LT_TAGVAR(hardcode_direct, $1)=yes
  1699.         _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
  1700.         _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
  1701.         _LT_TAGVAR(link_all_deplibs, $1)=yes
  1702.         _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
  1703.         if test "$GXX" = yes; then
  1704.           case $host_os in aix4.[[012]]|aix4.[[012]].*)
  1705.           # We only want to do this on AIX 4.2 and lower, the check
  1706.           # below for broken collect2 doesn't work under 4.3+
  1707.   collect2name=`${CC} -print-prog-name=collect2`
  1708.   if test -f "$collect2name" &&
  1709.      strings "$collect2name" | $GREP resolve_lib_name >/dev/null
  1710.   then
  1711.     # We have reworked collect2
  1712.     :
  1713.   else
  1714.     # We have old collect2
  1715.     _LT_TAGVAR(hardcode_direct, $1)=unsupported
  1716.     # It fails to find uninstalled libraries when the uninstalled
  1717.     # path is not listed in the libpath.  Setting hardcode_minus_L
  1718.     # to unsupported forces relinking
  1719.     _LT_TAGVAR(hardcode_minus_L, $1)=yes
  1720.     _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
  1721.     _LT_TAGVAR(hardcode_libdir_separator, $1)=
  1722.   fi
  1723.           esac
  1724.           shared_flag='-shared'
  1725.   if test "$aix_use_runtimelinking" = yes; then
  1726.     shared_flag="$shared_flag "'${wl}-G'
  1727.   fi
  1728.         else
  1729.           # not using gcc
  1730.           if test "$host_cpu" = ia64; then
  1731.   # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
  1732.   # chokes on -Wl,-G. The following line is correct:
  1733.   shared_flag='-G'
  1734.           else
  1735.     if test "$aix_use_runtimelinking" = yes; then
  1736.       shared_flag='${wl}-G'
  1737.     else
  1738.       shared_flag='${wl}-bM:SRE'
  1739.     fi
  1740.           fi
  1741.         fi
  1742.         _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
  1743.         # It seems that -bexpall does not export symbols beginning with
  1744.         # underscore (_), so it is better to generate a list of symbols to
  1745. # export.
  1746.         _LT_TAGVAR(always_export_symbols, $1)=yes
  1747.         if test "$aix_use_runtimelinking" = yes; then
  1748.           # Warning - without using the other runtime loading flags (-brtl),
  1749.           # -berok will link without error, but may produce a broken library.
  1750.           _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
  1751.           # Determine the default libpath from the value encoded in an empty
  1752.           # executable.
  1753.           _LT_SYS_MODULE_PATH_AIX
  1754.           _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
  1755.           _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"${wl}$exp_sym_flag:$export_symbols $shared_flag"
  1756.         else
  1757.           if test "$host_cpu" = ia64; then
  1758.     _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
  1759.     _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
  1760.     _LT_TAGVAR(archive_expsym_cmds, $1)="$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"${wl}$exp_sym_flag:$export_symbols"
  1761.           else
  1762.     # Determine the default libpath from the value encoded in an
  1763.     # empty executable.
  1764.     _LT_SYS_MODULE_PATH_AIX
  1765.     _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
  1766.     # Warning - without using the other run time loading flags,
  1767.     # -berok will link without error, but may produce a broken library.
  1768.     _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
  1769.     _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
  1770.     # Exported symbols can be pulled into shared objects from archives
  1771.     _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
  1772.     _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
  1773.     # This is similar to how AIX traditionally builds its shared
  1774.     # libraries.
  1775.     _LT_TAGVAR(archive_expsym_cmds, $1)="$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
  1776.           fi
  1777.         fi
  1778.         ;;
  1779.       beos*)
  1780. if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
  1781.   _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
  1782.   # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
  1783.   # support --undefined.  This deserves some investigation.  FIXME
  1784.   _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
  1785. else
  1786.   _LT_TAGVAR(ld_shlibs, $1)=no
  1787. fi
  1788. ;;
  1789.       chorus*)
  1790.         case $cc_basename in
  1791.           *)
  1792.   # FIXME: insert proper C++ library support
  1793.   _LT_TAGVAR(ld_shlibs, $1)=no
  1794.   ;;
  1795.         esac
  1796.         ;;
  1797.       cygwin* | mingw* | pw32* | cegcc*)
  1798.         # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
  1799.         # as there is no search path for DLLs.
  1800.         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
  1801.         _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
  1802.         _LT_TAGVAR(always_export_symbols, $1)=no
  1803.         _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
  1804.         if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
  1805.           _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
  1806.           # If the export-symbols file already is a .def file (1st line
  1807.           # is EXPORTS), use it as is; otherwise, prepend...
  1808.           _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
  1809.     cp $export_symbols $output_objdir/$soname.def;
  1810.           else
  1811.     echo EXPORTS > $output_objdir/$soname.def;
  1812.     cat $export_symbols >> $output_objdir/$soname.def;
  1813.           fi~
  1814.           $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
  1815.         else
  1816.           _LT_TAGVAR(ld_shlibs, $1)=no
  1817.         fi
  1818.         ;;
  1819.       darwin* | rhapsody*)
  1820.         _LT_DARWIN_LINKER_FEATURES($1)
  1821. ;;
  1822.       dgux*)
  1823.         case $cc_basename in
  1824.           ec++*)
  1825.     # FIXME: insert proper C++ library support
  1826.     _LT_TAGVAR(ld_shlibs, $1)=no
  1827.     ;;
  1828.           ghcx*)
  1829.     # Green Hills C++ Compiler
  1830.     # FIXME: insert proper C++ library support
  1831.     _LT_TAGVAR(ld_shlibs, $1)=no
  1832.     ;;
  1833.           *)
  1834.     # FIXME: insert proper C++ library support
  1835.     _LT_TAGVAR(ld_shlibs, $1)=no
  1836.     ;;
  1837.         esac
  1838.         ;;
  1839.       freebsd[[12]]*)
  1840.         # C++ shared libraries reported to be fairly broken before
  1841. # switch to ELF
  1842.         _LT_TAGVAR(ld_shlibs, $1)=no
  1843.         ;;
  1844.       freebsd-elf*)
  1845.         _LT_TAGVAR(archive_cmds_need_lc, $1)=no
  1846.         ;;
  1847.       freebsd* | dragonfly*)
  1848.         # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
  1849.         # conventions
  1850.         _LT_TAGVAR(ld_shlibs, $1)=yes
  1851.         ;;
  1852.       gnu*)
  1853.         ;;
  1854.       hpux9*)
  1855.         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
  1856.         _LT_TAGVAR(hardcode_libdir_separator, $1)=:
  1857.         _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
  1858.         _LT_TAGVAR(hardcode_direct, $1)=yes
  1859.         _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
  1860.              # but as the default
  1861.              # location of the library.
  1862.         case $cc_basename in
  1863.           CC*)
  1864.             # FIXME: insert proper C++ library support
  1865.             _LT_TAGVAR(ld_shlibs, $1)=no
  1866.             ;;
  1867.           aCC*)
  1868.             _LT_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'
  1869.             # Commands to make compiler produce verbose output that lists
  1870.             # what "hidden" libraries, object files and flags are used when
  1871.             # linking a shared library.
  1872.             #
  1873.             # There doesn't appear to be a way to prevent this compiler from
  1874.             # explicitly linking system object files so we need to strip them
  1875.             # from the output so that they don't get included in the library
  1876.             # dependencies.
  1877.             output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
  1878.             ;;
  1879.           *)
  1880.             if test "$GXX" = yes; then
  1881.               _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
  1882.             else
  1883.               # FIXME: insert proper C++ library support
  1884.               _LT_TAGVAR(ld_shlibs, $1)=no
  1885.             fi
  1886.             ;;
  1887.         esac
  1888.         ;;
  1889.       hpux10*|hpux11*)
  1890.         if test $with_gnu_ld = no; then
  1891.   _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
  1892.   _LT_TAGVAR(hardcode_libdir_separator, $1)=:
  1893.           case $host_cpu in
  1894.             hppa*64*|ia64*)
  1895.               ;;
  1896.             *)
  1897.       _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
  1898.               ;;
  1899.           esac
  1900.         fi
  1901.         case $host_cpu in
  1902.           hppa*64*|ia64*)
  1903.             _LT_TAGVAR(hardcode_direct, $1)=no
  1904.             _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  1905.             ;;
  1906.           *)
  1907.             _LT_TAGVAR(hardcode_direct, $1)=yes
  1908.             _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
  1909.             _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
  1910.          # but as the default
  1911.          # location of the library.
  1912.             ;;
  1913.         esac
  1914.         case $cc_basename in
  1915.           CC*)
  1916.     # FIXME: insert proper C++ library support
  1917.     _LT_TAGVAR(ld_shlibs, $1)=no
  1918.     ;;
  1919.           aCC*)
  1920.     case $host_cpu in
  1921.       hppa*64*)
  1922.         _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
  1923.         ;;
  1924.       ia64*)
  1925.         _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
  1926.         ;;
  1927.       *)
  1928.         _LT_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'
  1929.         ;;
  1930.     esac
  1931.     # Commands to make compiler produce verbose output that lists
  1932.     # what "hidden" libraries, object files and flags are used when
  1933.     # linking a shared library.
  1934.     #
  1935.     # There doesn't appear to be a way to prevent this compiler from
  1936.     # explicitly linking system object files so we need to strip them
  1937.     # from the output so that they don't get included in the library
  1938.     # dependencies.
  1939.     output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
  1940.     ;;
  1941.           *)
  1942.     if test "$GXX" = yes; then
  1943.       if test $with_gnu_ld = no; then
  1944.         case $host_cpu in
  1945.           hppa*64*)
  1946.             _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
  1947.             ;;
  1948.           ia64*)
  1949.             _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
  1950.             ;;
  1951.           *)
  1952.             _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
  1953.             ;;
  1954.         esac
  1955.       fi
  1956.     else
  1957.       # FIXME: insert proper C++ library support
  1958.       _LT_TAGVAR(ld_shlibs, $1)=no
  1959.     fi
  1960.     ;;
  1961.         esac
  1962.         ;;
  1963.       interix[[3-9]]*)
  1964. _LT_TAGVAR(hardcode_direct, $1)=no
  1965. _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  1966. _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
  1967. _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
  1968. # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
  1969. # Instead, shared libraries are loaded at an image base (0x10000000 by
  1970. # default) and relocated if they conflict, which is a slow very memory
  1971. # consuming and fragmenting process.  To avoid this, we pick a random,
  1972. # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
  1973. # time.  Moving up from 0x10000000 also allows more sbrk(2) space.
  1974. _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 * 262144 + 1342177280` -o $lib'
  1975. _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 * 262144 + 1342177280` -o $lib'
  1976. ;;
  1977.       irix5* | irix6*)
  1978.         case $cc_basename in
  1979.           CC*)
  1980.     # SGI C++
  1981.     _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
  1982.     # Archives containing C++ object files must be created using
  1983.     # "CC -ar", where "CC" is the IRIX C++ compiler.  This is
  1984.     # necessary to make sure instantiated templates are included
  1985.     # in the archive.
  1986.     _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
  1987.     ;;
  1988.           *)
  1989.     if test "$GXX" = yes; then
  1990.       if test "$with_gnu_ld" = no; then
  1991.         _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
  1992.       else
  1993.         _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` -o $lib'
  1994.       fi
  1995.     fi
  1996.     _LT_TAGVAR(link_all_deplibs, $1)=yes
  1997.     ;;
  1998.         esac
  1999.         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
  2000.         _LT_TAGVAR(hardcode_libdir_separator, $1)=:
  2001.         _LT_TAGVAR(inherit_rpath, $1)=yes
  2002.         ;;
  2003.       linux* | k*bsd*-gnu)
  2004.         case $cc_basename in
  2005.           KCC*)
  2006.     # Kuck and Associates, Inc. (KAI) C++ Compiler
  2007.     # KCC will only create a shared library if the output file
  2008.     # ends with ".so" (or ".sl" for HP-UX), so rename the library
  2009.     # to its proper name (with version) after linking.
  2010.     _LT_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'
  2011.     _LT_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'
  2012.     # Commands to make compiler produce verbose output that lists
  2013.     # what "hidden" libraries, object files and flags are used when
  2014.     # linking a shared library.
  2015.     #
  2016.     # There doesn't appear to be a way to prevent this compiler from
  2017.     # explicitly linking system object files so we need to strip them
  2018.     # from the output so that they don't get included in the library
  2019.     # dependencies.
  2020.     output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
  2021.     _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
  2022.     _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
  2023.     # Archives containing C++ object files must be created using
  2024.     # "CC -Bstatic", where "CC" is the KAI C++ compiler.
  2025.     _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
  2026.     ;;
  2027.   icpc* | ecpc* )
  2028.     # Intel C++
  2029.     with_gnu_ld=yes
  2030.     # version 8.0 and above of icpc choke on multiply defined symbols
  2031.     # if we add $predep_objects and $postdep_objects, however 7.1 and
  2032.     # earlier do not add the objects themselves.
  2033.     case `$CC -V 2>&1` in
  2034.       *"Version 7."*)
  2035.         _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
  2036. _LT_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'
  2037. ;;
  2038.       *)  # Version 8.0 or newer
  2039.         tmp_idyn=
  2040.         case $host_cpu in
  2041.   ia64*) tmp_idyn=' -i_dynamic';;
  2042. esac
  2043.         _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
  2044. _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
  2045. ;;
  2046.     esac
  2047.     _LT_TAGVAR(archive_cmds_need_lc, $1)=no
  2048.     _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
  2049.     _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
  2050.     _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
  2051.     ;;
  2052.           pgCC* | pgcpp*)
  2053.             # Portland Group C++ compiler
  2054.     case `$CC -V` in
  2055.     *pgCC [[1-5]]* | *pgcpp [[1-5]]*)
  2056.       _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
  2057. rm -rf $tpldir~
  2058. $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
  2059. compile_command="$compile_command `find $tpldir -name *.o | $NL2SP`"'
  2060.       _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
  2061. rm -rf $tpldir~
  2062. $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
  2063. $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name *.o | $NL2SP`~
  2064. $RANLIB $oldlib'
  2065.       _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
  2066. rm -rf $tpldir~
  2067. $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
  2068. $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name *.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
  2069.       _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
  2070. rm -rf $tpldir~
  2071. $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
  2072. $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name *.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
  2073.       ;;
  2074.     *) # Version 6 will use weak symbols
  2075.       _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
  2076.       _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
  2077.       ;;
  2078.     esac
  2079.     _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
  2080.     _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
  2081.     _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience""; do test  -n "$conv" && new_convenience="$new_convenience,$conv"; done; $ECHO "$new_convenience"` ${wl}--no-whole-archive'
  2082.             ;;
  2083.   cxx*)
  2084.     # Compaq C++
  2085.     _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
  2086.     _LT_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'
  2087.     runpath_var=LD_RUN_PATH
  2088.     _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
  2089.     _LT_TAGVAR(hardcode_libdir_separator, $1)=:
  2090.     # Commands to make compiler produce verbose output that lists
  2091.     # what "hidden" libraries, object files and flags are used when
  2092.     # linking a shared library.
  2093.     #
  2094.     # There doesn't appear to be a way to prevent this compiler from
  2095.     # explicitly linking system object files so we need to strip them
  2096.     # from the output so that they don't get included in the library
  2097.     # dependencies.
  2098.     output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`$ECHO "X$templist" | $Xsed -e "s/(^.*ld.*)( .*ld .*$)/1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
  2099.     ;;
  2100.   xl*)
  2101.     # IBM XL 8.0 on PPC, with GNU ld
  2102.     _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
  2103.     _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
  2104.     _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
  2105.     if test "x$supports_anon_versioning" = xyes; then
  2106.       _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
  2107. cat $export_symbols | sed -e "s/(.*)/1;/" >> $output_objdir/$libname.ver~
  2108. echo "local: *; };" >> $output_objdir/$libname.ver~
  2109. $CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
  2110.     fi
  2111.     ;;
  2112.   *)
  2113.     case `$CC -V 2>&1 | sed 5q` in
  2114.     *Sun C*)
  2115.       # Sun C++ 5.9
  2116.       _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
  2117.       _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
  2118.       _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols'
  2119.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
  2120.       _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience""; do test -z "$conv" || new_convenience="$new_convenience,$conv"; done; $ECHO "$new_convenience"` ${wl}--no-whole-archive'
  2121.       _LT_TAGVAR(compiler_needs_object, $1)=yes
  2122.       # Not sure whether something based on
  2123.       # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
  2124.       # would be better.
  2125.       output_verbose_link_cmd='echo'
  2126.       # Archives containing C++ object files must be created using
  2127.       # "CC -xar", where "CC" is the Sun C++ compiler.  This is
  2128.       # necessary to make sure instantiated templates are included
  2129.       # in the archive.
  2130.       _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
  2131.       ;;
  2132.     esac
  2133.     ;;
  2134. esac
  2135. ;;
  2136.       lynxos*)
  2137.         # FIXME: insert proper C++ library support
  2138. _LT_TAGVAR(ld_shlibs, $1)=no
  2139. ;;
  2140.       m88k*)
  2141.         # FIXME: insert proper C++ library support
  2142.         _LT_TAGVAR(ld_shlibs, $1)=no
  2143. ;;
  2144.       mvs*)
  2145.         case $cc_basename in
  2146.           cxx*)
  2147.     # FIXME: insert proper C++ library support
  2148.     _LT_TAGVAR(ld_shlibs, $1)=no
  2149.     ;;
  2150.   *)
  2151.     # FIXME: insert proper C++ library support
  2152.     _LT_TAGVAR(ld_shlibs, $1)=no
  2153.     ;;
  2154. esac
  2155. ;;
  2156.       netbsd*)
  2157.         if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
  2158.   _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable  -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
  2159.   wlarc=
  2160.   _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
  2161.   _LT_TAGVAR(hardcode_direct, $1)=yes
  2162.   _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  2163. fi
  2164. # Workaround some broken pre-1.5 toolchains
  2165. output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
  2166. ;;
  2167.       *nto* | *qnx*)
  2168.         _LT_TAGVAR(ld_shlibs, $1)=yes
  2169. ;;
  2170.       openbsd2*)
  2171.         # C++ shared libraries are fairly broken
  2172. _LT_TAGVAR(ld_shlibs, $1)=no
  2173. ;;
  2174.       openbsd*)
  2175. if test -f /usr/libexec/ld.so; then
  2176.   _LT_TAGVAR(hardcode_direct, $1)=yes
  2177.   _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  2178.   _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
  2179.   _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
  2180.   _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
  2181.   if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
  2182.     _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib'
  2183.     _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
  2184.     _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
  2185.   fi
  2186.   output_verbose_link_cmd=echo
  2187. else
  2188.   _LT_TAGVAR(ld_shlibs, $1)=no
  2189. fi
  2190. ;;
  2191.       osf3* | osf4* | osf5*)
  2192.         case $cc_basename in
  2193.           KCC*)
  2194.     # Kuck and Associates, Inc. (KAI) C++ Compiler
  2195.     # KCC will only create a shared library if the output file
  2196.     # ends with ".so" (or ".sl" for HP-UX), so rename the library
  2197.     # to its proper name (with version) after linking.
  2198.     _LT_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'
  2199.     _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
  2200.     _LT_TAGVAR(hardcode_libdir_separator, $1)=:
  2201.     # Archives containing C++ object files must be created using
  2202.     # the KAI C++ compiler.
  2203.     case $host in
  2204.       osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
  2205.       *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
  2206.     esac
  2207.     ;;
  2208.           RCC*)
  2209.     # Rational C++ 2.4.1
  2210.     # FIXME: insert proper C++ library support
  2211.     _LT_TAGVAR(ld_shlibs, $1)=no
  2212.     ;;
  2213.           cxx*)
  2214.     case $host in
  2215.       osf3*)
  2216.         _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}*'
  2217.         _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && $ECHO "X${wl}-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
  2218.         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
  2219. ;;
  2220.       *)
  2221.         _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved *'
  2222.         _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
  2223.         _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\n" -exported_symbol "$i" >> $lib.exp; done~
  2224.           echo "-hidden">> $lib.exp~
  2225.           $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp  `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~
  2226.           $RM $lib.exp'
  2227.         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
  2228. ;;
  2229.     esac
  2230.     _LT_TAGVAR(hardcode_libdir_separator, $1)=:
  2231.     # Commands to make compiler produce verbose output that lists
  2232.     # what "hidden" libraries, object files and flags are used when
  2233.     # linking a shared library.
  2234.     #
  2235.     # There doesn't appear to be a way to prevent this compiler from
  2236.     # explicitly linking system object files so we need to strip them
  2237.     # from the output so that they don't get included in the library
  2238.     # dependencies.
  2239.     output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`$ECHO "X$templist" | $Xsed -e "s/(^.*ld.*)( .*ld.*$)/1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
  2240.     ;;
  2241.   *)
  2242.     if test "$GXX" = yes && test "$with_gnu_ld" = no; then
  2243.       _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}*'
  2244.       case $host in
  2245.         osf3*)
  2246.           _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
  2247.   ;;
  2248.         *)
  2249.           _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
  2250.   ;;
  2251.       esac
  2252.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
  2253.       _LT_TAGVAR(hardcode_libdir_separator, $1)=:
  2254.       # Commands to make compiler produce verbose output that lists
  2255.       # what "hidden" libraries, object files and flags are used when
  2256.       # linking a shared library.
  2257.       output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "-L"'
  2258.     else
  2259.       # FIXME: insert proper C++ library support
  2260.       _LT_TAGVAR(ld_shlibs, $1)=no
  2261.     fi
  2262.     ;;
  2263.         esac
  2264.         ;;
  2265.       psos*)
  2266.         # FIXME: insert proper C++ library support
  2267.         _LT_TAGVAR(ld_shlibs, $1)=no
  2268.         ;;
  2269.       sunos4*)
  2270.         case $cc_basename in
  2271.           CC*)
  2272.     # Sun C++ 4.x
  2273.     # FIXME: insert proper C++ library support
  2274.     _LT_TAGVAR(ld_shlibs, $1)=no
  2275.     ;;
  2276.           lcc*)
  2277.     # Lucid
  2278.     # FIXME: insert proper C++ library support
  2279.     _LT_TAGVAR(ld_shlibs, $1)=no
  2280.     ;;
  2281.           *)
  2282.     # FIXME: insert proper C++ library support
  2283.     _LT_TAGVAR(ld_shlibs, $1)=no
  2284.     ;;
  2285.         esac
  2286.         ;;
  2287.       solaris*)
  2288.         case $cc_basename in
  2289.           CC*)
  2290.     # Sun C++ 4.2, 5.x and Centerline C++
  2291.             _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
  2292.     _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
  2293.     _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag}  -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
  2294.     _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/(.*)/1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
  2295.       $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
  2296.     _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
  2297.     _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  2298.     case $host_os in
  2299.       solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
  2300.       *)
  2301. # The compiler driver will combine and reorder linker options,
  2302. # but understands `-z linker_flag'.
  2303.         # Supported since Solaris 2.6 (maybe 2.5.1?)
  2304. _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
  2305.         ;;
  2306.     esac
  2307.     _LT_TAGVAR(link_all_deplibs, $1)=yes
  2308.     output_verbose_link_cmd='echo'
  2309.     # Archives containing C++ object files must be created using
  2310.     # "CC -xar", where "CC" is the Sun C++ compiler.  This is
  2311.     # necessary to make sure instantiated templates are included
  2312.     # in the archive.
  2313.     _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
  2314.     ;;
  2315.           gcx*)
  2316.     # Green Hills C++ Compiler
  2317.     _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
  2318.     # The C++ compiler must be used to create the archive.
  2319.     _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
  2320.     ;;
  2321.           *)
  2322.     # GNU C++ compiler with Solaris linker
  2323.     if test "$GXX" = yes && test "$with_gnu_ld" = no; then
  2324.       _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
  2325.       if $CC --version | $GREP -v '^2.7' > /dev/null; then
  2326.         _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
  2327.         _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/(.*)/1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
  2328.   $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
  2329.         # Commands to make compiler produce verbose output that lists
  2330.         # what "hidden" libraries, object files and flags are used when
  2331.         # linking a shared library.
  2332.         output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "-L"'
  2333.       else
  2334.         # g++ 2.7 appears to require `-G' NOT `-shared' on this
  2335.         # platform.
  2336.         _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
  2337.         _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/(.*)/1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
  2338.   $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
  2339.         # Commands to make compiler produce verbose output that lists
  2340.         # what "hidden" libraries, object files and flags are used when
  2341.         # linking a shared library.
  2342.         output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP "-L"'
  2343.       fi
  2344.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
  2345.       case $host_os in
  2346. solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
  2347. *)
  2348.   _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
  2349.   ;;
  2350.       esac
  2351.     fi
  2352.     ;;
  2353.         esac
  2354.         ;;
  2355.     sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
  2356.       _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
  2357.       _LT_TAGVAR(archive_cmds_need_lc, $1)=no
  2358.       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  2359.       runpath_var='LD_RUN_PATH'
  2360.       case $cc_basename in
  2361.         CC*)
  2362.   _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
  2363.   _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
  2364.   ;;
  2365. *)
  2366.   _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
  2367.   _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
  2368.   ;;
  2369.       esac
  2370.       ;;
  2371.       sysv5* | sco3.2v5* | sco5v6*)
  2372. # Note: We can NOT use -z defs as we might desire, because we do not
  2373. # link with -lc, and that would cause any symbols used from libc to
  2374. # always be unresolved, which means just about no library would
  2375. # ever link correctly.  If we're not using GNU ld we use -z text
  2376. # though, which does catch some bad symbols but isn't as heavy-handed
  2377. # as -z defs.
  2378. _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
  2379. _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
  2380. _LT_TAGVAR(archive_cmds_need_lc, $1)=no
  2381. _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  2382. _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
  2383. _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
  2384. _LT_TAGVAR(link_all_deplibs, $1)=yes
  2385. _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
  2386. runpath_var='LD_RUN_PATH'
  2387. case $cc_basename in
  2388.           CC*)
  2389.     _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
  2390.     _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
  2391.     ;;
  2392.   *)
  2393.     _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
  2394.     _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
  2395.     ;;
  2396. esac
  2397.       ;;
  2398.       tandem*)
  2399.         case $cc_basename in
  2400.           NCC*)
  2401.     # NonStop-UX NCC 3.20
  2402.     # FIXME: insert proper C++ library support
  2403.     _LT_TAGVAR(ld_shlibs, $1)=no
  2404.     ;;
  2405.           *)
  2406.     # FIXME: insert proper C++ library support
  2407.     _LT_TAGVAR(ld_shlibs, $1)=no
  2408.     ;;
  2409.         esac
  2410.         ;;
  2411.       vxworks*)
  2412.         # FIXME: insert proper C++ library support
  2413.         _LT_TAGVAR(ld_shlibs, $1)=no
  2414.         ;;
  2415.       *)
  2416.         # FIXME: insert proper C++ library support
  2417.         _LT_TAGVAR(ld_shlibs, $1)=no
  2418.         ;;
  2419.     esac
  2420.     AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
  2421.     test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
  2422.     _LT_TAGVAR(GCC, $1)="$GXX"
  2423.     _LT_TAGVAR(LD, $1)="$LD"
  2424.     ## CAVEAT EMPTOR:
  2425.     ## There is no encapsulation within the following macros, do not change
  2426.     ## the running order or otherwise move them around unless you know exactly
  2427.     ## what you are doing...
  2428.     _LT_SYS_HIDDEN_LIBDEPS($1)
  2429.     _LT_COMPILER_PIC($1)
  2430.     _LT_COMPILER_C_O($1)
  2431.     _LT_COMPILER_FILE_LOCKS($1)
  2432.     _LT_LINKER_SHLIBS($1)
  2433.     _LT_SYS_DYNAMIC_LINKER($1)
  2434.     _LT_LINKER_HARDCODE_LIBPATH($1)
  2435.     _LT_CONFIG($1)
  2436.   fi # test -n "$compiler"
  2437.   CC=$lt_save_CC
  2438.   LDCXX=$LD
  2439.   LD=$lt_save_LD
  2440.   GCC=$lt_save_GCC
  2441.   with_gnu_ld=$lt_save_with_gnu_ld
  2442.   lt_cv_path_LDCXX=$lt_cv_path_LD
  2443.   lt_cv_path_LD=$lt_save_path_LD
  2444.   lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
  2445.   lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
  2446. fi # test "$_lt_caught_CXX_error" != yes
  2447. AC_LANG_POP
  2448. ])# _LT_LANG_CXX_CONFIG
  2449. # _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
  2450. # ---------------------------------
  2451. # Figure out "hidden" library dependencies from verbose
  2452. # compiler output when linking a shared library.
  2453. # Parse the compiler output and extract the necessary
  2454. # objects, libraries and library flags.
  2455. m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
  2456. [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
  2457. # Dependencies to place before and after the object being linked:
  2458. _LT_TAGVAR(predep_objects, $1)=
  2459. _LT_TAGVAR(postdep_objects, $1)=
  2460. _LT_TAGVAR(predeps, $1)=
  2461. _LT_TAGVAR(postdeps, $1)=
  2462. _LT_TAGVAR(compiler_lib_search_path, $1)=
  2463. dnl we can't use the lt_simple_compile_test_code here,
  2464. dnl because it contains code intended for an executable,
  2465. dnl not a library.  It's possible we should let each
  2466. dnl tag define a new lt_????_link_test_code variable,
  2467. dnl but it's only used here...
  2468. m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
  2469. int a;
  2470. void foo (void) { a = 0; }
  2471. _LT_EOF
  2472. ], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
  2473. class Foo
  2474. {
  2475. public:
  2476.   Foo (void) { a = 0; }
  2477. private:
  2478.   int a;
  2479. };
  2480. _LT_EOF
  2481. ], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
  2482.       subroutine foo
  2483.       implicit none
  2484.       integer*4 a
  2485.       a=0
  2486.       return
  2487.       end
  2488. _LT_EOF
  2489. ], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
  2490.       subroutine foo
  2491.       implicit none
  2492.       integer a
  2493.       a=0
  2494.       return
  2495.       end
  2496. _LT_EOF
  2497. ], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
  2498. public class foo {
  2499.   private int a;
  2500.   public void bar (void) {
  2501.     a = 0;
  2502.   }
  2503. };
  2504. _LT_EOF
  2505. ])
  2506. dnl Parse the compiler output and extract the necessary
  2507. dnl objects, libraries and library flags.
  2508. if AC_TRY_EVAL(ac_compile); then
  2509.   # Parse the compiler output and extract the necessary
  2510.   # objects, libraries and library flags.
  2511.   # Sentinel used to keep track of whether or not we are before
  2512.   # the conftest object file.
  2513.   pre_test_object_deps_done=no
  2514.   for p in `eval "$output_verbose_link_cmd"`; do
  2515.     case $p in
  2516.     -L* | -R* | -l*)
  2517.        # Some compilers place space between "-{L,R}" and the path.
  2518.        # Remove the space.
  2519.        if test $p = "-L" ||
  2520.           test $p = "-R"; then
  2521.  prev=$p
  2522.  continue
  2523.        else
  2524.  prev=
  2525.        fi
  2526.        if test "$pre_test_object_deps_done" = no; then
  2527.  case $p in
  2528.  -L* | -R*)
  2529.    # Internal compiler library paths should come after those
  2530.    # provided the user.  The postdeps already come after the
  2531.    # user supplied libs so there is no need to process them.
  2532.    if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
  2533.      _LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}"
  2534.    else
  2535.      _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}"
  2536.    fi
  2537.    ;;
  2538.  # The "-l" case would never come before the object being
  2539.  # linked, so don't bother handling this case.
  2540.  esac
  2541.        else
  2542.  if test -z "$_LT_TAGVAR(postdeps, $1)"; then
  2543.    _LT_TAGVAR(postdeps, $1)="${prev}${p}"
  2544.  else
  2545.    _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}"
  2546.  fi
  2547.        fi
  2548.        ;;
  2549.     *.$objext)
  2550.        # This assumes that the test object file only shows up
  2551.        # once in the compiler output.
  2552.        if test "$p" = "conftest.$objext"; then
  2553.  pre_test_object_deps_done=yes
  2554.  continue
  2555.        fi
  2556.        if test "$pre_test_object_deps_done" = no; then
  2557.  if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
  2558.    _LT_TAGVAR(predep_objects, $1)="$p"
  2559.  else
  2560.    _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
  2561.  fi
  2562.        else
  2563.  if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
  2564.    _LT_TAGVAR(postdep_objects, $1)="$p"
  2565.  else
  2566.    _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
  2567.  fi
  2568.        fi
  2569.        ;;
  2570.     *) ;; # Ignore the rest.
  2571.     esac
  2572.   done
  2573.   # Clean up.
  2574.   rm -f a.out a.exe
  2575. else
  2576.   echo "libtool.m4: error: problem compiling $1 test program"
  2577. fi
  2578. $RM -f confest.$objext
  2579. # PORTME: override above test on systems where it is broken
  2580. m4_if([$1], [CXX],
  2581. [case $host_os in
  2582. interix[[3-9]]*)
  2583.   # Interix 3.5 installs completely hosed .la files for C++, so rather than
  2584.   # hack all around it, let's just trust "g++" to DTRT.
  2585.   _LT_TAGVAR(predep_objects,$1)=
  2586.   _LT_TAGVAR(postdep_objects,$1)=
  2587.   _LT_TAGVAR(postdeps,$1)=
  2588.   ;;
  2589. linux*)
  2590.   case `$CC -V 2>&1 | sed 5q` in
  2591.   *Sun C*)
  2592.     # Sun C++ 5.9
  2593.     # The more standards-conforming stlport4 library is
  2594.     # incompatible with the Cstd library. Avoid specifying
  2595.     # it if it's in CXXFLAGS. Ignore libCrun as
  2596.     # -library=stlport4 depends on it.
  2597.     case " $CXX $CXXFLAGS " in
  2598.     *" -library=stlport4 "*)
  2599.       solaris_use_stlport4=yes
  2600.       ;;
  2601.     esac
  2602.     if test "$solaris_use_stlport4" != yes; then
  2603.       _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
  2604.     fi
  2605.     ;;
  2606.   esac
  2607.   ;;
  2608. solaris*)
  2609.   case $cc_basename in
  2610.   CC*)
  2611.     # The more standards-conforming stlport4 library is
  2612.     # incompatible with the Cstd library. Avoid specifying
  2613.     # it if it's in CXXFLAGS. Ignore libCrun as
  2614.     # -library=stlport4 depends on it.
  2615.     case " $CXX $CXXFLAGS " in
  2616.     *" -library=stlport4 "*)
  2617.       solaris_use_stlport4=yes
  2618.       ;;
  2619.     esac
  2620.     # Adding this requires a known-good setup of shared libraries for
  2621.     # Sun compiler versions before 5.6, else PIC objects from an old
  2622.     # archive will be linked into the output, leading to subtle bugs.
  2623.     if test "$solaris_use_stlport4" != yes; then
  2624.       _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
  2625.     fi
  2626.     ;;
  2627.   esac
  2628.   ;;
  2629. esac
  2630. ])
  2631. case " $_LT_TAGVAR(postdeps, $1) " in
  2632. *" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
  2633. esac
  2634.  _LT_TAGVAR(compiler_lib_search_dirs, $1)=
  2635. if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
  2636.  _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
  2637. fi
  2638. _LT_TAGDECL([], [compiler_lib_search_dirs], [1],
  2639.     [The directories searched by this compiler when creating a shared library])
  2640. _LT_TAGDECL([], [predep_objects], [1],
  2641.     [Dependencies to place before and after the objects being linked to
  2642.     create a shared library])
  2643. _LT_TAGDECL([], [postdep_objects], [1])
  2644. _LT_TAGDECL([], [predeps], [1])
  2645. _LT_TAGDECL([], [postdeps], [1])
  2646. _LT_TAGDECL([], [compiler_lib_search_path], [1],
  2647.     [The library search path used internally by the compiler when linking
  2648.     a shared library])
  2649. ])# _LT_SYS_HIDDEN_LIBDEPS
  2650. # _LT_PROG_F77
  2651. # ------------
  2652. # Since AC_PROG_F77 is broken, in that it returns the empty string
  2653. # if there is no fortran compiler, we have our own version here.
  2654. m4_defun([_LT_PROG_F77],
  2655. [
  2656. pushdef([AC_MSG_ERROR], [_lt_disable_F77=yes])
  2657. AC_PROG_F77
  2658. if test -z "$F77" || test "X$F77" = "Xno"; then
  2659.   _lt_disable_F77=yes
  2660. fi
  2661. popdef([AC_MSG_ERROR])
  2662. ])# _LT_PROG_F77
  2663. dnl aclocal-1.4 backwards compatibility:
  2664. dnl AC_DEFUN([_LT_PROG_F77], [])
  2665. # _LT_LANG_F77_CONFIG([TAG])
  2666. # --------------------------
  2667. # Ensure that the configuration variables for a Fortran 77 compiler are
  2668. # suitably defined.  These variables are subsequently used by _LT_CONFIG
  2669. # to write the compiler configuration to `libtool'.
  2670. m4_defun([_LT_LANG_F77_CONFIG],
  2671. [AC_REQUIRE([_LT_PROG_F77])dnl
  2672. AC_LANG_PUSH(Fortran 77)
  2673. _LT_TAGVAR(archive_cmds_need_lc, $1)=no
  2674. _LT_TAGVAR(allow_undefined_flag, $1)=
  2675. _LT_TAGVAR(always_export_symbols, $1)=no
  2676. _LT_TAGVAR(archive_expsym_cmds, $1)=
  2677. _LT_TAGVAR(export_dynamic_flag_spec, $1)=
  2678. _LT_TAGVAR(hardcode_direct, $1)=no
  2679. _LT_TAGVAR(hardcode_direct_absolute, $1)=no
  2680. _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
  2681. _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
  2682. _LT_TAGVAR(hardcode_libdir_separator, $1)=
  2683. _LT_TAGVAR(hardcode_minus_L, $1)=no
  2684. _LT_TAGVAR(hardcode_automatic, $1)=no
  2685. _LT_TAGVAR(inherit_rpath, $1)=no
  2686. _LT_TAGVAR(module_cmds, $1)=
  2687. _LT_TAGVAR(module_expsym_cmds, $1)=
  2688. _LT_TAGVAR(link_all_deplibs, $1)=unknown
  2689. _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
  2690. _LT_TAGVAR(no_undefined_flag, $1)=
  2691. _LT_TAGVAR(whole_archive_flag_spec, $1)=
  2692. _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
  2693. # Source file extension for f77 test sources.
  2694. ac_ext=f
  2695. # Object file extension for compiled f77 test sources.
  2696. objext=o
  2697. _LT_TAGVAR(objext, $1)=$objext
  2698. # No sense in running all these tests if we already determined that
  2699. # the F77 compiler isn't working.  Some variables (like enable_shared)
  2700. # are currently assumed to apply to all compilers on this platform,
  2701. # and will be corrupted by setting them based on a non-working compiler.
  2702. if test "$_lt_disable_F77" != yes; then
  2703.   # Code to be used in simple compile tests
  2704.   lt_simple_compile_test_code="
  2705.       subroutine t
  2706.       return
  2707.       end
  2708. "
  2709.   # Code to be used in simple link tests
  2710.   lt_simple_link_test_code="
  2711.       program t
  2712.       end
  2713. "
  2714.   # ltmain only uses $CC for tagged configurations so make sure $CC is set.
  2715.   _LT_TAG_COMPILER
  2716.   # save warnings/boilerplate of simple test code
  2717.   _LT_COMPILER_BOILERPLATE
  2718.   _LT_LINKER_BOILERPLATE
  2719.   # Allow CC to be a program name with arguments.
  2720.   lt_save_CC="$CC"
  2721.   lt_save_GCC=$GCC
  2722.   CC=${F77-"f77"}
  2723.   compiler=$CC
  2724.   _LT_TAGVAR(compiler, $1)=$CC
  2725.   _LT_CC_BASENAME([$compiler])
  2726.   GCC=$G77
  2727.   if test -n "$compiler"; then
  2728.     AC_MSG_CHECKING([if libtool supports shared libraries])
  2729.     AC_MSG_RESULT([$can_build_shared])
  2730.     AC_MSG_CHECKING([whether to build shared libraries])
  2731.     test "$can_build_shared" = "no" && enable_shared=no
  2732.     # On AIX, shared libraries and static libraries use the same namespace, and
  2733.     # are all built from PIC.
  2734.     case $host_os in
  2735.       aix3*)
  2736.         test "$enable_shared" = yes && enable_static=no
  2737.         if test -n "$RANLIB"; then
  2738.           archive_cmds="$archive_cmds~$RANLIB $lib"
  2739.           postinstall_cmds='$RANLIB $lib'
  2740.         fi
  2741.         ;;
  2742.       aix[[4-9]]*)
  2743. if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
  2744.   test "$enable_shared" = yes && enable_static=no
  2745. fi
  2746.         ;;
  2747.     esac
  2748.     AC_MSG_RESULT([$enable_shared])
  2749.     AC_MSG_CHECKING([whether to build static libraries])
  2750.     # Make sure either enable_shared or enable_static is yes.
  2751.     test "$enable_shared" = yes || enable_static=yes
  2752.     AC_MSG_RESULT([$enable_static])
  2753.     _LT_TAGVAR(GCC, $1)="$G77"
  2754.     _LT_TAGVAR(LD, $1)="$LD"
  2755.     ## CAVEAT EMPTOR:
  2756.     ## There is no encapsulation within the following macros, do not change
  2757.     ## the running order or otherwise move them around unless you know exactly
  2758.     ## what you are doing...
  2759.     _LT_COMPILER_PIC($1)
  2760.     _LT_COMPILER_C_O($1)
  2761.     _LT_COMPILER_FILE_LOCKS($1)
  2762.     _LT_LINKER_SHLIBS($1)
  2763.     _LT_SYS_DYNAMIC_LINKER($1)
  2764.     _LT_LINKER_HARDCODE_LIBPATH($1)
  2765.     _LT_CONFIG($1)
  2766.   fi # test -n "$compiler"
  2767.   GCC=$lt_save_GCC
  2768.   CC="$lt_save_CC"
  2769. fi # test "$_lt_disable_F77" != yes
  2770. AC_LANG_POP
  2771. ])# _LT_LANG_F77_CONFIG
  2772. # _LT_PROG_FC
  2773. # -----------
  2774. # Since AC_PROG_FC is broken, in that it returns the empty string
  2775. # if there is no fortran compiler, we have our own version here.
  2776. m4_defun([_LT_PROG_FC],
  2777. [
  2778. pushdef([AC_MSG_ERROR], [_lt_disable_FC=yes])
  2779. AC_PROG_FC
  2780. if test -z "$FC" || test "X$FC" = "Xno"; then
  2781.   _lt_disable_FC=yes
  2782. fi
  2783. popdef([AC_MSG_ERROR])
  2784. ])# _LT_PROG_FC
  2785. dnl aclocal-1.4 backwards compatibility:
  2786. dnl AC_DEFUN([_LT_PROG_FC], [])
  2787. # _LT_LANG_FC_CONFIG([TAG])
  2788. # -------------------------
  2789. # Ensure that the configuration variables for a Fortran compiler are
  2790. # suitably defined.  These variables are subsequently used by _LT_CONFIG
  2791. # to write the compiler configuration to `libtool'.
  2792. m4_defun([_LT_LANG_FC_CONFIG],
  2793. [AC_REQUIRE([_LT_PROG_FC])dnl
  2794. AC_LANG_PUSH(Fortran)
  2795. _LT_TAGVAR(archive_cmds_need_lc, $1)=no
  2796. _LT_TAGVAR(allow_undefined_flag, $1)=
  2797. _LT_TAGVAR(always_export_symbols, $1)=no
  2798. _LT_TAGVAR(archive_expsym_cmds, $1)=
  2799. _LT_TAGVAR(export_dynamic_flag_spec, $1)=
  2800. _LT_TAGVAR(hardcode_direct, $1)=no
  2801. _LT_TAGVAR(hardcode_direct_absolute, $1)=no
  2802. _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
  2803. _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
  2804. _LT_TAGVAR(hardcode_libdir_separator, $1)=
  2805. _LT_TAGVAR(hardcode_minus_L, $1)=no
  2806. _LT_TAGVAR(hardcode_automatic, $1)=no
  2807. _LT_TAGVAR(inherit_rpath, $1)=no
  2808. _LT_TAGVAR(module_cmds, $1)=
  2809. _LT_TAGVAR(module_expsym_cmds, $1)=
  2810. _LT_TAGVAR(link_all_deplibs, $1)=unknown
  2811. _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
  2812. _LT_TAGVAR(no_undefined_flag, $1)=
  2813. _LT_TAGVAR(whole_archive_flag_spec, $1)=
  2814. _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
  2815. # Source file extension for fc test sources.
  2816. ac_ext=${ac_fc_srcext-f}
  2817. # Object file extension for compiled fc test sources.
  2818. objext=o
  2819. _LT_TAGVAR(objext, $1)=$objext
  2820. # No sense in running all these tests if we already determined that
  2821. # the FC compiler isn't working.  Some variables (like enable_shared)
  2822. # are currently assumed to apply to all compilers on this platform,
  2823. # and will be corrupted by setting them based on a non-working compiler.
  2824. if test "$_lt_disable_FC" != yes; then
  2825.   # Code to be used in simple compile tests
  2826.   lt_simple_compile_test_code="
  2827.       subroutine t
  2828.       return
  2829.       end
  2830. "
  2831.   # Code to be used in simple link tests
  2832.   lt_simple_link_test_code="
  2833.       program t
  2834.       end
  2835. "
  2836.   # ltmain only uses $CC for tagged configurations so make sure $CC is set.
  2837.   _LT_TAG_COMPILER
  2838.   # save warnings/boilerplate of simple test code
  2839.   _LT_COMPILER_BOILERPLATE
  2840.   _LT_LINKER_BOILERPLATE
  2841.   # Allow CC to be a program name with arguments.
  2842.   lt_save_CC="$CC"
  2843.   lt_save_GCC=$GCC
  2844.   CC=${FC-"f95"}
  2845.   compiler=$CC
  2846.   GCC=$ac_cv_fc_compiler_gnu
  2847.   _LT_TAGVAR(compiler, $1)=$CC
  2848.   _LT_CC_BASENAME([$compiler])
  2849.   if test -n "$compiler"; then
  2850.     AC_MSG_CHECKING([if libtool supports shared libraries])
  2851.     AC_MSG_RESULT([$can_build_shared])
  2852.     AC_MSG_CHECKING([whether to build shared libraries])
  2853.     test "$can_build_shared" = "no" && enable_shared=no
  2854.     # On AIX, shared libraries and static libraries use the same namespace, and
  2855.     # are all built from PIC.
  2856.     case $host_os in
  2857.       aix3*)
  2858.         test "$enable_shared" = yes && enable_static=no
  2859.         if test -n "$RANLIB"; then
  2860.           archive_cmds="$archive_cmds~$RANLIB $lib"
  2861.           postinstall_cmds='$RANLIB $lib'
  2862.         fi
  2863.         ;;
  2864.       aix[[4-9]]*)
  2865. if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
  2866.   test "$enable_shared" = yes && enable_static=no
  2867. fi
  2868.         ;;
  2869.     esac
  2870.     AC_MSG_RESULT([$enable_shared])
  2871.     AC_MSG_CHECKING([whether to build static libraries])
  2872.     # Make sure either enable_shared or enable_static is yes.
  2873.     test "$enable_shared" = yes || enable_static=yes
  2874.     AC_MSG_RESULT([$enable_static])
  2875.     _LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu"
  2876.     _LT_TAGVAR(LD, $1)="$LD"
  2877.     ## CAVEAT EMPTOR:
  2878.     ## There is no encapsulation within the following macros, do not change
  2879.     ## the running order or otherwise move them around unless you know exactly
  2880.     ## what you are doing...
  2881.     _LT_SYS_HIDDEN_LIBDEPS($1)
  2882.     _LT_COMPILER_PIC($1)
  2883.     _LT_COMPILER_C_O($1)
  2884.     _LT_COMPILER_FILE_LOCKS($1)
  2885.     _LT_LINKER_SHLIBS($1)
  2886.     _LT_SYS_DYNAMIC_LINKER($1)
  2887.     _LT_LINKER_HARDCODE_LIBPATH($1)
  2888.     _LT_CONFIG($1)
  2889.   fi # test -n "$compiler"
  2890.   GCC=$lt_save_GCC
  2891.   CC="$lt_save_CC"
  2892. fi # test "$_lt_disable_FC" != yes
  2893. AC_LANG_POP
  2894. ])# _LT_LANG_FC_CONFIG
  2895. # _LT_LANG_GCJ_CONFIG([TAG])
  2896. # --------------------------
  2897. # Ensure that the configuration variables for the GNU Java Compiler compiler
  2898. # are suitably defined.  These variables are subsequently used by _LT_CONFIG
  2899. # to write the compiler configuration to `libtool'.
  2900. m4_defun([_LT_LANG_GCJ_CONFIG],
  2901. [AC_REQUIRE([LT_PROG_GCJ])dnl
  2902. AC_LANG_SAVE
  2903. # Source file extension for Java test sources.
  2904. ac_ext=java
  2905. # Object file extension for compiled Java test sources.
  2906. objext=o
  2907. _LT_TAGVAR(objext, $1)=$objext
  2908. # Code to be used in simple compile tests
  2909. lt_simple_compile_test_code="class foo {}"
  2910. # Code to be used in simple link tests
  2911. lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
  2912. # ltmain only uses $CC for tagged configurations so make sure $CC is set.
  2913. _LT_TAG_COMPILER
  2914. # save warnings/boilerplate of simple test code
  2915. _LT_COMPILER_BOILERPLATE
  2916. _LT_LINKER_BOILERPLATE
  2917. # Allow CC to be a program name with arguments.
  2918. lt_save_CC="$CC"
  2919. lt_save_GCC=$GCC
  2920. GCC=yes
  2921. CC=${GCJ-"gcj"}
  2922. compiler=$CC
  2923. _LT_TAGVAR(compiler, $1)=$CC
  2924. _LT_TAGVAR(LD, $1)="$LD"
  2925. _LT_CC_BASENAME([$compiler])
  2926. # GCJ did not exist at the time GCC didn't implicitly link libc in.
  2927. _LT_TAGVAR(archive_cmds_need_lc, $1)=no
  2928. _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
  2929. ## CAVEAT EMPTOR:
  2930. ## There is no encapsulation within the following macros, do not change
  2931. ## the running order or otherwise move them around unless you know exactly
  2932. ## what you are doing...
  2933. if test -n "$compiler"; then
  2934.   _LT_COMPILER_NO_RTTI($1)
  2935.   _LT_COMPILER_PIC($1)
  2936.   _LT_COMPILER_C_O($1)
  2937.   _LT_COMPILER_FILE_LOCKS($1)
  2938.   _LT_LINKER_SHLIBS($1)
  2939.   _LT_LINKER_HARDCODE_LIBPATH($1)
  2940.   _LT_CONFIG($1)
  2941. fi
  2942. AC_LANG_RESTORE
  2943. GCC=$lt_save_GCC
  2944. CC="$lt_save_CC"
  2945. ])# _LT_LANG_GCJ_CONFIG
  2946. # _LT_LANG_RC_CONFIG([TAG])
  2947. # -------------------------
  2948. # Ensure that the configuration variables for the Windows resource compiler
  2949. # are suitably defined.  These variables are subsequently used by _LT_CONFIG
  2950. # to write the compiler configuration to `libtool'.
  2951. m4_defun([_LT_LANG_RC_CONFIG],
  2952. [AC_REQUIRE([LT_PROG_RC])dnl
  2953. AC_LANG_SAVE
  2954. # Source file extension for RC test sources.
  2955. ac_ext=rc
  2956. # Object file extension for compiled RC test sources.
  2957. objext=o
  2958. _LT_TAGVAR(objext, $1)=$objext
  2959. # Code to be used in simple compile tests
  2960. lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
  2961. # Code to be used in simple link tests
  2962. lt_simple_link_test_code="$lt_simple_compile_test_code"
  2963. # ltmain only uses $CC for tagged configurations so make sure $CC is set.
  2964. _LT_TAG_COMPILER
  2965. # save warnings/boilerplate of simple test code
  2966. _LT_COMPILER_BOILERPLATE
  2967. _LT_LINKER_BOILERPLATE
  2968. # Allow CC to be a program name with arguments.
  2969. lt_save_CC="$CC"
  2970. lt_save_GCC=$GCC
  2971. GCC=
  2972. CC=${RC-"windres"}
  2973. compiler=$CC
  2974. _LT_TAGVAR(compiler, $1)=$CC
  2975. _LT_CC_BASENAME([$compiler])
  2976. _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
  2977. if test -n "$compiler"; then
  2978.   :
  2979.   _LT_CONFIG($1)
  2980. fi
  2981. GCC=$lt_save_GCC
  2982. AC_LANG_RESTORE
  2983. CC="$lt_save_CC"
  2984. ])# _LT_LANG_RC_CONFIG
  2985. # LT_PROG_GCJ
  2986. # -----------
  2987. AC_DEFUN([LT_PROG_GCJ],
  2988. [m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
  2989.   [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
  2990.     [AC_CHECK_TOOL(GCJ, gcj,)
  2991.       test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
  2992.       AC_SUBST(GCJFLAGS)])])[]dnl
  2993. ])
  2994. # Old name:
  2995. AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
  2996. dnl aclocal-1.4 backwards compatibility:
  2997. dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
  2998. # LT_PROG_RC
  2999. # ----------
  3000. AC_DEFUN([LT_PROG_RC],
  3001. [AC_CHECK_TOOL(RC, windres,)
  3002. ])
  3003. # Old name:
  3004. AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
  3005. dnl aclocal-1.4 backwards compatibility:
  3006. dnl AC_DEFUN([LT_AC_PROG_RC], [])
  3007. # _LT_DECL_EGREP
  3008. # --------------
  3009. # If we don't have a new enough Autoconf to choose the best grep
  3010. # available, choose the one first in the user's PATH.
  3011. m4_defun([_LT_DECL_EGREP],
  3012. [AC_REQUIRE([AC_PROG_EGREP])dnl
  3013. AC_REQUIRE([AC_PROG_FGREP])dnl
  3014. test -z "$GREP" && GREP=grep
  3015. _LT_DECL([], [GREP], [1], [A grep program that handles long lines])
  3016. _LT_DECL([], [EGREP], [1], [An ERE matcher])
  3017. _LT_DECL([], [FGREP], [1], [A literal string matcher])
  3018. dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
  3019. AC_SUBST([GREP])
  3020. ])
  3021. # _LT_DECL_OBJDUMP
  3022. # --------------
  3023. # If we don't have a new enough Autoconf to choose the best objdump
  3024. # available, choose the one first in the user's PATH.
  3025. m4_defun([_LT_DECL_OBJDUMP],
  3026. [AC_CHECK_TOOL(OBJDUMP, objdump, false)
  3027. test -z "$OBJDUMP" && OBJDUMP=objdump
  3028. _LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
  3029. AC_SUBST([OBJDUMP])
  3030. ])
  3031. # _LT_DECL_SED
  3032. # ------------
  3033. # Check for a fully-functional sed program, that truncates
  3034. # as few characters as possible.  Prefer GNU sed if found.
  3035. m4_defun([_LT_DECL_SED],
  3036. [AC_PROG_SED
  3037. test -z "$SED" && SED=sed
  3038. Xsed="$SED -e 1s/^X//"
  3039. _LT_DECL([], [SED], [1], [A sed program that does not truncate output])
  3040. _LT_DECL([], [Xsed], ["$SED -e 1s/^X//"],
  3041.     [Sed that helps us avoid accidentally triggering echo(1) options like -n])
  3042. ])# _LT_DECL_SED
  3043. m4_ifndef([AC_PROG_SED], [
  3044. ############################################################
  3045. # NOTE: This macro has been submitted for inclusion into   #
  3046. #  GNU Autoconf as AC_PROG_SED.  When it is available in   #
  3047. #  a released version of Autoconf we should remove this    #
  3048. #  macro and use it instead.                               #
  3049. ############################################################
  3050. m4_defun([AC_PROG_SED],
  3051. [AC_MSG_CHECKING([for a sed that does not truncate output])
  3052. AC_CACHE_VAL(lt_cv_path_SED,
  3053. [# Loop through the user's path and test for sed and gsed.
  3054. # Then use that list of sed's as ones to test for truncation.
  3055. as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
  3056. for as_dir in $PATH
  3057. do
  3058.   IFS=$as_save_IFS
  3059.   test -z "$as_dir" && as_dir=.
  3060.   for lt_ac_prog in sed gsed; do
  3061.     for ac_exec_ext in '' $ac_executable_extensions; do
  3062.       if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
  3063.         lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
  3064.       fi
  3065.     done
  3066.   done
  3067. done
  3068. IFS=$as_save_IFS
  3069. lt_ac_max=0
  3070. lt_ac_count=0
  3071. # Add /usr/xpg4/bin/sed as it is typically found on Solaris
  3072. # along with /bin/sed that truncates output.
  3073. for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
  3074.   test ! -f $lt_ac_sed && continue
  3075.   cat /dev/null > conftest.in
  3076.   lt_ac_count=0
  3077.   echo $ECHO_N "0123456789$ECHO_C" >conftest.in
  3078.   # Check for GNU sed and select it if it is found.
  3079.   if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
  3080.     lt_cv_path_SED=$lt_ac_sed
  3081.     break
  3082.   fi
  3083.   while true; do
  3084.     cat conftest.in conftest.in >conftest.tmp
  3085.     mv conftest.tmp conftest.in
  3086.     cp conftest.in conftest.nl
  3087.     echo >>conftest.nl
  3088.     $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
  3089.     cmp -s conftest.out conftest.nl || break
  3090.     # 10000 chars as input seems more than enough
  3091.     test $lt_ac_count -gt 10 && break
  3092.     lt_ac_count=`expr $lt_ac_count + 1`
  3093.     if test $lt_ac_count -gt $lt_ac_max; then
  3094.       lt_ac_max=$lt_ac_count
  3095.       lt_cv_path_SED=$lt_ac_sed
  3096.     fi
  3097.   done
  3098. done
  3099. ])
  3100. SED=$lt_cv_path_SED
  3101. AC_SUBST([SED])
  3102. AC_MSG_RESULT([$SED])
  3103. ])#AC_PROG_SED
  3104. ])#m4_ifndef
  3105. # Old name:
  3106. AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
  3107. dnl aclocal-1.4 backwards compatibility:
  3108. dnl AC_DEFUN([LT_AC_PROG_SED], [])
  3109. # _LT_CHECK_SHELL_FEATURES
  3110. # ------------------------
  3111. # Find out whether the shell is Bourne or XSI compatible,
  3112. # or has some other useful features.
  3113. m4_defun([_LT_CHECK_SHELL_FEATURES],
  3114. [AC_MSG_CHECKING([whether the shell understands some XSI constructs])
  3115. # Try some XSI features
  3116. xsi_shell=no
  3117. ( _lt_dummy="a/b/c"
  3118.   test "${_lt_dummy##*/},${_lt_dummy%/*},"${_lt_dummy%"$_lt_dummy"}, 
  3119.       = c,a/b,, 
  3120.     && eval 'test $(( 1 + 1 )) -eq 2 
  3121.     && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 
  3122.   && xsi_shell=yes
  3123. AC_MSG_RESULT([$xsi_shell])
  3124. _LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell'])
  3125. AC_MSG_CHECKING([whether the shell understands "+="])
  3126. lt_shell_append=no
  3127. ( foo=bar; set foo baz; eval "$[1]+=$[2]" && test "$foo" = barbaz ) 
  3128.     >/dev/null 2>&1 
  3129.   && lt_shell_append=yes
  3130. AC_MSG_RESULT([$lt_shell_append])
  3131. _LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append'])
  3132. if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
  3133.   lt_unset=unset
  3134. else
  3135.   lt_unset=false
  3136. fi
  3137. _LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
  3138. # test EBCDIC or ASCII
  3139. case `echo X|tr X '101'` in
  3140.  A) # ASCII based system
  3141.     # n is not interpreted correctly by Solaris 8 /usr/ucb/tr
  3142.   lt_SP2NL='tr 40 12'
  3143.   lt_NL2SP='tr 1512 4040'
  3144.   ;;
  3145.  *) # EBCDIC based system
  3146.   lt_SP2NL='tr 100 n'
  3147.   lt_NL2SP='tr rn 100100'
  3148.   ;;
  3149. esac
  3150. _LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
  3151. _LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
  3152. ])# _LT_CHECK_SHELL_FEATURES
  3153. # _LT_PROG_XSI_SHELLFNS
  3154. # ---------------------
  3155. # Bourne and XSI compatible variants of some useful shell functions.
  3156. m4_defun([_LT_PROG_XSI_SHELLFNS],
  3157. [case $xsi_shell in
  3158.   yes)
  3159.     cat << _LT_EOF >> "$cfgfile"
  3160. # func_dirname file append nondir_replacement
  3161. # Compute the dirname of FILE.  If nonempty, add APPEND to the result,
  3162. # otherwise set result to NONDIR_REPLACEMENT.
  3163. func_dirname ()
  3164. {
  3165.   case ${1} in
  3166.     */*) func_dirname_result="${1%/*}${2}" ;;
  3167.     *  ) func_dirname_result="${3}" ;;
  3168.   esac
  3169. }
  3170. # func_basename file
  3171. func_basename ()
  3172. {
  3173.   func_basename_result="${1##*/}"
  3174. }
  3175. # func_dirname_and_basename file append nondir_replacement
  3176. # perform func_basename and func_dirname in a single function
  3177. # call:
  3178. #   dirname:  Compute the dirname of FILE.  If nonempty,
  3179. #             add APPEND to the result, otherwise set result
  3180. #             to NONDIR_REPLACEMENT.
  3181. #             value returned in "$func_dirname_result"
  3182. #   basename: Compute filename of FILE.
  3183. #             value retuned in "$func_basename_result"
  3184. # Implementation must be kept synchronized with func_dirname
  3185. # and func_basename. For efficiency, we do not delegate to
  3186. # those functions but instead duplicate the functionality here.
  3187. func_dirname_and_basename ()
  3188. {
  3189.   case ${1} in
  3190.     */*) func_dirname_result="${1%/*}${2}" ;;
  3191.     *  ) func_dirname_result="${3}" ;;
  3192.   esac
  3193.   func_basename_result="${1##*/}"
  3194. }
  3195. # func_stripname prefix suffix name
  3196. # strip PREFIX and SUFFIX off of NAME.
  3197. # PREFIX and SUFFIX must not contain globbing or regex special
  3198. # characters, hashes, percent signs, but SUFFIX may contain a leading
  3199. # dot (in which case that matches only a dot).
  3200. func_stripname ()
  3201. {
  3202.   # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
  3203.   # positional parameters, so assign one to ordinary parameter first.
  3204.   func_stripname_result=${3}
  3205.   func_stripname_result=${func_stripname_result#"${1}"}
  3206.   func_stripname_result=${func_stripname_result%"${2}"}
  3207. }
  3208. # func_opt_split
  3209. func_opt_split ()
  3210. {
  3211.   func_opt_split_opt=${1%%=*}
  3212.   func_opt_split_arg=${1#*=}
  3213. }
  3214. # func_lo2o object
  3215. func_lo2o ()
  3216. {
  3217.   case ${1} in
  3218.     *.lo) func_lo2o_result=${1%.lo}.${objext} ;;
  3219.     *)    func_lo2o_result=${1} ;;
  3220.   esac
  3221. }
  3222. # func_xform libobj-or-source
  3223. func_xform ()
  3224. {
  3225.   func_xform_result=${1%.*}.lo
  3226. }
  3227. # func_arith arithmetic-term...
  3228. func_arith ()
  3229. {
  3230.   func_arith_result=$(( $[*] ))
  3231. }
  3232. # func_len string
  3233. # STRING may not start with a hyphen.
  3234. func_len ()
  3235. {
  3236.   func_len_result=${#1}
  3237. }
  3238. _LT_EOF
  3239.     ;;
  3240.   *) # Bourne compatible functions.
  3241.     cat << _LT_EOF >> "$cfgfile"
  3242. # func_dirname file append nondir_replacement
  3243. # Compute the dirname of FILE.  If nonempty, add APPEND to the result,
  3244. # otherwise set result to NONDIR_REPLACEMENT.
  3245. func_dirname ()
  3246. {
  3247.   # Extract subdirectory from the argument.
  3248.   func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"`
  3249.   if test "X$func_dirname_result" = "X${1}"; then
  3250.     func_dirname_result="${3}"
  3251.   else
  3252.     func_dirname_result="$func_dirname_result${2}"
  3253.   fi
  3254. }
  3255. # func_basename file
  3256. func_basename ()
  3257. {
  3258.   func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"`
  3259. }
  3260. dnl func_dirname_and_basename
  3261. dnl A portable version of this function is already defined in general.m4sh
  3262. dnl so there is no need for it here.
  3263. # func_stripname prefix suffix name
  3264. # strip PREFIX and SUFFIX off of NAME.
  3265. # PREFIX and SUFFIX must not contain globbing or regex special
  3266. # characters, hashes, percent signs, but SUFFIX may contain a leading
  3267. # dot (in which case that matches only a dot).
  3268. # func_strip_suffix prefix name
  3269. func_stripname ()
  3270. {
  3271.   case ${2} in
  3272.     .*) func_stripname_result=`$ECHO "X${3}" 
  3273.            | $Xsed -e "s%^${1}%%" -e "s%\\${2}$%%"`;;
  3274.     *)  func_stripname_result=`$ECHO "X${3}" 
  3275.            | $Xsed -e "s%^${1}%%" -e "s%${2}$%%"`;;
  3276.   esac
  3277. }
  3278. # sed scripts:
  3279. my_sed_long_opt='1s/^(-[[^=]]*)=.*/1/;q'
  3280. my_sed_long_arg='1s/^-[[^=]]*=//'
  3281. # func_opt_split
  3282. func_opt_split ()
  3283. {
  3284.   func_opt_split_opt=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_opt"`
  3285.   func_opt_split_arg=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_arg"`
  3286. }
  3287. # func_lo2o object
  3288. func_lo2o ()
  3289. {
  3290.   func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"`
  3291. }
  3292. # func_xform libobj-or-source
  3293. func_xform ()
  3294. {
  3295.   func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/.[[^.]]*$/.lo/'`
  3296. }
  3297. # func_arith arithmetic-term...
  3298. func_arith ()
  3299. {
  3300.   func_arith_result=`expr "$[@]"`
  3301. }
  3302. # func_len string
  3303. # STRING may not start with a hyphen.
  3304. func_len ()
  3305. {
  3306.   func_len_result=`expr "$[1]" : ".*" 2>/dev/null || echo $max_cmd_len`
  3307. }
  3308. _LT_EOF
  3309. esac
  3310. case $lt_shell_append in
  3311.   yes)
  3312.     cat << _LT_EOF >> "$cfgfile"
  3313. # func_append var value
  3314. # Append VALUE to the end of shell variable VAR.
  3315. func_append ()
  3316. {
  3317.   eval "$[1]+=$[2]"
  3318. }
  3319. _LT_EOF
  3320.     ;;
  3321.   *)
  3322.     cat << _LT_EOF >> "$cfgfile"
  3323. # func_append var value
  3324. # Append VALUE to the end of shell variable VAR.
  3325. func_append ()
  3326. {
  3327.   eval "$[1]=$$[1]$[2]"
  3328. }
  3329. _LT_EOF
  3330.     ;;
  3331.   esac
  3332. ])