cscg24-guacamole

CSCG 2024 Challenge 'Guacamole Mashup'
git clone https://git.sinitax.com/sinitax/cscg24-guacamole
Log | Files | Refs | sfeed.txt

ltoptions.m4 (14525B)


      1# Helper functions for option handling.                    -*- Autoconf -*-
      2#
      3#   Copyright (C) 2004-2005, 2007-2009, 2011-2019, 2021-2022 Free
      4#   Software 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.
     14AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
     15
     16
     17# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
     18# ------------------------------------------
     19m4_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.
     28m4_define([_LT_SET_OPTION],
     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
     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.
     39m4_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.
     47m4_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
     51m4_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.
     62m4_defun([_LT_SET_OPTIONS],
     63[# Set options
     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  _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# -----------------------------------------
     97m4_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# -----------------------------------------------
    103m4_define([LT_OPTION_DEFINE],
    104[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
    105])# LT_OPTION_DEFINE
    106
    107
    108# dlopen
    109# ------
    110LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
    111])
    112
    113AU_DEFUN([AC_LIBTOOL_DLOPEN],
    114[_LT_SET_OPTION([LT_INIT], [dlopen])
    115AC_DIAGNOSE([obsolete],
    116[$0: Remove this warning and the call to _LT_SET_OPTION when you
    117put the 'dlopen' option into LT_INIT's first parameter.])
    118])
    119
    120dnl aclocal-1.4 backwards compatibility:
    121dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
    122
    123
    124# win32-dll
    125# ---------
    126# Declare package support for building win32 dll's.
    127LT_OPTION_DEFINE([LT_INIT], [win32-dll],
    128[enable_win32_dll=yes
    129
    130case $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  ;;
    136esac
    137
    138test -z "$AS" && AS=as
    139_LT_DECL([], [AS],      [1], [Assembler program])dnl
    140
    141test -z "$DLLTOOL" && DLLTOOL=dlltool
    142_LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
    143
    144test -z "$OBJDUMP" && OBJDUMP=objdump
    145_LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
    146])# win32-dll
    147
    148AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
    149[AC_REQUIRE([AC_CANONICAL_HOST])dnl
    150_LT_SET_OPTION([LT_INIT], [win32-dll])
    151AC_DIAGNOSE([obsolete],
    152[$0: Remove this warning and the call to _LT_SET_OPTION when you
    153put the 'win32-dll' option into LT_INIT's first parameter.])
    154])
    155
    156dnl aclocal-1.4 backwards compatibility:
    157dnl 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'.
    165m4_define([_LT_ENABLE_SHARED],
    166[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
    167AC_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
    193LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
    194LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
    195
    196# Old names:
    197AC_DEFUN([AC_ENABLE_SHARED],
    198[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
    199])
    200
    201AC_DEFUN([AC_DISABLE_SHARED],
    202[_LT_SET_OPTION([LT_INIT], [disable-shared])
    203])
    204
    205AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
    206AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
    207
    208dnl aclocal-1.4 backwards compatibility:
    209dnl AC_DEFUN([AM_ENABLE_SHARED], [])
    210dnl 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'.
    219m4_define([_LT_ENABLE_STATIC],
    220[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
    221AC_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
    247LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
    248LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
    249
    250# Old names:
    251AC_DEFUN([AC_ENABLE_STATIC],
    252[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
    253])
    254
    255AC_DEFUN([AC_DISABLE_STATIC],
    256[_LT_SET_OPTION([LT_INIT], [disable-static])
    257])
    258
    259AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
    260AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
    261
    262dnl aclocal-1.4 backwards compatibility:
    263dnl AC_DEFUN([AM_ENABLE_STATIC], [])
    264dnl 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'.
    273m4_define([_LT_ENABLE_FAST_INSTALL],
    274[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
    275AC_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
    301LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
    302LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
    303
    304# Old names:
    305AU_DEFUN([AC_ENABLE_FAST_INSTALL],
    306[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
    307AC_DIAGNOSE([obsolete],
    308[$0: Remove this warning and the call to _LT_SET_OPTION when you put
    309the 'fast-install' option into LT_INIT's first parameter.])
    310])
    311
    312AU_DEFUN([AC_DISABLE_FAST_INSTALL],
    313[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
    314AC_DIAGNOSE([obsolete],
    315[$0: Remove this warning and the call to _LT_SET_OPTION when you put
    316the 'disable-fast-install' option into LT_INIT's first parameter.])
    317])
    318
    319dnl aclocal-1.4 backwards compatibility:
    320dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
    321dnl 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'.
    329m4_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
    331shared_archive_member_spec=
    332case $host,$enable_shared in
    333power*-*-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  ;;
    366esac
    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
    372LT_OPTION_DEFINE([LT_INIT], [aix-soname=aix], [_LT_WITH_AIX_SONAME([aix])])
    373LT_OPTION_DEFINE([LT_INIT], [aix-soname=both], [_LT_WITH_AIX_SONAME([both])])
    374LT_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'.
    382m4_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
    407LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
    408LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
    409
    410# Old name:
    411AU_DEFUN([AC_LIBTOOL_PICMODE],
    412[_LT_SET_OPTION([LT_INIT], [pic-only])
    413AC_DIAGNOSE([obsolete],
    414[$0: Remove this warning and the call to _LT_SET_OPTION when you
    415put the 'pic-only' option into LT_INIT's first parameter.])
    416])
    417
    418dnl aclocal-1.4 backwards compatibility:
    419dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
    420
    421## ----------------- ##
    422## LTDL_INIT Options ##
    423## ----------------- ##
    424
    425m4_define([_LTDL_MODE], [])
    426LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
    427		 [m4_define([_LTDL_MODE], [nonrecursive])])
    428LT_OPTION_DEFINE([LTDL_INIT], [recursive],
    429		 [m4_define([_LTDL_MODE], [recursive])])
    430LT_OPTION_DEFINE([LTDL_INIT], [subproject],
    431		 [m4_define([_LTDL_MODE], [subproject])])
    432
    433m4_define([_LTDL_TYPE], [])
    434LT_OPTION_DEFINE([LTDL_INIT], [installable],
    435		 [m4_define([_LTDL_TYPE], [installable])])
    436LT_OPTION_DEFINE([LTDL_INIT], [convenience],
    437		 [m4_define([_LTDL_TYPE], [convenience])])