Annotation of embedaddon/curl/m4/ltoptions.m4, revision 1.1.1.1

1.1       misho       1: # Helper functions for option handling.                    -*- Autoconf -*-
                      2: #
                      3: #   Copyright (C) 2004-2005, 2007-2009, 2011-2015 Free Software
                      4: #   Foundation, Inc.
                      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: 
                     11: # serial 8 ltoptions.m4
                     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:   _LT_UNLESS_OPTIONS([LT_INIT], [aix-soname=aix aix-soname=both aix-soname=svr4],
                     86:                   [_LT_WITH_AIX_SONAME([aix])])
                     87:   ])
                     88: ])# _LT_SET_OPTIONS
                     89: 
                     90: 
                     91: ## --------------------------------- ##
                     92: ## Macros to handle LT_INIT options. ##
                     93: ## --------------------------------- ##
                     94: 
                     95: # _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
                     96: # -----------------------------------------
                     97: m4_define([_LT_MANGLE_DEFUN],
                     98: [[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
                     99: 
                    100: 
                    101: # LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
                    102: # -----------------------------------------------
                    103: m4_define([LT_OPTION_DEFINE],
                    104: [m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
                    105: ])# LT_OPTION_DEFINE
                    106: 
                    107: 
                    108: # dlopen
                    109: # ------
                    110: LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
                    111: ])
                    112: 
                    113: AU_DEFUN([AC_LIBTOOL_DLOPEN],
                    114: [_LT_SET_OPTION([LT_INIT], [dlopen])
                    115: AC_DIAGNOSE([obsolete],
                    116: [$0: Remove this warning and the call to _LT_SET_OPTION when you
                    117: put the 'dlopen' option into LT_INIT's first parameter.])
                    118: ])
                    119: 
                    120: dnl aclocal-1.4 backwards compatibility:
                    121: dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
                    122: 
                    123: 
                    124: # win32-dll
                    125: # ---------
                    126: # Declare package support for building win32 dll's.
                    127: LT_OPTION_DEFINE([LT_INIT], [win32-dll],
                    128: [enable_win32_dll=yes
                    129: 
                    130: case $host in
                    131: *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
                    132:   AC_CHECK_TOOL(AS, as, false)
                    133:   AC_CHECK_TOOL(DLLTOOL, dlltool, false)
                    134:   AC_CHECK_TOOL(OBJDUMP, objdump, false)
                    135:   ;;
                    136: esac
                    137: 
                    138: test -z "$AS" && AS=as
                    139: _LT_DECL([], [AS],      [1], [Assembler program])dnl
                    140: 
                    141: test -z "$DLLTOOL" && DLLTOOL=dlltool
                    142: _LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
                    143: 
                    144: test -z "$OBJDUMP" && OBJDUMP=objdump
                    145: _LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
                    146: ])# win32-dll
                    147: 
                    148: AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
                    149: [AC_REQUIRE([AC_CANONICAL_HOST])dnl
                    150: _LT_SET_OPTION([LT_INIT], [win32-dll])
                    151: AC_DIAGNOSE([obsolete],
                    152: [$0: Remove this warning and the call to _LT_SET_OPTION when you
                    153: put the 'win32-dll' option into LT_INIT's first parameter.])
                    154: ])
                    155: 
                    156: dnl aclocal-1.4 backwards compatibility:
                    157: dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
                    158: 
                    159: 
                    160: # _LT_ENABLE_SHARED([DEFAULT])
                    161: # ----------------------------
                    162: # implement the --enable-shared flag, and supports the 'shared' and
                    163: # 'disable-shared' LT_INIT options.
                    164: # DEFAULT is either 'yes' or 'no'.  If omitted, it defaults to 'yes'.
                    165: m4_define([_LT_ENABLE_SHARED],
                    166: [m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
                    167: AC_ARG_ENABLE([shared],
                    168:     [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
                    169:        [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
                    170:     [p=${PACKAGE-default}
                    171:     case $enableval in
                    172:     yes) enable_shared=yes ;;
                    173:     no) enable_shared=no ;;
                    174:     *)
                    175:       enable_shared=no
                    176:       # Look at the argument we got.  We use all the common list separators.
                    177:       lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
                    178:       for pkg in $enableval; do
                    179:        IFS=$lt_save_ifs
                    180:        if test "X$pkg" = "X$p"; then
                    181:          enable_shared=yes
                    182:        fi
                    183:       done
                    184:       IFS=$lt_save_ifs
                    185:       ;;
                    186:     esac],
                    187:     [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
                    188: 
                    189:     _LT_DECL([build_libtool_libs], [enable_shared], [0],
                    190:        [Whether or not to build shared libraries])
                    191: ])# _LT_ENABLE_SHARED
                    192: 
                    193: LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
                    194: LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
                    195: 
                    196: # Old names:
                    197: AC_DEFUN([AC_ENABLE_SHARED],
                    198: [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
                    199: ])
                    200: 
                    201: AC_DEFUN([AC_DISABLE_SHARED],
                    202: [_LT_SET_OPTION([LT_INIT], [disable-shared])
                    203: ])
                    204: 
                    205: AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
                    206: AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
                    207: 
                    208: dnl aclocal-1.4 backwards compatibility:
                    209: dnl AC_DEFUN([AM_ENABLE_SHARED], [])
                    210: dnl AC_DEFUN([AM_DISABLE_SHARED], [])
                    211: 
                    212: 
                    213: 
                    214: # _LT_ENABLE_STATIC([DEFAULT])
                    215: # ----------------------------
                    216: # implement the --enable-static flag, and support the 'static' and
                    217: # 'disable-static' LT_INIT options.
                    218: # DEFAULT is either 'yes' or 'no'.  If omitted, it defaults to 'yes'.
                    219: m4_define([_LT_ENABLE_STATIC],
                    220: [m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
                    221: AC_ARG_ENABLE([static],
                    222:     [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
                    223:        [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
                    224:     [p=${PACKAGE-default}
                    225:     case $enableval in
                    226:     yes) enable_static=yes ;;
                    227:     no) enable_static=no ;;
                    228:     *)
                    229:      enable_static=no
                    230:       # Look at the argument we got.  We use all the common list separators.
                    231:       lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
                    232:       for pkg in $enableval; do
                    233:        IFS=$lt_save_ifs
                    234:        if test "X$pkg" = "X$p"; then
                    235:          enable_static=yes
                    236:        fi
                    237:       done
                    238:       IFS=$lt_save_ifs
                    239:       ;;
                    240:     esac],
                    241:     [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
                    242: 
                    243:     _LT_DECL([build_old_libs], [enable_static], [0],
                    244:        [Whether or not to build static libraries])
                    245: ])# _LT_ENABLE_STATIC
                    246: 
                    247: LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
                    248: LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
                    249: 
                    250: # Old names:
                    251: AC_DEFUN([AC_ENABLE_STATIC],
                    252: [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
                    253: ])
                    254: 
                    255: AC_DEFUN([AC_DISABLE_STATIC],
                    256: [_LT_SET_OPTION([LT_INIT], [disable-static])
                    257: ])
                    258: 
                    259: AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
                    260: AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
                    261: 
                    262: dnl aclocal-1.4 backwards compatibility:
                    263: dnl AC_DEFUN([AM_ENABLE_STATIC], [])
                    264: dnl AC_DEFUN([AM_DISABLE_STATIC], [])
                    265: 
                    266: 
                    267: 
                    268: # _LT_ENABLE_FAST_INSTALL([DEFAULT])
                    269: # ----------------------------------
                    270: # implement the --enable-fast-install flag, and support the 'fast-install'
                    271: # and 'disable-fast-install' LT_INIT options.
                    272: # DEFAULT is either 'yes' or 'no'.  If omitted, it defaults to 'yes'.
                    273: m4_define([_LT_ENABLE_FAST_INSTALL],
                    274: [m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
                    275: AC_ARG_ENABLE([fast-install],
                    276:     [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
                    277:     [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
                    278:     [p=${PACKAGE-default}
                    279:     case $enableval in
                    280:     yes) enable_fast_install=yes ;;
                    281:     no) enable_fast_install=no ;;
                    282:     *)
                    283:       enable_fast_install=no
                    284:       # Look at the argument we got.  We use all the common list separators.
                    285:       lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
                    286:       for pkg in $enableval; do
                    287:        IFS=$lt_save_ifs
                    288:        if test "X$pkg" = "X$p"; then
                    289:          enable_fast_install=yes
                    290:        fi
                    291:       done
                    292:       IFS=$lt_save_ifs
                    293:       ;;
                    294:     esac],
                    295:     [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
                    296: 
                    297: _LT_DECL([fast_install], [enable_fast_install], [0],
                    298:         [Whether or not to optimize for fast installation])dnl
                    299: ])# _LT_ENABLE_FAST_INSTALL
                    300: 
                    301: LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
                    302: LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
                    303: 
                    304: # Old names:
                    305: AU_DEFUN([AC_ENABLE_FAST_INSTALL],
                    306: [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
                    307: AC_DIAGNOSE([obsolete],
                    308: [$0: Remove this warning and the call to _LT_SET_OPTION when you put
                    309: the 'fast-install' option into LT_INIT's first parameter.])
                    310: ])
                    311: 
                    312: AU_DEFUN([AC_DISABLE_FAST_INSTALL],
                    313: [_LT_SET_OPTION([LT_INIT], [disable-fast-install])
                    314: AC_DIAGNOSE([obsolete],
                    315: [$0: Remove this warning and the call to _LT_SET_OPTION when you put
                    316: the 'disable-fast-install' option into LT_INIT's first parameter.])
                    317: ])
                    318: 
                    319: dnl aclocal-1.4 backwards compatibility:
                    320: dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
                    321: dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
                    322: 
                    323: 
                    324: # _LT_WITH_AIX_SONAME([DEFAULT])
                    325: # ----------------------------------
                    326: # implement the --with-aix-soname flag, and support the `aix-soname=aix'
                    327: # and `aix-soname=both' and `aix-soname=svr4' LT_INIT options. DEFAULT
                    328: # is either `aix', `both' or `svr4'.  If omitted, it defaults to `aix'.
                    329: m4_define([_LT_WITH_AIX_SONAME],
                    330: [m4_define([_LT_WITH_AIX_SONAME_DEFAULT], [m4_if($1, svr4, svr4, m4_if($1, both, both, aix))])dnl
                    331: shared_archive_member_spec=
                    332: case $host,$enable_shared in
                    333: power*-*-aix[[5-9]]*,yes)
                    334:   AC_MSG_CHECKING([which variant of shared library versioning to provide])
                    335:   AC_ARG_WITH([aix-soname],
                    336:     [AS_HELP_STRING([--with-aix-soname=aix|svr4|both],
                    337:       [shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])],
                    338:     [case $withval in
                    339:     aix|svr4|both)
                    340:       ;;
                    341:     *)
                    342:       AC_MSG_ERROR([Unknown argument to --with-aix-soname])
                    343:       ;;
                    344:     esac
                    345:     lt_cv_with_aix_soname=$with_aix_soname],
                    346:     [AC_CACHE_VAL([lt_cv_with_aix_soname],
                    347:       [lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT)
                    348:     with_aix_soname=$lt_cv_with_aix_soname])
                    349:   AC_MSG_RESULT([$with_aix_soname])
                    350:   if test aix != "$with_aix_soname"; then
                    351:     # For the AIX way of multilib, we name the shared archive member
                    352:     # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',
                    353:     # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File.
                    354:     # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag,
                    355:     # the AIX toolchain works better with OBJECT_MODE set (default 32).
                    356:     if test 64 = "${OBJECT_MODE-32}"; then
                    357:       shared_archive_member_spec=shr_64
                    358:     else
                    359:       shared_archive_member_spec=shr
                    360:     fi
                    361:   fi
                    362:   ;;
                    363: *)
                    364:   with_aix_soname=aix
                    365:   ;;
                    366: esac
                    367: 
                    368: _LT_DECL([], [shared_archive_member_spec], [0],
                    369:     [Shared archive member basename, for filename based shared library versioning on AIX])dnl
                    370: ])# _LT_WITH_AIX_SONAME
                    371: 
                    372: LT_OPTION_DEFINE([LT_INIT], [aix-soname=aix], [_LT_WITH_AIX_SONAME([aix])])
                    373: LT_OPTION_DEFINE([LT_INIT], [aix-soname=both], [_LT_WITH_AIX_SONAME([both])])
                    374: LT_OPTION_DEFINE([LT_INIT], [aix-soname=svr4], [_LT_WITH_AIX_SONAME([svr4])])
                    375: 
                    376: 
                    377: # _LT_WITH_PIC([MODE])
                    378: # --------------------
                    379: # implement the --with-pic flag, and support the 'pic-only' and 'no-pic'
                    380: # LT_INIT options.
                    381: # MODE is either 'yes' or 'no'.  If omitted, it defaults to 'both'.
                    382: m4_define([_LT_WITH_PIC],
                    383: [AC_ARG_WITH([pic],
                    384:     [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
                    385:        [try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
                    386:     [lt_p=${PACKAGE-default}
                    387:     case $withval in
                    388:     yes|no) pic_mode=$withval ;;
                    389:     *)
                    390:       pic_mode=default
                    391:       # Look at the argument we got.  We use all the common list separators.
                    392:       lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
                    393:       for lt_pkg in $withval; do
                    394:        IFS=$lt_save_ifs
                    395:        if test "X$lt_pkg" = "X$lt_p"; then
                    396:          pic_mode=yes
                    397:        fi
                    398:       done
                    399:       IFS=$lt_save_ifs
                    400:       ;;
                    401:     esac],
                    402:     [pic_mode=m4_default([$1], [default])])
                    403: 
                    404: _LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
                    405: ])# _LT_WITH_PIC
                    406: 
                    407: LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
                    408: LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
                    409: 
                    410: # Old name:
                    411: AU_DEFUN([AC_LIBTOOL_PICMODE],
                    412: [_LT_SET_OPTION([LT_INIT], [pic-only])
                    413: AC_DIAGNOSE([obsolete],
                    414: [$0: Remove this warning and the call to _LT_SET_OPTION when you
                    415: put the 'pic-only' option into LT_INIT's first parameter.])
                    416: ])
                    417: 
                    418: dnl aclocal-1.4 backwards compatibility:
                    419: dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
                    420: 
                    421: ## ----------------- ##
                    422: ## LTDL_INIT Options ##
                    423: ## ----------------- ##
                    424: 
                    425: m4_define([_LTDL_MODE], [])
                    426: LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
                    427:                 [m4_define([_LTDL_MODE], [nonrecursive])])
                    428: LT_OPTION_DEFINE([LTDL_INIT], [recursive],
                    429:                 [m4_define([_LTDL_MODE], [recursive])])
                    430: LT_OPTION_DEFINE([LTDL_INIT], [subproject],
                    431:                 [m4_define([_LTDL_MODE], [subproject])])
                    432: 
                    433: m4_define([_LTDL_TYPE], [])
                    434: LT_OPTION_DEFINE([LTDL_INIT], [installable],
                    435:                 [m4_define([_LTDL_TYPE], [installable])])
                    436: LT_OPTION_DEFINE([LTDL_INIT], [convenience],
                    437:                 [m4_define([_LTDL_TYPE], [convenience])])

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>