1da2777aaSmrg# Helper functions for option handling.                    -*- Autoconf -*-
2da2777aaSmrg#
3da2777aaSmrg#   Copyright (C) 2004-2005, 2007-2009, 2011-2019, 2021-2022 Free
4da2777aaSmrg#   Software Foundation, Inc.
5da2777aaSmrg#   Written by Gary V. Vaughan, 2004
6da2777aaSmrg#
7da2777aaSmrg# This file is free software; the Free Software Foundation gives
8da2777aaSmrg# unlimited permission to copy and/or distribute it, with or without
9da2777aaSmrg# modifications, as long as this notice is preserved.
10da2777aaSmrg
11da2777aaSmrg# serial 8 ltoptions.m4
12da2777aaSmrg
13da2777aaSmrg# This is to help aclocal find these macros, as it can't see m4_define.
14da2777aaSmrgAC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
15da2777aaSmrg
16da2777aaSmrg
17da2777aaSmrg# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
18da2777aaSmrg# ------------------------------------------
19da2777aaSmrgm4_define([_LT_MANGLE_OPTION],
20da2777aaSmrg[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
21da2777aaSmrg
22da2777aaSmrg
23da2777aaSmrg# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
24da2777aaSmrg# ---------------------------------------
25da2777aaSmrg# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
26da2777aaSmrg# matching handler defined, dispatch to it.  Other OPTION-NAMEs are
27da2777aaSmrg# saved as a flag.
28da2777aaSmrgm4_define([_LT_SET_OPTION],
29da2777aaSmrg[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
30da2777aaSmrgm4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
31da2777aaSmrg        _LT_MANGLE_DEFUN([$1], [$2]),
32da2777aaSmrg    [m4_warning([Unknown $1 option '$2'])])[]dnl
33da2777aaSmrg])
34da2777aaSmrg
35da2777aaSmrg
36da2777aaSmrg# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
37da2777aaSmrg# ------------------------------------------------------------
38da2777aaSmrg# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
39da2777aaSmrgm4_define([_LT_IF_OPTION],
40da2777aaSmrg[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
41da2777aaSmrg
42da2777aaSmrg
43da2777aaSmrg# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
44da2777aaSmrg# -------------------------------------------------------
45da2777aaSmrg# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
46da2777aaSmrg# are set.
47da2777aaSmrgm4_define([_LT_UNLESS_OPTIONS],
48da2777aaSmrg[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
49da2777aaSmrg	    [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
50da2777aaSmrg		      [m4_define([$0_found])])])[]dnl
51da2777aaSmrgm4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
52da2777aaSmrg])[]dnl
53da2777aaSmrg])
54da2777aaSmrg
55da2777aaSmrg
56da2777aaSmrg# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
57da2777aaSmrg# ----------------------------------------
58da2777aaSmrg# OPTION-LIST is a space-separated list of Libtool options associated
59da2777aaSmrg# with MACRO-NAME.  If any OPTION has a matching handler declared with
60da2777aaSmrg# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
61da2777aaSmrg# the unknown option and exit.
62da2777aaSmrgm4_defun([_LT_SET_OPTIONS],
63da2777aaSmrg[# Set options
64da2777aaSmrgm4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
65da2777aaSmrg    [_LT_SET_OPTION([$1], _LT_Option)])
66da2777aaSmrg
67da2777aaSmrgm4_if([$1],[LT_INIT],[
68da2777aaSmrg  dnl
69da2777aaSmrg  dnl Simply set some default values (i.e off) if boolean options were not
70da2777aaSmrg  dnl specified:
71da2777aaSmrg  _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
72da2777aaSmrg  ])
73da2777aaSmrg  _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
74da2777aaSmrg  ])
75da2777aaSmrg  dnl
76da2777aaSmrg  dnl If no reference was made to various pairs of opposing options, then
77da2777aaSmrg  dnl we run the default mode handler for the pair.  For example, if neither
78da2777aaSmrg  dnl 'shared' nor 'disable-shared' was passed, we enable building of shared
79da2777aaSmrg  dnl archives by default:
80da2777aaSmrg  _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
81da2777aaSmrg  _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
82da2777aaSmrg  _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
83da2777aaSmrg  _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
84da2777aaSmrg		   [_LT_ENABLE_FAST_INSTALL])
85da2777aaSmrg  _LT_UNLESS_OPTIONS([LT_INIT], [aix-soname=aix aix-soname=both aix-soname=svr4],
86da2777aaSmrg		   [_LT_WITH_AIX_SONAME([aix])])
87da2777aaSmrg  ])
88da2777aaSmrg])# _LT_SET_OPTIONS
89da2777aaSmrg
90da2777aaSmrg
91da2777aaSmrg## --------------------------------- ##
92da2777aaSmrg## Macros to handle LT_INIT options. ##
93da2777aaSmrg## --------------------------------- ##
94da2777aaSmrg
95da2777aaSmrg# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
96da2777aaSmrg# -----------------------------------------
97da2777aaSmrgm4_define([_LT_MANGLE_DEFUN],
98da2777aaSmrg[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
99da2777aaSmrg
100da2777aaSmrg
101da2777aaSmrg# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
102da2777aaSmrg# -----------------------------------------------
103da2777aaSmrgm4_define([LT_OPTION_DEFINE],
104da2777aaSmrg[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
105da2777aaSmrg])# LT_OPTION_DEFINE
106da2777aaSmrg
107da2777aaSmrg
108da2777aaSmrg# dlopen
109da2777aaSmrg# ------
110da2777aaSmrgLT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
111da2777aaSmrg])
112da2777aaSmrg
113da2777aaSmrgAU_DEFUN([AC_LIBTOOL_DLOPEN],
114da2777aaSmrg[_LT_SET_OPTION([LT_INIT], [dlopen])
115da2777aaSmrgAC_DIAGNOSE([obsolete],
116da2777aaSmrg[$0: Remove this warning and the call to _LT_SET_OPTION when you
117da2777aaSmrgput the 'dlopen' option into LT_INIT's first parameter.])
118da2777aaSmrg])
119da2777aaSmrg
120da2777aaSmrgdnl aclocal-1.4 backwards compatibility:
121da2777aaSmrgdnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
122da2777aaSmrg
123da2777aaSmrg
124da2777aaSmrg# win32-dll
125da2777aaSmrg# ---------
126da2777aaSmrg# Declare package support for building win32 dll's.
127da2777aaSmrgLT_OPTION_DEFINE([LT_INIT], [win32-dll],
128da2777aaSmrg[enable_win32_dll=yes
129da2777aaSmrg
130da2777aaSmrgcase $host in
131da2777aaSmrg*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
132da2777aaSmrg  AC_CHECK_TOOL(AS, as, false)
133da2777aaSmrg  AC_CHECK_TOOL(DLLTOOL, dlltool, false)
134da2777aaSmrg  AC_CHECK_TOOL(OBJDUMP, objdump, false)
135da2777aaSmrg  ;;
136da2777aaSmrgesac
137da2777aaSmrg
138da2777aaSmrgtest -z "$AS" && AS=as
139da2777aaSmrg_LT_DECL([], [AS],      [1], [Assembler program])dnl
140da2777aaSmrg
141da2777aaSmrgtest -z "$DLLTOOL" && DLLTOOL=dlltool
142da2777aaSmrg_LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
143da2777aaSmrg
144da2777aaSmrgtest -z "$OBJDUMP" && OBJDUMP=objdump
145da2777aaSmrg_LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
146da2777aaSmrg])# win32-dll
147da2777aaSmrg
148da2777aaSmrgAU_DEFUN([AC_LIBTOOL_WIN32_DLL],
149da2777aaSmrg[AC_REQUIRE([AC_CANONICAL_HOST])dnl
150da2777aaSmrg_LT_SET_OPTION([LT_INIT], [win32-dll])
151da2777aaSmrgAC_DIAGNOSE([obsolete],
152da2777aaSmrg[$0: Remove this warning and the call to _LT_SET_OPTION when you
153da2777aaSmrgput the 'win32-dll' option into LT_INIT's first parameter.])
154da2777aaSmrg])
155da2777aaSmrg
156da2777aaSmrgdnl aclocal-1.4 backwards compatibility:
157da2777aaSmrgdnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
158da2777aaSmrg
159da2777aaSmrg
160da2777aaSmrg# _LT_ENABLE_SHARED([DEFAULT])
161da2777aaSmrg# ----------------------------
162da2777aaSmrg# implement the --enable-shared flag, and supports the 'shared' and
163da2777aaSmrg# 'disable-shared' LT_INIT options.
164da2777aaSmrg# DEFAULT is either 'yes' or 'no'.  If omitted, it defaults to 'yes'.
165da2777aaSmrgm4_define([_LT_ENABLE_SHARED],
166da2777aaSmrg[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
167da2777aaSmrgAC_ARG_ENABLE([shared],
168da2777aaSmrg    [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
169da2777aaSmrg	[build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
170da2777aaSmrg    [p=${PACKAGE-default}
171da2777aaSmrg    case $enableval in
172da2777aaSmrg    yes) enable_shared=yes ;;
173da2777aaSmrg    no) enable_shared=no ;;
174da2777aaSmrg    *)
175da2777aaSmrg      enable_shared=no
176da2777aaSmrg      # Look at the argument we got.  We use all the common list separators.
177da2777aaSmrg      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
178da2777aaSmrg      for pkg in $enableval; do
179da2777aaSmrg	IFS=$lt_save_ifs
180da2777aaSmrg	if test "X$pkg" = "X$p"; then
181da2777aaSmrg	  enable_shared=yes
182da2777aaSmrg	fi
183da2777aaSmrg      done
184da2777aaSmrg      IFS=$lt_save_ifs
185da2777aaSmrg      ;;
186da2777aaSmrg    esac],
187da2777aaSmrg    [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
188da2777aaSmrg
189da2777aaSmrg    _LT_DECL([build_libtool_libs], [enable_shared], [0],
190da2777aaSmrg	[Whether or not to build shared libraries])
191da2777aaSmrg])# _LT_ENABLE_SHARED
192da2777aaSmrg
193da2777aaSmrgLT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
194da2777aaSmrgLT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
195da2777aaSmrg
196da2777aaSmrg# Old names:
197da2777aaSmrgAC_DEFUN([AC_ENABLE_SHARED],
198da2777aaSmrg[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
199da2777aaSmrg])
200da2777aaSmrg
201da2777aaSmrgAC_DEFUN([AC_DISABLE_SHARED],
202da2777aaSmrg[_LT_SET_OPTION([LT_INIT], [disable-shared])
203da2777aaSmrg])
204da2777aaSmrg
205da2777aaSmrgAU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
206da2777aaSmrgAU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
207da2777aaSmrg
208da2777aaSmrgdnl aclocal-1.4 backwards compatibility:
209da2777aaSmrgdnl AC_DEFUN([AM_ENABLE_SHARED], [])
210da2777aaSmrgdnl AC_DEFUN([AM_DISABLE_SHARED], [])
211da2777aaSmrg
212da2777aaSmrg
213da2777aaSmrg
214da2777aaSmrg# _LT_ENABLE_STATIC([DEFAULT])
215da2777aaSmrg# ----------------------------
216da2777aaSmrg# implement the --enable-static flag, and support the 'static' and
217da2777aaSmrg# 'disable-static' LT_INIT options.
218da2777aaSmrg# DEFAULT is either 'yes' or 'no'.  If omitted, it defaults to 'yes'.
219da2777aaSmrgm4_define([_LT_ENABLE_STATIC],
220da2777aaSmrg[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
221da2777aaSmrgAC_ARG_ENABLE([static],
222da2777aaSmrg    [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
223da2777aaSmrg	[build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
224da2777aaSmrg    [p=${PACKAGE-default}
225da2777aaSmrg    case $enableval in
226da2777aaSmrg    yes) enable_static=yes ;;
227da2777aaSmrg    no) enable_static=no ;;
228da2777aaSmrg    *)
229da2777aaSmrg     enable_static=no
230da2777aaSmrg      # Look at the argument we got.  We use all the common list separators.
231da2777aaSmrg      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
232da2777aaSmrg      for pkg in $enableval; do
233da2777aaSmrg	IFS=$lt_save_ifs
234da2777aaSmrg	if test "X$pkg" = "X$p"; then
235da2777aaSmrg	  enable_static=yes
236da2777aaSmrg	fi
237da2777aaSmrg      done
238da2777aaSmrg      IFS=$lt_save_ifs
239da2777aaSmrg      ;;
240da2777aaSmrg    esac],
241da2777aaSmrg    [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
242da2777aaSmrg
243da2777aaSmrg    _LT_DECL([build_old_libs], [enable_static], [0],
244da2777aaSmrg	[Whether or not to build static libraries])
245da2777aaSmrg])# _LT_ENABLE_STATIC
246da2777aaSmrg
247da2777aaSmrgLT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
248da2777aaSmrgLT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
249da2777aaSmrg
250da2777aaSmrg# Old names:
251da2777aaSmrgAC_DEFUN([AC_ENABLE_STATIC],
252da2777aaSmrg[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
253da2777aaSmrg])
254da2777aaSmrg
255da2777aaSmrgAC_DEFUN([AC_DISABLE_STATIC],
256da2777aaSmrg[_LT_SET_OPTION([LT_INIT], [disable-static])
257da2777aaSmrg])
258da2777aaSmrg
259da2777aaSmrgAU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
260da2777aaSmrgAU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
261da2777aaSmrg
262da2777aaSmrgdnl aclocal-1.4 backwards compatibility:
263da2777aaSmrgdnl AC_DEFUN([AM_ENABLE_STATIC], [])
264da2777aaSmrgdnl AC_DEFUN([AM_DISABLE_STATIC], [])
265da2777aaSmrg
266da2777aaSmrg
267da2777aaSmrg
268da2777aaSmrg# _LT_ENABLE_FAST_INSTALL([DEFAULT])
269da2777aaSmrg# ----------------------------------
270da2777aaSmrg# implement the --enable-fast-install flag, and support the 'fast-install'
271da2777aaSmrg# and 'disable-fast-install' LT_INIT options.
272da2777aaSmrg# DEFAULT is either 'yes' or 'no'.  If omitted, it defaults to 'yes'.
273da2777aaSmrgm4_define([_LT_ENABLE_FAST_INSTALL],
274da2777aaSmrg[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
275da2777aaSmrgAC_ARG_ENABLE([fast-install],
276da2777aaSmrg    [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
277da2777aaSmrg    [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
278da2777aaSmrg    [p=${PACKAGE-default}
279da2777aaSmrg    case $enableval in
280da2777aaSmrg    yes) enable_fast_install=yes ;;
281da2777aaSmrg    no) enable_fast_install=no ;;
282da2777aaSmrg    *)
283da2777aaSmrg      enable_fast_install=no
284da2777aaSmrg      # Look at the argument we got.  We use all the common list separators.
285da2777aaSmrg      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
286da2777aaSmrg      for pkg in $enableval; do
287da2777aaSmrg	IFS=$lt_save_ifs
288da2777aaSmrg	if test "X$pkg" = "X$p"; then
289da2777aaSmrg	  enable_fast_install=yes
290da2777aaSmrg	fi
291da2777aaSmrg      done
292da2777aaSmrg      IFS=$lt_save_ifs
293da2777aaSmrg      ;;
294da2777aaSmrg    esac],
295da2777aaSmrg    [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
296da2777aaSmrg
297da2777aaSmrg_LT_DECL([fast_install], [enable_fast_install], [0],
298da2777aaSmrg	 [Whether or not to optimize for fast installation])dnl
299da2777aaSmrg])# _LT_ENABLE_FAST_INSTALL
300da2777aaSmrg
301da2777aaSmrgLT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
302da2777aaSmrgLT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
303da2777aaSmrg
304da2777aaSmrg# Old names:
305da2777aaSmrgAU_DEFUN([AC_ENABLE_FAST_INSTALL],
306da2777aaSmrg[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
307da2777aaSmrgAC_DIAGNOSE([obsolete],
308da2777aaSmrg[$0: Remove this warning and the call to _LT_SET_OPTION when you put
309da2777aaSmrgthe 'fast-install' option into LT_INIT's first parameter.])
310da2777aaSmrg])
311da2777aaSmrg
312da2777aaSmrgAU_DEFUN([AC_DISABLE_FAST_INSTALL],
313da2777aaSmrg[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
314da2777aaSmrgAC_DIAGNOSE([obsolete],
315da2777aaSmrg[$0: Remove this warning and the call to _LT_SET_OPTION when you put
316da2777aaSmrgthe 'disable-fast-install' option into LT_INIT's first parameter.])
317da2777aaSmrg])
318da2777aaSmrg
319da2777aaSmrgdnl aclocal-1.4 backwards compatibility:
320da2777aaSmrgdnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
321da2777aaSmrgdnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
322da2777aaSmrg
323da2777aaSmrg
324da2777aaSmrg# _LT_WITH_AIX_SONAME([DEFAULT])
325da2777aaSmrg# ----------------------------------
326da2777aaSmrg# implement the --with-aix-soname flag, and support the `aix-soname=aix'
327da2777aaSmrg# and `aix-soname=both' and `aix-soname=svr4' LT_INIT options. DEFAULT
328da2777aaSmrg# is either `aix', `both' or `svr4'.  If omitted, it defaults to `aix'.
329da2777aaSmrgm4_define([_LT_WITH_AIX_SONAME],
330da2777aaSmrg[m4_define([_LT_WITH_AIX_SONAME_DEFAULT], [m4_if($1, svr4, svr4, m4_if($1, both, both, aix))])dnl
331da2777aaSmrgshared_archive_member_spec=
332da2777aaSmrgcase $host,$enable_shared in
333da2777aaSmrgpower*-*-aix[[5-9]]*,yes)
334da2777aaSmrg  AC_MSG_CHECKING([which variant of shared library versioning to provide])
335da2777aaSmrg  AC_ARG_WITH([aix-soname],
336da2777aaSmrg    [AS_HELP_STRING([--with-aix-soname=aix|svr4|both],
337da2777aaSmrg      [shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])],
338da2777aaSmrg    [case $withval in
339da2777aaSmrg    aix|svr4|both)
340da2777aaSmrg      ;;
341da2777aaSmrg    *)
342da2777aaSmrg      AC_MSG_ERROR([Unknown argument to --with-aix-soname])
343da2777aaSmrg      ;;
344da2777aaSmrg    esac
345da2777aaSmrg    lt_cv_with_aix_soname=$with_aix_soname],
346da2777aaSmrg    [AC_CACHE_VAL([lt_cv_with_aix_soname],
347da2777aaSmrg      [lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT)
348da2777aaSmrg    with_aix_soname=$lt_cv_with_aix_soname])
349da2777aaSmrg  AC_MSG_RESULT([$with_aix_soname])
350da2777aaSmrg  if test aix != "$with_aix_soname"; then
351da2777aaSmrg    # For the AIX way of multilib, we name the shared archive member
352da2777aaSmrg    # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',
353da2777aaSmrg    # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File.
354da2777aaSmrg    # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag,
355da2777aaSmrg    # the AIX toolchain works better with OBJECT_MODE set (default 32).
356da2777aaSmrg    if test 64 = "${OBJECT_MODE-32}"; then
357da2777aaSmrg      shared_archive_member_spec=shr_64
358da2777aaSmrg    else
359da2777aaSmrg      shared_archive_member_spec=shr
360da2777aaSmrg    fi
361da2777aaSmrg  fi
362da2777aaSmrg  ;;
363da2777aaSmrg*)
364da2777aaSmrg  with_aix_soname=aix
365da2777aaSmrg  ;;
366da2777aaSmrgesac
367da2777aaSmrg
368da2777aaSmrg_LT_DECL([], [shared_archive_member_spec], [0],
369da2777aaSmrg    [Shared archive member basename, for filename based shared library versioning on AIX])dnl
370da2777aaSmrg])# _LT_WITH_AIX_SONAME
371da2777aaSmrg
372da2777aaSmrgLT_OPTION_DEFINE([LT_INIT], [aix-soname=aix], [_LT_WITH_AIX_SONAME([aix])])
373da2777aaSmrgLT_OPTION_DEFINE([LT_INIT], [aix-soname=both], [_LT_WITH_AIX_SONAME([both])])
374da2777aaSmrgLT_OPTION_DEFINE([LT_INIT], [aix-soname=svr4], [_LT_WITH_AIX_SONAME([svr4])])
375da2777aaSmrg
376da2777aaSmrg
377da2777aaSmrg# _LT_WITH_PIC([MODE])
378da2777aaSmrg# --------------------
379da2777aaSmrg# implement the --with-pic flag, and support the 'pic-only' and 'no-pic'
380da2777aaSmrg# LT_INIT options.
381da2777aaSmrg# MODE is either 'yes' or 'no'.  If omitted, it defaults to 'both'.
382da2777aaSmrgm4_define([_LT_WITH_PIC],
383da2777aaSmrg[AC_ARG_WITH([pic],
384da2777aaSmrg    [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
385da2777aaSmrg	[try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
386da2777aaSmrg    [lt_p=${PACKAGE-default}
387da2777aaSmrg    case $withval in
388da2777aaSmrg    yes|no) pic_mode=$withval ;;
389da2777aaSmrg    *)
390da2777aaSmrg      pic_mode=default
391da2777aaSmrg      # Look at the argument we got.  We use all the common list separators.
392da2777aaSmrg      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
393da2777aaSmrg      for lt_pkg in $withval; do
394da2777aaSmrg	IFS=$lt_save_ifs
395da2777aaSmrg	if test "X$lt_pkg" = "X$lt_p"; then
396da2777aaSmrg	  pic_mode=yes
397da2777aaSmrg	fi
398da2777aaSmrg      done
399da2777aaSmrg      IFS=$lt_save_ifs
400da2777aaSmrg      ;;
401da2777aaSmrg    esac],
402da2777aaSmrg    [pic_mode=m4_default([$1], [default])])
403da2777aaSmrg
404da2777aaSmrg_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
405da2777aaSmrg])# _LT_WITH_PIC
406da2777aaSmrg
407da2777aaSmrgLT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
408da2777aaSmrgLT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
409da2777aaSmrg
410da2777aaSmrg# Old name:
411da2777aaSmrgAU_DEFUN([AC_LIBTOOL_PICMODE],
412da2777aaSmrg[_LT_SET_OPTION([LT_INIT], [pic-only])
413da2777aaSmrgAC_DIAGNOSE([obsolete],
414da2777aaSmrg[$0: Remove this warning and the call to _LT_SET_OPTION when you
415da2777aaSmrgput the 'pic-only' option into LT_INIT's first parameter.])
416da2777aaSmrg])
417da2777aaSmrg
418da2777aaSmrgdnl aclocal-1.4 backwards compatibility:
419da2777aaSmrgdnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
420da2777aaSmrg
421da2777aaSmrg## ----------------- ##
422da2777aaSmrg## LTDL_INIT Options ##
423da2777aaSmrg## ----------------- ##
424da2777aaSmrg
425da2777aaSmrgm4_define([_LTDL_MODE], [])
426da2777aaSmrgLT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
427da2777aaSmrg		 [m4_define([_LTDL_MODE], [nonrecursive])])
428da2777aaSmrgLT_OPTION_DEFINE([LTDL_INIT], [recursive],
429da2777aaSmrg		 [m4_define([_LTDL_MODE], [recursive])])
430da2777aaSmrgLT_OPTION_DEFINE([LTDL_INIT], [subproject],
431da2777aaSmrg		 [m4_define([_LTDL_MODE], [subproject])])
432da2777aaSmrg
433da2777aaSmrgm4_define([_LTDL_TYPE], [])
434da2777aaSmrgLT_OPTION_DEFINE([LTDL_INIT], [installable],
435da2777aaSmrg		 [m4_define([_LTDL_TYPE], [installable])])
436da2777aaSmrgLT_OPTION_DEFINE([LTDL_INIT], [convenience],
437da2777aaSmrg		 [m4_define([_LTDL_TYPE], [convenience])])
438