Commit Graph

265 Commits

Author SHA1 Message Date
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 4382d8e8d9 don't build the skeleton target
llvm-svn: 26237
2006-02-16 21:11:49 +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 09518d0c73 previously, configure would die if GCC or ICC was not found. Now it'll
go through, but we do want to know if we're using GCC/ICC since they
share certain funky command line options (for dependency generation
stuff)

llvm-svn: 26198
2006-02-15 03:15:55 +00:00
Chris Lattner 1b82081e0e SparcV8 -> Sparc
llvm-svn: 25988
2006-02-05 05:56:51 +00:00
Duraid Madina 584fcad083 don't need this any more; the "#define hashes to trees" hack is coming
llvm-svn: 25531
2006-01-23 06:47:56 +00:00
Chris Lattner 6d5bdb0f9b add checks for new functions. I'd appreciate it if someone could regen
the configure script :)

llvm-svn: 25528
2006-01-23 06:24:09 +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 58cee558fe add malloc_zone_statistics, remove mstats
llvm-svn: 24350
2005-11-14 07:24:17 +00:00
Chris Lattner 390ff6e898 add some stuff for mstats on darwin
llvm-svn: 24347
2005-11-14 06:54:33 +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 2956ea758d Fixed copy-paste typo, patch by Marco Matthies.
llvm-svn: 24142
2005-11-01 20:58:08 +00:00
Reid Spencer b48e3f8b74 For PR619:
Make any header files that are automatically generated be preconditions of
the compilation. This ensures that if a *.h.in file is changed then its
corresponding *.h file gets updated on the next rebuild. Note that this can
lead to confusing (but correct) results if the *.h.in file changed
unsubstantially so that autoheader doesn't update the *.h file. In that case,
manually touch the *.h file in question to restore order. Moral of the story,
if you're going to "touch" a *.in file then modify it substantially.

llvm-svn: 23006
2005-08-24 10:43:10 +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 cd59fb7a1b In support of PR418:
Make sure that -lpthread gets added to LIBS variable which puts it at the
end of the tools' link commands, if libpthread.a is found.

Add a test for pthread.h so we can use #ifdef HAVE_PTHREAD_H

llvm-svn: 22401
2005-07-12 07:19:13 +00:00
Misha Brukman ee14fc41f1 We also have V8, so do not force every Sparc to be treated like a V9. It is
still possible to force V9 (even if configure doesn't think it's one) via
``./configure --target=sparcv9-sun-solaris2.8'' so nothing is lost.

llvm-svn: 22198
2005-06-06 19:29:36 +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 e63f99c871 For PR514: Do not configure removed files
llvm-svn: 22139
2005-05-19 08:37:50 +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 5ea2ba8bae detect HP-UX when configuring
llvm-svn: 22077
2005-05-16 05:39:00 +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 b151770b4a llvm-fefw doesn't exist (yet)
llvm-svn: 21907
2005-05-12 21:56:03 +00:00
Misha Brukman cb3fc5ca75 Remove extraneous `U ' in copyright line
llvm-svn: 21906
2005-05-12 21:49:11 +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 f3102c287d Add a call to AC_CONFIG_COMMANDS to ensure that llvm_src is set properly
in the config.status script. This allows the AC_CONFIG_MAKEFILE macro to
work properly after it was changed to support sub-projects.

llvm-svn: 20305
2005-02-24 18:31:27 +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 f36418f618 let configure recognize Alphas
llvm-svn: 19811
2005-01-24 17:33:52 +00:00
Misha Brukman 454c06f5a4 Mark CVS versions different from releases
llvm-svn: 19809
2005-01-24 16:29:24 +00:00
Reid Spencer 12b25a12a6 We're working towards LLVM 1.5 now so bump the version number. This change
won't be propagated to the configure script until there's a need to change
configure.ac for some larger purpose.

llvm-svn: 19762
2005-01-22 21:29:42 +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 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 189c677549 Oops, reverse the logic on a test for WITH_LLVMGCCDIR to make it define
the path names correctly.

llvm-svn: 19146
2004-12-27 03:15:28 +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 b608aebc6c Change llvmgcc/llvmg++ to llvm-gcc and llvm-g++ respectively.
llvm-svn: 19125
2004-12-24 03:34:31 +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 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
Reid Spencer f9676539bb Changes to support rand48 tests
llvm-svn: 17284
2004-10-27 23:03:44 +00:00
Reid Spencer 8d0d005998 Add a check for the tar program.
llvm-svn: 17208
2004-10-25 08:18:47 +00:00
Misha Brukman e62f4dd7b9 Transfer Makefile.JIT into the build tree for JIT-enabling tools and examples
llvm-svn: 16990
2004-10-14 18:59:09 +00:00
Reid Spencer defd9699e6 Add checks for the ZLIB and BZIP2 header files, not just the libraries.
llvm-svn: 16669
2004-10-04 22:05:53 +00:00
Reid Spencer 38b846c8e1 Move the warning about no compression library down to the bottom, away
from the fray, so it gets noticed. This commit is made without the
corresponding configure script commit because it doesn't affect
functionality and we don't want to force everyone into another reconfigure

llvm-svn: 16657
2004-10-04 18:02:55 +00:00
Reid Spencer 4e181e731a Provide support for auto-detection and use of compression libraries.
llvm-svn: 16643
2004-10-04 07:05:07 +00:00
Reid Spencer 4874120154 Add checks for bzip2 and libz for use with the Compression concept for
lib/System and the compressing llvm archiver.

llvm-svn: 16634
2004-10-02 08:50:58 +00:00
Alkis Evlogimenos 2622728248 Improve warning
llvm-svn: 16520
2004-09-27 07:35:19 +00:00
John Criswell 71c8d5eae9 Updated the last two header files so that they are configured with
AC_CONFIG_HEADERS.  This should prevent LLVM from needlessly re-compiling
on a re-configure.

llvm-svn: 16510
2004-09-24 21:19:06 +00:00
John Criswell 08e722647a Modified hash_map and hash_set configuration so that they are not
regenerated on every run of configure.

llvm-svn: 16509
2004-09-24 18:28:00 +00:00
John Criswell 3ed86d7540 Configure Datatypes.h.in with AC_CONFIG_HEADERS. This should prevent it
from being re-generated if the new version is identical to the old version.
Hence, it should save us some recompiling after re-configures.

llvm-svn: 16506
2004-09-24 13:28:51 +00:00