Commit Graph

733 Commits

Author SHA1 Message Date
Charles Davis e56294dbc6 Strip extraneous information, if present, from the linker version string on
Mac OS X. Patch by Fabian Groffen, with a slight tweak by me.

llvm-svn: 151612
2012-02-28 02:55:41 +00:00
Rafael Espindola 334eaeae8e Enable -Wcovered-switch-default as it matches the switch style used in llvm.
llvm-svn: 151609
2012-02-28 02:01:55 +00:00
NAKAMURA Takumi 652e0139da autoconf/m4/visibility_inlines_hidden.m4: Tweak for cygwin-g++-4.5.3. It folded conftest regardress of attributge((noinline)) with >=O1 .
llvm-svn: 150920
2012-02-19 12:05:12 +00:00
Dylan Noblesmith c6c7a5819d add LLVM_VERSION_MAJOR and _MINOR defines
This is useful for clients that want to maintain compatibility
across multiple releases of LLVM. Currently users like Klee and
Mesa all have to roll their own 'parse llvm-config --version
output and generate defines' solution.

Also reuse the new macros so that version information is less
redundant/likely to fall out of sync again in the future.

llvm-svn: 150405
2012-02-13 18:48:10 +00:00
Dylan Noblesmith a7a29c17e0 autoconf: put generated clang files in build dir
It was writing generated files to the clang srcdir when
'--with-clang-srcdir' was specified.

llvm-svn: 149756
2012-02-04 03:00:50 +00:00
Dylan Noblesmith e21a3b20e5 autoconf: fix clang detection
Now this works with and without --with-clang-srcdir, with and
without an out-of-tree build.

llvm-svn: 149749
2012-02-04 02:41:36 +00:00
Rafael Espindola ec217f6ad6 Replace the old --with-cxx-* configure options with a single --with-gcc-toolchain
that just uses the new toolchain probing logic. This fixes linking with -m32 on
64 bit systems (the /32 dir was not being added to the search).

llvm-svn: 149651
2012-02-03 00:59:30 +00:00
Dylan Noblesmith a367022ce7 autoconf: fix build/src dir confusion
This was the cause of the silent failure to generate
clang's config.h. My bad.

Fix on r149563 / r149568.

llvm-svn: 149574
2012-02-02 00:54:18 +00:00
Dylan Noblesmith b5190ab264 autoconf: restore old clang-srcdir behavior
Keep the string empty when unspecified. Undoes
part of r149563.

llvm-svn: 149568
2012-02-02 00:17:33 +00:00
Dylan Noblesmith 2badba5f27 autoconf: honor --with-clang-srcdir
configure was silently failing to produce anything in the case
where clang wasn't at tools/clang/, resulting in compilation
errors much later in the build when config.h didn't exist.

llvm-svn: 149563
2012-02-02 00:11:14 +00:00
Dylan Noblesmith 57f439cb9e autoconf: generate clang's private config.h header
The CMake build already generated one. Follows clang r149497.

This brings us one step closer to compiling and configuring clang
separately from LLVM using the autoconf build, too.

(I lack the right version of autoconf et al. to regen, but it
was a simple change, so I just updated configure manually.)

llvm-svn: 149498
2012-02-01 14:06:21 +00:00
Gabor Greif e0d58d36b2 comment tweaks
llvm-svn: 149060
2012-01-26 10:28:58 +00:00
Dylan Noblesmith c120957339 Makefile: add missing files to FilesToConfig
And fix the comment about where the FilesToConfig variable
is.

llvm-svn: 148282
2012-01-17 02:56:49 +00:00
Sebastian Pop 99ab273a77 revert r147542 after comments from Joerg Sonnenberger
llvm-svn: 147608
2012-01-05 18:28:46 +00:00
Sebastian Pop 0f357d6c22 use getHostTriple instead of getDefaultTargetTriple in getClosestTargetForJIT
Get back getHostTriple.

For JIT compilation, use the host triple instead of the default
target: this fixes some JIT testcases that used to fail when the
compiler has been configured as a cross compiler.

llvm-svn: 147542
2012-01-04 19:47:22 +00:00
NAKAMURA Takumi e9d3d21988 Happy new year 2012!
llvm-svn: 147395
2012-01-01 08:16:56 +00:00
Rafael Espindola e46f096a16 Add support for mipsel in configure. Fixes PR11669. Patch by Sylvestre Ledru.
llvm-svn: 147312
2011-12-28 17:08:00 +00:00
Benjamin Kramer 54671a787c Attempt #2 to fix mingw crossbuild. This time with more ugly hacks!
llvm-svn: 147196
2011-12-22 22:50:44 +00:00
Benjamin Kramer 942b28759d Make the -fvisibility-inlines-hidden check more thorough in a hopeless attempt to fix mingw cross-compiles.
llvm-svn: 147191
2011-12-22 22:25:26 +00:00
Rafael Espindola 4977edd33d Add configure support for kfreebsd and hurd. Patch by Sylvestre Ledru.
Fixes pr11620.

llvm-svn: 147143
2011-12-22 14:01:18 +00:00
Dylan Noblesmith 67c4970b59 capitalize project name, reference bugzilla
And fix the double-[]. It was including the [] as part of
the project name somehow, resulting in PACKAGE_TARNAME "-llvm-"
and a strange docdir default:

./configure --help | grep docdir
  --docdir=DIR           documentation root [DATAROOTDIR/doc/-llvm-]

llvm-svn: 146849
2011-12-18 18:50:16 +00:00
Tony Linthicum 1213a7a57f Hexagon backend support
llvm-svn: 146412
2011-12-12 21:14:40 +00:00
Daniel Dunbar 7ce849d495 configure: Don't warn about compiler-rt checked out into projects/.
llvm-svn: 146084
2011-12-07 22:07:03 +00:00
Daniel Dunbar ab0ad4ed1e llvm-config: Replace with C++ version (was llvm-config-2).
- Another reapply of r144300, with hopefully one last fix.

llvm-svn: 145623
2011-12-01 20:18:09 +00:00
Duncan Sands b8e6cee9ca Revert commit 145449 (ddunbar) since it is breaking the dragonegg buildbots.
Original commit message:
llvm-config: Replace with C++ version (was llvm-config-2).
 - Reapply of r144300, with lots of fixes/migration easement in between.

llvm-svn: 145582
2011-12-01 10:50:19 +00:00
Daniel Dunbar 8d5cc33ad8 llvm-config: Replace with C++ version (was llvm-config-2).
- Reapply of r144300, with lots of fixes/migration easement in between.

llvm-svn: 145449
2011-11-29 22:56:31 +00:00
Bob Wilson 3f35470fc7 Add an optional separate install prefix for internal components. rdar://10217046
Some files installed by clang are not relevant for general users and we'd like
to be able to install them to a different location.  This adds a new
--with-internal-prefix configure option and a corresponding PROJ_internal_prefix
makefile variable, which defaults to the standard prefix.  A tool makefile
can specify that it should be installed to this internal prefix by defining
INTERNAL_TOOL.

llvm-svn: 145234
2011-11-28 07:59:52 +00:00
Dylan Noblesmith efddf20126 rename ENABLE_THREADS to LLVM_ENABLE_THREADS
Now that it needs to be exported in a public header (Valgrind.h)
it should be prefixed to avoid collision with other projects.
Add it to llvm-config.h as well.

This'll require regenerating the configure script after this
commit, but I don't have the required autoconf version.

llvm-svn: 145214
2011-11-28 00:48:58 +00:00
Benjamin Kramer e1effb0da2 Add configure checking for pread(2) and use it to save a syscall when reading files.
llvm-svn: 145061
2011-11-22 12:31:53 +00:00
Eric Christopher 1094ded6f3 Add an option '--enable-libcpp' that will have the compiler pass on
options to use libc++ as the default c++ library.

llvm-svn: 144413
2011-11-11 22:51:42 +00:00
Sebastian Pop ec2fb226d8 rename LLVM_HOSTTRIPLE into LLVM_DEFAULT_TARGET_TRIPLE
llvm-svn: 143501
2011-11-01 21:31:44 +00:00
Sebastian Pop f29a9b8c0b derive LLVM_HOSTTRIPLE from target
llvm-svn: 143500
2011-11-01 21:30:04 +00:00
Dan Gohman 4c9fca99c9 Remove the Alpha backend.
llvm-svn: 143164
2011-10-27 22:56:32 +00:00
Charles Davis bc47545073 Revert 142997. It doesn't work on Mac OS or the BSDs, which all use the BSD
version of the install program, which does not have the --strip-program
switch.

llvm-svn: 143009
2011-10-26 02:28:32 +00:00
Eric Christopher 0db256834d Search for and use the strip program and pass it to install for it
to use for stripping final executables.

Patch by Simon Atanasyan!

llvm-svn: 142997
2011-10-26 00:52:13 +00:00
Eric Christopher 49709ad6d0 Handle newer cases for freebsd which is approaching 10.0 and not 1.0.
Patch by Dimitry Andric!

llvm-svn: 142995
2011-10-26 00:42:12 +00:00
Dan Gohman b43c36f391 Remove the Blackfin backend.
llvm-svn: 142880
2011-10-25 00:05:42 +00:00
Dan Gohman dfc96aea90 Remove the SystemZ backend.
llvm-svn: 142878
2011-10-24 23:48:32 +00:00
NAKAMURA Takumi 914f1924e0 autoconf: Introduce --with-clang-srcdir, to build out-of-tree clang as tools/clang on tools/Makefile.
llvm-svn: 142102
2011-10-16 02:54:26 +00:00
Bill Wendling 3d19eefd4e ToT is now for 3.1.
llvm-svn: 142044
2011-10-15 02:09:17 +00:00
Torok Edwin 229f8d7a9f ocaml bindings: add findlib META support
This makes it easier to link against LLVM libs, especially if you are using
_oasis.

llvm-svn: 141992
2011-10-14 20:38:02 +00:00
NAKAMURA Takumi d5a9a3afaf configure: [cygming] Set --disable-embed-stdcxx by default on --enable-shared.
Many distros provide stdc++.dll recently. --enable-embed-stdcxx might confuse people.

llvm-svn: 141875
2011-10-13 18:04:52 +00:00
Eric Christopher b9a11322b1 We're no longer going to bother supporting platforms that don't
support C89.

We probably didn't support them anyways.

llvm-svn: 140361
2011-09-23 00:53:10 +00:00
Eric Christopher f16d2447e1 Remove the rest of the compiler checking from the top level configure
script. Only the testsuite project needs to know this information.

llvm-svn: 140220
2011-09-21 00:53:42 +00:00
Eric Christopher 155137bd10 Remove llvm-gcc and various compiler handling from llvm. It's not needed
here anymore and has been migrated to the test-suite project.

llvm-svn: 140216
2011-09-20 23:58:15 +00:00
Eric Christopher 818584529e Fix typos.
llvm-svn: 140194
2011-09-20 22:26:35 +00:00
Eric Christopher 4b0ae48614 Remove llvmc and assorted build machinery for it.
The problems that llvmc solved have largely been subsumed with the
tasks that the clang driver can accomplish, but llvmc lacks flexibility
and depends too heavily on the EOL'd llvm-gcc.

llvm-svn: 140093
2011-09-19 23:22:41 +00:00
Eric Christopher 4418a60272 Rename LLVM_MULTITHREADED define and fix build without threads.
Patch by Arrowdodger.

llvm-svn: 140064
2011-09-19 20:43:23 +00:00
Eric Christopher 5883971d00 Move the AC_PROG_CC checks earlier in the configure file. The lateness
of the original check meant that configure was caching the default
CC check and using that instead of the result of AC_PROG_CC in both
configure checks and during compilation.

This wasn't affecting C++ so it was hard to notice.

Regenerate configure.

llvm-svn: 139937
2011-09-16 20:36:25 +00:00
Eric Christopher a7077b6f7e Have the llvm configure process look for clang, then llvm-gcc, and then gcc
on all platforms.

llvm-svn: 139934
2011-09-16 20:36:16 +00:00
Ivan Krasin 05e609331c Update config.sub, config.guess and configure.
The motivation to do that:

1. Now, llvm would use the stock config.sub. Before that we had an
uncommitted FreeBSD-related patch. Now, it has been upstreamed and
comes back. It means that it would be easier to update these files in
the next time (less magic knowledge)

2. Fix a typo for pseudo-CPUs: 32e[lb] -> [lb]e32, 64e[lb]->[lb]64.
One of these CPUs is used for PNaCl and it was not really convenient
to have a CPU that starts with a digit.

llvm-svn: 138323
2011-08-23 06:43:49 +00:00
Ivan Krasin 44306e2e5f Add NativeClient operating system support.
This patch adds support of NativeClient (*-*-nacl) OS support to LLVM.
It's already supported in autoconf/config.sub.

The motivation for this change is to start upstreaming PNaCl work. The
whole set of patches include llvm backends (i686, x86_64, ARM),
llvm-gcc (probably, would not be upstreamed because it's deprecated)
and clang (the work has been just started, the amount of changes is
going to be low and the most of the work is expected to be done close
to the mainline).

llvm-svn: 138005
2011-08-18 22:54:21 +00:00
Ivan Krasin 764b0c1408 Update autoconfig/config.{sub,guess} to the latest version
from the GNU upstream: git://git.savannah.gnu.org/config.git

1. It eliminates a local LLVM patch for auroraux (because, the
mainline config.sub has already got support of auroraux)
2. It adds several new recognized target cpus and operating systems
(in particular, PNaCl)

llvm-svn: 137984
2011-08-18 21:23:18 +00:00
Chad Rosier 8c9d9b2f0f Update the default bug report url in autoconf.
llvm-svn: 136721
2011-08-02 20:53:43 +00:00
Evan Cheng 8c886a40d2 Combine all MC initialization routines into one. e.g. InitializeX86MCAsmInfo,
InitializeX86MCInstrInfo, etc. are combined into InitializeX86TargetMC.

llvm-svn: 135812
2011-07-22 21:58:54 +00:00
Bruno Cardoso Lopes d1d9c78650 Added the infrastructute necessary for MIPS JIT support. Patch by Vladimir
Stefanovic. I removed the part that actually emits the instructions cause
I want that to get in better shape first and in incremental steps. This
also makes it easier to review the upcoming parts.

llvm-svn: 135678
2011-07-21 16:28:51 +00:00
Evan Cheng 2129f59637 Introduce MCCodeGenInfo, which keeps information that can affect codegen
(including compilation, assembly). Move relocation model Reloc::Model from
TargetMachine to MCCodeGenInfo so it's accessible even without TargetMachine.

llvm-svn: 135468
2011-07-19 06:37:02 +00:00
Chad Rosier 445d39b0b7 Add new configure option, --with-bug-report-url, which allows users/vendors to
specify where bug reports should be submitted.
Part of rdar://9575623

llvm-svn: 135233
2011-07-15 00:37:26 +00:00
Evan Cheng 1705ab00ab Rename createAsmInfo to createMCAsmInfo and move registration code to MCTargetDesc to prepare for next round of changes.
llvm-svn: 135219
2011-07-14 23:50:31 +00:00
Douglas Gregor de3c92674e Add initial *-*-rtems* target, from Joel Sherrill
llvm-svn: 134282
2011-07-01 22:41:06 +00:00
Daniel Dunbar 0315d4a335 build/configure: Add support for --with-extra-ld-options flag (to provide extra
options just to pass to ld).

llvm-svn: 133206
2011-06-16 22:30:38 +00:00
Benjamin Kramer 820a947fe1 Happy new year.
Only 163 days late!

llvm-svn: 132895
2011-06-12 15:26:54 +00:00
Roman Divacky 35c669708d Use processor name in the target triple. This fixes PowerPC64 to generate
64bit code for example.

llvm-svn: 132627
2011-06-04 06:15:42 +00:00
John McCall be6d0c0aea ...this is not a good commit day for me.
llvm-svn: 132294
2011-05-29 19:44:55 +00:00
John McCall 085d891d80 On Darwin ARM, set the UNWIND_RESUME libcall to _Unwind_SjLj_Resume.
This is important for the correct lowering of unwind instructions
(which doesn't matter at all) and llvm.eh.resume calls (which does).

llvm-svn: 132291
2011-05-29 19:39:04 +00:00
Duncan Sands f0f143e31d The dragonegg option to disable LLVM optimizations changed.
llvm-svn: 131903
2011-05-23 16:50:29 +00:00
Peter Collingbourne 5ac59df9fb Re-add the autoconf rule for the docs/doxygen.cfg file.
For some reason this was not reverted when r103213 was.

At the same time, add an optional rule for clang's doxygen.cfg.

llvm-svn: 131279
2011-05-13 03:27:56 +00:00
NAKAMURA Takumi 4471f82e91 Windows/DynamicLibrary.inc: Clean up ELM_Callback. We may check the decl instead of the versions of individual libraries.
autoconf: Add checking ELM_Callback decl for mingw32 and mingw-w64.
cmake/config-ix.cmake: Add checking ELM_Callback decl for win32.

llvm-svn: 130657
2011-05-01 13:29:49 +00:00
Chris Lattner 0ab5e2cded Fix a ton of comment typos found by codespell. Patch by
Luis Felipe Strano Moraes!

llvm-svn: 129558
2011-04-15 05:18:47 +00:00
Jan Sjödin c9a16d581d Check that the AsmParser exists for the native target to enable initialization
function.

llvm-svn: 127626
2011-03-14 22:12:35 +00:00
Jan Sjödin 531f9d1241 Missing file from previous commmit (127341) for InitializeTargetAsmParser function.
llvm-svn: 127345
2011-03-09 18:36:40 +00:00
Bill Wendling 1d5532a0d5 Change the next release number to 3.0svn.
llvm-svn: 127213
2011-03-08 03:00:02 +00:00
NAKAMURA Takumi 189111808e lib/Support/Errno.cpp: Check strerror_s() with HAVE_DECL_STRERROR_S in config.h.*.
AC_CHECK_FUNCS seeks a symbol only in libs. We should check the declaration in string.h.

FIXME: I have never seen mingw(s) have strerror_s() (not _strerror_s()).
FIXME: Autoconf/CMake may seek strerror_s() with the definition MINGW_HAS_SECURE_API in future.
llvm-svn: 125172
2011-02-09 04:18:48 +00:00
NAKAMURA Takumi 03a541f5c4 Windows/DynamicLibrary.inc: Split explicit symbols into explicit_symbols.inc.
config.h.* have conditions whether each symbol is defined or not.
Autoconf and CMake may check symbols in libgcc.a for JIT on Mingw.

llvm-svn: 124950
2011-02-05 15:11:53 +00:00
Daniel Dunbar 80da3fbbe6 configure: Add checks for <sys/uio.h> and writev().
llvm-svn: 124769
2011-02-03 02:39:58 +00:00
NAKAMURA Takumi 495afdffd7 autoconf: Add --disable-embed-stdcxx to suppress linking libstdc++.a into llvm.dll with --enable-shared on Cygming.
Cygwin has stdc++.dll in it's distribution, and we can assume distro's stdc++.dll might be available.

llvm-svn: 122622
2010-12-29 03:59:14 +00:00
NAKAMURA Takumi c6fce17b3e autoconf: [PR7874] Add --disable-pthreads to suppress detecting pthreads on certain hosts.
This would be needed to build pthread*.dll-free distribution on recent MinGW-MSYS distros.

llvm-svn: 122621
2010-12-29 03:59:03 +00:00
Eric Christopher 775608995c Use GZIPBIN instead of GZIP. Apparently gzip uses GZIP as an environment
variable for args you want to default pass to gzip.

Patch based on one by asau@inbox.ru.

Fixes PR8758.

llvm-svn: 121449
2010-12-10 01:31:51 +00:00
Daniel Dunbar 00e7a8459b autoconf: Stop lying to me.
llvm-svn: 121222
2010-12-08 01:48:03 +00:00
Eric Christopher ba4f77262c Two things: Fix testcase to use extern - otherwise the link will always
succeed. Also make the testcase clearer as to what we're doing and
emit a checking notification to the log.

llvm-svn: 121101
2010-12-07 02:05:42 +00:00
Eric Christopher ca4667319a Apparently OS X 10.4 doesn't have __crashreporter_info__.
Try to fix building on the wayback machine.

llvm-svn: 120801
2010-12-03 07:45:22 +00:00
Michael J. Spencer 447762da85 Merge System into Support.
llvm-svn: 120298
2010-11-29 18:16:10 +00:00
Duncan Sands 0787bc37c4 It seems inconsistent to have LLVMCC_EMITIR_FLAG and
LLVMGCC_DISABLEOPT_FLAGS, one with CC in it, the other
with GCC.  Rename LLVMGCC_DISABLEOPT_FLAGS to
LLVMCC_DISABLEOPT_FLAGS.

llvm-svn: 120151
2010-11-25 17:57:43 +00:00
Duncan Sands 606d5c0424 Initial support for being able to specify the llvm-gcc to use like this:
--with-llvmgcc="gcc-4.5 -fplugin=dragonegg.so"

llvm-svn: 120149
2010-11-25 17:47:42 +00:00
Chris Lattner 287766075f fix the autoconf script to detect "has asmprinter"ness of a target by
looking for lib/Target/*AsmPrinter.cpp.  Fix llvm-config to handle targets
that don't have an explicit AsmPrinter library.

llvm-svn: 119057
2010-11-14 19:10:47 +00:00
Chris Lattner 9007c368c6 remove JIT support from the Alpha backend. The JIT will be moving to MC,
and the Alpha backend isn't MCized yet.  Approved by Andrew.

llvm-svn: 119051
2010-11-14 18:24:41 +00:00
Rafael Espindola 7ac506d431 Add --enable-docs. Patch by NAKAMURA Takumi.
llvm-svn: 118918
2010-11-12 19:24:06 +00:00
Tobias Grosser 61cb245436 Detect if llvm-gcc is built on dragonegg.
Store the flags needed to disable optimizations and to emit LLVM-IR depending on
the version of llvm-gcc used.

llvm-svn: 118684
2010-11-10 16:31:34 +00:00
Tobias Grosser ea9dca4c6c Add polly support to the build system.
Update the cmake and autoconf build system to compile polly
as a shared library if it is checked out into tools/polly. In case
polly is not checked out, nothing changes.
This models the way clang can be added to llvm if checked out to tools/clang.

Also rebuild configure.

Patch contributed by ether.

llvm-svn: 117755
2010-10-30 00:54:26 +00:00
Chandler Carruth ffae4a66fa First step to allowing the resource directory of Clang to be adjusted for
strange packaging environments. The primary result of this is to expose
a (normally empty) CLANG_RESOURCE_DIR string in the autoconf and CMake builds.
This will in turn be used by a subsequent commit to Clang.

Regenerated configure and config.h.in thanks to Nick. =D

llvm-svn: 116802
2010-10-19 08:21:25 +00:00
Eric Christopher ef917741e2 Fix the last two commits to configure - configure is a generated file.
Made necessary edits to configure.ac and regenerated.

llvm-svn: 116291
2010-10-12 02:42:05 +00:00
Dan Gohman a0da88931c Add support for viewing graphviz graphs with xdot.py.
llvm-svn: 114832
2010-09-27 16:28:34 +00:00
Dan Gohman b48f904602 Attempt to support platforms which don't have fenv.h.
llvm-svn: 114196
2010-09-17 20:06:27 +00:00
Nick Lewycky 4c82c6c6fe Create PTX backend. Patch by Che-Liang Chiou!
llvm-svn: 113235
2010-09-07 18:14:24 +00:00
Eric Christopher 1243b9df84 Update to 2.9 post-2.8 branch.
llvm-svn: 113159
2010-09-06 18:47:00 +00:00
Eric Christopher e7a9db16bb Fix LLVM target initialization to deal with sociopathic outside projects
that like to randomly define things like "X86", regenerate autoconf bits
and update cmake.

Fixes PR7852.

Patch by Xerxes Rånby!

llvm-svn: 112499
2010-08-30 18:34:48 +00:00
Chris Lattner bd24404718 remove the MSIL backend. It isn't maintained, is buggy, has no testcases
and hasn't kept up with ToT.  Approved by Anton.

llvm-svn: 112375
2010-08-28 16:33:36 +00:00
Eric Christopher fb0534f458 Remove getsect checks, the result is unused and is broken anyhow.
Fixes PR7967.

Owen: You added these, any reason?
llvm-svn: 112041
2010-08-25 08:44:54 +00:00
Mikhail Glushenkov 938e976b90 llvmc: remove dynamic plugins.
llvm-svn: 111094
2010-08-15 07:07:12 +00:00
Daniel Dunbar b524afbae3 configure: Add detection of the linker version string.
- Review appreciated, as long as you understand that I understand that this is
   a horrible hack.

llvm-svn: 110883
2010-08-11 23:53:59 +00:00
Eric Christopher e8f47dd13a Add a bit of a hack to avoid multiple defines of variables in
config.h and llvm-config.h.  This could probably be improved.

llvm-svn: 110547
2010-08-08 09:18:29 +00:00
Eric Christopher f24446d0c5 Fix PR7809 by creating a header for just llvm variables that can be
included in exported interfaces.  Update a couple of exported interfaces.

llvm-svn: 110532
2010-08-08 02:44:17 +00:00
Dan Gohman a3ed071166 Fix a typo in a comment.
llvm-svn: 110211
2010-08-04 16:48:36 +00:00
Dan Gohman de75469cd8 Remove CVS artifacts.
llvm-svn: 110207
2010-08-04 16:25:01 +00:00
Daniel Dunbar edf7b8bd4e build: Add LLVM_NATIVE_ARCHNAME, which has the sensible value, without "Target"
appended.

llvm-svn: 110109
2010-08-03 14:26:17 +00:00
Eric Christopher 84c95cc9b5 Use a C++ compiler for the atomic builtin check since we'll
be using a C++ compiler to build.

Patch by Török Edwin!

llvm-svn: 109646
2010-07-28 20:26:34 +00:00
Eric Christopher c7289b6622 Try to work around the relative install-sh path problem.
Patch from Eli.

llvm-svn: 109163
2010-07-22 21:13:40 +00:00
Owen Anderson 311eff99d0 Remove extraneous character.
llvm-svn: 108739
2010-07-19 19:41:52 +00:00
Owen Anderson 7661763741 Add support for detecting <mach-o/getsect.h> and the getsect() function.
llvm-svn: 108737
2010-07-19 19:24:37 +00:00
Eric Christopher 51f2908328 Pull in the libCrashReporterClient.a information with a warning comment.
Remove library check and regenerate configure.

llvm-svn: 107028
2010-06-28 18:25:51 +00:00
Eric Christopher e9c1bb6cb1 Look for and use a different darwin crash reporter library.
llvm-svn: 106576
2010-06-22 21:01:04 +00:00
Dan Gohman c699831d09 Fix a spello affecting platforms where the configure check fails.
llvm-svn: 105273
2010-06-01 16:22:27 +00:00
Dan Gohman b7edb4287b -retain-symbols-file is not what it seems. Update the makefiles
and configury to use --version-script.

llvm-svn: 105271
2010-06-01 14:56:56 +00:00
Daniel Dunbar dac182450b Add new configure option, --disable-timestamps, intended to turn off anything which would mess up binary/object comparisons. Currently:
- Disables 'Built on ...' in 'foo --version'.
 - Disables timestamps from being embedded into .dir files.

llvm-svn: 103423
2010-05-10 20:11:56 +00:00
mike-m e08af303a6 Overhauled llvm/clang docs builds. Closes PR6613.
NOTE: 2nd part changeset for cfe trunk to follow.

*** PRE-PATCH ISSUES ADDRESSED

- clang api docs fail build from objdir
- clang/llvm api docs collide in install PREFIX/
- clang/llvm main docs collide in install
- clang/llvm main docs have full of hard coded destination
  assumptions and make use of absolute root in static html files;
  namely CommandGuide tools hard codes a website destination
  for cross references and some html cross references assume
  website root paths

*** IMPROVEMENTS

- bumped Doxygen from 1.4.x -> 1.6.3
- splits llvm/clang docs into 'main' and 'api' (doxygen) build trees
- provide consistent, reliable doc builds for both main+api docs
- support buid vs. install vs. website intentions
- support objdir builds
- document targets with 'make help'
- correct clean and uninstall operations
- use recursive dir delete only where absolutely necessary
- added call function fn.RMRF which safeguards against botched 'rm -rf';
  if any target (or any variable is evaluated) which attempts
  to remove any dirs which match a hard-coded 'safelist', a verbose
  error will be printed and make will error-stop.

llvm-svn: 103213
2010-05-06 23:45:43 +00:00
Daniel Dunbar e96fcbb085 Default OPTIMIZE_OPTION to -O2 on FreeBSD, at the request of the Clang/FreeBSD
folks. LLVM/Clang is miscompiled by the standard GCC at -O3.

llvm-svn: 102719
2010-04-30 17:12:23 +00:00
Dan Gohman a1c94049c2 Fix an autoconf bug: The second argument to AC_LANG_PROGRAM is code that
gets placed inside a main function, and should not itself be a main
function. This is silently hidden in GCC-hosted builds because the
inner main looks like a nested function declaration, which GCC supports.
In builds with compilers which do not support nested functions (by default),
this was causing an error, which caused these autoconf checks to fail, 
leaving their options disabled.

This fixes test/Feature/load_module.ll on x86_64-unknown-linux-gnu
llvm-gcc selfhost builds, among other things.

This also includes a regenerated configure, as the diff is small and telling.

llvm-svn: 102288
2010-04-25 00:12:20 +00:00
Dan Gohman 91f8ad7bd3 Add an autoconf check for -retain-symbols-file and conditionalize
use of that option with it. This eliminates an imprecise "Linux"
test, and should help support old versions of gold.

llvm-svn: 101560
2010-04-16 22:58:15 +00:00
Eric Christopher dea3bda860 Add a check for posix_spawn.
Regenerate configure and other autoconf files.

llvm-svn: 101444
2010-04-16 05:14:21 +00:00
Daniel Dunbar 4e06a5b8b3 configure: Fix default value for optimize_option, I messed up the test condition
in r86005 and unintentionally changed the default from -O3 to -O2.

 - It's odd the things automated perf testing turns up! :)

 - Also, the configure diff is messed up slightly. It looks like someone either
   didn't regenerate configure correctly (or I didn't), or autoconf has some
   funnyness in it. Eric, any ideas?

This has been at -O2 for so long, that I am slightly nervous that this change
will uncover miscompiles of LLVM on other systems. If that is the case, I think
we should just set the default universally at -O3, and let developers/vendors
use -O3 if they want it and have tested it.

llvm-svn: 100941
2010-04-10 18:56:24 +00:00
Chris Lattner c86cdc7d47 add minix support, patch by Kees van Reeuwijk! PR6797
llvm-svn: 100895
2010-04-09 20:45:04 +00:00
John Criswell 4e61b255e2 Fixed spurious warning problem noticed by Daniel Dunbar. The configure script
now configures prerequisite projects individually but also ignores them in the
big project switch statement to avoid the incorrect warning.

llvm-svn: 99506
2010-03-25 13:59:09 +00:00
John Criswell f369e779a8 Force configuration of some projects before others. In particular, some
projects rely upon llvm-gcc, the LLVM test suite, and poolalloc.  This ensures
that the aforementioned projects have their object trees created first so that
other projects can find their object trees when they themselves are configured.

llvm-svn: 98998
2010-03-19 21:31:39 +00:00
Tanya Lattner 122f07a0c9 Bump version number.
llvm-svn: 98989
2010-03-19 21:19:10 +00:00
John Criswell 1734a2a550 Updated copyright year to 2010.
llvm-svn: 98985
2010-03-19 21:04:16 +00:00
Jeffrey Yasskin 3ddd88f523 Tell Valgrind when we modify already-executed machine code so it knows
to re-instrument the code.  We depend on the system valgrind.h to
avoid adding a new license.

llvm-svn: 98529
2010-03-15 04:57:55 +00:00
Eric Christopher b3762a05c5 Move the docsdir to /usr/share/doc/llvm to match other projects.
Fixes PR6267.

llvm-svn: 97549
2010-03-02 05:17:21 +00:00
Eric Christopher f0ee6a1407 Make sure we save CXXFLAGS before setting it as pedantic and regenerate
configure.

Fixes PR6388.

Patch by Yann Droneaud!

llvm-svn: 97548
2010-03-02 05:06:54 +00:00
John Criswell 4d377d8c59 Added SAFECode (safecode) to the list of projects to automatically configure.
llvm-svn: 97179
2010-02-25 22:57:19 +00:00
Jeffrey Yasskin 6b718f73a5 Try r96559 for the third time. This time the shared library is only built if
--enable-shared is passed to configure.

llvm-svn: 97119
2010-02-25 06:34:33 +00:00
Chris Lattner 8423d0241f fix PR5954, patch by Roman Divacky.
I don't have a great way to test this myself (it's linux/bsd only), 
but Roman says it works. :)

llvm-svn: 97069
2010-02-24 22:33:41 +00:00
Jeffrey Yasskin 15983e57d6 Roll back r96959 again.
llvm-svn: 96981
2010-02-23 20:53:37 +00:00
Wesley Peck e4801e49c9 Adding the MicroBlaze backend.
The MicroBlaze is a highly configurable 32-bit soft-microprocessor for
use on Xilinx FPGAs. For more information see:
http://www.xilinx.com/tools/microblaze.htm
http://en.wikipedia.org/wiki/MicroBlaze

The current LLVM MicroBlaze backend generates assembly which can be
compiled using the an appropriate binutils assembler.

llvm-svn: 96969
2010-02-23 19:15:24 +00:00
Jeffrey Yasskin 3ac46ccdff Roll r96559 forward again, adding libLLVM-2.7svn.so to LLVM. This links 3 of
the examples shared to make sure the shared library keeps working.

llvm-svn: 96959
2010-02-23 18:10:07 +00:00
Daniel Dunbar 49b962cc26 Initial configure support for using Clang as the LLVM capable compiler.
Comes in two parts:
 1. Use --with-clang=path/to/clang/compiler to select an installed clang, or
    --with-built-clang to have the makefiles use the clang which will be built
    as the LLVM capable compiler. If neither is given, --with-built-clang will
    be used if the Clang sources are checked out into the standard location
    (tools/clang).

 2. Use --with-llvmcc={llvm-gcc,clang,none} to specify which LLVM capable
    compiler to use. If not given, then llvm-gcc will be used if available,
    otherwise Clang.

Makefile support still to come.

Eric, Doug, Chris, seem reasonable?

llvm-svn: 96934
2010-02-23 10:00:49 +00:00
Daniel Dunbar 52af870692 Kill off unused LLVMGCCLIBEXEC make variable.
llvm-svn: 96910
2010-02-23 07:56:34 +00:00
Daniel Dunbar e67ebdc60a Kill off LLVMGCCARCH and LLVMGCC_VERSION make variables.
llvm-svn: 96909
2010-02-23 07:56:31 +00:00
Daniel Dunbar e7d4f92cfa Kill off LLVMGCC_MAJVERS make variable.
llvm-svn: 96907
2010-02-23 07:56:22 +00:00
Jeffrey Yasskin c451027db9 Roll back the shared library, r96559. It broke two darwins and arm, mysteriously.
llvm-svn: 96569
2010-02-18 04:43:02 +00:00
Jeffrey Yasskin f750fefaf8 Add a shared library for LLVM, named libLLVM2.7svn.(so|dylib), and add an
--enable-shared configure flag to have the tools linked shared. (2.7svn is just
$(LLVMVersion) so it'll change to "2.7" in the release.)  Always link the
example programs shared to test that the shared library keeps working.

On my mac laptop, Debug libLLVM2.7svn.dylib is 39MB, and opt (for example) is
16M static vs 440K shared.

Two things are less than ideal here:
1) The library doesn't include any version information. Since we expect to break
the ABI with every release, this shouldn't be much of a problem. If we do
release a compatible 2.7.1, we may be able to hack its library to work with
binaries compiled against 2.7.0, or we can just ask them to recompile. I'm
hoping to get a real packaging expert to look at this for the 2.8 release.
2) llvm-config doesn't yet have an option to print link options for the shared
library. I'll add this as a subsequent patch.

llvm-svn: 96559
2010-02-18 02:36:02 +00:00
Jeffrey Yasskin 914050bc5a Make --disable-libffi work on systems with libffi installed. Also
make no-ffi the default even on systems with libffi.  This fixes
http://llvm.org/PR5018.

llvm-svn: 95712
2010-02-09 23:03:44 +00:00
Jeffrey Yasskin bf5ce0a6c2 Reconfigure with autoconf-2.60, and fix autoconf.ac to work with that version.
llvm-svn: 95191
2010-02-03 02:11:49 +00:00
Torok Edwin 1e86bc50c7 Remove unneeded checks from configure.ac.
HAVE_{BI,STD,FWD}_ITERATOR and HAVE_NAMESPACES were not used in the code.
bison and flex are no longer used.
CAN_DLOPEN_SELF was never used either.
AC_PROG_LIBTOOL is not needed since we don't use libtool, we only need the
libltdl checks for dlopen.
Add check for AR, it used to be done by AC_PROG_LIBTOOL.
AC_TYPE_SIGNAL is deprecated, follow autoupdate's suggestion and replace with
void.
Remove unused m4 files.
Configure can now be generated using autoconf 2.65 too, without any warnings!

llvm-svn: 94534
2010-01-26 08:48:04 +00:00
Torok Edwin b3b43e65ba Fix autoconf 2.65 warning (don't use _cv_ inside AC_CACHE_VAL).
llvm-svn: 94533
2010-01-26 08:43:05 +00:00
Anton Korobeynikov d93ecc8fef Proper deduce z/System LLVM target from target triple when
--enable-targets=host is specified.

llvm-svn: 92762
2010-01-05 20:45:13 +00:00
Rafael Espindola 662908cdcf Fix typos. Thanks to John Tytgat for noticing it!
llvm-svn: 90728
2009-12-07 00:27:35 +00:00
Daniel Dunbar f472129722 Add CMake and configure logic to create llvm/Config/Disassemblers.defs.
llvm-svn: 89839
2009-11-25 04:30:13 +00:00
Edward O'Callaghan a724e48f79 autoconf config.* claims to not know about auroraux triple.
llvm-svn: 89301
2009-11-19 02:25:50 +00:00
Rafael Espindola 65e9be6dc2 Add configure options for specifying where to look for libstdc++.
llvm-svn: 88943
2009-11-16 19:46:55 +00:00
Rafael Espindola d95960be25 Add the --with-c-include-dirs to llvm's configure.
The clang patch is next.

llvm-svn: 86955
2009-11-12 05:46:09 +00:00