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