forked from OSchip/llvm-project
				
			
		
			
				
	
	
		
			103 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
			
		
		
	
	
			103 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
llvm-build - LLVM Project Build Utility
 | 
						|
=======================================
 | 
						|
 | 
						|
 | 
						|
SYNOPSIS
 | 
						|
--------
 | 
						|
 | 
						|
 | 
						|
**llvm-build** [*options*]
 | 
						|
 | 
						|
 | 
						|
DESCRIPTION
 | 
						|
-----------
 | 
						|
 | 
						|
 | 
						|
**llvm-build** is a tool for working with LLVM projects that use the LLVMBuild
 | 
						|
system for describing their components.
 | 
						|
 | 
						|
At heart, **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.
 | 
						|
 | 
						|
 | 
						|
OPTIONS
 | 
						|
-------
 | 
						|
 | 
						|
 | 
						|
 | 
						|
**-h**, **--help**
 | 
						|
 | 
						|
 Print the builtin program help.
 | 
						|
 | 
						|
 | 
						|
 | 
						|
**--source-root**\ =\ *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 **llvm-build** script itself.
 | 
						|
 | 
						|
 | 
						|
 | 
						|
**--print-tree**
 | 
						|
 | 
						|
 Print the component tree for the project.
 | 
						|
 | 
						|
 | 
						|
 | 
						|
**--write-library-table**
 | 
						|
 | 
						|
 Write out the C++ fragment which defines the components, library names, and
 | 
						|
 required libraries. This C++ fragment is built into llvm-config|llvm-config
 | 
						|
 in order to provide clients with the list of required libraries for arbitrary
 | 
						|
 component combinations.
 | 
						|
 | 
						|
 | 
						|
 | 
						|
**--write-llvmbuild**
 | 
						|
 | 
						|
 Write out new *LLVMBuild.txt* files based on the loaded components. This is
 | 
						|
 useful for auto-upgrading the schema of the files. **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 precede
 | 
						|
 the section names in the *LLVMBuild* files.
 | 
						|
 | 
						|
 | 
						|
 | 
						|
**--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.
 | 
						|
 | 
						|
 | 
						|
 | 
						|
**--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.
 | 
						|
 | 
						|
 | 
						|
 | 
						|
**--llvmbuild-source-root**\ =\ *PATH*
 | 
						|
 | 
						|
 If given, expect the *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 **--write-llvmbuild** to test changes to
 | 
						|
 *LLVMBuild* schema.
 | 
						|
 | 
						|
 | 
						|
 | 
						|
 | 
						|
EXIT STATUS
 | 
						|
-----------
 | 
						|
 | 
						|
 | 
						|
**llvm-build** exits with 0 if operation was successful. Otherwise, it will exist
 | 
						|
with a non-zero value.
 |