10c674dbdSmrg# Helper functions for option handling.                    -*- Autoconf -*-
20c674dbdSmrg#
30c674dbdSmrg#   Copyright (C) 2004-2005, 2007-2009, 2011-2019, 2021-2022 Free
40c674dbdSmrg#   Software Foundation, Inc.
50c674dbdSmrg#   Written by Gary V. Vaughan, 2004
60c674dbdSmrg#
70c674dbdSmrg# This file is free software; the Free Software Foundation gives
80c674dbdSmrg# unlimited permission to copy and/or distribute it, with or without
90c674dbdSmrg# modifications, as long as this notice is preserved.
100c674dbdSmrg
110c674dbdSmrg# serial 8 ltoptions.m4
120c674dbdSmrg
130c674dbdSmrg# This is to help aclocal find these macros, as it can't see m4_define.
140c674dbdSmrgAC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
150c674dbdSmrg
160c674dbdSmrg
170c674dbdSmrg# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
180c674dbdSmrg# ------------------------------------------
190c674dbdSmrgm4_define([_LT_MANGLE_OPTION],
200c674dbdSmrg[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
210c674dbdSmrg
220c674dbdSmrg
230c674dbdSmrg# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
240c674dbdSmrg# ---------------------------------------
250c674dbdSmrg# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
260c674dbdSmrg# matching handler defined, dispatch to it.  Other OPTION-NAMEs are
270c674dbdSmrg# saved as a flag.
280c674dbdSmrgm4_define([_LT_SET_OPTION],
290c674dbdSmrg[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
300c674dbdSmrgm4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
310c674dbdSmrg        _LT_MANGLE_DEFUN([$1], [$2]),
320c674dbdSmrg    [m4_warning([Unknown $1 option '$2'])])[]dnl
330c674dbdSmrg])
340c674dbdSmrg
350c674dbdSmrg
360c674dbdSmrg# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
370c674dbdSmrg# ------------------------------------------------------------
380c674dbdSmrg# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
390c674dbdSmrgm4_define([_LT_IF_OPTION],
400c674dbdSmrg[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
410c674dbdSmrg
420c674dbdSmrg
430c674dbdSmrg# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
440c674dbdSmrg# -------------------------------------------------------
450c674dbdSmrg# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
460c674dbdSmrg# are set.
470c674dbdSmrgm4_define([_LT_UNLESS_OPTIONS],
480c674dbdSmrg[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
490c674dbdSmrg	    [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
500c674dbdSmrg		      [m4_define([$0_found])])])[]dnl
510c674dbdSmrgm4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
520c674dbdSmrg])[]dnl
530c674dbdSmrg])
540c674dbdSmrg
550c674dbdSmrg
560c674dbdSmrg# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
570c674dbdSmrg# ----------------------------------------
580c674dbdSmrg# OPTION-LIST is a space-separated list of Libtool options associated
590c674dbdSmrg# with MACRO-NAME.  If any OPTION has a matching handler declared with
600c674dbdSmrg# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
610c674dbdSmrg# the unknown option and exit.
620c674dbdSmrgm4_defun([_LT_SET_OPTIONS],
630c674dbdSmrg[# Set options
640c674dbdSmrgm4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
650c674dbdSmrg    [_LT_SET_OPTION([$1], _LT_Option)])
660c674dbdSmrg
670c674dbdSmrgm4_if([$1],[LT_INIT],[
680c674dbdSmrg  dnl
690c674dbdSmrg  dnl Simply set some default values (i.e off) if boolean options were not
700c674dbdSmrg  dnl specified:
710c674dbdSmrg  _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
720c674dbdSmrg  ])
730c674dbdSmrg  _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
740c674dbdSmrg  ])
750c674dbdSmrg  dnl
760c674dbdSmrg  dnl If no reference was made to various pairs of opposing options, then
770c674dbdSmrg  dnl we run the default mode handler for the pair.  For example, if neither
780c674dbdSmrg  dnl 'shared' nor 'disable-shared' was passed, we enable building of shared
790c674dbdSmrg  dnl archives by default:
800c674dbdSmrg  _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
810c674dbdSmrg  _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
820c674dbdSmrg  _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
830c674dbdSmrg  _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
840c674dbdSmrg		   [_LT_ENABLE_FAST_INSTALL])
850c674dbdSmrg  _LT_UNLESS_OPTIONS([LT_INIT], [aix-soname=aix aix-soname=both aix-soname=svr4],
860c674dbdSmrg		   [_LT_WITH_AIX_SONAME([aix])])
870c674dbdSmrg  ])
880c674dbdSmrg])# _LT_SET_OPTIONS
890c674dbdSmrg
900c674dbdSmrg
910c674dbdSmrg## --------------------------------- ##
920c674dbdSmrg## Macros to handle LT_INIT options. ##
930c674dbdSmrg## --------------------------------- ##
940c674dbdSmrg
950c674dbdSmrg# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
960c674dbdSmrg# -----------------------------------------
970c674dbdSmrgm4_define([_LT_MANGLE_DEFUN],
980c674dbdSmrg[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
990c674dbdSmrg
1000c674dbdSmrg
1010c674dbdSmrg# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
1020c674dbdSmrg# -----------------------------------------------
1030c674dbdSmrgm4_define([LT_OPTION_DEFINE],
1040c674dbdSmrg[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
1050c674dbdSmrg])# LT_OPTION_DEFINE
1060c674dbdSmrg
1070c674dbdSmrg
1080c674dbdSmrg# dlopen
1090c674dbdSmrg# ------
1100c674dbdSmrgLT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
1110c674dbdSmrg])
1120c674dbdSmrg
1130c674dbdSmrgAU_DEFUN([AC_LIBTOOL_DLOPEN],
1140c674dbdSmrg[_LT_SET_OPTION([LT_INIT], [dlopen])
1150c674dbdSmrgAC_DIAGNOSE([obsolete],
1160c674dbdSmrg[$0: Remove this warning and the call to _LT_SET_OPTION when you
1170c674dbdSmrgput the 'dlopen' option into LT_INIT's first parameter.])
1180c674dbdSmrg])
1190c674dbdSmrg
1200c674dbdSmrgdnl aclocal-1.4 backwards compatibility:
1210c674dbdSmrgdnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
1220c674dbdSmrg
1230c674dbdSmrg
1240c674dbdSmrg# win32-dll
1250c674dbdSmrg# ---------
1260c674dbdSmrg# Declare package support for building win32 dll's.
1270c674dbdSmrgLT_OPTION_DEFINE([LT_INIT], [win32-dll],
1280c674dbdSmrg[enable_win32_dll=yes
1290c674dbdSmrg
1300c674dbdSmrgcase $host in
1310c674dbdSmrg*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
1320c674dbdSmrg  AC_CHECK_TOOL(AS, as, false)
1330c674dbdSmrg  AC_CHECK_TOOL(DLLTOOL, dlltool, false)
1340c674dbdSmrg  AC_CHECK_TOOL(OBJDUMP, objdump, false)
1350c674dbdSmrg  ;;
1360c674dbdSmrgesac
1370c674dbdSmrg
1380c674dbdSmrgtest -z "$AS" && AS=as
1390c674dbdSmrg_LT_DECL([], [AS],      [1], [Assembler program])dnl
1400c674dbdSmrg
1410c674dbdSmrgtest -z "$DLLTOOL" && DLLTOOL=dlltool
1420c674dbdSmrg_LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
1430c674dbdSmrg
1440c674dbdSmrgtest -z "$OBJDUMP" && OBJDUMP=objdump
1450c674dbdSmrg_LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
1460c674dbdSmrg])# win32-dll
1470c674dbdSmrg
1480c674dbdSmrgAU_DEFUN([AC_LIBTOOL_WIN32_DLL],
1490c674dbdSmrg[AC_REQUIRE([AC_CANONICAL_HOST])dnl
1500c674dbdSmrg_LT_SET_OPTION([LT_INIT], [win32-dll])
1510c674dbdSmrgAC_DIAGNOSE([obsolete],
1520c674dbdSmrg[$0: Remove this warning and the call to _LT_SET_OPTION when you
1530c674dbdSmrgput the 'win32-dll' option into LT_INIT's first parameter.])
1540c674dbdSmrg])
1550c674dbdSmrg
1560c674dbdSmrgdnl aclocal-1.4 backwards compatibility:
1570c674dbdSmrgdnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
1580c674dbdSmrg
1590c674dbdSmrg
1600c674dbdSmrg# _LT_ENABLE_SHARED([DEFAULT])
1610c674dbdSmrg# ----------------------------
1620c674dbdSmrg# implement the --enable-shared flag, and supports the 'shared' and
1630c674dbdSmrg# 'disable-shared' LT_INIT options.
1640c674dbdSmrg# DEFAULT is either 'yes' or 'no'.  If omitted, it defaults to 'yes'.
1650c674dbdSmrgm4_define([_LT_ENABLE_SHARED],
1660c674dbdSmrg[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
1670c674dbdSmrgAC_ARG_ENABLE([shared],
1680c674dbdSmrg    [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
1690c674dbdSmrg	[build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
1700c674dbdSmrg    [p=${PACKAGE-default}
1710c674dbdSmrg    case $enableval in
1720c674dbdSmrg    yes) enable_shared=yes ;;
1730c674dbdSmrg    no) enable_shared=no ;;
1740c674dbdSmrg    *)
1750c674dbdSmrg      enable_shared=no
1760c674dbdSmrg      # Look at the argument we got.  We use all the common list separators.
1770c674dbdSmrg      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
1780c674dbdSmrg      for pkg in $enableval; do
1790c674dbdSmrg	IFS=$lt_save_ifs
1800c674dbdSmrg	if test "X$pkg" = "X$p"; then
1810c674dbdSmrg	  enable_shared=yes
1820c674dbdSmrg	fi
1830c674dbdSmrg      done
1840c674dbdSmrg      IFS=$lt_save_ifs
1850c674dbdSmrg      ;;
1860c674dbdSmrg    esac],
1870c674dbdSmrg    [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
1880c674dbdSmrg
1890c674dbdSmrg    _LT_DECL([build_libtool_libs], [enable_shared], [0],
1900c674dbdSmrg	[Whether or not to build shared libraries])
1910c674dbdSmrg])# _LT_ENABLE_SHARED
1920c674dbdSmrg
1930c674dbdSmrgLT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
1940c674dbdSmrgLT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
1950c674dbdSmrg
1960c674dbdSmrg# Old names:
1970c674dbdSmrgAC_DEFUN([AC_ENABLE_SHARED],
1980c674dbdSmrg[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
1990c674dbdSmrg])
2000c674dbdSmrg
2010c674dbdSmrgAC_DEFUN([AC_DISABLE_SHARED],
2020c674dbdSmrg[_LT_SET_OPTION([LT_INIT], [disable-shared])
2030c674dbdSmrg])
2040c674dbdSmrg
2050c674dbdSmrgAU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
2060c674dbdSmrgAU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
2070c674dbdSmrg
2080c674dbdSmrgdnl aclocal-1.4 backwards compatibility:
2090c674dbdSmrgdnl AC_DEFUN([AM_ENABLE_SHARED], [])
2100c674dbdSmrgdnl AC_DEFUN([AM_DISABLE_SHARED], [])
2110c674dbdSmrg
2120c674dbdSmrg
2130c674dbdSmrg
2140c674dbdSmrg# _LT_ENABLE_STATIC([DEFAULT])
2150c674dbdSmrg# ----------------------------
2160c674dbdSmrg# implement the --enable-static flag, and support the 'static' and
2170c674dbdSmrg# 'disable-static' LT_INIT options.
2180c674dbdSmrg# DEFAULT is either 'yes' or 'no'.  If omitted, it defaults to 'yes'.
2190c674dbdSmrgm4_define([_LT_ENABLE_STATIC],
2200c674dbdSmrg[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
2210c674dbdSmrgAC_ARG_ENABLE([static],
2220c674dbdSmrg    [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
2230c674dbdSmrg	[build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
2240c674dbdSmrg    [p=${PACKAGE-default}
2250c674dbdSmrg    case $enableval in
2260c674dbdSmrg    yes) enable_static=yes ;;
2270c674dbdSmrg    no) enable_static=no ;;
2280c674dbdSmrg    *)
2290c674dbdSmrg     enable_static=no
2300c674dbdSmrg      # Look at the argument we got.  We use all the common list separators.
2310c674dbdSmrg      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
2320c674dbdSmrg      for pkg in $enableval; do
2330c674dbdSmrg	IFS=$lt_save_ifs
2340c674dbdSmrg	if test "X$pkg" = "X$p"; then
2350c674dbdSmrg	  enable_static=yes
2360c674dbdSmrg	fi
2370c674dbdSmrg      done
2380c674dbdSmrg      IFS=$lt_save_ifs
2390c674dbdSmrg      ;;
2400c674dbdSmrg    esac],
2410c674dbdSmrg    [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
2420c674dbdSmrg
2430c674dbdSmrg    _LT_DECL([build_old_libs], [enable_static], [0],
2440c674dbdSmrg	[Whether or not to build static libraries])
2450c674dbdSmrg])# _LT_ENABLE_STATIC
2460c674dbdSmrg
2470c674dbdSmrgLT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
2480c674dbdSmrgLT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
2490c674dbdSmrg
2500c674dbdSmrg# Old names:
2510c674dbdSmrgAC_DEFUN([AC_ENABLE_STATIC],
2520c674dbdSmrg[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
2530c674dbdSmrg])
2540c674dbdSmrg
2550c674dbdSmrgAC_DEFUN([AC_DISABLE_STATIC],
2560c674dbdSmrg[_LT_SET_OPTION([LT_INIT], [disable-static])
2570c674dbdSmrg])
2580c674dbdSmrg
2590c674dbdSmrgAU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
2600c674dbdSmrgAU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
2610c674dbdSmrg
2620c674dbdSmrgdnl aclocal-1.4 backwards compatibility:
2630c674dbdSmrgdnl AC_DEFUN([AM_ENABLE_STATIC], [])
2640c674dbdSmrgdnl AC_DEFUN([AM_DISABLE_STATIC], [])
2650c674dbdSmrg
2660c674dbdSmrg
2670c674dbdSmrg
2680c674dbdSmrg# _LT_ENABLE_FAST_INSTALL([DEFAULT])
2690c674dbdSmrg# ----------------------------------
2700c674dbdSmrg# implement the --enable-fast-install flag, and support the 'fast-install'
2710c674dbdSmrg# and 'disable-fast-install' LT_INIT options.
2720c674dbdSmrg# DEFAULT is either 'yes' or 'no'.  If omitted, it defaults to 'yes'.
2730c674dbdSmrgm4_define([_LT_ENABLE_FAST_INSTALL],
2740c674dbdSmrg[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
2750c674dbdSmrgAC_ARG_ENABLE([fast-install],
2760c674dbdSmrg    [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
2770c674dbdSmrg    [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
2780c674dbdSmrg    [p=${PACKAGE-default}
2790c674dbdSmrg    case $enableval in
2800c674dbdSmrg    yes) enable_fast_install=yes ;;
2810c674dbdSmrg    no) enable_fast_install=no ;;
2820c674dbdSmrg    *)
2830c674dbdSmrg      enable_fast_install=no
2840c674dbdSmrg      # Look at the argument we got.  We use all the common list separators.
2850c674dbdSmrg      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
2860c674dbdSmrg      for pkg in $enableval; do
2870c674dbdSmrg	IFS=$lt_save_ifs
2880c674dbdSmrg	if test "X$pkg" = "X$p"; then
2890c674dbdSmrg	  enable_fast_install=yes
2900c674dbdSmrg	fi
2910c674dbdSmrg      done
2920c674dbdSmrg      IFS=$lt_save_ifs
2930c674dbdSmrg      ;;
2940c674dbdSmrg    esac],
2950c674dbdSmrg    [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
2960c674dbdSmrg
2970c674dbdSmrg_LT_DECL([fast_install], [enable_fast_install], [0],
2980c674dbdSmrg	 [Whether or not to optimize for fast installation])dnl
2990c674dbdSmrg])# _LT_ENABLE_FAST_INSTALL
3000c674dbdSmrg
3010c674dbdSmrgLT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
3020c674dbdSmrgLT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
3030c674dbdSmrg
3040c674dbdSmrg# Old names:
3050c674dbdSmrgAU_DEFUN([AC_ENABLE_FAST_INSTALL],
3060c674dbdSmrg[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
3070c674dbdSmrgAC_DIAGNOSE([obsolete],
3080c674dbdSmrg[$0: Remove this warning and the call to _LT_SET_OPTION when you put
3090c674dbdSmrgthe 'fast-install' option into LT_INIT's first parameter.])
3100c674dbdSmrg])
3110c674dbdSmrg
3120c674dbdSmrgAU_DEFUN([AC_DISABLE_FAST_INSTALL],
3130c674dbdSmrg[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
3140c674dbdSmrgAC_DIAGNOSE([obsolete],
3150c674dbdSmrg[$0: Remove this warning and the call to _LT_SET_OPTION when you put
3160c674dbdSmrgthe 'disable-fast-install' option into LT_INIT's first parameter.])
3170c674dbdSmrg])
3180c674dbdSmrg
3190c674dbdSmrgdnl aclocal-1.4 backwards compatibility:
3200c674dbdSmrgdnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
3210c674dbdSmrgdnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
3220c674dbdSmrg
3230c674dbdSmrg
3240c674dbdSmrg# _LT_WITH_AIX_SONAME([DEFAULT])
3250c674dbdSmrg# ----------------------------------
3260c674dbdSmrg# implement the --with-aix-soname flag, and support the `aix-soname=aix'
3270c674dbdSmrg# and `aix-soname=both' and `aix-soname=svr4' LT_INIT options. DEFAULT
3280c674dbdSmrg# is either `aix', `both' or `svr4'.  If omitted, it defaults to `aix'.
3290c674dbdSmrgm4_define([_LT_WITH_AIX_SONAME],
3300c674dbdSmrg[m4_define([_LT_WITH_AIX_SONAME_DEFAULT], [m4_if($1, svr4, svr4, m4_if($1, both, both, aix))])dnl
3310c674dbdSmrgshared_archive_member_spec=
3320c674dbdSmrgcase $host,$enable_shared in
3330c674dbdSmrgpower*-*-aix[[5-9]]*,yes)
3340c674dbdSmrg  AC_MSG_CHECKING([which variant of shared library versioning to provide])
3350c674dbdSmrg  AC_ARG_WITH([aix-soname],
3360c674dbdSmrg    [AS_HELP_STRING([--with-aix-soname=aix|svr4|both],
3370c674dbdSmrg      [shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])],
3380c674dbdSmrg    [case $withval in
3390c674dbdSmrg    aix|svr4|both)
3400c674dbdSmrg      ;;
3410c674dbdSmrg    *)
3420c674dbdSmrg      AC_MSG_ERROR([Unknown argument to --with-aix-soname])
3430c674dbdSmrg      ;;
3440c674dbdSmrg    esac
3450c674dbdSmrg    lt_cv_with_aix_soname=$with_aix_soname],
3460c674dbdSmrg    [AC_CACHE_VAL([lt_cv_with_aix_soname],
3470c674dbdSmrg      [lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT)
3480c674dbdSmrg    with_aix_soname=$lt_cv_with_aix_soname])
3490c674dbdSmrg  AC_MSG_RESULT([$with_aix_soname])
3500c674dbdSmrg  if test aix != "$with_aix_soname"; then
3510c674dbdSmrg    # For the AIX way of multilib, we name the shared archive member
3520c674dbdSmrg    # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',
3530c674dbdSmrg    # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File.
3540c674dbdSmrg    # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag,
3550c674dbdSmrg    # the AIX toolchain works better with OBJECT_MODE set (default 32).
3560c674dbdSmrg    if test 64 = "${OBJECT_MODE-32}"; then
3570c674dbdSmrg      shared_archive_member_spec=shr_64
3580c674dbdSmrg    else
3590c674dbdSmrg      shared_archive_member_spec=shr
3600c674dbdSmrg    fi
3610c674dbdSmrg  fi
3620c674dbdSmrg  ;;
3630c674dbdSmrg*)
3640c674dbdSmrg  with_aix_soname=aix
3650c674dbdSmrg  ;;
3660c674dbdSmrgesac
3670c674dbdSmrg
3680c674dbdSmrg_LT_DECL([], [shared_archive_member_spec], [0],
3690c674dbdSmrg    [Shared archive member basename, for filename based shared library versioning on AIX])dnl
3700c674dbdSmrg])# _LT_WITH_AIX_SONAME
3710c674dbdSmrg
3720c674dbdSmrgLT_OPTION_DEFINE([LT_INIT], [aix-soname=aix], [_LT_WITH_AIX_SONAME([aix])])
3730c674dbdSmrgLT_OPTION_DEFINE([LT_INIT], [aix-soname=both], [_LT_WITH_AIX_SONAME([both])])
3740c674dbdSmrgLT_OPTION_DEFINE([LT_INIT], [aix-soname=svr4], [_LT_WITH_AIX_SONAME([svr4])])
3750c674dbdSmrg
3760c674dbdSmrg
3770c674dbdSmrg# _LT_WITH_PIC([MODE])
3780c674dbdSmrg# --------------------
3790c674dbdSmrg# implement the --with-pic flag, and support the 'pic-only' and 'no-pic'
3800c674dbdSmrg# LT_INIT options.
3810c674dbdSmrg# MODE is either 'yes' or 'no'.  If omitted, it defaults to 'both'.
3820c674dbdSmrgm4_define([_LT_WITH_PIC],
3830c674dbdSmrg[AC_ARG_WITH([pic],
3840c674dbdSmrg    [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
3850c674dbdSmrg	[try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
3860c674dbdSmrg    [lt_p=${PACKAGE-default}
3870c674dbdSmrg    case $withval in
3880c674dbdSmrg    yes|no) pic_mode=$withval ;;
3890c674dbdSmrg    *)
3900c674dbdSmrg      pic_mode=default
3910c674dbdSmrg      # Look at the argument we got.  We use all the common list separators.
3920c674dbdSmrg      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
3930c674dbdSmrg      for lt_pkg in $withval; do
3940c674dbdSmrg	IFS=$lt_save_ifs
3950c674dbdSmrg	if test "X$lt_pkg" = "X$lt_p"; then
3960c674dbdSmrg	  pic_mode=yes
3970c674dbdSmrg	fi
3980c674dbdSmrg      done
3990c674dbdSmrg      IFS=$lt_save_ifs
4000c674dbdSmrg      ;;
4010c674dbdSmrg    esac],
4020c674dbdSmrg    [pic_mode=m4_default([$1], [default])])
4030c674dbdSmrg
4040c674dbdSmrg_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
4050c674dbdSmrg])# _LT_WITH_PIC
4060c674dbdSmrg
4070c674dbdSmrgLT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
4080c674dbdSmrgLT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
4090c674dbdSmrg
4100c674dbdSmrg# Old name:
4110c674dbdSmrgAU_DEFUN([AC_LIBTOOL_PICMODE],
4120c674dbdSmrg[_LT_SET_OPTION([LT_INIT], [pic-only])
4130c674dbdSmrgAC_DIAGNOSE([obsolete],
4140c674dbdSmrg[$0: Remove this warning and the call to _LT_SET_OPTION when you
4150c674dbdSmrgput the 'pic-only' option into LT_INIT's first parameter.])
4160c674dbdSmrg])
4170c674dbdSmrg
4180c674dbdSmrgdnl aclocal-1.4 backwards compatibility:
4190c674dbdSmrgdnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
4200c674dbdSmrg
4210c674dbdSmrg## ----------------- ##
4220c674dbdSmrg## LTDL_INIT Options ##
4230c674dbdSmrg## ----------------- ##
4240c674dbdSmrg
4250c674dbdSmrgm4_define([_LTDL_MODE], [])
4260c674dbdSmrgLT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
4270c674dbdSmrg		 [m4_define([_LTDL_MODE], [nonrecursive])])
4280c674dbdSmrgLT_OPTION_DEFINE([LTDL_INIT], [recursive],
4290c674dbdSmrg		 [m4_define([_LTDL_MODE], [recursive])])
4300c674dbdSmrgLT_OPTION_DEFINE([LTDL_INIT], [subproject],
4310c674dbdSmrg		 [m4_define([_LTDL_MODE], [subproject])])
4320c674dbdSmrg
4330c674dbdSmrgm4_define([_LTDL_TYPE], [])
4340c674dbdSmrgLT_OPTION_DEFINE([LTDL_INIT], [installable],
4350c674dbdSmrg		 [m4_define([_LTDL_TYPE], [installable])])
4360c674dbdSmrgLT_OPTION_DEFINE([LTDL_INIT], [convenience],
4370c674dbdSmrg		 [m4_define([_LTDL_TYPE], [convenience])])
438