summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeffrey Yasskin <jyasskin@google.com>2010-02-26 00:54:42 +0000
committerJeffrey Yasskin <jyasskin@google.com>2010-02-26 00:54:42 +0000
commit0c0f4b6e011e3c3ffdb692065e0b7b20164a4c0a (patch)
treedbfcb2395d8f29795243ea31253df54421b2516e
parentbb4283ec1349087566e53f57ca09f9ed3bd5a7fd (diff)
downloadllvm-0c0f4b6e011e3c3ffdb692065e0b7b20164a4c0a.tar.gz
llvm-0c0f4b6e011e3c3ffdb692065e0b7b20164a4c0a.tar.bz2
llvm-0c0f4b6e011e3c3ffdb692065e0b7b20164a4c0a.tar.xz
Give packagers some advice about how to build LLVM so it's useful to
the most users. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97198 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--README.txt3
-rw-r--r--docs/Packaging.html67
-rw-r--r--docs/index.html3
3 files changed, 73 insertions, 0 deletions
diff --git a/README.txt b/README.txt
index 7388752fb1..2ebe271b8e 100644
--- a/README.txt
+++ b/README.txt
@@ -10,3 +10,6 @@ the license agreement found in LICENSE.txt.
Please see the HTML documentation provided in docs/index.html for further
assistance with LLVM.
+
+If you're writing a package for LLVM, see docs/Packaging.html for our
+suggestions.
diff --git a/docs/Packaging.html b/docs/Packaging.html
new file mode 100644
index 0000000000..c6eea38ed6
--- /dev/null
+++ b/docs/Packaging.html
@@ -0,0 +1,67 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd">
+<html>
+<head>
+ <title>Advice on Packaging LLVM</title>
+ <link rel="stylesheet" href="llvm.css" type="text/css">
+</head>
+<body>
+
+<div class="doc_title">Advice on Packaging LLVM</div>
+<ol>
+ <li><a href="#overview">Overview</a></li>
+ <li><a href="#cxx-features">C++ Features</a></li>
+ <li><a href="#shared-library">Shared Library</a></li>
+</ol>
+
+<!--=========================================================================-->
+<div class="doc_section"><a name="overview">Overview</a></div>
+<!--=========================================================================-->
+<div class="doc_text">
+
+<p>LLVM sets certain default configure options to make sure our developers don't
+break things for constrained platforms. These settings are not optimal for most
+desktop systems, and we hope that packagers (i.e., Redhat, Debian, MacPorts,
+etc.) will tweak them. This document lists settings we suggest you tweak.
+</p>
+</div>
+
+<!--=========================================================================-->
+<div class="doc_section"><a name="cxx-features">C++ Features</a></div>
+<!--=========================================================================-->
+<div class="doc_text">
+
+<dl>
+ <dt>RTTI</dt><dd>LLVM disables RTTI by default. Add <tt>REQUIRES_RTTI=1</tt>
+ to your environment while running <tt>make</tt> to re-enable it. This will
+ allow users to build with RTTI enabled and inherit from LLVM classes.</dd>
+ <dt>Exceptions</dt><dd>LLVM disables exceptions by default. Add
+ <tt>REQUIRES_EH=1</tt> to your environment while running <tt>make</tt> to
+ re-enable them. This will allow users to link LLVM and exception-using code.
+ It also re-enables RTTI.</dd>
+</dl>
+</div>
+
+<!--=========================================================================-->
+<div class="doc_section"><a name="shared-library">Shared Library</a></div>
+<!--=========================================================================-->
+<div class="doc_text">
+
+<p>Configure with <tt>--enable-shared</tt> to build
+<tt>libLLVM-<var>major</var>.<var>minor</var>.(so|dylib)</tt> and link the tools
+against it. This saves lots of binary size at the cost of some startup time.
+</p>
+</div>
+
+<!-- *********************************************************************** -->
+<hr>
+<address>
+ <a href="http://jigsaw.w3.org/css-validator/check/referer"><img
+ src="http://jigsaw.w3.org/css-validator/images/vcss-blue" alt="Valid CSS"></a>
+ <a href="http://validator.w3.org/check/referer"><img
+ src="http://www.w3.org/Icons/valid-html401-blue" alt="Valid HTML 4.01"></a>
+ <a href="http://llvm.org">The LLVM Compiler Infrastructure</a><br>
+ Last modified: $Date: 2009-01-01 23:10:51 -0800 (Thu, 01 Jan 2009) $
+</address>
+</body>
+</html>
diff --git a/docs/index.html b/docs/index.html
index 5ee96fb9e2..bf12f719b2 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -116,6 +116,9 @@ manual for using the LLVM testing infrastructure.</li>
<li><a href="GCCFEBuildInstrs.html">How to build the Ada/C/C++/Fortran front-ends</a> -
Instructions for building gcc front-ends from source.</li>
+<li><a href="Packaging.html">Packaging guide</a> - Advice on packaging
+LLVM into a distribution.</li>
+
<li><a href="Lexicon.html">The LLVM Lexicon</a> - Definition of acronyms, terms
and concepts used in LLVM.</li>