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