xref: /freebsd/contrib/ldns/m4/ltoptions.m4 (revision 986ba33c7a3bc8f5ba13c7a9d6512602f6e32c61)
117d15b25SDag-Erling Smørgrav# Helper functions for option handling.                    -*- Autoconf -*-
217d15b25SDag-Erling Smørgrav#
3*986ba33cSDag-Erling Smørgrav#   Copyright (C) 2004-2005, 2007-2009, 2011-2015 Free Software
4*986ba33cSDag-Erling Smørgrav#   Foundation, Inc.
517d15b25SDag-Erling Smørgrav#   Written by Gary V. Vaughan, 2004
617d15b25SDag-Erling Smørgrav#
717d15b25SDag-Erling Smørgrav# This file is free software; the Free Software Foundation gives
817d15b25SDag-Erling Smørgrav# unlimited permission to copy and/or distribute it, with or without
917d15b25SDag-Erling Smørgrav# modifications, as long as this notice is preserved.
1017d15b25SDag-Erling Smørgrav
11*986ba33cSDag-Erling Smørgrav# serial 8 ltoptions.m4
1217d15b25SDag-Erling Smørgrav
1317d15b25SDag-Erling Smørgrav# This is to help aclocal find these macros, as it can't see m4_define.
1417d15b25SDag-Erling SmørgravAC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
1517d15b25SDag-Erling Smørgrav
1617d15b25SDag-Erling Smørgrav
1717d15b25SDag-Erling Smørgrav# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
1817d15b25SDag-Erling Smørgrav# ------------------------------------------
1917d15b25SDag-Erling Smørgravm4_define([_LT_MANGLE_OPTION],
2017d15b25SDag-Erling Smørgrav[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
2117d15b25SDag-Erling Smørgrav
2217d15b25SDag-Erling Smørgrav
2317d15b25SDag-Erling Smørgrav# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
2417d15b25SDag-Erling Smørgrav# ---------------------------------------
2517d15b25SDag-Erling Smørgrav# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
2617d15b25SDag-Erling Smørgrav# matching handler defined, dispatch to it.  Other OPTION-NAMEs are
2717d15b25SDag-Erling Smørgrav# saved as a flag.
2817d15b25SDag-Erling Smørgravm4_define([_LT_SET_OPTION],
2917d15b25SDag-Erling Smørgrav[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
3017d15b25SDag-Erling Smørgravm4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
3117d15b25SDag-Erling Smørgrav        _LT_MANGLE_DEFUN([$1], [$2]),
32*986ba33cSDag-Erling Smørgrav    [m4_warning([Unknown $1 option '$2'])])[]dnl
3317d15b25SDag-Erling Smørgrav])
3417d15b25SDag-Erling Smørgrav
3517d15b25SDag-Erling Smørgrav
3617d15b25SDag-Erling Smørgrav# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
3717d15b25SDag-Erling Smørgrav# ------------------------------------------------------------
3817d15b25SDag-Erling Smørgrav# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
3917d15b25SDag-Erling Smørgravm4_define([_LT_IF_OPTION],
4017d15b25SDag-Erling Smørgrav[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
4117d15b25SDag-Erling Smørgrav
4217d15b25SDag-Erling Smørgrav
4317d15b25SDag-Erling Smørgrav# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
4417d15b25SDag-Erling Smørgrav# -------------------------------------------------------
4517d15b25SDag-Erling Smørgrav# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
4617d15b25SDag-Erling Smørgrav# are set.
4717d15b25SDag-Erling Smørgravm4_define([_LT_UNLESS_OPTIONS],
4817d15b25SDag-Erling Smørgrav[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
4917d15b25SDag-Erling Smørgrav	    [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
5017d15b25SDag-Erling Smørgrav		      [m4_define([$0_found])])])[]dnl
5117d15b25SDag-Erling Smørgravm4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
5217d15b25SDag-Erling Smørgrav])[]dnl
5317d15b25SDag-Erling Smørgrav])
5417d15b25SDag-Erling Smørgrav
5517d15b25SDag-Erling Smørgrav
5617d15b25SDag-Erling Smørgrav# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
5717d15b25SDag-Erling Smørgrav# ----------------------------------------
5817d15b25SDag-Erling Smørgrav# OPTION-LIST is a space-separated list of Libtool options associated
5917d15b25SDag-Erling Smørgrav# with MACRO-NAME.  If any OPTION has a matching handler declared with
6017d15b25SDag-Erling Smørgrav# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
6117d15b25SDag-Erling Smørgrav# the unknown option and exit.
6217d15b25SDag-Erling Smørgravm4_defun([_LT_SET_OPTIONS],
6317d15b25SDag-Erling Smørgrav[# Set options
6417d15b25SDag-Erling Smørgravm4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
6517d15b25SDag-Erling Smørgrav    [_LT_SET_OPTION([$1], _LT_Option)])
6617d15b25SDag-Erling Smørgrav
6717d15b25SDag-Erling Smørgravm4_if([$1],[LT_INIT],[
6817d15b25SDag-Erling Smørgrav  dnl
6917d15b25SDag-Erling Smørgrav  dnl Simply set some default values (i.e off) if boolean options were not
7017d15b25SDag-Erling Smørgrav  dnl specified:
7117d15b25SDag-Erling Smørgrav  _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
7217d15b25SDag-Erling Smørgrav  ])
7317d15b25SDag-Erling Smørgrav  _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
7417d15b25SDag-Erling Smørgrav  ])
7517d15b25SDag-Erling Smørgrav  dnl
7617d15b25SDag-Erling Smørgrav  dnl If no reference was made to various pairs of opposing options, then
7717d15b25SDag-Erling Smørgrav  dnl we run the default mode handler for the pair.  For example, if neither
78*986ba33cSDag-Erling Smørgrav  dnl 'shared' nor 'disable-shared' was passed, we enable building of shared
7917d15b25SDag-Erling Smørgrav  dnl archives by default:
8017d15b25SDag-Erling Smørgrav  _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
8117d15b25SDag-Erling Smørgrav  _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
8217d15b25SDag-Erling Smørgrav  _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
8317d15b25SDag-Erling Smørgrav  _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
8417d15b25SDag-Erling Smørgrav		   [_LT_ENABLE_FAST_INSTALL])
85*986ba33cSDag-Erling Smørgrav  _LT_UNLESS_OPTIONS([LT_INIT], [aix-soname=aix aix-soname=both aix-soname=svr4],
86*986ba33cSDag-Erling Smørgrav		   [_LT_WITH_AIX_SONAME([aix])])
8717d15b25SDag-Erling Smørgrav  ])
8817d15b25SDag-Erling Smørgrav])# _LT_SET_OPTIONS
8917d15b25SDag-Erling Smørgrav
9017d15b25SDag-Erling Smørgrav
9117d15b25SDag-Erling Smørgrav## --------------------------------- ##
9217d15b25SDag-Erling Smørgrav## Macros to handle LT_INIT options. ##
9317d15b25SDag-Erling Smørgrav## --------------------------------- ##
9417d15b25SDag-Erling Smørgrav
9517d15b25SDag-Erling Smørgrav# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
9617d15b25SDag-Erling Smørgrav# -----------------------------------------
9717d15b25SDag-Erling Smørgravm4_define([_LT_MANGLE_DEFUN],
9817d15b25SDag-Erling Smørgrav[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
9917d15b25SDag-Erling Smørgrav
10017d15b25SDag-Erling Smørgrav
10117d15b25SDag-Erling Smørgrav# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
10217d15b25SDag-Erling Smørgrav# -----------------------------------------------
10317d15b25SDag-Erling Smørgravm4_define([LT_OPTION_DEFINE],
10417d15b25SDag-Erling Smørgrav[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
10517d15b25SDag-Erling Smørgrav])# LT_OPTION_DEFINE
10617d15b25SDag-Erling Smørgrav
10717d15b25SDag-Erling Smørgrav
10817d15b25SDag-Erling Smørgrav# dlopen
10917d15b25SDag-Erling Smørgrav# ------
11017d15b25SDag-Erling SmørgravLT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
11117d15b25SDag-Erling Smørgrav])
11217d15b25SDag-Erling Smørgrav
11317d15b25SDag-Erling SmørgravAU_DEFUN([AC_LIBTOOL_DLOPEN],
11417d15b25SDag-Erling Smørgrav[_LT_SET_OPTION([LT_INIT], [dlopen])
11517d15b25SDag-Erling SmørgravAC_DIAGNOSE([obsolete],
11617d15b25SDag-Erling Smørgrav[$0: Remove this warning and the call to _LT_SET_OPTION when you
117*986ba33cSDag-Erling Smørgravput the 'dlopen' option into LT_INIT's first parameter.])
11817d15b25SDag-Erling Smørgrav])
11917d15b25SDag-Erling Smørgrav
12017d15b25SDag-Erling Smørgravdnl aclocal-1.4 backwards compatibility:
12117d15b25SDag-Erling Smørgravdnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
12217d15b25SDag-Erling Smørgrav
12317d15b25SDag-Erling Smørgrav
12417d15b25SDag-Erling Smørgrav# win32-dll
12517d15b25SDag-Erling Smørgrav# ---------
12617d15b25SDag-Erling Smørgrav# Declare package support for building win32 dll's.
12717d15b25SDag-Erling SmørgravLT_OPTION_DEFINE([LT_INIT], [win32-dll],
12817d15b25SDag-Erling Smørgrav[enable_win32_dll=yes
12917d15b25SDag-Erling Smørgrav
13017d15b25SDag-Erling Smørgravcase $host in
13117d15b25SDag-Erling Smørgrav*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
13217d15b25SDag-Erling Smørgrav  AC_CHECK_TOOL(AS, as, false)
13317d15b25SDag-Erling Smørgrav  AC_CHECK_TOOL(DLLTOOL, dlltool, false)
13417d15b25SDag-Erling Smørgrav  AC_CHECK_TOOL(OBJDUMP, objdump, false)
13517d15b25SDag-Erling Smørgrav  ;;
13617d15b25SDag-Erling Smørgravesac
13717d15b25SDag-Erling Smørgrav
13817d15b25SDag-Erling Smørgravtest -z "$AS" && AS=as
13917d15b25SDag-Erling Smørgrav_LT_DECL([], [AS],      [1], [Assembler program])dnl
14017d15b25SDag-Erling Smørgrav
14117d15b25SDag-Erling Smørgravtest -z "$DLLTOOL" && DLLTOOL=dlltool
14217d15b25SDag-Erling Smørgrav_LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
14317d15b25SDag-Erling Smørgrav
14417d15b25SDag-Erling Smørgravtest -z "$OBJDUMP" && OBJDUMP=objdump
14517d15b25SDag-Erling Smørgrav_LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
14617d15b25SDag-Erling Smørgrav])# win32-dll
14717d15b25SDag-Erling Smørgrav
14817d15b25SDag-Erling SmørgravAU_DEFUN([AC_LIBTOOL_WIN32_DLL],
14917d15b25SDag-Erling Smørgrav[AC_REQUIRE([AC_CANONICAL_HOST])dnl
15017d15b25SDag-Erling Smørgrav_LT_SET_OPTION([LT_INIT], [win32-dll])
15117d15b25SDag-Erling SmørgravAC_DIAGNOSE([obsolete],
15217d15b25SDag-Erling Smørgrav[$0: Remove this warning and the call to _LT_SET_OPTION when you
153*986ba33cSDag-Erling Smørgravput the 'win32-dll' option into LT_INIT's first parameter.])
15417d15b25SDag-Erling Smørgrav])
15517d15b25SDag-Erling Smørgrav
15617d15b25SDag-Erling Smørgravdnl aclocal-1.4 backwards compatibility:
15717d15b25SDag-Erling Smørgravdnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
15817d15b25SDag-Erling Smørgrav
15917d15b25SDag-Erling Smørgrav
16017d15b25SDag-Erling Smørgrav# _LT_ENABLE_SHARED([DEFAULT])
16117d15b25SDag-Erling Smørgrav# ----------------------------
162*986ba33cSDag-Erling Smørgrav# implement the --enable-shared flag, and supports the 'shared' and
163*986ba33cSDag-Erling Smørgrav# 'disable-shared' LT_INIT options.
164*986ba33cSDag-Erling Smørgrav# DEFAULT is either 'yes' or 'no'.  If omitted, it defaults to 'yes'.
16517d15b25SDag-Erling Smørgravm4_define([_LT_ENABLE_SHARED],
16617d15b25SDag-Erling Smørgrav[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
16717d15b25SDag-Erling SmørgravAC_ARG_ENABLE([shared],
16817d15b25SDag-Erling Smørgrav    [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
16917d15b25SDag-Erling Smørgrav	[build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
17017d15b25SDag-Erling Smørgrav    [p=${PACKAGE-default}
17117d15b25SDag-Erling Smørgrav    case $enableval in
17217d15b25SDag-Erling Smørgrav    yes) enable_shared=yes ;;
17317d15b25SDag-Erling Smørgrav    no) enable_shared=no ;;
17417d15b25SDag-Erling Smørgrav    *)
17517d15b25SDag-Erling Smørgrav      enable_shared=no
17617d15b25SDag-Erling Smørgrav      # Look at the argument we got.  We use all the common list separators.
177*986ba33cSDag-Erling Smørgrav      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
17817d15b25SDag-Erling Smørgrav      for pkg in $enableval; do
179*986ba33cSDag-Erling Smørgrav	IFS=$lt_save_ifs
18017d15b25SDag-Erling Smørgrav	if test "X$pkg" = "X$p"; then
18117d15b25SDag-Erling Smørgrav	  enable_shared=yes
18217d15b25SDag-Erling Smørgrav	fi
18317d15b25SDag-Erling Smørgrav      done
184*986ba33cSDag-Erling Smørgrav      IFS=$lt_save_ifs
18517d15b25SDag-Erling Smørgrav      ;;
18617d15b25SDag-Erling Smørgrav    esac],
18717d15b25SDag-Erling Smørgrav    [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
18817d15b25SDag-Erling Smørgrav
18917d15b25SDag-Erling Smørgrav    _LT_DECL([build_libtool_libs], [enable_shared], [0],
19017d15b25SDag-Erling Smørgrav	[Whether or not to build shared libraries])
19117d15b25SDag-Erling Smørgrav])# _LT_ENABLE_SHARED
19217d15b25SDag-Erling Smørgrav
19317d15b25SDag-Erling SmørgravLT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
19417d15b25SDag-Erling SmørgravLT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
19517d15b25SDag-Erling Smørgrav
19617d15b25SDag-Erling Smørgrav# Old names:
19717d15b25SDag-Erling SmørgravAC_DEFUN([AC_ENABLE_SHARED],
19817d15b25SDag-Erling Smørgrav[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
19917d15b25SDag-Erling Smørgrav])
20017d15b25SDag-Erling Smørgrav
20117d15b25SDag-Erling SmørgravAC_DEFUN([AC_DISABLE_SHARED],
20217d15b25SDag-Erling Smørgrav[_LT_SET_OPTION([LT_INIT], [disable-shared])
20317d15b25SDag-Erling Smørgrav])
20417d15b25SDag-Erling Smørgrav
20517d15b25SDag-Erling SmørgravAU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
20617d15b25SDag-Erling SmørgravAU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
20717d15b25SDag-Erling Smørgrav
20817d15b25SDag-Erling Smørgravdnl aclocal-1.4 backwards compatibility:
20917d15b25SDag-Erling Smørgravdnl AC_DEFUN([AM_ENABLE_SHARED], [])
21017d15b25SDag-Erling Smørgravdnl AC_DEFUN([AM_DISABLE_SHARED], [])
21117d15b25SDag-Erling Smørgrav
21217d15b25SDag-Erling Smørgrav
21317d15b25SDag-Erling Smørgrav
21417d15b25SDag-Erling Smørgrav# _LT_ENABLE_STATIC([DEFAULT])
21517d15b25SDag-Erling Smørgrav# ----------------------------
216*986ba33cSDag-Erling Smørgrav# implement the --enable-static flag, and support the 'static' and
217*986ba33cSDag-Erling Smørgrav# 'disable-static' LT_INIT options.
218*986ba33cSDag-Erling Smørgrav# DEFAULT is either 'yes' or 'no'.  If omitted, it defaults to 'yes'.
21917d15b25SDag-Erling Smørgravm4_define([_LT_ENABLE_STATIC],
22017d15b25SDag-Erling Smørgrav[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
22117d15b25SDag-Erling SmørgravAC_ARG_ENABLE([static],
22217d15b25SDag-Erling Smørgrav    [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
22317d15b25SDag-Erling Smørgrav	[build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
22417d15b25SDag-Erling Smørgrav    [p=${PACKAGE-default}
22517d15b25SDag-Erling Smørgrav    case $enableval in
22617d15b25SDag-Erling Smørgrav    yes) enable_static=yes ;;
22717d15b25SDag-Erling Smørgrav    no) enable_static=no ;;
22817d15b25SDag-Erling Smørgrav    *)
22917d15b25SDag-Erling Smørgrav     enable_static=no
23017d15b25SDag-Erling Smørgrav      # Look at the argument we got.  We use all the common list separators.
231*986ba33cSDag-Erling Smørgrav      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
23217d15b25SDag-Erling Smørgrav      for pkg in $enableval; do
233*986ba33cSDag-Erling Smørgrav	IFS=$lt_save_ifs
23417d15b25SDag-Erling Smørgrav	if test "X$pkg" = "X$p"; then
23517d15b25SDag-Erling Smørgrav	  enable_static=yes
23617d15b25SDag-Erling Smørgrav	fi
23717d15b25SDag-Erling Smørgrav      done
238*986ba33cSDag-Erling Smørgrav      IFS=$lt_save_ifs
23917d15b25SDag-Erling Smørgrav      ;;
24017d15b25SDag-Erling Smørgrav    esac],
24117d15b25SDag-Erling Smørgrav    [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
24217d15b25SDag-Erling Smørgrav
24317d15b25SDag-Erling Smørgrav    _LT_DECL([build_old_libs], [enable_static], [0],
24417d15b25SDag-Erling Smørgrav	[Whether or not to build static libraries])
24517d15b25SDag-Erling Smørgrav])# _LT_ENABLE_STATIC
24617d15b25SDag-Erling Smørgrav
24717d15b25SDag-Erling SmørgravLT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
24817d15b25SDag-Erling SmørgravLT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
24917d15b25SDag-Erling Smørgrav
25017d15b25SDag-Erling Smørgrav# Old names:
25117d15b25SDag-Erling SmørgravAC_DEFUN([AC_ENABLE_STATIC],
25217d15b25SDag-Erling Smørgrav[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
25317d15b25SDag-Erling Smørgrav])
25417d15b25SDag-Erling Smørgrav
25517d15b25SDag-Erling SmørgravAC_DEFUN([AC_DISABLE_STATIC],
25617d15b25SDag-Erling Smørgrav[_LT_SET_OPTION([LT_INIT], [disable-static])
25717d15b25SDag-Erling Smørgrav])
25817d15b25SDag-Erling Smørgrav
25917d15b25SDag-Erling SmørgravAU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
26017d15b25SDag-Erling SmørgravAU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
26117d15b25SDag-Erling Smørgrav
26217d15b25SDag-Erling Smørgravdnl aclocal-1.4 backwards compatibility:
26317d15b25SDag-Erling Smørgravdnl AC_DEFUN([AM_ENABLE_STATIC], [])
26417d15b25SDag-Erling Smørgravdnl AC_DEFUN([AM_DISABLE_STATIC], [])
26517d15b25SDag-Erling Smørgrav
26617d15b25SDag-Erling Smørgrav
26717d15b25SDag-Erling Smørgrav
26817d15b25SDag-Erling Smørgrav# _LT_ENABLE_FAST_INSTALL([DEFAULT])
26917d15b25SDag-Erling Smørgrav# ----------------------------------
270*986ba33cSDag-Erling Smørgrav# implement the --enable-fast-install flag, and support the 'fast-install'
271*986ba33cSDag-Erling Smørgrav# and 'disable-fast-install' LT_INIT options.
272*986ba33cSDag-Erling Smørgrav# DEFAULT is either 'yes' or 'no'.  If omitted, it defaults to 'yes'.
27317d15b25SDag-Erling Smørgravm4_define([_LT_ENABLE_FAST_INSTALL],
27417d15b25SDag-Erling Smørgrav[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
27517d15b25SDag-Erling SmørgravAC_ARG_ENABLE([fast-install],
27617d15b25SDag-Erling Smørgrav    [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
27717d15b25SDag-Erling Smørgrav    [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
27817d15b25SDag-Erling Smørgrav    [p=${PACKAGE-default}
27917d15b25SDag-Erling Smørgrav    case $enableval in
28017d15b25SDag-Erling Smørgrav    yes) enable_fast_install=yes ;;
28117d15b25SDag-Erling Smørgrav    no) enable_fast_install=no ;;
28217d15b25SDag-Erling Smørgrav    *)
28317d15b25SDag-Erling Smørgrav      enable_fast_install=no
28417d15b25SDag-Erling Smørgrav      # Look at the argument we got.  We use all the common list separators.
285*986ba33cSDag-Erling Smørgrav      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
28617d15b25SDag-Erling Smørgrav      for pkg in $enableval; do
287*986ba33cSDag-Erling Smørgrav	IFS=$lt_save_ifs
28817d15b25SDag-Erling Smørgrav	if test "X$pkg" = "X$p"; then
28917d15b25SDag-Erling Smørgrav	  enable_fast_install=yes
29017d15b25SDag-Erling Smørgrav	fi
29117d15b25SDag-Erling Smørgrav      done
292*986ba33cSDag-Erling Smørgrav      IFS=$lt_save_ifs
29317d15b25SDag-Erling Smørgrav      ;;
29417d15b25SDag-Erling Smørgrav    esac],
29517d15b25SDag-Erling Smørgrav    [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
29617d15b25SDag-Erling Smørgrav
29717d15b25SDag-Erling Smørgrav_LT_DECL([fast_install], [enable_fast_install], [0],
29817d15b25SDag-Erling Smørgrav	 [Whether or not to optimize for fast installation])dnl
29917d15b25SDag-Erling Smørgrav])# _LT_ENABLE_FAST_INSTALL
30017d15b25SDag-Erling Smørgrav
30117d15b25SDag-Erling SmørgravLT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
30217d15b25SDag-Erling SmørgravLT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
30317d15b25SDag-Erling Smørgrav
30417d15b25SDag-Erling Smørgrav# Old names:
30517d15b25SDag-Erling SmørgravAU_DEFUN([AC_ENABLE_FAST_INSTALL],
30617d15b25SDag-Erling Smørgrav[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
30717d15b25SDag-Erling SmørgravAC_DIAGNOSE([obsolete],
30817d15b25SDag-Erling Smørgrav[$0: Remove this warning and the call to _LT_SET_OPTION when you put
309*986ba33cSDag-Erling Smørgravthe 'fast-install' option into LT_INIT's first parameter.])
31017d15b25SDag-Erling Smørgrav])
31117d15b25SDag-Erling Smørgrav
31217d15b25SDag-Erling SmørgravAU_DEFUN([AC_DISABLE_FAST_INSTALL],
31317d15b25SDag-Erling Smørgrav[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
31417d15b25SDag-Erling SmørgravAC_DIAGNOSE([obsolete],
31517d15b25SDag-Erling Smørgrav[$0: Remove this warning and the call to _LT_SET_OPTION when you put
316*986ba33cSDag-Erling Smørgravthe 'disable-fast-install' option into LT_INIT's first parameter.])
31717d15b25SDag-Erling Smørgrav])
31817d15b25SDag-Erling Smørgrav
31917d15b25SDag-Erling Smørgravdnl aclocal-1.4 backwards compatibility:
32017d15b25SDag-Erling Smørgravdnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
32117d15b25SDag-Erling Smørgravdnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
32217d15b25SDag-Erling Smørgrav
32317d15b25SDag-Erling Smørgrav
324*986ba33cSDag-Erling Smørgrav# _LT_WITH_AIX_SONAME([DEFAULT])
325*986ba33cSDag-Erling Smørgrav# ----------------------------------
326*986ba33cSDag-Erling Smørgrav# implement the --with-aix-soname flag, and support the `aix-soname=aix'
327*986ba33cSDag-Erling Smørgrav# and `aix-soname=both' and `aix-soname=svr4' LT_INIT options. DEFAULT
328*986ba33cSDag-Erling Smørgrav# is either `aix', `both' or `svr4'.  If omitted, it defaults to `aix'.
329*986ba33cSDag-Erling Smørgravm4_define([_LT_WITH_AIX_SONAME],
330*986ba33cSDag-Erling Smørgrav[m4_define([_LT_WITH_AIX_SONAME_DEFAULT], [m4_if($1, svr4, svr4, m4_if($1, both, both, aix))])dnl
331*986ba33cSDag-Erling Smørgravshared_archive_member_spec=
332*986ba33cSDag-Erling Smørgravcase $host,$enable_shared in
333*986ba33cSDag-Erling Smørgravpower*-*-aix[[5-9]]*,yes)
334*986ba33cSDag-Erling Smørgrav  AC_MSG_CHECKING([which variant of shared library versioning to provide])
335*986ba33cSDag-Erling Smørgrav  AC_ARG_WITH([aix-soname],
336*986ba33cSDag-Erling Smørgrav    [AS_HELP_STRING([--with-aix-soname=aix|svr4|both],
337*986ba33cSDag-Erling Smørgrav      [shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])],
338*986ba33cSDag-Erling Smørgrav    [case $withval in
339*986ba33cSDag-Erling Smørgrav    aix|svr4|both)
340*986ba33cSDag-Erling Smørgrav      ;;
341*986ba33cSDag-Erling Smørgrav    *)
342*986ba33cSDag-Erling Smørgrav      AC_MSG_ERROR([Unknown argument to --with-aix-soname])
343*986ba33cSDag-Erling Smørgrav      ;;
344*986ba33cSDag-Erling Smørgrav    esac
345*986ba33cSDag-Erling Smørgrav    lt_cv_with_aix_soname=$with_aix_soname],
346*986ba33cSDag-Erling Smørgrav    [AC_CACHE_VAL([lt_cv_with_aix_soname],
347*986ba33cSDag-Erling Smørgrav      [lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT)
348*986ba33cSDag-Erling Smørgrav    with_aix_soname=$lt_cv_with_aix_soname])
349*986ba33cSDag-Erling Smørgrav  AC_MSG_RESULT([$with_aix_soname])
350*986ba33cSDag-Erling Smørgrav  if test aix != "$with_aix_soname"; then
351*986ba33cSDag-Erling Smørgrav    # For the AIX way of multilib, we name the shared archive member
352*986ba33cSDag-Erling Smørgrav    # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',
353*986ba33cSDag-Erling Smørgrav    # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File.
354*986ba33cSDag-Erling Smørgrav    # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag,
355*986ba33cSDag-Erling Smørgrav    # the AIX toolchain works better with OBJECT_MODE set (default 32).
356*986ba33cSDag-Erling Smørgrav    if test 64 = "${OBJECT_MODE-32}"; then
357*986ba33cSDag-Erling Smørgrav      shared_archive_member_spec=shr_64
358*986ba33cSDag-Erling Smørgrav    else
359*986ba33cSDag-Erling Smørgrav      shared_archive_member_spec=shr
360*986ba33cSDag-Erling Smørgrav    fi
361*986ba33cSDag-Erling Smørgrav  fi
362*986ba33cSDag-Erling Smørgrav  ;;
363*986ba33cSDag-Erling Smørgrav*)
364*986ba33cSDag-Erling Smørgrav  with_aix_soname=aix
365*986ba33cSDag-Erling Smørgrav  ;;
366*986ba33cSDag-Erling Smørgravesac
367*986ba33cSDag-Erling Smørgrav
368*986ba33cSDag-Erling Smørgrav_LT_DECL([], [shared_archive_member_spec], [0],
369*986ba33cSDag-Erling Smørgrav    [Shared archive member basename, for filename based shared library versioning on AIX])dnl
370*986ba33cSDag-Erling Smørgrav])# _LT_WITH_AIX_SONAME
371*986ba33cSDag-Erling Smørgrav
372*986ba33cSDag-Erling SmørgravLT_OPTION_DEFINE([LT_INIT], [aix-soname=aix], [_LT_WITH_AIX_SONAME([aix])])
373*986ba33cSDag-Erling SmørgravLT_OPTION_DEFINE([LT_INIT], [aix-soname=both], [_LT_WITH_AIX_SONAME([both])])
374*986ba33cSDag-Erling SmørgravLT_OPTION_DEFINE([LT_INIT], [aix-soname=svr4], [_LT_WITH_AIX_SONAME([svr4])])
375*986ba33cSDag-Erling Smørgrav
376*986ba33cSDag-Erling Smørgrav
37717d15b25SDag-Erling Smørgrav# _LT_WITH_PIC([MODE])
37817d15b25SDag-Erling Smørgrav# --------------------
379*986ba33cSDag-Erling Smørgrav# implement the --with-pic flag, and support the 'pic-only' and 'no-pic'
38017d15b25SDag-Erling Smørgrav# LT_INIT options.
381*986ba33cSDag-Erling Smørgrav# MODE is either 'yes' or 'no'.  If omitted, it defaults to 'both'.
38217d15b25SDag-Erling Smørgravm4_define([_LT_WITH_PIC],
38317d15b25SDag-Erling Smørgrav[AC_ARG_WITH([pic],
38417d15b25SDag-Erling Smørgrav    [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
38517d15b25SDag-Erling Smørgrav	[try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
38617d15b25SDag-Erling Smørgrav    [lt_p=${PACKAGE-default}
38717d15b25SDag-Erling Smørgrav    case $withval in
38817d15b25SDag-Erling Smørgrav    yes|no) pic_mode=$withval ;;
38917d15b25SDag-Erling Smørgrav    *)
39017d15b25SDag-Erling Smørgrav      pic_mode=default
39117d15b25SDag-Erling Smørgrav      # Look at the argument we got.  We use all the common list separators.
392*986ba33cSDag-Erling Smørgrav      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
39317d15b25SDag-Erling Smørgrav      for lt_pkg in $withval; do
394*986ba33cSDag-Erling Smørgrav	IFS=$lt_save_ifs
39517d15b25SDag-Erling Smørgrav	if test "X$lt_pkg" = "X$lt_p"; then
39617d15b25SDag-Erling Smørgrav	  pic_mode=yes
39717d15b25SDag-Erling Smørgrav	fi
39817d15b25SDag-Erling Smørgrav      done
399*986ba33cSDag-Erling Smørgrav      IFS=$lt_save_ifs
40017d15b25SDag-Erling Smørgrav      ;;
40117d15b25SDag-Erling Smørgrav    esac],
402*986ba33cSDag-Erling Smørgrav    [pic_mode=m4_default([$1], [default])])
40317d15b25SDag-Erling Smørgrav
40417d15b25SDag-Erling Smørgrav_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
40517d15b25SDag-Erling Smørgrav])# _LT_WITH_PIC
40617d15b25SDag-Erling Smørgrav
40717d15b25SDag-Erling SmørgravLT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
40817d15b25SDag-Erling SmørgravLT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
40917d15b25SDag-Erling Smørgrav
41017d15b25SDag-Erling Smørgrav# Old name:
41117d15b25SDag-Erling SmørgravAU_DEFUN([AC_LIBTOOL_PICMODE],
41217d15b25SDag-Erling Smørgrav[_LT_SET_OPTION([LT_INIT], [pic-only])
41317d15b25SDag-Erling SmørgravAC_DIAGNOSE([obsolete],
41417d15b25SDag-Erling Smørgrav[$0: Remove this warning and the call to _LT_SET_OPTION when you
415*986ba33cSDag-Erling Smørgravput the 'pic-only' option into LT_INIT's first parameter.])
41617d15b25SDag-Erling Smørgrav])
41717d15b25SDag-Erling Smørgrav
41817d15b25SDag-Erling Smørgravdnl aclocal-1.4 backwards compatibility:
41917d15b25SDag-Erling Smørgravdnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
42017d15b25SDag-Erling Smørgrav
42117d15b25SDag-Erling Smørgrav## ----------------- ##
42217d15b25SDag-Erling Smørgrav## LTDL_INIT Options ##
42317d15b25SDag-Erling Smørgrav## ----------------- ##
42417d15b25SDag-Erling Smørgrav
42517d15b25SDag-Erling Smørgravm4_define([_LTDL_MODE], [])
42617d15b25SDag-Erling SmørgravLT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
42717d15b25SDag-Erling Smørgrav		 [m4_define([_LTDL_MODE], [nonrecursive])])
42817d15b25SDag-Erling SmørgravLT_OPTION_DEFINE([LTDL_INIT], [recursive],
42917d15b25SDag-Erling Smørgrav		 [m4_define([_LTDL_MODE], [recursive])])
43017d15b25SDag-Erling SmørgravLT_OPTION_DEFINE([LTDL_INIT], [subproject],
43117d15b25SDag-Erling Smørgrav		 [m4_define([_LTDL_MODE], [subproject])])
43217d15b25SDag-Erling Smørgrav
43317d15b25SDag-Erling Smørgravm4_define([_LTDL_TYPE], [])
43417d15b25SDag-Erling SmørgravLT_OPTION_DEFINE([LTDL_INIT], [installable],
43517d15b25SDag-Erling Smørgrav		 [m4_define([_LTDL_TYPE], [installable])])
43617d15b25SDag-Erling SmørgravLT_OPTION_DEFINE([LTDL_INIT], [convenience],
43717d15b25SDag-Erling Smørgrav		 [m4_define([_LTDL_TYPE], [convenience])])
438