git: 6dcc931d2b00 - stable/15 - contrib/lutok: update from 0.4 to 0.6.2

From: Enji Cooper <ngie_at_FreeBSD.org>
Date: Thu, 01 Oct 2026 06:33:12 UTC
The branch stable/15 has been updated by ngie:

URL: https://cgit.FreeBSD.org/src/commit/?id=6dcc931d2b004aac7e92246fb004eb0547343bed

commit 6dcc931d2b004aac7e92246fb004eb0547343bed
Author:     Enji Cooper <ngie@FreeBSD.org>
AuthorDate: 2026-08-31 16:29:06 +0000
Commit:     Enji Cooper <ngie@FreeBSD.org>
CommitDate: 2026-10-01 06:32:15 +0000

    contrib/lutok: update from 0.4 to 0.6.2
    
    More information about what's included in the new release can be found
    [here](https://github.com/freebsd/lutok/compare/lutok-0.4...lutok-0.6.2).
    
    MFC after:      1 week
    Merge commit '447d4fe61d8bf55ffa21698ecee0ac51010a9a0f'
    
    (cherry picked from commit 132f818ddbf457ee67d502cd89b5a18e0a34713d)
---
 contrib/lutok/.gitignore                           |    21 -
 contrib/lutok/.travis.yml                          |    25 -
 contrib/lutok/INSTALL                              |   181 -
 contrib/lutok/INSTALL.md                           |   182 +
 contrib/lutok/Makefile.am                          |     6 +-
 contrib/lutok/Makefile.in                          |  1574 ++
 contrib/lutok/NEWS                                 |    74 +-
 contrib/lutok/{README => README.md}                |    16 +-
 contrib/lutok/aclocal.m4                           |  1733 ++
 contrib/lutok/admin/.gitignore                     |     8 -
 contrib/lutok/admin/ar-lib                         |   279 +
 contrib/lutok/admin/clean-all.sh                   |    90 -
 contrib/lutok/admin/compile                        |   351 +
 contrib/lutok/admin/config.guess                   |  1480 ++
 contrib/lutok/admin/config.sub                     |  1802 ++
 contrib/lutok/admin/depcomp                        |   792 +
 contrib/lutok/admin/install-sh                     |   541 +
 contrib/lutok/admin/ltmain.sh                      | 11524 +++++++++
 contrib/lutok/admin/missing                        |   236 +
 contrib/lutok/admin/travis-build.sh                |    51 -
 contrib/lutok/admin/travis-install-deps.sh         |   109 -
 contrib/lutok/api-docs/html/a00002.html            |    99 +
 contrib/lutok/api-docs/html/a00002_source.html     |   168 +
 contrib/lutok/api-docs/html/a00029.html            |   132 +
 contrib/lutok/api-docs/html/a00029_source.html     |   247 +
 contrib/lutok/api-docs/html/a00032.html            |    98 +
 contrib/lutok/api-docs/html/a00032_source.html     |   143 +
 contrib/lutok/api-docs/html/a00038.html            |   338 +
 contrib/lutok/api-docs/html/a00038_source.html     |   138 +
 contrib/lutok/api-docs/html/a00041.html            |    99 +
 contrib/lutok/api-docs/html/a00041_source.html     |   148 +
 contrib/lutok/api-docs/html/a00053.html            |   105 +
 contrib/lutok/api-docs/html/a00053_source.html     |   169 +
 contrib/lutok/api-docs/html/a00056.html            |   165 +
 contrib/lutok/api-docs/html/a00056_source.html     |   198 +
 contrib/lutok/api-docs/html/a00064.html            |   172 +
 contrib/lutok/api-docs/html/a00065.html            |   430 +
 contrib/lutok/api-docs/html/a00066.html            |   363 +
 contrib/lutok/api-docs/html/a00067.html            |   134 +
 contrib/lutok/api-docs/html/a00880.html            |    93 +
 contrib/lutok/api-docs/html/a00883.html            |   235 +
 contrib/lutok/api-docs/html/a00884.html            |    89 +
 contrib/lutok/api-docs/html/a00887.html            |   104 +
 contrib/lutok/api-docs/html/a00888.html            |   103 +
 contrib/lutok/api-docs/html/a00891.html            |   450 +
 contrib/lutok/api-docs/html/a00892.html            |    90 +
 contrib/lutok/api-docs/html/a00895.html            |   155 +
 contrib/lutok/api-docs/html/a00895.png             |   Bin 0 -> 1584 bytes
 contrib/lutok/api-docs/html/a00896.html            |    95 +
 contrib/lutok/api-docs/html/a00899.html            |   261 +
 contrib/lutok/api-docs/html/a00899.png             |   Bin 0 -> 914 bytes
 contrib/lutok/api-docs/html/a00900.html            |    94 +
 contrib/lutok/api-docs/html/a00903.html            |   195 +
 contrib/lutok/api-docs/html/a00903.png             |   Bin 0 -> 1106 bytes
 contrib/lutok/api-docs/html/a00904.html            |    91 +
 contrib/lutok/api-docs/html/a00907.html            |   161 +
 contrib/lutok/api-docs/html/a00908.html            |    94 +
 contrib/lutok/api-docs/html/a00911.html            |   214 +
 contrib/lutok/api-docs/html/a00912.html            |    91 +
 contrib/lutok/api-docs/html/a00915.html            |   161 +
 contrib/lutok/api-docs/html/a00916.html            |   139 +
 contrib/lutok/api-docs/html/a00919.html            |  1657 ++
 contrib/lutok/api-docs/html/a00920.html            |    93 +
 contrib/lutok/api-docs/html/a00923.html            |   201 +
 contrib/lutok/api-docs/html/annotated.html         |    98 +
 contrib/lutok/api-docs/html/bc_s.png               |   Bin 0 -> 676 bytes
 contrib/lutok/api-docs/html/bc_sd.png              |   Bin 0 -> 635 bytes
 contrib/lutok/api-docs/html/bdwn.png               |   Bin 0 -> 147 bytes
 contrib/lutok/api-docs/html/classes.html           |   102 +
 contrib/lutok/api-docs/html/closed.png             |   Bin 0 -> 132 bytes
 contrib/lutok/api-docs/html/doc.png                |   Bin 0 -> 746 bytes
 contrib/lutok/api-docs/html/docd.png               |   Bin 0 -> 756 bytes
 contrib/lutok/api-docs/html/doxygen.css            |  2007 ++
 contrib/lutok/api-docs/html/doxygen.svg            |    26 +
 contrib/lutok/api-docs/html/dynsections.js         |   123 +
 contrib/lutok/api-docs/html/files.html             |    92 +
 contrib/lutok/api-docs/html/folderclosed.png       |   Bin 0 -> 616 bytes
 contrib/lutok/api-docs/html/folderopen.png         |   Bin 0 -> 597 bytes
 contrib/lutok/api-docs/html/functions.html         |   243 +
 contrib/lutok/api-docs/html/functions_func.html    |   228 +
 contrib/lutok/api-docs/html/functions_vars.html    |    91 +
 contrib/lutok/api-docs/html/globals.html           |    81 +
 contrib/lutok/api-docs/html/globals_defs.html      |    81 +
 contrib/lutok/api-docs/html/hierarchy.html         |    98 +
 contrib/lutok/api-docs/html/index.html             |    81 +
 contrib/lutok/api-docs/html/jquery.js              |    34 +
 contrib/lutok/api-docs/html/menu.js                |   136 +
 contrib/lutok/api-docs/html/menudata.js            |    79 +
 contrib/lutok/api-docs/html/namespacemembers.html  |    97 +
 .../lutok/api-docs/html/namespacemembers_func.html |    97 +
 contrib/lutok/api-docs/html/namespaces.html        |    90 +
 contrib/lutok/api-docs/html/nav_f.png              |   Bin 0 -> 153 bytes
 contrib/lutok/api-docs/html/nav_fd.png             |   Bin 0 -> 169 bytes
 contrib/lutok/api-docs/html/nav_g.png              |   Bin 0 -> 95 bytes
 contrib/lutok/api-docs/html/nav_h.png              |   Bin 0 -> 98 bytes
 contrib/lutok/api-docs/html/nav_hd.png             |   Bin 0 -> 114 bytes
 contrib/lutok/api-docs/html/open.png               |   Bin 0 -> 123 bytes
 contrib/lutok/api-docs/html/search/all_0.js        |     9 +
 contrib/lutok/api-docs/html/search/all_1.js        |     9 +
 contrib/lutok/api-docs/html/search/all_10.js       |     4 +
 contrib/lutok/api-docs/html/search/all_11.js       |     4 +
 contrib/lutok/api-docs/html/search/all_12.js       |    11 +
 contrib/lutok/api-docs/html/search/all_2.js        |    17 +
 contrib/lutok/api-docs/html/search/all_3.js        |     7 +
 contrib/lutok/api-docs/html/search/all_4.js        |     7 +
 contrib/lutok/api-docs/html/search/all_5.js        |     7 +
 contrib/lutok/api-docs/html/search/all_6.js        |    11 +
 contrib/lutok/api-docs/html/search/all_7.js        |     5 +
 contrib/lutok/api-docs/html/search/all_8.js        |    13 +
 contrib/lutok/api-docs/html/search/all_9.js        |     9 +
 contrib/lutok/api-docs/html/search/all_a.js        |    10 +
 contrib/lutok/api-docs/html/search/all_b.js        |    11 +
 contrib/lutok/api-docs/html/search/all_c.js        |    17 +
 contrib/lutok/api-docs/html/search/all_d.js        |    10 +
 contrib/lutok/api-docs/html/search/all_e.js        |    15 +
 contrib/lutok/api-docs/html/search/all_f.js        |     9 +
 contrib/lutok/api-docs/html/search/classes_0.js    |     4 +
 contrib/lutok/api-docs/html/search/classes_1.js    |     4 +
 contrib/lutok/api-docs/html/search/classes_2.js    |     4 +
 contrib/lutok/api-docs/html/search/classes_3.js    |     4 +
 contrib/lutok/api-docs/html/search/classes_4.js    |     4 +
 contrib/lutok/api-docs/html/search/classes_5.js    |     7 +
 contrib/lutok/api-docs/html/search/close.svg       |    31 +
 contrib/lutok/api-docs/html/search/defines_0.js    |     4 +
 contrib/lutok/api-docs/html/search/files_0.js      |     4 +
 contrib/lutok/api-docs/html/search/files_1.js      |     4 +
 contrib/lutok/api-docs/html/search/files_2.js      |     4 +
 contrib/lutok/api-docs/html/search/files_3.js      |     4 +
 contrib/lutok/api-docs/html/search/files_4.js      |     5 +
 contrib/lutok/api-docs/html/search/files_5.js      |     4 +
 contrib/lutok/api-docs/html/search/functions_0.js  |     5 +
 contrib/lutok/api-docs/html/search/functions_1.js  |    15 +
 contrib/lutok/api-docs/html/search/functions_10.js |     4 +
 contrib/lutok/api-docs/html/search/functions_11.js |    11 +
 contrib/lutok/api-docs/html/search/functions_2.js  |     6 +
 contrib/lutok/api-docs/html/search/functions_3.js  |     6 +
 contrib/lutok/api-docs/html/search/functions_4.js  |     7 +
 contrib/lutok/api-docs/html/search/functions_5.js  |    11 +
 contrib/lutok/api-docs/html/search/functions_6.js  |     5 +
 contrib/lutok/api-docs/html/search/functions_7.js  |    13 +
 contrib/lutok/api-docs/html/search/functions_8.js  |     7 +
 contrib/lutok/api-docs/html/search/functions_9.js  |    10 +
 contrib/lutok/api-docs/html/search/functions_a.js  |     8 +
 contrib/lutok/api-docs/html/search/functions_b.js  |    17 +
 contrib/lutok/api-docs/html/search/functions_c.js  |     8 +
 contrib/lutok/api-docs/html/search/functions_d.js  |    12 +
 contrib/lutok/api-docs/html/search/functions_e.js  |     8 +
 contrib/lutok/api-docs/html/search/functions_f.js  |     4 +
 contrib/lutok/api-docs/html/search/mag.svg         |    37 +
 contrib/lutok/api-docs/html/search/mag_d.svg       |    37 +
 contrib/lutok/api-docs/html/search/mag_sel.svg     |    74 +
 contrib/lutok/api-docs/html/search/mag_seld.svg    |    74 +
 contrib/lutok/api-docs/html/search/namespaces_0.js |     7 +
 contrib/lutok/api-docs/html/search/search.css      |   291 +
 contrib/lutok/api-docs/html/search/search.js       |   816 +
 contrib/lutok/api-docs/html/search/searchdata.js   |    36 +
 contrib/lutok/api-docs/html/search/typedefs_0.js   |     4 +
 contrib/lutok/api-docs/html/search/variables_0.js  |     9 +
 contrib/lutok/api-docs/html/search/variables_1.js  |     5 +
 contrib/lutok/api-docs/html/search/variables_2.js  |     5 +
 contrib/lutok/api-docs/html/search/variables_3.js  |     4 +
 contrib/lutok/api-docs/html/search/variables_4.js  |     4 +
 contrib/lutok/api-docs/html/splitbar.png           |   Bin 0 -> 314 bytes
 contrib/lutok/api-docs/html/splitbard.png          |   Bin 0 -> 282 bytes
 contrib/lutok/api-docs/html/sync_off.png           |   Bin 0 -> 853 bytes
 contrib/lutok/api-docs/html/sync_on.png            |   Bin 0 -> 845 bytes
 contrib/lutok/api-docs/html/tab_a.png              |   Bin 0 -> 142 bytes
 contrib/lutok/api-docs/html/tab_ad.png             |   Bin 0 -> 135 bytes
 contrib/lutok/api-docs/html/tab_b.png              |   Bin 0 -> 169 bytes
 contrib/lutok/api-docs/html/tab_bd.png             |   Bin 0 -> 173 bytes
 contrib/lutok/api-docs/html/tab_h.png              |   Bin 0 -> 177 bytes
 contrib/lutok/api-docs/html/tab_hd.png             |   Bin 0 -> 180 bytes
 contrib/lutok/api-docs/html/tab_s.png              |   Bin 0 -> 184 bytes
 contrib/lutok/api-docs/html/tab_sd.png             |   Bin 0 -> 188 bytes
 contrib/lutok/api-docs/html/tabs.css               |     1 +
 contrib/lutok/config.h.in                          |    66 +
 contrib/lutok/configure                            | 23387 +++++++++++++++++++
 contrib/lutok/configure.ac                         |    38 +-
 contrib/lutok/debug.hpp                            |     8 -
 contrib/lutok/examples_test.sh                     |     0
 contrib/lutok/m4/.gitignore                        |     5 -
 contrib/lutok/m4/ac_cxx_compile_stdcxx.m4          |  1070 +
 contrib/lutok/m4/atf-c++.m4                        |    44 +
 contrib/lutok/m4/atf-common.m4                     |    88 +
 contrib/lutok/m4/atf-sh.m4                         |    49 +
 contrib/lutok/m4/compiler-features.m4              |   100 -
 contrib/lutok/m4/libtool.m4                        |  8488 +++++++
 contrib/lutok/m4/ltoptions.m4                      |   467 +
 contrib/lutok/m4/ltsugar.m4                        |   124 +
 contrib/lutok/m4/ltversion.m4                      |    24 +
 contrib/lutok/m4/lt~obsolete.m4                    |    99 +
 contrib/lutok/m4/lua.m4                            |    49 +-
 contrib/lutok/stack_cleaner.hpp                    |     4 +-
 contrib/lutok/state.cpp                            |     4 +-
 contrib/lutok/state.hpp                            |    11 +-
 195 files changed, 68447 insertions(+), 682 deletions(-)

diff --git a/contrib/lutok/.gitignore b/contrib/lutok/.gitignore
deleted file mode 100644
index f1e0159d4427..000000000000
--- a/contrib/lutok/.gitignore
+++ /dev/null
@@ -1,21 +0,0 @@
-*.la
-*.lo
-*.o
-*_test
-
-.deps
-.libs
-Doxyfile
-Makefile
-Makefile.in
-aclocal.m4
-api-docs
-autom4te.cache
-config.h
-config.h.in
-config.log
-config.status
-configure
-libtool
-lutok.pc
-stamp-h1
diff --git a/contrib/lutok/.travis.yml b/contrib/lutok/.travis.yml
deleted file mode 100644
index 1e2fb77df152..000000000000
--- a/contrib/lutok/.travis.yml
+++ /dev/null
@@ -1,25 +0,0 @@
-language: cpp
-
-compiler:
-    - gcc
-    - clang
-
-before_install:
-    - ./admin/travis-install-deps.sh
-
-env:
-    - ARCH=amd64 AS_ROOT=no
-    - ARCH=amd64 AS_ROOT=yes
-    - ARCH=i386 AS_ROOT=no
-
-matrix:
-    exclude:
-        - compiler: clang
-          env: ARCH=i386 AS_ROOT=no
-
-script:
-    - ./admin/travis-build.sh
-
-notifications:
-    email:
-        - lutok-log@googlegroups.com
diff --git a/contrib/lutok/INSTALL b/contrib/lutok/INSTALL
deleted file mode 100644
index 890b0e1b05af..000000000000
--- a/contrib/lutok/INSTALL
+++ /dev/null
@@ -1,181 +0,0 @@
-Introduction
-============
-
-Lutok uses the GNU Automake, GNU Autoconf and GNU Libtool utilities as
-its build system.  These are used only when compiling the library from
-the source code package.  If you want to install Lutok from a binary
-package, you do not need to read this document.
-
-For the impatient:
-
-    $ ./configure
-    $ make
-    $ make check
-    Gain root privileges
-    # make install
-    Drop root privileges
-    $ make installcheck
-
-Or alternatively, install as a regular user into your home directory:
-
-    $ ./configure --prefix ~/local
-    $ make
-    $ make check
-    $ make install
-    $ make installcheck
-
-
-Dependencies
-============
-
-To build and use Lutok successfully you need:
-
-* A standards-compliant C++ complier.
-* Lua 5.1 or greater.
-* pkg-config.
-
-Optionally, if you want to build and run the tests (recommended), you
-need:
-
-* Kyua 0.5 or greater.
-* ATF 0.15 or greater.
-
-If you are building Lutok from the code on the repository, you will also
-need the following tools:
-
-* GNU Autoconf.
-* GNU Automake.
-* GNU Libtool.
-
-
-Regenerating the build system
-=============================
-
-This is not necessary if you are building from a formal release
-distribution file.
-
-On the other hand, if you are building Lutok from code extracted from
-the repository, you must first regenerate the files used by the build
-system.  You will also need to do this if you modify configure.ac,
-Makefile.am or any of the other build system files.  To do this, simply
-run:
-
-    $ autoreconf -i -s
-
-If ATF is installed in a different prefix than Autoconf, you will also
-need to tell autoreconf where the ATF M4 macros are located.  Otherwise,
-the configure script will be incomplete and will show confusing syntax
-errors mentioning, for example, ATF_CHECK_SH.  To fix this, you have
-to run autoreconf in the following manner, replacing '<atf-prefix>' with
-the appropriate path:
-
-    $ autoreconf -i -s -I <atf-prefix>/share/aclocal
-
-
-General build procedure
-=======================
-
-To build and install the source package, you must follow these steps:
-
-1. Configure the sources to adapt to your operating system.  This is
-   done using the 'configure' script located on the sources' top
-   directory, and it is usually invoked without arguments unless you
-   want to change the installation prefix.  More details on this
-   procedure are given on a later section.
-
-2. Build the sources to generate the binaries and scripts.  Simply run
-   'make' on the sources' top directory after configuring them.  No
-   problems should arise.
-
-3. Install the library by running 'make install'.  You may need to
-   become root to issue this step.
-
-4. Issue any manual installation steps that may be required.  These are
-   described later in their own section.
-
-5. Check that the installed library works by running 'make
-   installcheck'.  You do not need to be root to do this.
-
-
-Configuration flags
-===================
-
-The most common, standard flags given to 'configure' are:
-
-* --prefix=directory
-  Possible values: Any path
-  Default: /usr/local
-
-  Specifies where the library (binaries and all associated files) will
-  be installed.
-
-* --help
-  Shows information about all available flags and exits immediately,
-  without running any configuration tasks.
-
-The following flags are specific to Lutok's 'configure' script:
-
-* --enable-developer
-  Possible values: yes, no
-  Default: 'yes' in Git HEAD builds; 'no' in formal releases.
-
-  Enables several features useful for development, such as the inclusion
-  of debugging symbols in all objects or the enforcement of compilation
-  warnings.
-
-  The compiler will be executed with an exhaustive collection of warning
-  detection features regardless of the value of this flag.  However, such
-  warnings are only fatal when --enable-developer is 'yes'.
-
-* --with-atf
-  Possible values: yes, no, auto.
-  Default: auto.
-
-  Enables usage of ATF to build (and later install) the tests.
-
-  Setting this to 'yes' causes the configure script to look for ATF
-  unconditionally and abort if not found.  Setting this to 'auto' lets
-  configure perform the best decision based on availability of ATF.
-  Setting this to 'no' explicitly disables ATF usage.
-
-  When support for tests is enabled, the build process will generate the
-  test programs and will later install them into the tests tree.
-  Running 'make check' or 'make installcheck' from within the source
-  directory will cause these tests to be run with Kyua (assuming it is
-  also installed).
-
-* --with-doxygen
-  Possible values: yes, no, auto or a path.
-  Default: auto.
-
-  Enables usage of Doxygen to generate documentation for internal APIs.
-
-  Setting this to 'yes' causes the configure script to look for Doxygen
-  unconditionally and abort if not found.  Setting this to 'auto' lets
-  configure perform the best decision based on availability of Doxygen.
-  Setting this to 'no' explicitly disables Doxygen usage.  And, lastly,
-  setting this to a path forces configure to use a specific Doxygen
-  binary, which must exist.
-
-  When support for Doxygen is enabled, the build process will generate
-  HTML documentation for the Lutok API.  This documentation will later
-  be installed in the HTML directory specified by the configure script.
-  You can change the location of the HTML documents by providing your
-  desired override with the '--htmldir' flag to the configure script.
-
-
-Run the tests!
-==============
-
-Lastly, after a successful installation (and assuming you built the
-sources with support for ATF), you should periodically run the tests
-from the final location to ensure things remain stable.  Do so as
-follows:
-
-    $ kyua test -k /usr/local/tests/lutok/Kyuafile
-
-And if you see any tests fail, do not hesitate to report them in:
-
-    https://github.com/jmmv/lutok/issues/
-
-Thank you!
diff --git a/contrib/lutok/INSTALL.md b/contrib/lutok/INSTALL.md
new file mode 100644
index 000000000000..3bed7c1f556c
--- /dev/null
+++ b/contrib/lutok/INSTALL.md
@@ -0,0 +1,182 @@
+# Introduction
+
+Lutok uses the GNU Automake, GNU Autoconf and GNU Libtool utilities as
+its build system.  These are used only when compiling the library from
+the source code package.  If you want to install Lutok from a binary
+package, you do not need to read this document.
+
+For the impatient:
+
+```shell
+$ ./configure
+$ make
+$ make check
+$ sudo make install # or `make install` with root privileges
+$ make installcheck
+```
+
+Or alternatively, install as a regular user into your home directory:
+
+```shell
+$ ./configure --prefix ~/local
+$ make
+$ make check
+$ make install
+$ make installcheck
+```
+
+# Dependencies
+
+To build and use Lutok successfully you need:
+
+* A C++-11 standards-compliant compiler.
+* Lua 5.1 or greater.
+* pkg-config or an equivalent tool, e.g., pkgconf.
+
+Optionally, if you want to build and run the tests (recommended), you
+need:
+
+* Kyua 0.5 or greater.
+* ATF 0.15 or greater.
+
+If you are building Lutok from the code on the repository, you will also
+need the following tools:
+
+* GNU Autoconf 2.68 (or later).
+* GNU Automake 1.9 (or later).
+* GNU Libtool.
+
+
+# Regenerating the build system
+
+This is not necessary if you are building from a formal release
+distribution file.
+
+On the other hand, if you are building Lutok from code extracted from
+the repository, you must first regenerate the files used by the build
+system.  You will also need to do this if you modify `configure.ac`,
+`Makefile.am`, or any of the other build system files.  To do this, simply
+run:
+
+```shell
+$ autoreconf -i -s
+```
+
+If ATF is installed in a different prefix than `autoconf`, you will also
+need to tell `autoreconf` where the ATF m4 macros are located.  Otherwise,
+the `configure` script will be incomplete and will show confusing syntax
+errors mentioning, for example, `ATF_CHECK_SH`.  To fix this, you have
+to run `autoreconf` in the following manner, replacing `<atf-prefix>` with
+the appropriate path:
+
+```shell
+$ autoreconf -i -s -I <atf-prefix>/share/aclocal
+```
+
+# General build procedure
+
+To build and install the source package, you must follow these steps:
+
+#. Configure the sources to adapt to your operating system.  This is
+   done using the `configure` script located on the sources' top
+   directory, and it is usually invoked without arguments unless you
+   want to change the installation prefix.  More details on this
+   procedure are given on a later section.
+
+#. Build the sources to generate the binaries and scripts.  Simply run
+   `make` on the sources' top directory after configuring them.  No
+   problems should arise.
+
+#. Install the library by running `make install`.  You may need to
+   become root to issue this step.
+
+#. Issue any manual installation steps that may be required.  These are
+   described later in their own section.
+
+#. Check that the installed library works by running `make installcheck`.
+   You do not need to be root to do this.
+
+
+# Configuration flags
+
+The most common, standard flags given to `configure` are:
+
+- `--prefix=directory`
+    - **Possible values**: any path
+    - **Default**: "/usr/local"
+
+      Specifies where the library (binaries and all associated files) will
+      be installed.
+
+- `--help`
+      Shows information about all available flags and exits immediately,
+      without running any configuration tasks.
+
+The following flags are specific to Lutok's `configure` script:
+
+- `--enable-developer`
+    - **Possible values**: "yes", "no"
+    - **Default**: "yes" in Git HEAD builds; "no" in formal releases.
+
+      Enables several features useful for development, such as the inclusion
+      of debugging symbols in all objects or the enforcement of compilation
+      warnings.
+
+      The compiler will be executed with an exhaustive collection of warning
+      detection features regardless of the value of this flag.  However, such
+      warnings are only fatal when `--enable-developer` is set to "yes".
+
+- `--enable-atf`
+    - **Possible values**: "yes", "no", "auto".
+    - **Default**: "auto"
+
+      Enables usage of ATF to build (and later install) the tests.
+
+      Setting this to "yes" causes the `configure` script to look for ATF
+      unconditionally and abort if not found.  Setting this to "auto" lets
+      `configure` perform the best decision based on availability of ATF.
+      Setting this to "no" explicitly disables ATF usage.
+
+      When support for tests is enabled, the build process will generate the
+      test programs and will later install them into the tests tree.
+      Running `make check` or `make installcheck` from within the source
+      directory will cause these tests to be run with Kyua (assuming it is
+      also installed).
+
+- `--with-doxygen`
+    - **Possible values**: "yes", "no", "auto", or a path.
+    - **Default**: "auto".
+
+      Enables usage of Doxygen to generate documentation for internal APIs.
+
+      Setting this to "yes" causes the `configure` script to look for Doxygen
+      unconditionally and abort if not found.  Setting this to "auto" lets
+      `configure` perform the best decision based on availability of Doxygen.
+      Setting this to "no" explicitly disables Doxygen usage.  And, lastly,
+      setting this to a path forces `configure` to use a specific Doxygen
+      binary, which must exist.
+
+      When support for Doxygen is enabled, the build process will generate
+      HTML documentation for the Lutok API.  This documentation will later
+      be installed in the HTML directory specified by the `configure` script.
+      You can change the location of the HTML documents by providing your
+      desired override with the `--htmldir` flag to the `configure` script.
+
+
+Run the tests!
+==============
+
+Lastly, after a successful installation (and assuming you built the
+sources with support for ATF), you should periodically run the tests
+from the final location to ensure things remain stable.  Do so as
+follows:
+
+```shell
+$ kyua test -k /usr/local/tests/lutok/Kyuafile
+```
+
+And if you see any tests fail, do not hesitate to report them in:
+
+    https://github.com/freebsd/lutok/issues/
+
+Thank you!
diff --git a/contrib/lutok/Makefile.am b/contrib/lutok/Makefile.am
index ec7e87814548..64f8304bd480 100644
--- a/contrib/lutok/Makefile.am
+++ b/contrib/lutok/Makefile.am
@@ -28,9 +28,9 @@
 
 ACLOCAL_AMFLAGS = -I m4
 
-doc_DATA = AUTHORS COPYING NEWS README
-noinst_DATA = INSTALL README
-EXTRA_DIST = $(doc_DATA) INSTALL README
+doc_DATA = AUTHORS COPYING NEWS README.md
+noinst_DATA = INSTALL.md README.md
+EXTRA_DIST = $(doc_DATA) INSTALL.md README.md
 
 LUTOK_CFLAGS = -I$(srcdir)/include $(LUA_CFLAGS)
 LUTOK_LIBS = liblutok.la $(LUA_LIBS)
diff --git a/contrib/lutok/Makefile.in b/contrib/lutok/Makefile.in
new file mode 100644
index 000000000000..bf7c4021eabc
--- /dev/null
+++ b/contrib/lutok/Makefile.in
@@ -0,0 +1,1574 @@
+# Makefile.in generated by automake 1.17 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994-2024 Free Software Foundation, Inc.
+
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+# Copyright 2010 Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+# * Redistributions of source code must retain the above copyright
+#   notice, this list of conditions and the following disclaimer.
+# * Redistributions in binary form must reproduce the above copyright
+#   notice, this list of conditions and the following disclaimer in the
+#   documentation and/or other materials provided with the distribution.
+# * Neither the name of Google Inc. nor the names of its contributors
+#   may be used to endorse or promote products derived from this software
+#   without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+
+
+
+VPATH = @srcdir@
+am__is_gnu_make = { \
+  if test -z '$(MAKELEVEL)'; then \
+    false; \
+  elif test -n '$(MAKE_HOST)'; then \
+    true; \
+  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
+    true; \
+  else \
+    false; \
+  fi; \
+}
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
+    case $$MAKEFLAGS in \
+      *\\[\ \	]*) \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
+    esac; \
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
+am__rm_f = rm -f $(am__rm_f_notfound)
+am__rm_rf = rm -rf $(am__rm_f_notfound)
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+@WITH_ATF_TRUE@am__append_1 = $(tests_DATA) examples_test.sh
+@WITH_ATF_TRUE@tests_PROGRAMS = c_gate_test$(EXEEXT) \
+@WITH_ATF_TRUE@	debug_test$(EXEEXT) exceptions_test$(EXEEXT) \
+@WITH_ATF_TRUE@	operations_test$(EXEEXT) \
+@WITH_ATF_TRUE@	stack_cleaner_test$(EXEEXT) state_test$(EXEEXT)
+@WITH_ATF_TRUE@am__append_2 = examples_test
+@HAVE_KYUA_TRUE@@WITH_ATF_TRUE@am__append_3 = check-kyua \
+@HAVE_KYUA_TRUE@@WITH_ATF_TRUE@	installcheck-kyua
+@WITH_ATF_FALSE@am__append_4 = dist-no-atf
+@WITH_ATF_FALSE@am__append_5 = dist-no-atf
+@WITH_DOXYGEN_TRUE@am__append_6 = clean-api-docs
+@WITH_DOXYGEN_TRUE@am__append_7 = api-docs/html
+@WITH_DOXYGEN_FALSE@am__append_8 = dist-no-doxygen
+@WITH_DOXYGEN_FALSE@am__append_9 = dist-no-doxygen
+subdir = .
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_cxx_compile_stdcxx.m4 \
+	$(top_srcdir)/m4/atf-c++.m4 $(top_srcdir)/m4/atf-common.m4 \
+	$(top_srcdir)/m4/atf-sh.m4 $(top_srcdir)/m4/compiler-flags.m4 \
+	$(top_srcdir)/m4/developer-mode.m4 $(top_srcdir)/m4/doxygen.m4 \
+	$(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
+	$(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
+	$(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/lua.m4 \
+	$(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+	$(ACLOCAL_M4)
+DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \
+	$(am__configure_deps) $(pkginclude_HEADERS) $(am__DIST_COMMON)
+am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
+ configure.lineno config.status.lineno
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = config.h
+CONFIG_CLEAN_FILES = Doxyfile
+CONFIG_CLEAN_VPATH_FILES =
+am__installdirs = "$(DESTDIR)$(testsdir)" "$(DESTDIR)$(libdir)" \
+	"$(DESTDIR)$(testsdir)" "$(DESTDIR)$(docdir)" \
+	"$(DESTDIR)$(examplesdir)" "$(DESTDIR)$(pkgconfigdir)" \
+	"$(DESTDIR)$(testsdir)" "$(DESTDIR)$(pkgincludedir)"
+PROGRAMS = $(tests_PROGRAMS)
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
+am__uninstall_files_from_dir = { \
+  { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
+  || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
+       $(am__cd) "$$dir" && echo $$files | $(am__xargs_n) 40 $(am__rm_f); }; \
+  }
+LTLIBRARIES = $(lib_LTLIBRARIES)
+am__DEPENDENCIES_1 =
+liblutok_la_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am_liblutok_la_OBJECTS = liblutok_la-c_gate.lo liblutok_la-debug.lo \
+	liblutok_la-exceptions.lo liblutok_la-operations.lo \
+	liblutok_la-stack_cleaner.lo liblutok_la-state.lo
+liblutok_la_OBJECTS = $(am_liblutok_la_OBJECTS)
+AM_V_lt = $(am__v_lt_@AM_V@)
+am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
+am__v_lt_0 = --silent
+am__v_lt_1 = 
+liblutok_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
+	$(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
+	$(CXXFLAGS) $(liblutok_la_LDFLAGS) $(LDFLAGS) -o $@
+am__c_gate_test_SOURCES_DIST = c_gate_test.cpp test_utils.hpp
+@WITH_ATF_TRUE@am_c_gate_test_OBJECTS =  \
+@WITH_ATF_TRUE@	c_gate_test-c_gate_test.$(OBJEXT)
+c_gate_test_OBJECTS = $(am_c_gate_test_OBJECTS)
+am__DEPENDENCIES_2 = liblutok.la $(am__DEPENDENCIES_1)
+@WITH_ATF_TRUE@c_gate_test_DEPENDENCIES = $(am__DEPENDENCIES_2) \
+@WITH_ATF_TRUE@	$(am__DEPENDENCIES_1)
+c_gate_test_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
+	$(LIBTOOLFLAGS) --mode=link $(CXXLD) $(c_gate_test_CXXFLAGS) \
+	$(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+am__debug_test_SOURCES_DIST = debug_test.cpp test_utils.hpp
+@WITH_ATF_TRUE@am_debug_test_OBJECTS =  \
+@WITH_ATF_TRUE@	debug_test-debug_test.$(OBJEXT)
+debug_test_OBJECTS = $(am_debug_test_OBJECTS)
+@WITH_ATF_TRUE@debug_test_DEPENDENCIES = $(am__DEPENDENCIES_2) \
+@WITH_ATF_TRUE@	$(am__DEPENDENCIES_1)
+debug_test_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
+	$(LIBTOOLFLAGS) --mode=link $(CXXLD) $(debug_test_CXXFLAGS) \
+	$(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+am__exceptions_test_SOURCES_DIST = exceptions_test.cpp
+@WITH_ATF_TRUE@am_exceptions_test_OBJECTS =  \
+@WITH_ATF_TRUE@	exceptions_test-exceptions_test.$(OBJEXT)
+exceptions_test_OBJECTS = $(am_exceptions_test_OBJECTS)
+@WITH_ATF_TRUE@exceptions_test_DEPENDENCIES = $(am__DEPENDENCIES_2) \
+@WITH_ATF_TRUE@	$(am__DEPENDENCIES_1)
+exceptions_test_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \
+	$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CXXLD) \
+	$(exceptions_test_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \
+	$(LDFLAGS) -o $@
+am__operations_test_SOURCES_DIST = operations_test.cpp test_utils.hpp
+@WITH_ATF_TRUE@am_operations_test_OBJECTS =  \
+@WITH_ATF_TRUE@	operations_test-operations_test.$(OBJEXT)
+operations_test_OBJECTS = $(am_operations_test_OBJECTS)
+@WITH_ATF_TRUE@operations_test_DEPENDENCIES = $(am__DEPENDENCIES_2) \
+@WITH_ATF_TRUE@	$(am__DEPENDENCIES_1)
+operations_test_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \
+	$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CXXLD) \
+	$(operations_test_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \
+	$(LDFLAGS) -o $@
+am__stack_cleaner_test_SOURCES_DIST = stack_cleaner_test.cpp \
+	test_utils.hpp
+@WITH_ATF_TRUE@am_stack_cleaner_test_OBJECTS = stack_cleaner_test-stack_cleaner_test.$(OBJEXT)
+stack_cleaner_test_OBJECTS = $(am_stack_cleaner_test_OBJECTS)
+@WITH_ATF_TRUE@stack_cleaner_test_DEPENDENCIES =  \
+@WITH_ATF_TRUE@	$(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1)
+stack_cleaner_test_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \
+	$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CXXLD) \
+	$(stack_cleaner_test_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \
+	$(LDFLAGS) -o $@
+am__state_test_SOURCES_DIST = state_test.cpp test_utils.hpp
+@WITH_ATF_TRUE@am_state_test_OBJECTS =  \
+@WITH_ATF_TRUE@	state_test-state_test.$(OBJEXT)
+state_test_OBJECTS = $(am_state_test_OBJECTS)
+@WITH_ATF_TRUE@state_test_DEPENDENCIES = $(am__DEPENDENCIES_2) \
+@WITH_ATF_TRUE@	$(am__DEPENDENCIES_1)
+state_test_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
+	$(LIBTOOLFLAGS) --mode=link $(CXXLD) $(state_test_CXXFLAGS) \
+	$(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+SCRIPTS = $(tests_SCRIPTS)
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo "  GEN     " $@;
+am__v_GEN_1 = 
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 = 
+DEFAULT_INCLUDES = -I.@am__isrc@
+depcomp = $(SHELL) $(top_srcdir)/admin/depcomp
+am__maybe_remake_depfiles = depfiles
+am__depfiles_remade = ./$(DEPDIR)/c_gate_test-c_gate_test.Po \
+	./$(DEPDIR)/debug_test-debug_test.Po \
+	./$(DEPDIR)/exceptions_test-exceptions_test.Po \
+	./$(DEPDIR)/liblutok_la-c_gate.Plo \
+	./$(DEPDIR)/liblutok_la-debug.Plo \
+	./$(DEPDIR)/liblutok_la-exceptions.Plo \
+	./$(DEPDIR)/liblutok_la-operations.Plo \
+	./$(DEPDIR)/liblutok_la-stack_cleaner.Plo \
+	./$(DEPDIR)/liblutok_la-state.Plo \
+	./$(DEPDIR)/operations_test-operations_test.Po \
+	./$(DEPDIR)/stack_cleaner_test-stack_cleaner_test.Po \
+	./$(DEPDIR)/state_test-state_test.Po
+am__mv = mv -f
+CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+	$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
+LTCXXCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
+	$(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) \
+	$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+	$(AM_CXXFLAGS) $(CXXFLAGS)
+AM_V_CXX = $(am__v_CXX_@AM_V@)
+am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@)
+am__v_CXX_0 = @echo "  CXX     " $@;
+am__v_CXX_1 = 
+CXXLD = $(CXX)
+CXXLINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
+	$(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
+	$(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+AM_V_CXXLD = $(am__v_CXXLD_@AM_V@)
+am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@)
+am__v_CXXLD_0 = @echo "  CXXLD   " $@;
+am__v_CXXLD_1 = 
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+	$(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
+	$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+	$(AM_CFLAGS) $(CFLAGS)
*** 69603 LINES SKIPPED ***