@@ -46,7 +46,6 @@ need the following tools:
4646* GNU Automake 1.9 (or later).
4747* GNU Libtool.
4848
49-
5049# Regenerating the build system
5150
5251This is not necessary if you are building from a formal release
@@ -102,66 +101,94 @@ To build and install the source package, you must follow these steps:
102101The most common, standard flags given to ` configure ` are:
103102
104103- ` --prefix=directory `
105- - ** Possible values** : any path
106- - ** Default** : "/usr/local"
107104
108- Specifies where the library (binaries and all associated files) will
109- be installed.
105+ ** Possible values ** : any path
106+ ** Default ** : "/usr/local"
110107
111- - ` --help `
112- Shows information about all available flags and exits immediately,
113- without running any configuration tasks.
108+ Specifies where the library (binaries and all associated files) will be
109+ installed.
114110
115111The following flags are specific to Lutok's ` configure ` script:
116112
117- - ` --enable-developer `
118- - ** Possible values** : "yes", "no"
119- - ** Default** : "yes" in Git HEAD builds; "no" in formal releases.
113+ - ` --enable-developer ` :
114+
115+ ** Default:** ` yes ` in HEAD builds; ` no ` in release builds.
116+
117+ Enables several features useful for development, such as the inclusion
118+ of debugging symbols in all objects or the enforcement of compilation
119+ warnings.
120+
121+ The compiler will be executed with an exhaustive collection of warning
122+ detection features regardless of the value of this flag. However, such
123+ warnings are only fatal when ` --enable-developer ` is ` yes ` .
120124
121- Enables several features useful for development, such as the inclusion
122- of debugging symbols in all objects or the enforcement of compilation
123- warnings.
125+ - ` --enable-asan `
124126
125- The compiler will be executed with an exhaustive collection of warning
126- detection features regardless of the value of this flag. However, such
127- warnings are only fatal when ` --enable-developer ` is set to "yes".
127+ ** Default:** ` no ` .
128+
129+ Enables ASAN (Address Sanitizer) compiler support in the toolchain.
130+
131+ Platform-specific support varies depending on the toolchain and OS.
128132
129133- ` --enable-atf `
130- - ** Possible values** : "yes", "no", "auto".
131- - ** Default** : "auto"
132134
133- Enables usage of ATF to build (and later install) the tests.
135+ ** Possible values** : "yes", "no", "auto".
136+ ** Default** : "auto"
137+
138+ Enables usage of ATF to build (and later install) the tests.
139+
140+ Setting this to "yes" causes the ` configure ` script to look for ATF
141+ unconditionally and abort if not found. Setting this to "auto" lets
142+ ` configure ` perform the best decision based on availability of ATF.
143+ Setting this to "no" explicitly disables ATF usage.
144+
145+ When support for tests is enabled, the build process will generate the
146+ test programs and will later install them into the tests tree.
147+ Running ` make check ` or ` make installcheck ` from within the source
148+ directory will cause these tests to be run with Kyua (assuming it is
149+ also installed).
150+
151+ - ` --enable-lsan `
152+
153+ ** Default:** ` no ` .
154+
155+ Enables LSAN (Leak Sanitizer) compiler support in the toolchain.
156+
157+ Platform-specific support varies depending on the toolchain and OS.
158+
159+ ** Important:**
160+ * llvm support is only available in Linux and macOS at time of writing.
161+ * The test suite does not currently pass with this option enabled. See
162+ [ Issue #77 ] ( https://github.com/freebsd/atf/issues/77 ) for more details.
163+
164+ - ` --enable-ubsan `
165+
166+ ** Default:** ` no ` .
134167
135- Setting this to "yes" causes the ` configure ` script to look for ATF
136- unconditionally and abort if not found. Setting this to "auto" lets
137- ` configure ` perform the best decision based on availability of ATF.
138- Setting this to "no" explicitly disables ATF usage.
168+ Enables UBSAN (Undefined Behavior Sanitizier) compiler support in the
169+ toolchain.
139170
140- When support for tests is enabled, the build process will generate the
141- test programs and will later install them into the tests tree.
142- Running ` make check ` or ` make installcheck ` from within the source
143- directory will cause these tests to be run with Kyua (assuming it is
144- also installed).
171+ Platform-specific support varies depending on the toolchain and OS.
145172
146173- ` --with-doxygen `
147- - ** Possible values** : "yes", "no", "auto", or a path.
148- - ** Default** : "auto".
149174
150- Enables usage of Doxygen to generate documentation for internal APIs.
175+ ** Possible values** : "yes", "no", "auto", or a path.
176+ ** Default** : "auto".
151177
152- Setting this to "yes" causes the ` configure ` script to look for Doxygen
153- unconditionally and abort if not found. Setting this to "auto" lets
154- ` configure ` perform the best decision based on availability of Doxygen.
155- Setting this to "no" explicitly disables Doxygen usage. And, lastly,
156- setting this to a path forces ` configure ` to use a specific Doxygen
157- binary, which must exist.
178+ Enables usage of Doxygen to generate documentation for internal APIs.
158179
159- When support for Doxygen is enabled, the build process will generate
160- HTML documentation for the Lutok API. This documentation will later
161- be installed in the HTML directory specified by the ` configure ` script.
162- You can change the location of the HTML documents by providing your
163- desired override with the ` --htmldir ` flag to the ` configure ` script.
180+ Setting this to "yes" causes the ` configure ` script to look for Doxygen
181+ unconditionally and abort if not found. Setting this to "auto" lets
182+ ` configure ` perform the best decision based on availability of Doxygen.
183+ Setting this to "no" explicitly disables Doxygen usage. And, lastly,
184+ setting this to a path forces ` configure ` to use a specific Doxygen
185+ binary, which must exist.
164186
187+ When support for Doxygen is enabled, the build process will generate
188+ HTML documentation for the Lutok API. This documentation will later
189+ be installed in the HTML directory specified by the ` configure ` script.
190+ You can change the location of the HTML documents by providing your
191+ desired override with the ` --htmldir ` flag to the ` configure ` script.
165192
166193Run the tests!
167194==============
0 commit comments