Commit Graph

282 Commits

Author SHA1 Message Date
Reid Spencer 8273cdb754 Make sure windows.h is #included first.
llvm-svn: 28637
2006-06-01 17:44:29 +00:00
Reid Spencer e62348f401 Make sure that when checking for MINGW32 libraries we ask for windows.h
llvm-svn: 28631
2006-06-01 17:16:20 +00:00
Reid Spencer a16b986df5 Provide support for detecting if the Win32 imaghlp and psapi libraries
are available. These libraries are used in lib/System and should be
included on the link line or if not available generate an error when
building lib/System.

llvm-svn: 28628
2006-06-01 16:55:59 +00:00
Reid Spencer cb10fdc74d For PR784:
Support Win32 platforms for llvm-gcc path. Patch by Anton Korobeynikov

llvm-svn: 28426
2006-05-21 10:40:20 +00:00
Reid Spencer 40f1b1321d Make sure to default ${prefix} to /usr/local if the user didn't specify it.
This assists with getting around configure's late binding values so that
our LLVM variables don't end up with a "NONE" prefix.

llvm-svn: 28325
2006-05-16 08:53:32 +00:00
Rafael Espindola ffdc24b847 added a skeleton of the ARM backend
llvm-svn: 28301
2006-05-14 22:18:28 +00:00
Reid Spencer 357f3e8231 Use the -dumpversion option to llvm-gcc which gives us just the version #
and is unlikely to change in future releases. This also simplifies the
parsing of the full and major llvm-gcc version numbers in the script.

llvm-svn: 28180
2006-05-09 00:31:01 +00:00
Reid Spencer bb0be98fed For PR747:
If we fail to find a required program, simply set that program to echo
out something that tells the user the situation. That is, instead of just
"true runtest" we now get "echo 'Skipped: runtest not found'".

llvm-svn: 27990
2006-04-27 07:49:24 +00:00
Reid Spencer aff245875b Configure llvm-config in tools, not utils.
llvm-svn: 27919
2006-04-20 22:15:30 +00:00
Chris Lattner 8fe3dbceb0 Never build SparcV9
llvm-svn: 27883
2006-04-20 17:01:19 +00:00
Reid Spencer 48b9203a40 Allow OpenBSD to be recognized as a UNIX platform.
llvm-svn: 27848
2006-04-19 23:47:16 +00:00
Chris Lattner 7d17a77d5e Regenerate
llvm-svn: 27838
2006-04-19 18:38:19 +00:00
Reid Spencer 08a154e1a7 Ahem. HEAD -> 1.8cvs not 1.7 (I'm an idiot).
llvm-svn: 27687
2006-04-14 03:01:27 +00:00
Reid Spencer 89702afa0e remove the "cvs" part of the version number for the release branch.
llvm-svn: 27686
2006-04-14 02:55:43 +00:00
Reid Spencer fa423e9bd1 Change the assertions defaults:
1. Assertions now default to on for all builds
2. If you want them disabled you must (a) --disable-assertions to configure
   or DISABLE_ASSERTIONS=1 to make.

llvm-svn: 27548
2006-04-09 20:42:14 +00:00
Reid Spencer 6025241ee4 Ensure that the automatic "CVS build" detection works for both
objdir == srcdir and objdir != srcdir.

llvm-svn: 27516
2006-04-08 01:41:26 +00:00
Reid Spencer b65ade8bd9 For PR723:
Support detection of a "CVS" directory at configure time to distinguish
whether this is a release build or a "from tree" build. This knowledge is
used to set the defaults for --enable-optimzied and --enable-assertions
options.

llvm-svn: 27487
2006-04-07 16:01:51 +00:00
Reid Spencer 6c99b4191c For support of new GCC v4, obtain the full and major versions of the
llvm-gcc command. This will help distinguish which version is being used
so the makefiles can accommodate.

llvm-svn: 27461
2006-04-06 22:00:36 +00:00
Reid Spencer 972bea5c69 Update to llvm-config tool, by Erik Kidd:
1. Check for Perl and only build llvm-config if its available.
2. Add some virtual components
3. Don't depend on "standard" location for Perl, but configured location
4. Document the tool with a POD file.

This version is now ready for testing by users.

llvm-svn: 27005
2006-03-23 23:21:29 +00:00
Reid Spencer 6f682b79af These changes are necessary to support the new llvm-config tool. llvm-config
is a handy tool for users of LLVM who want to be able to quickly get
information about LLVM's configuration. It is intended to be used in the
command line of other tools. Documentation will be forthcoming in a
subsequent patch.

llvm-svn: 26952
2006-03-22 15:59:55 +00:00
Chris Lattner d87ea46887 Use -emit-llvm -S to get .ll file output from llvm-gcc
llvm-svn: 26397
2006-02-27 05:39:00 +00:00
Chris Lattner 3d22a090cf remove skeleton target
llvm-svn: 26239
2006-02-16 21:12:54 +00:00
Duraid Madina 8604de8bec reverting previous change, will add support for other compilers later
llvm-svn: 26211
2006-02-15 07:57:42 +00:00
Duraid Madina aa9cca395d zap
llvm-svn: 26199
2006-02-15 03:16:52 +00:00
Chris Lattner 03e6bc6676 SparcV8 -> Sparc
llvm-svn: 25989
2006-02-05 06:26:43 +00:00
Reid Spencer a609b65086 Update for including additional function tests.
llvm-svn: 25542
2006-01-23 08:15:53 +00:00
Reid Spencer ec4a7f52fe Make sure that libm is used during config tests so that ceil, floor, and
friends are actually detected.

llvm-svn: 25454
2006-01-19 08:31:08 +00:00
Reid Spencer 364473ce17 For PR696:
Add checks for ceil, ceilf, floor, and floorf

llvm-svn: 25453
2006-01-19 08:22:40 +00:00
Reid Spencer 3f31cc4dcd Implement fix for PR471:
* Add --enable-debug-runtime option, defaults to disabled
* Pass the new config var, DEBUG_RUNTIME, to Makefiles
* Don't use -Wa,-strip-debug if debug-runtime is enabled

llvm-svn: 24891
2005-12-21 03:31:53 +00:00
John Criswell 7671a5b844 Added the llvm-kernel project to the list of automatically configured
projects.

llvm-svn: 24865
2005-12-19 20:27:24 +00:00
Chris Lattner 8147902625 regenearte
llvm-svn: 24351
2005-11-14 07:25:50 +00:00
Chris Lattner 973917a3de regenerate
llvm-svn: 24348
2005-11-14 06:57:34 +00:00
John Criswell e1d319ab69 Updated version to 1.7cvs.
llvm-svn: 24244
2005-11-08 21:13:01 +00:00
John Criswell 3bdbd3024b Merged from RELEASE_16.
llvm-svn: 24243
2005-11-08 21:11:33 +00:00
Misha Brukman 3c46ccf336 Re-generated to fix copy-paste typo noticed by Marco Matthies.
llvm-svn: 24143
2005-11-01 21:00:49 +00:00
Reid Spencer f85fabeb71 For PR616:
These patches make threading optional in LLVM. The configuration scripts are now
modified to accept a --disable-threads switch. If this is used, the Mutex class
will be implemented with all functions as no-op. Furthermore, linking against
libpthread will not be done. Finally, the ParallelJIT example needs libpthread
so its makefile was changed to always add -lpthread to the link line.

llvm-svn: 23003
2005-08-24 10:07:20 +00:00
Reid Spencer 2b381e0c1e Fix PR608:
Previously the script assumed the version number was the last field, now
it assumes it is the first sequence of digits.

llvm-svn: 22527
2005-07-27 21:58:38 +00:00
Andrew Lenharth c7fe0f510f Alpha has JIT
llvm-svn: 22501
2005-07-22 20:54:01 +00:00
Reid Spencer f284268ba5 * Correct the AC_DEFINE for LLVM_PATH_GRAPHVIZ to use AC_DEFINE_UNQUOTED so
we actually get the path and not $GRAPHVIZ as the value.
* Add a #define for the gv program (HAVE_GV) and its value LLVM_PATH_GV.

llvm-svn: 22433
2005-07-14 05:19:12 +00:00
Reid Spencer 0ac41946e1 Put the path to the Graphviz program in the #defines so it can be used.
llvm-svn: 22430
2005-07-14 02:25:12 +00:00
Reid Spencer f17006fdda Implement a test for the Graphviz program for Chris Lattner. The symbol
GRAPHVIZ will contain the path to the program if its found (or "echo Graphviz"
if not) and the #define HAVE_GRAPHVIZ will be defined if its found.

llvm-svn: 22424
2005-07-13 03:20:14 +00:00
Reid Spencer 79876f52aa For PR540:
This patch completes the changes for making lli thread-safe. Here's the list
of changes:
* The Support/ThreadSupport* files were removed and replaced with the
  MutexGuard.h file since all ThreadSupport* declared was a Mutex Guard.
  The implementation of MutexGuard.h is now based on sys::Mutex which hides
  its implementation and makes it unnecessary to have the -NoSupport.h and
  -PThreads.h versions of ThreadSupport.

* All places in ExecutionEngine that previously referred to "Mutex" now
  refer to sys::Mutex

* All places in ExecutionEngine that previously referred to "MutexLocker"
  now refer to MutexGuard (this is frivolous but I believe the technically
  correct name for such a class is "Guard" not a "Locker").

These changes passed all of llvm-test. All we need now are some test cases
that actually use multiple threads.

llvm-svn: 22404
2005-07-12 15:51:55 +00:00
Reid Spencer 1aa7d05f3c For PR540:
* Add check for pthread.h
* Make sure -lpthread gets added to LIBS if its available

llvm-svn: 22402
2005-07-12 15:24:20 +00:00
Reid Spencer 2a43ec334a Fix the definitions of LLVMGCC and LLVMGXX to include the EXEEXT (the
.exe extension) on Cygwin. This fixes the last few remaining Cygwin
issues. Thanks to Aaron Gray for tracking this down.

llvm-svn: 22191
2005-06-02 22:34:49 +00:00
Reid Spencer 8a4aa631fa For PR514: Do not configure removed files
llvm-svn: 22138
2005-05-19 08:31:55 +00:00
John Criswell ac87c14e2e Updated version to LLVM 1.6 CVS.
llvm-svn: 22122
2005-05-18 20:18:40 +00:00
John Criswell e1a8120f52 Merged in release_15.
llvm-svn: 22120
2005-05-18 19:43:33 +00:00
Duraid Madina e5ee0d0730 pretty tiny change (looks like adding the HP-UX detection and line number
changes to me)

- not committing autoconf/configure.ac (oops, already committed that!)
- not committing include/llvm/Config/config.h.in (it remains unchanged)

llvm-svn: 22085
2005-05-16 16:33:34 +00:00
Reid Spencer 7ed7930dff Remove the check for the ffsll function. Its no longer needed by the
simplify-libcalls pass (pass now computes it without a call to ffsll).

llvm-svn: 22074
2005-05-15 22:15:11 +00:00
Reid Spencer b195fcd5ef Changes for ffs lib call simplification:
* Check for availability of ffsll call in configure script
* Support ffs, ffsl, and ffsll conversion to constant value if the argument
  is constant.

llvm-svn: 22027
2005-05-14 16:42:52 +00:00
Reid Spencer 6ab4ba4030 Fix the "stacker doesn't build without llvm-gcc" problem. The configure
script was defaulting the LLVMGCC variable to "llvm-gcc" if it couldn't
find llvm-gcc and --with-llvmgccdir was not specified. In this case, there
is no llvm-gcc available on the system so we shouldn't assume that the
user's path will find it any better than configure could. The fix is to
default it to an empty string. If LLVMGCC is empty, the makefiles will
avoid building things that depend on llvm-gcc and give a nice warning
message to that effect.

llvm-svn: 21953
2005-05-13 18:30:13 +00:00
Misha Brukman 16948006b6 * Remove reference to llvm-fefw
* Fix copyright line

llvm-svn: 21910
2005-05-12 22:15:34 +00:00
Misha Brukman d5da38c9aa Build the `Skeleton' target when building "all" targets
llvm-svn: 21455
2005-04-22 18:00:34 +00:00
Reid Spencer 90dd65e4a7 Make sure the CBackend is always a target that is built.
llvm-svn: 21448
2005-04-22 17:06:18 +00:00
Reid Spencer e482ca8bfa Consolidate the target selection options into a single option,
--enable-target which can take values "all", "host-only" or a comma
separated list of target names (alpha,ia64,powerpc,skeleton,sparc,x86)

llvm-svn: 21447
2005-04-22 17:02:18 +00:00
Reid Spencer 4742804864 First step in avoiding compilation/usage of non-relevant targets. New
options have been added to the configure script that control which targets
will be used. The options are:

--enable-target-this (default=disabled)
  This will specify that the target corresponding to the build host is
  the target that will be compiled/used. You can't use this with any of
  the other options (they'll be ignored). This is what most people want.

--disable-target-x86 (default=enabled)
  This will prevent the X86 target(s) from being compiled/used.

--disable-target-sparc (default=enabled)
  This will prevent both SparcV8 and SparcV9 from being compiled/used.

--disable-target-powerpc (default=enabled)
  This will prevent the PowerPC target from being compiled/used.

--disable-target-alpha (default=enabled)
  This will prevent the Alpha target from being compiled/used.

--disable-target-ia64 (default=enabled)
  This will prevent the IA64 target from being compiled/used.

Note that without any of these options, the default behavior is to build
all targets, as is the current practice.

All these options do is set up the substititution variable TARGETS_TO_BUILD
which contains the targets that should be compiled/used. The variable is
intended to be used in the makefiles. Those changes will come later.

llvm-svn: 21445
2005-04-22 07:27:28 +00:00
Misha Brukman 72c27e6112 Recognize an IA64 when we see one
llvm-svn: 20666
2005-03-17 20:56:22 +00:00
Reid Spencer eeedeaff99 Adjust to changes needed to more easily support projects via the new
LLVM_CONFIG_PROJECT macro.

llvm-svn: 20313
2005-02-24 19:05:19 +00:00
Reid Spencer 53e86c13f6 Remove the "pax" program from the list of those needed to support LLVM.
The install target in Makefile.rules no longer uses pax but just uses find
and "install" instead.

llvm-svn: 20216
2005-02-16 16:21:00 +00:00
Chris Lattner 72b5054afb The pool allocator is now the llvm-poolalloc module in public CVS
llvm-svn: 20116
2005-02-11 04:46:58 +00:00
Andrew Lenharth 3c3de91b79 let configure recognize Alphas
llvm-svn: 19810
2005-01-24 17:25:41 +00:00
Alkis Evlogimenos a9c9f38498 Fix llvm-java project autconfiguration.
llvm-svn: 19616
2005-01-16 09:44:58 +00:00
Reid Spencer d9f4f3b141 Provide support for HP/UX aCC compiler's variant of hash_map and hash_set
(RogueWave). These are implemented in rw/stdex/hash_map.h and
rw/stdex/hash_set.h on HP/UX.

llvm-svn: 19600
2005-01-16 02:58:39 +00:00
Alkis Evlogimenos a938e629f6 Correctly update configure to configure the llvm-java project
llvm-svn: 19546
2005-01-14 07:52:28 +00:00
Alkis Evlogimenos eccb209b6e The Java project now lives under projects/llvm-java.
llvm-svn: 19295
2005-01-05 17:57:28 +00:00
Reid Spencer d7287e05e3 For PR351:
Make LLVM_ON_UNIX and LLVM_ON_WIN32 available in the makefiles

llvm-svn: 19205
2004-12-31 22:54:28 +00:00
Reid Spencer 0fcca1262b For PR351:
* lib/System depends on sbrk(3), make sure we check for it.

llvm-svn: 19200
2004-12-31 05:49:15 +00:00
Reid Spencer 3d745d4378 * Fix a bug in an m4 macro that used an incorrect test operator
* Add CAN_DLOPEN_SELF so we can determine if dlopen(0) will open the
  program or not.
* Correct a warning messages to be a little more specific on what it checks

llvm-svn: 19184
2004-12-29 07:07:57 +00:00
Reid Spencer 78d9e8763d Make the x86_64 target names match between def and use. Thanks Misha.
llvm-svn: 19170
2004-12-28 07:56:14 +00:00
Reid Spencer 307435c2ae Make the 64-bit x86 target named "x86_64" instead of "AMD64".
llvm-svn: 19169
2004-12-28 06:34:11 +00:00
Reid Spencer cf8f341c36 Don't create symbolic links for lib/System any more. It doesn't need them.
llvm-svn: 19166
2004-12-27 09:33:46 +00:00
Reid Spencer b668158b7c For PR351:
* Add checks for sterror and strerror_r functions
* Add check to determine if /dev/zero is needed for allocating RWX memory.

llvm-svn: 19148
2004-12-27 06:15:02 +00:00
Reid Spencer 8bc110c097 For PR351:
* Make sure all headers used by lib/System have checks
* Use "standard" autoconf checks for certain problematic headers
For PR432:
* Resurrect --with-llvmgccdir so a specific llvm-gcc/llvm-g++ installation
  can be specified.

llvm-svn: 19142
2004-12-25 07:31:29 +00:00
Reid Spencer c81ccb488a Make the symbolic link using the correct variable!
llvm-svn: 19136
2004-12-24 06:49:16 +00:00
Reid Spencer d3d6d9d691 For PR351:
Create new variables LLVM_ON_UNIX and LLVM_ON_WIN32 so we can start getting
rid of reliance upon a symbolic link to switch implementations in lib/System

llvm-svn: 19131
2004-12-24 06:29:05 +00:00
Reid Spencer 0a54a58c63 Update the amd64 target detection checks.
Patch contributed by Markus F.X.J. Oberhumer.

llvm-svn: 19118
2004-12-23 21:08:52 +00:00
Reid Spencer 864cee3355 Added support for detection of amd64 targets.
llvm-svn: 19113
2004-12-23 06:22:33 +00:00
Reid Spencer fd144e8655 For PR432:
* Remove --with-llvmgccdir, not needed any more
* Search path for llvm-gcc and llvm-gxx
* Compute LLVMGCCDIR based on install path of llvm-gcc

llvm-svn: 19093
2004-12-22 05:56:56 +00:00
Reid Spencer 8b44f87ef9 For PR351:
* Add checks for sbrk and getpagesize functions
* Alphebetize the checks for functions

llvm-svn: 19052
2004-12-20 00:59:04 +00:00
Reid Spencer d42d5d433f Add CMP and CP configuration variables for the unix cmp and cp programs.
llvm-svn: 18990
2004-12-16 17:48:14 +00:00
Reid Spencer 0f6abe6b90 Remove LLVMGCCDIR from the set of defines.
llvm-svn: 18970
2004-12-15 22:27:51 +00:00
Reid Spencer 527ac0a1c7 Don't put newlines in AC macros that can't handle them!
llvm-svn: 18952
2004-12-15 04:01:48 +00:00
Reid Spencer 1b916e1ced Add some system specific functions we use
llvm-svn: 18945
2004-12-15 01:41:56 +00:00
Reid Spencer ec8bc9157d Get LLVMGCCDIR into the #defines
llvm-svn: 18845
2004-12-13 02:16:51 +00:00
Reid Spencer 09e39d17d1 More QMTest cruft gone!
llvm-svn: 18694
2004-12-09 07:43:06 +00:00
Reid Spencer ca06c8e851 Remove last remnants of Python/QMTest support
llvm-svn: 18672
2004-12-08 23:07:27 +00:00
Reid Spencer 1c8a34ff77 Search for tclsh last so we don't find the FreeBSD warning script too early
llvm-svn: 18421
2004-12-02 07:31:22 +00:00
Reid Spencer 7784c2f12e Fix the tclsh test to find tclsh8.[34] and tclsh8.[34].X as well.
llvm-svn: 18415
2004-12-02 04:17:20 +00:00
Reid Spencer 105d4152d7 Add a check for the tclsh program needed by dejagnu. This can have weird
names that have version numbers in it so this macro, DJ_AC_PATH_TCLSH will
make the necessary checks. The makefile variable TCLSH is set to the path
found.

llvm-svn: 18382
2004-11-30 08:11:54 +00:00
Reid Spencer a40c687fe8 * Implement embedding libltdl into LLVM which required some rearranging.
llvm-svn: 18349
2004-11-29 12:29:58 +00:00
Reid Spencer 0194c9a64c * allow doxygen documentation to be enabled/disabled (default off)
* organize programs we test for properly
* add new programs needed for documentation generation
* Adjust install paths so llvm stuff doesn't muck up /usr/local or /usr if
  $prefix is set to those.

llvm-svn: 18327
2004-11-29 04:56:35 +00:00
Reid Spencer 8de460528b Remove a dead check at the end of the configure script that was a left over
from the bzip2 support. This dead check produced the error:
test: -ne: unary operator expected

llvm-svn: 18289
2004-11-27 22:01:43 +00:00
Reid Spencer 550df1bbef Remove HAVE_BZLIB and HAVE_BZIP2. We always have bzip2 now.
llvm-svn: 18254
2004-11-25 20:21:53 +00:00
Reid Spencer 9dc4ba54dc Gack. Actually use the correct variable name in setting the JIT support.
llvm-svn: 18240
2004-11-25 07:28:19 +00:00
Reid Spencer 3d50017178 Fix the lib/System/platform link by using proper cached variable name.
llvm-svn: 18233
2004-11-25 06:03:14 +00:00
Reid Spencer 0241e38ef7 For PR256:
* cache more values
* standardize cache value names
* organize configure script per autoconf recommendations (10 sections)
* Eliminate some redundancies and complexities in the script
* Provide better documentation in the script.

llvm-svn: 18232
2004-11-25 04:51:04 +00:00
Reid Spencer a61edd8e92 Add the configurable configuration files for llvmc.
llvm-svn: 18190
2004-11-23 23:48:45 +00:00
Reid Spencer c4b5cfc602 Changes for testing presence of ltdl.h and lt_dlopen(), libtool functions
for cross-platform dynamic loading of shared objects.

llvm-svn: 17950
2004-11-18 09:47:37 +00:00
Reid Spencer 6bf36bdefb Add the RUNTEST autoconf onfiguration variable for Deja-gnu support. This
tool runs Deja-gnu test suites. The 'make' variable RUNTEST is now set
automatically in the Makefile.config file.

llvm-svn: 17599
2004-11-07 23:29:39 +00:00
John Criswell 033d215ccb Added the poolalloc module to the list of projects to configure, if present.
llvm-svn: 17319
2004-10-28 13:35:00 +00:00