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