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