anastasis-gtk

Demonstrator GUI for Anastasis
Log | Files | Refs | README | LICENSE

ltoptions.m4 (15441B)


      1 # Helper functions for option handling.                    -*- Autoconf -*-
      2 #
      3 #   Copyright (C) 2004-2005, 2007-2009, 2011-2019, 2021-2024 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 10 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* | *-*-windows* | *-*-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 --enable-aix-soname configure option, and support the
    327 # `aix-soname=aix' and `aix-soname=both' and `aix-soname=svr4' LT_INIT options.
    328 # DEFAULT 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_ENABLE([aix-soname],
    336     [AS_HELP_STRING([--enable-aix-soname=aix|svr4|both],
    337       [shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])],
    338     [case $enableval in
    339      aix|svr4|both)
    340        ;;
    341      *)
    342        AC_MSG_ERROR([Unknown argument to --enable-aix-soname])
    343        ;;
    344      esac
    345      lt_cv_with_aix_soname=$enable_aix_soname],
    346     [_AC_ENABLE_IF([with], [aix-soname],
    347         [case $withval in
    348          aix|svr4|both)
    349            ;;
    350          *)
    351            AC_MSG_ERROR([Unknown argument to --with-aix-soname])
    352            ;;
    353          esac
    354          lt_cv_with_aix_soname=$with_aix_soname],
    355         [AC_CACHE_VAL([lt_cv_with_aix_soname],
    356            [lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT)])
    357      enable_aix_soname=$lt_cv_with_aix_soname])
    358   with_aix_soname=$enable_aix_soname
    359   AC_MSG_RESULT([$with_aix_soname])
    360   if test aix != "$with_aix_soname"; then
    361     # For the AIX way of multilib, we name the shared archive member
    362     # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',
    363     # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File.
    364     # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag,
    365     # the AIX toolchain works better with OBJECT_MODE set (default 32).
    366     if test 64 = "${OBJECT_MODE-32}"; then
    367       shared_archive_member_spec=shr_64
    368     else
    369       shared_archive_member_spec=shr
    370     fi
    371   fi
    372   ;;
    373 *)
    374   with_aix_soname=aix
    375   ;;
    376 esac
    377 
    378 _LT_DECL([], [shared_archive_member_spec], [0],
    379     [Shared archive member basename, for filename based shared library versioning on AIX])dnl
    380 ])# _LT_WITH_AIX_SONAME
    381 
    382 LT_OPTION_DEFINE([LT_INIT], [aix-soname=aix], [_LT_WITH_AIX_SONAME([aix])])
    383 LT_OPTION_DEFINE([LT_INIT], [aix-soname=both], [_LT_WITH_AIX_SONAME([both])])
    384 LT_OPTION_DEFINE([LT_INIT], [aix-soname=svr4], [_LT_WITH_AIX_SONAME([svr4])])
    385 
    386 
    387 # _LT_WITH_PIC([MODE])
    388 # --------------------
    389 # implement the --enable-pic flag, and support the 'pic-only' and 'no-pic'
    390 # LT_INIT options.
    391 # MODE is either 'yes' or 'no'.  If omitted, it defaults to 'both'.
    392 m4_define([_LT_WITH_PIC],
    393 [AC_ARG_ENABLE([pic],
    394     [AS_HELP_STRING([--enable-pic@<:@=PKGS@:>@],
    395 	[try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
    396     [lt_p=${PACKAGE-default}
    397      case $enableval in
    398      yes|no) pic_mode=$enableval ;;
    399      *)
    400        pic_mode=default
    401        # Look at the argument we got.  We use all the common list separators.
    402        lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
    403        for lt_pkg in $enableval; do
    404 	 IFS=$lt_save_ifs
    405 	 if test "X$lt_pkg" = "X$lt_p"; then
    406 	   pic_mode=yes
    407 	 fi
    408        done
    409        IFS=$lt_save_ifs
    410        ;;
    411      esac],
    412     [dnl Continue to support --with-pic and --without-pic, for backward
    413      dnl compatibility.
    414      _AC_ENABLE_IF([with], [pic],
    415 	[lt_p=${PACKAGE-default}
    416 	 case $withval in
    417 	 yes|no) pic_mode=$withval ;;
    418 	 *)
    419 	   pic_mode=default
    420 	   # Look at the argument we got.  We use all the common list separators.
    421 	   lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
    422 	   for lt_pkg in $withval; do
    423 	     IFS=$lt_save_ifs
    424 	     if test "X$lt_pkg" = "X$lt_p"; then
    425 	       pic_mode=yes
    426 	     fi
    427 	   done
    428 	   IFS=$lt_save_ifs
    429 	   ;;
    430 	 esac],
    431 	[pic_mode=m4_default([$1], [default])])]
    432     )
    433 
    434 _LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
    435 ])# _LT_WITH_PIC
    436 
    437 LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
    438 LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
    439 
    440 # Old name:
    441 AU_DEFUN([AC_LIBTOOL_PICMODE],
    442 [_LT_SET_OPTION([LT_INIT], [pic-only])
    443 AC_DIAGNOSE([obsolete],
    444 [$0: Remove this warning and the call to _LT_SET_OPTION when you
    445 put the 'pic-only' option into LT_INIT's first parameter.])
    446 ])
    447 
    448 dnl aclocal-1.4 backwards compatibility:
    449 dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
    450 
    451 ## ----------------- ##
    452 ## LTDL_INIT Options ##
    453 ## ----------------- ##
    454 
    455 m4_define([_LTDL_MODE], [])
    456 LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
    457 		 [m4_define([_LTDL_MODE], [nonrecursive])])
    458 LT_OPTION_DEFINE([LTDL_INIT], [recursive],
    459 		 [m4_define([_LTDL_MODE], [recursive])])
    460 LT_OPTION_DEFINE([LTDL_INIT], [subproject],
    461 		 [m4_define([_LTDL_MODE], [subproject])])
    462 
    463 m4_define([_LTDL_TYPE], [])
    464 LT_OPTION_DEFINE([LTDL_INIT], [installable],
    465 		 [m4_define([_LTDL_TYPE], [installable])])
    466 LT_OPTION_DEFINE([LTDL_INIT], [convenience],
    467 		 [m4_define([_LTDL_TYPE], [convenience])])