aboutsummaryrefslogtreecommitdiff
path: root/m4/ltoptions.m4
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2016-04-09 22:48:59 +0000
committerChristian Grothoff <christian@grothoff.org>2016-04-09 22:48:59 +0000
commit0c1559b66e66be7c9536eb1bc6c850eb3c006377 (patch)
treea122f71945ef41e09b928371845b5bcfaf8f9f02 /m4/ltoptions.m4
parent7c6def6fd783edca981260eb1d2474d007a33b86 (diff)
downloadgnunet-ext-0c1559b66e66be7c9536eb1bc6c850eb3c006377.tar.gz
gnunet-ext-0c1559b66e66be7c9536eb1bc6c850eb3c006377.zip
-improve ext template
Diffstat (limited to 'm4/ltoptions.m4')
-rw-r--r--m4/ltoptions.m4127
1 files changed, 90 insertions, 37 deletions
diff --git a/m4/ltoptions.m4 b/m4/ltoptions.m4
index 5d9acd8..94b0829 100644
--- a/m4/ltoptions.m4
+++ b/m4/ltoptions.m4
@@ -1,14 +1,14 @@
1# Helper functions for option handling. -*- Autoconf -*- 1# Helper functions for option handling. -*- Autoconf -*-
2# 2#
3# Copyright (C) 2004, 2005, 2007, 2008, 2009 Free Software Foundation, 3# Copyright (C) 2004-2005, 2007-2009, 2011-2015 Free Software
4# Inc. 4# Foundation, Inc.
5# Written by Gary V. Vaughan, 2004 5# Written by Gary V. Vaughan, 2004
6# 6#
7# This file is free software; the Free Software Foundation gives 7# This file is free software; the Free Software Foundation gives
8# unlimited permission to copy and/or distribute it, with or without 8# unlimited permission to copy and/or distribute it, with or without
9# modifications, as long as this notice is preserved. 9# modifications, as long as this notice is preserved.
10 10
11# serial 7 ltoptions.m4 11# serial 8 ltoptions.m4
12 12
13# This is to help aclocal find these macros, as it can't see m4_define. 13# This is to help aclocal find these macros, as it can't see m4_define.
14AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])]) 14AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
@@ -29,7 +29,7 @@ m4_define([_LT_SET_OPTION],
29[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl 29[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
30m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]), 30m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
31 _LT_MANGLE_DEFUN([$1], [$2]), 31 _LT_MANGLE_DEFUN([$1], [$2]),
32 [m4_warning([Unknown $1 option `$2'])])[]dnl 32 [m4_warning([Unknown $1 option '$2'])])[]dnl
33]) 33])
34 34
35 35
@@ -75,13 +75,15 @@ m4_if([$1],[LT_INIT],[
75 dnl 75 dnl
76 dnl If no reference was made to various pairs of opposing options, then 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 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 78 dnl 'shared' nor 'disable-shared' was passed, we enable building of shared
79 dnl archives by default: 79 dnl archives by default:
80 _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED]) 80 _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
81 _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC]) 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]) 82 _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
83 _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install], 83 _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
84 [_LT_ENABLE_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])])
85 ]) 87 ])
86])# _LT_SET_OPTIONS 88])# _LT_SET_OPTIONS
87 89
@@ -112,7 +114,7 @@ AU_DEFUN([AC_LIBTOOL_DLOPEN],
112[_LT_SET_OPTION([LT_INIT], [dlopen]) 114[_LT_SET_OPTION([LT_INIT], [dlopen])
113AC_DIAGNOSE([obsolete], 115AC_DIAGNOSE([obsolete],
114[$0: Remove this warning and the call to _LT_SET_OPTION when you 116[$0: Remove this warning and the call to _LT_SET_OPTION when you
115put the `dlopen' option into LT_INIT's first parameter.]) 117put the 'dlopen' option into LT_INIT's first parameter.])
116]) 118])
117 119
118dnl aclocal-1.4 backwards compatibility: 120dnl aclocal-1.4 backwards compatibility:
@@ -148,7 +150,7 @@ AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
148_LT_SET_OPTION([LT_INIT], [win32-dll]) 150_LT_SET_OPTION([LT_INIT], [win32-dll])
149AC_DIAGNOSE([obsolete], 151AC_DIAGNOSE([obsolete],
150[$0: Remove this warning and the call to _LT_SET_OPTION when you 152[$0: Remove this warning and the call to _LT_SET_OPTION when you
151put the `win32-dll' option into LT_INIT's first parameter.]) 153put the 'win32-dll' option into LT_INIT's first parameter.])
152]) 154])
153 155
154dnl aclocal-1.4 backwards compatibility: 156dnl aclocal-1.4 backwards compatibility:
@@ -157,9 +159,9 @@ dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
157 159
158# _LT_ENABLE_SHARED([DEFAULT]) 160# _LT_ENABLE_SHARED([DEFAULT])
159# ---------------------------- 161# ----------------------------
160# implement the --enable-shared flag, and supports the `shared' and 162# implement the --enable-shared flag, and supports the 'shared' and
161# `disable-shared' LT_INIT options. 163# 'disable-shared' LT_INIT options.
162# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. 164# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
163m4_define([_LT_ENABLE_SHARED], 165m4_define([_LT_ENABLE_SHARED],
164[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl 166[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
165AC_ARG_ENABLE([shared], 167AC_ARG_ENABLE([shared],
@@ -172,14 +174,14 @@ AC_ARG_ENABLE([shared],
172 *) 174 *)
173 enable_shared=no 175 enable_shared=no
174 # Look at the argument we got. We use all the common list separators. 176 # Look at the argument we got. We use all the common list separators.
175 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," 177 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
176 for pkg in $enableval; do 178 for pkg in $enableval; do
177 IFS="$lt_save_ifs" 179 IFS=$lt_save_ifs
178 if test "X$pkg" = "X$p"; then 180 if test "X$pkg" = "X$p"; then
179 enable_shared=yes 181 enable_shared=yes
180 fi 182 fi
181 done 183 done
182 IFS="$lt_save_ifs" 184 IFS=$lt_save_ifs
183 ;; 185 ;;
184 esac], 186 esac],
185 [enable_shared=]_LT_ENABLE_SHARED_DEFAULT) 187 [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
@@ -211,9 +213,9 @@ dnl AC_DEFUN([AM_DISABLE_SHARED], [])
211 213
212# _LT_ENABLE_STATIC([DEFAULT]) 214# _LT_ENABLE_STATIC([DEFAULT])
213# ---------------------------- 215# ----------------------------
214# implement the --enable-static flag, and support the `static' and 216# implement the --enable-static flag, and support the 'static' and
215# `disable-static' LT_INIT options. 217# 'disable-static' LT_INIT options.
216# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. 218# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
217m4_define([_LT_ENABLE_STATIC], 219m4_define([_LT_ENABLE_STATIC],
218[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl 220[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
219AC_ARG_ENABLE([static], 221AC_ARG_ENABLE([static],
@@ -226,14 +228,14 @@ AC_ARG_ENABLE([static],
226 *) 228 *)
227 enable_static=no 229 enable_static=no
228 # Look at the argument we got. We use all the common list separators. 230 # Look at the argument we got. We use all the common list separators.
229 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," 231 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
230 for pkg in $enableval; do 232 for pkg in $enableval; do
231 IFS="$lt_save_ifs" 233 IFS=$lt_save_ifs
232 if test "X$pkg" = "X$p"; then 234 if test "X$pkg" = "X$p"; then
233 enable_static=yes 235 enable_static=yes
234 fi 236 fi
235 done 237 done
236 IFS="$lt_save_ifs" 238 IFS=$lt_save_ifs
237 ;; 239 ;;
238 esac], 240 esac],
239 [enable_static=]_LT_ENABLE_STATIC_DEFAULT) 241 [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
@@ -265,9 +267,9 @@ dnl AC_DEFUN([AM_DISABLE_STATIC], [])
265 267
266# _LT_ENABLE_FAST_INSTALL([DEFAULT]) 268# _LT_ENABLE_FAST_INSTALL([DEFAULT])
267# ---------------------------------- 269# ----------------------------------
268# implement the --enable-fast-install flag, and support the `fast-install' 270# implement the --enable-fast-install flag, and support the 'fast-install'
269# and `disable-fast-install' LT_INIT options. 271# and 'disable-fast-install' LT_INIT options.
270# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. 272# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
271m4_define([_LT_ENABLE_FAST_INSTALL], 273m4_define([_LT_ENABLE_FAST_INSTALL],
272[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl 274[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
273AC_ARG_ENABLE([fast-install], 275AC_ARG_ENABLE([fast-install],
@@ -280,14 +282,14 @@ AC_ARG_ENABLE([fast-install],
280 *) 282 *)
281 enable_fast_install=no 283 enable_fast_install=no
282 # Look at the argument we got. We use all the common list separators. 284 # Look at the argument we got. We use all the common list separators.
283 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," 285 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
284 for pkg in $enableval; do 286 for pkg in $enableval; do
285 IFS="$lt_save_ifs" 287 IFS=$lt_save_ifs
286 if test "X$pkg" = "X$p"; then 288 if test "X$pkg" = "X$p"; then
287 enable_fast_install=yes 289 enable_fast_install=yes
288 fi 290 fi
289 done 291 done
290 IFS="$lt_save_ifs" 292 IFS=$lt_save_ifs
291 ;; 293 ;;
292 esac], 294 esac],
293 [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT) 295 [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
@@ -304,14 +306,14 @@ AU_DEFUN([AC_ENABLE_FAST_INSTALL],
304[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install]) 306[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
305AC_DIAGNOSE([obsolete], 307AC_DIAGNOSE([obsolete],
306[$0: Remove this warning and the call to _LT_SET_OPTION when you put 308[$0: Remove this warning and the call to _LT_SET_OPTION when you put
307the `fast-install' option into LT_INIT's first parameter.]) 309the 'fast-install' option into LT_INIT's first parameter.])
308]) 310])
309 311
310AU_DEFUN([AC_DISABLE_FAST_INSTALL], 312AU_DEFUN([AC_DISABLE_FAST_INSTALL],
311[_LT_SET_OPTION([LT_INIT], [disable-fast-install]) 313[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
312AC_DIAGNOSE([obsolete], 314AC_DIAGNOSE([obsolete],
313[$0: Remove this warning and the call to _LT_SET_OPTION when you put 315[$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.]) 316the 'disable-fast-install' option into LT_INIT's first parameter.])
315]) 317])
316 318
317dnl aclocal-1.4 backwards compatibility: 319dnl aclocal-1.4 backwards compatibility:
@@ -319,11 +321,64 @@ dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
319dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], []) 321dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
320 322
321 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
322# _LT_WITH_PIC([MODE]) 377# _LT_WITH_PIC([MODE])
323# -------------------- 378# --------------------
324# implement the --with-pic flag, and support the `pic-only' and `no-pic' 379# implement the --with-pic flag, and support the 'pic-only' and 'no-pic'
325# LT_INIT options. 380# LT_INIT options.
326# MODE is either `yes' or `no'. If omitted, it defaults to `both'. 381# MODE is either 'yes' or 'no'. If omitted, it defaults to 'both'.
327m4_define([_LT_WITH_PIC], 382m4_define([_LT_WITH_PIC],
328[AC_ARG_WITH([pic], 383[AC_ARG_WITH([pic],
329 [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@], 384 [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
@@ -334,19 +389,17 @@ m4_define([_LT_WITH_PIC],
334 *) 389 *)
335 pic_mode=default 390 pic_mode=default
336 # Look at the argument we got. We use all the common list separators. 391 # Look at the argument we got. We use all the common list separators.
337 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," 392 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
338 for lt_pkg in $withval; do 393 for lt_pkg in $withval; do
339 IFS="$lt_save_ifs" 394 IFS=$lt_save_ifs
340 if test "X$lt_pkg" = "X$lt_p"; then 395 if test "X$lt_pkg" = "X$lt_p"; then
341 pic_mode=yes 396 pic_mode=yes
342 fi 397 fi
343 done 398 done
344 IFS="$lt_save_ifs" 399 IFS=$lt_save_ifs
345 ;; 400 ;;
346 esac], 401 esac],
347 [pic_mode=default]) 402 [pic_mode=m4_default([$1], [default])])
348
349test -z "$pic_mode" && pic_mode=m4_default([$1], [default])
350 403
351_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl 404_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
352])# _LT_WITH_PIC 405])# _LT_WITH_PIC
@@ -359,7 +412,7 @@ AU_DEFUN([AC_LIBTOOL_PICMODE],
359[_LT_SET_OPTION([LT_INIT], [pic-only]) 412[_LT_SET_OPTION([LT_INIT], [pic-only])
360AC_DIAGNOSE([obsolete], 413AC_DIAGNOSE([obsolete],
361[$0: Remove this warning and the call to _LT_SET_OPTION when you 414[$0: Remove this warning and the call to _LT_SET_OPTION when you
362put the `pic-only' option into LT_INIT's first parameter.]) 415put the 'pic-only' option into LT_INIT's first parameter.])
363]) 416])
364 417
365dnl aclocal-1.4 backwards compatibility: 418dnl aclocal-1.4 backwards compatibility: