forked from OSchip/llvm-project
87 lines
2.6 KiB
Plaintext
87 lines
2.6 KiB
Plaintext
=pod
|
|
|
|
=head1 NAME
|
|
|
|
llvm-build - LLVM Project Build Utility
|
|
|
|
=head1 SYNOPSIS
|
|
|
|
B<llvm-build> [I<options>]
|
|
|
|
=head1 DESCRIPTION
|
|
|
|
B<llvm-build> is a tool for working with LLVM projects that use the LLVMBuild
|
|
system for describing their components.
|
|
|
|
At heart, B<llvm-build> is responsible for loading, verifying, and manipulating
|
|
the project's component data. The tool is primarily designed for use in
|
|
implementing build systems and tools which need access to the project structure
|
|
information.
|
|
|
|
=head1 OPTIONS
|
|
|
|
=over
|
|
|
|
=item B<-h>, B<--help>
|
|
|
|
Print the builtin program help.
|
|
|
|
=item B<--source-root>=I<PATH>
|
|
|
|
If given, load the project at the given source root path. If this option is not
|
|
given, the location of the project sources will be inferred from the location of
|
|
the B<llvm-build> script itself.
|
|
|
|
=item B<--print-tree>
|
|
|
|
Print the component tree for the project.
|
|
|
|
=item B<--write-library-table>
|
|
|
|
Write out the C++ fragment which defines the components, library names, and
|
|
required libraries. This C++ fragment is built into L<llvm-config|llvm-config>
|
|
in order to provide clients with the list of required libraries for arbitrary
|
|
component combinations.
|
|
|
|
=item B<--write-llvmbuild>
|
|
|
|
Write out new I<LLVMBuild.txt> files based on the loaded components. This is
|
|
useful for auto-upgrading the schema of the files. B<llvm-build> will try to a
|
|
limited extent to preserve the comments which were written in the original
|
|
source file, although at this time it only preserves block comments that preceed
|
|
the section names in the I<LLVMBuild> files.
|
|
|
|
=item B<--write-cmake-fragment>
|
|
|
|
Write out the LLVMBuild in the form of a CMake fragment, so it can easily be
|
|
consumed by the CMake based build system. The exact contents and format of this
|
|
file are closely tied to how LLVMBuild is integrated with CMake, see LLVM's
|
|
top-level CMakeLists.txt.
|
|
|
|
=item B<--write-make-fragment>
|
|
|
|
Write out the LLVMBuild in the form of a Makefile fragment, so it can easily be
|
|
consumed by a Make based build system. The exact contents and format of this
|
|
file are closely tied to how LLVMBuild is integrated with the Makefiles, see
|
|
LLVM's Makefile.rules.
|
|
|
|
=item B<--llvmbuild-source-root>=I<PATH>
|
|
|
|
If given, expect the I<LLVMBuild> files for the project to be rooted at the
|
|
given path, instead of inside the source tree itself. This option is primarily
|
|
designed for use in conjunction with B<--write-llvmbuild> to test changes to
|
|
I<LLVMBuild> schema.
|
|
|
|
=back
|
|
|
|
=head1 EXIT STATUS
|
|
|
|
B<llvm-build> exits with 0 if operation was successful. Otherwise, it will exist
|
|
with a non-zero value.
|
|
|
|
=head1 AUTHOR
|
|
|
|
Maintained by the LLVM Team (L<http://llvm.org/>).
|
|
|
|
=cut
|