Annotation of embedaddon/libiconv/libcharset/m4/ltoptions.m4, revision 1.1.1.2
1.1 misho 1: # Helper functions for option handling. -*- Autoconf -*-
2: #
1.1.1.2 ! misho 3: # Copyright (C) 2004, 2005, 2007, 2008, 2009 Free Software Foundation,
! 4: # Inc.
1.1 misho 5: # Written by Gary V. Vaughan, 2004
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:
1.1.1.2 ! misho 11: # serial 7 ltoptions.m4
1.1 misho 12:
13: # This is to help aclocal find these macros, as it can't see m4_define.
14: AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
15:
16:
17: # _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
18: # ------------------------------------------
19: m4_define([_LT_MANGLE_OPTION],
20: [[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
21:
22:
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.
28: m4_define([_LT_SET_OPTION],
29: [m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
30: m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
31: _LT_MANGLE_DEFUN([$1], [$2]),
32: [m4_warning([Unknown $1 option `$2'])])[]dnl
33: ])
34:
35:
36: # _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
37: # ------------------------------------------------------------
38: # Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
39: m4_define([_LT_IF_OPTION],
40: [m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
41:
42:
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.
47: m4_define([_LT_UNLESS_OPTIONS],
48: [m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
49: [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
50: [m4_define([$0_found])])])[]dnl
51: m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
52: ])[]dnl
53: ])
54:
55:
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.
62: m4_defun([_LT_SET_OPTIONS],
63: [# Set options
64: m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
65: [_LT_SET_OPTION([$1], _LT_Option)])
66:
67: m4_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: ])
86: ])# _LT_SET_OPTIONS
87:
88:
89: ## --------------------------------- ##
90: ## Macros to handle LT_INIT options. ##
91: ## --------------------------------- ##
92:
93: # _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
94: # -----------------------------------------
95: m4_define([_LT_MANGLE_DEFUN],
96: [[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
97:
98:
99: # LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
100: # -----------------------------------------------
101: m4_define([LT_OPTION_DEFINE],
102: [m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
103: ])# LT_OPTION_DEFINE
104:
105:
106: # dlopen
107: # ------
108: LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
109: ])
110:
111: AU_DEFUN([AC_LIBTOOL_DLOPEN],
112: [_LT_SET_OPTION([LT_INIT], [dlopen])
113: AC_DIAGNOSE([obsolete],
114: [$0: Remove this warning and the call to _LT_SET_OPTION when you
115: put the `dlopen' option into LT_INIT's first parameter.])
116: ])
117:
118: dnl aclocal-1.4 backwards compatibility:
119: dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
120:
121:
122: # win32-dll
123: # ---------
124: # Declare package support for building win32 dll's.
125: LT_OPTION_DEFINE([LT_INIT], [win32-dll],
126: [enable_win32_dll=yes
127:
128: case $host in
1.1.1.2 ! misho 129: *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
1.1 misho 130: AC_CHECK_TOOL(AS, as, false)
131: AC_CHECK_TOOL(DLLTOOL, dlltool, false)
132: AC_CHECK_TOOL(OBJDUMP, objdump, false)
133: ;;
134: esac
135:
136: test -z "$AS" && AS=as
1.1.1.2 ! misho 137: _LT_DECL([], [AS], [1], [Assembler program])dnl
1.1 misho 138:
139: test -z "$DLLTOOL" && DLLTOOL=dlltool
1.1.1.2 ! misho 140: _LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
1.1 misho 141:
142: test -z "$OBJDUMP" && OBJDUMP=objdump
1.1.1.2 ! misho 143: _LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
1.1 misho 144: ])# win32-dll
145:
146: AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
147: [AC_REQUIRE([AC_CANONICAL_HOST])dnl
148: _LT_SET_OPTION([LT_INIT], [win32-dll])
149: AC_DIAGNOSE([obsolete],
150: [$0: Remove this warning and the call to _LT_SET_OPTION when you
151: put the `win32-dll' option into LT_INIT's first parameter.])
152: ])
153:
154: dnl aclocal-1.4 backwards compatibility:
155: dnl 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'.
163: m4_define([_LT_ENABLE_SHARED],
164: [m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
165: AC_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:
191: LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
192: LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
193:
194: # Old names:
195: AC_DEFUN([AC_ENABLE_SHARED],
196: [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
197: ])
198:
199: AC_DEFUN([AC_DISABLE_SHARED],
200: [_LT_SET_OPTION([LT_INIT], [disable-shared])
201: ])
202:
203: AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
204: AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
205:
206: dnl aclocal-1.4 backwards compatibility:
207: dnl AC_DEFUN([AM_ENABLE_SHARED], [])
208: dnl 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'.
217: m4_define([_LT_ENABLE_STATIC],
218: [m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
219: AC_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:
245: LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
246: LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
247:
248: # Old names:
249: AC_DEFUN([AC_ENABLE_STATIC],
250: [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
251: ])
252:
253: AC_DEFUN([AC_DISABLE_STATIC],
254: [_LT_SET_OPTION([LT_INIT], [disable-static])
255: ])
256:
257: AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
258: AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
259:
260: dnl aclocal-1.4 backwards compatibility:
261: dnl AC_DEFUN([AM_ENABLE_STATIC], [])
262: dnl 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'.
271: m4_define([_LT_ENABLE_FAST_INSTALL],
272: [m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
273: AC_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:
299: LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
300: LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
301:
302: # Old names:
303: AU_DEFUN([AC_ENABLE_FAST_INSTALL],
304: [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
305: AC_DIAGNOSE([obsolete],
306: [$0: Remove this warning and the call to _LT_SET_OPTION when you put
307: the `fast-install' option into LT_INIT's first parameter.])
308: ])
309:
310: AU_DEFUN([AC_DISABLE_FAST_INSTALL],
311: [_LT_SET_OPTION([LT_INIT], [disable-fast-install])
312: AC_DIAGNOSE([obsolete],
313: [$0: Remove this warning and the call to _LT_SET_OPTION when you put
314: the `disable-fast-install' option into LT_INIT's first parameter.])
315: ])
316:
317: dnl aclocal-1.4 backwards compatibility:
318: dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
319: dnl 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'.
327: m4_define([_LT_WITH_PIC],
328: [AC_ARG_WITH([pic],
329: [AS_HELP_STRING([--with-pic],
330: [try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
331: [pic_mode="$withval"],
332: [pic_mode=default])
333:
334: test -z "$pic_mode" && pic_mode=m4_default([$1], [default])
335:
336: _LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
337: ])# _LT_WITH_PIC
338:
339: LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
340: LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
341:
342: # Old name:
343: AU_DEFUN([AC_LIBTOOL_PICMODE],
344: [_LT_SET_OPTION([LT_INIT], [pic-only])
345: AC_DIAGNOSE([obsolete],
346: [$0: Remove this warning and the call to _LT_SET_OPTION when you
347: put the `pic-only' option into LT_INIT's first parameter.])
348: ])
349:
350: dnl aclocal-1.4 backwards compatibility:
351: dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
352:
353: ## ----------------- ##
354: ## LTDL_INIT Options ##
355: ## ----------------- ##
356:
357: m4_define([_LTDL_MODE], [])
358: LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
359: [m4_define([_LTDL_MODE], [nonrecursive])])
360: LT_OPTION_DEFINE([LTDL_INIT], [recursive],
361: [m4_define([_LTDL_MODE], [recursive])])
362: LT_OPTION_DEFINE([LTDL_INIT], [subproject],
363: [m4_define([_LTDL_MODE], [subproject])])
364:
365: m4_define([_LTDL_TYPE], [])
366: LT_OPTION_DEFINE([LTDL_INIT], [installable],
367: [m4_define([_LTDL_TYPE], [installable])])
368: LT_OPTION_DEFINE([LTDL_INIT], [convenience],
369: [m4_define([_LTDL_TYPE], [convenience])])
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>