1: # 00gnulib.m4 serial 3
2: dnl Copyright (C) 2009-2019 Free Software Foundation, Inc.
3: dnl This file is free software; the Free Software Foundation
4: dnl gives unlimited permission to copy and/or distribute it,
5: dnl with or without modifications, as long as this notice is preserved.
6:
7: dnl This file must be named something that sorts before all other
8: dnl gnulib-provided .m4 files. It is needed until such time as we can
9: dnl assume Autoconf 2.64, with its improved AC_DEFUN_ONCE and
10: dnl m4_divert semantics.
11:
12: # Until autoconf 2.63, handling of the diversion stack required m4_init
13: # to be called first; but this does not happen with aclocal. Wrapping
14: # the entire execution in another layer of the diversion stack fixes this.
15: # Worse, prior to autoconf 2.62, m4_wrap depended on the underlying m4
16: # for whether it was FIFO or LIFO; in order to properly balance with
17: # m4_init, we need to undo our push just before anything wrapped within
18: # the m4_init body. The way to ensure this is to wrap both sides of
19: # m4_init with a one-shot macro that does the pop at the right time.
20: m4_ifndef([_m4_divert_diversion],
21: [m4_divert_push([KILL])
22: m4_define([gl_divert_fixup], [m4_divert_pop()m4_define([$0])])
23: m4_define([m4_init],
24: [gl_divert_fixup()]m4_defn([m4_init])[gl_divert_fixup()])])
25:
26:
27: # AC_DEFUN_ONCE([NAME], VALUE)
28: # ----------------------------
29: # Define NAME to expand to VALUE on the first use (whether by direct
30: # expansion, or by AC_REQUIRE), and to nothing on all subsequent uses.
31: # Avoid bugs in AC_REQUIRE in Autoconf 2.63 and earlier. This
32: # definition is slower than the version in Autoconf 2.64, because it
33: # can only use interfaces that existed since 2.59; but it achieves the
34: # same effect. Quoting is necessary to avoid confusing Automake.
35: m4_version_prereq([2.63.263], [],
36: [m4_define([AC][_DEFUN_ONCE],
37: [AC][_DEFUN([$1],
38: [AC_REQUIRE([_gl_DEFUN_ONCE([$1])],
39: [m4_indir([_gl_DEFUN_ONCE([$1])])])])]dnl
40: [AC][_DEFUN([_gl_DEFUN_ONCE([$1])], [$2])])])
41:
42: # gl_00GNULIB
43: # -----------
44: # Witness macro that this file has been included. Needed to force
45: # Automake to include this file prior to all other gnulib .m4 files.
46: AC_DEFUN([gl_00GNULIB])
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>