doc/stdenv: document more setup hook
Here I document setup hooks provided by: - cmake - xcbuildHook - meson - ninja - unzip - wafHook - scons
This commit is contained in:
parent
4621d14b4a
commit
49e5bd0dbe
@ -2464,7 +2464,104 @@ addEnvHooks "$hostOffset" myBashFunction
|
|||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
</variablelist>
|
<varlistentry>
|
||||||
|
<term>
|
||||||
|
cmake
|
||||||
|
</term>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Overrides the default configure phase to run the CMake command. By
|
||||||
|
default, we use the Make generator of CMake. In
|
||||||
|
addition, dependencies are added automatically to CMAKE_PREFIX_PATH so
|
||||||
|
that packages are correctly detected by CMake. Some additional flags
|
||||||
|
are passed in to give similar behavior to configure-based packages. You
|
||||||
|
can disable this hook’s behavior by setting configurePhase to a custom
|
||||||
|
value, or by setting dontUseCmakeConfigure. cmakeFlags controls flags
|
||||||
|
passed only to CMake. By default, parallel building is enabled as CMake
|
||||||
|
supports parallel building almost everywhere. When Ninja is also in
|
||||||
|
use, CMake will detect that and use the ninja generator.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>
|
||||||
|
xcbuildHook
|
||||||
|
</term>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Overrides the build and install phases to run the “xcbuild” command.
|
||||||
|
This hook is needed when a project only comes with build files for the
|
||||||
|
XCode build system. You can disable this behavior by setting buildPhase
|
||||||
|
and configurePhase to a custom value. xcbuildFlags controls flags
|
||||||
|
passed only to xcbuild.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>
|
||||||
|
meson
|
||||||
|
</term>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Overrides the configure phase to run meson to generate Ninja files. You
|
||||||
|
can disable this behavior by setting configurePhase to a custom value,
|
||||||
|
or by setting dontUseMesonConfigure. To run these files, you should
|
||||||
|
accompany meson with ninja. mesonFlags controls only the flags passed
|
||||||
|
to meson. By default, parallel building is enabled as Meson supports
|
||||||
|
parallel building almost everywhere.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>
|
||||||
|
ninja
|
||||||
|
</term>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Overrides the build, install, and check phase to run ninja instead of
|
||||||
|
make. You can disable this behavior with the dontUseNinjaBuild,
|
||||||
|
dontUseNinjaInstall, and dontUseNinjaCheck, respectively. Parallel
|
||||||
|
building is enabled by default in Ninja.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>
|
||||||
|
unzip
|
||||||
|
</term>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
This setup hook will allow you to unzip .zip files specified in $src.
|
||||||
|
There are many similar packages like unrar, undmg, etc.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>
|
||||||
|
wafHook
|
||||||
|
</term>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Overrides the configure, build, and install phases. This will run the
|
||||||
|
"waf" script used by many projects. If waf doesn’t exist, it will copy
|
||||||
|
the version of waf available in Nixpkgs wafFlags can be used to pass
|
||||||
|
flags to the waf script.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>
|
||||||
|
scons
|
||||||
|
</term>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Overrides the build, install, and check phases. This uses the scons
|
||||||
|
build system as a replacement for make. scons does not provide a
|
||||||
|
configure phase, so everything is managed at build and install time.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
</variablelist>
|
||||||
</para>
|
</para>
|
||||||
</section>
|
</section>
|
||||||
<section xml:id="sec-purity-in-nixpkgs">
|
<section xml:id="sec-purity-in-nixpkgs">
|
||||||
|
Loading…
x
Reference in New Issue
Block a user