libtool.m4
上传用户:kjfoods
上传日期:2020-07-06
资源大小:29949k
文件大小:254k
源码类别:

midi

开发平台:

Unix_Linux

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