From 0c0f4b6e011e3c3ffdb692065e0b7b20164a4c0a Mon Sep 17 00:00:00 2001 From: Jeffrey Yasskin Date: Fri, 26 Feb 2010 00:54:42 +0000 Subject: [PATCH] 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 --- README.txt | 3 +++ docs/Packaging.html | 67 +++++++++++++++++++++++++++++++++++++++++++++++++++++ docs/index.html | 3 +++ 3 files changed, 73 insertions(+) create mode 100644 docs/Packaging.html diff --git a/README.txt b/README.txt index 7388752fb1c..2ebe271b8e5 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 00000000000..c6eea38ed6d --- /dev/null +++ b/docs/Packaging.html @@ -0,0 +1,67 @@ + + + + Advice on Packaging LLVM + + + + +
Advice on Packaging LLVM
+
    +
  1. Overview
  2. +
  3. C++ Features
  4. +
  5. Shared Library
  6. +
+ + +
Overview
+ +
+ +

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. +

+
+ + +
C++ Features
+ +
+ +
+
RTTI
LLVM disables RTTI by default. Add REQUIRES_RTTI=1 + to your environment while running make to re-enable it. This will + allow users to build with RTTI enabled and inherit from LLVM classes.
+
Exceptions
LLVM disables exceptions by default. Add + REQUIRES_EH=1 to your environment while running make to + re-enable them. This will allow users to link LLVM and exception-using code. + It also re-enables RTTI.
+
+
+ + +
Shared Library
+ +
+ +

Configure with --enable-shared to build +libLLVM-major.minor.(so|dylib) and link the tools +against it. This saves lots of binary size at the cost of some startup time. +

+
+ + +
+
+ Valid CSS + Valid HTML 4.01 + The LLVM Compiler Infrastructure
+ Last modified: $Date: 2009-01-01 23:10:51 -0800 (Thu, 01 Jan 2009) $ +
+ + diff --git a/docs/index.html b/docs/index.html index 5ee96fb9e24..bf12f719b2b 100644 --- a/docs/index.html +++ b/docs/index.html @@ -116,6 +116,9 @@ manual for using the LLVM testing infrastructure.
  • How to build the Ada/C/C++/Fortran front-ends - Instructions for building gcc front-ends from source.
  • +
  • Packaging guide - Advice on packaging +LLVM into a distribution.
  • +
  • The LLVM Lexicon - Definition of acronyms, terms and concepts used in LLVM.
  • -- 2.11.0