Young-il Choi
8fe7fd6dd6
configure: cleanup - parsing supported target triples
2013-03-27 13:35:20 +09:00
Fabian Deutsch
07f8ce7063
configure: Accept llvm-3.2
...
Previously the build system only checked for llvm-3.1 - 2.8.
Now also 3.2 and 3.2svn is accepted.
Signed-off-by: Fabian Deutsch <fabian.deutsch@gmx.de>
2013-03-26 20:59:13 +01:00
bors
2815328e41
auto merge of #5540 : dbaupp/rust/configure-pandoc-version, r=brson
...
The version recognition was failing for pandoc version 1.11, thinking the
minor version was 1 rather than 11, and thus not building the documentation.
2013-03-26 03:31:03 -07:00
bors
ff9c943c08
auto merge of #5537 : yichoi/rust/pull-0325, r=brson
...
In order to mitigate typo of target-triples, error notification of unsupported target triples which defined in mk/platform.mk added.
minor fix for arm-linux-androideabi added.
2013-03-26 01:27:58 -07:00
Huon Wilson
218093d912
configure: simplify pandoc version recognition.
...
The version recognition was failing for version 1.11, thinking the
minor version was 1 rather than 11.
2013-03-26 00:20:18 +11:00
Young-il Choi
2911fc29d0
configure: error on unsupported target-triples and arm-linux-androideabi fix
2013-03-25 15:36:34 +09:00
Thad Guidry
9aa0cedc84
changed /configure to be compatible with Cygwin and removed annoying --help not a command available message
2013-03-23 02:21:43 +01:00
Luqman Aden
19c104000e
configure: accept clang 3.3 when passed --enable-clang
2013-03-22 15:49:55 -04:00
Brian Anderson
81e370285f
Merge remote-tracking branch 'brson/cross7'
...
Conflicts:
configure
mk/rt.mk
2013-03-06 23:54:35 -08:00
Brian Anderson
14e5a6e5f7
mk: Cleanup. Minor fixes
2013-03-06 22:37:52 -08:00
Graydon Hoare
ab500d8b8d
build fixes
2013-03-04 22:40:59 -08:00
Jyun-Yan You
0ecd9e03ff
rt: MIPS32 support
2013-03-03 19:27:01 -08:00
Young-il Choi
7714d52cd9
mk: cleanup - lib and executable suffix handling
2013-03-02 21:25:12 +09:00
Young-il Choi
2102597392
mk: mingw32 flags added
2013-03-01 20:02:29 +09:00
Young-il Choi
26a5dc593c
mk: rewrite make files
2013-02-27 14:53:35 +09:00
Brian Anderson
3e6b2cfab5
Fix --disable-optimize-llvm
2013-02-26 17:30:32 -08:00
Brian Anderson
15c0c35352
mk: Split target triples into bulid triple + host triples + target triples
...
For cross compiling to targets that don't want to build a compiler
2013-02-21 17:51:55 -08:00
bors
21a0d52a85
auto merge of #4876 : brson/rust/debuginfo, r=brson
...
Update of #4862
2013-02-12 13:30:07 -08:00
Brian Anderson
79e9b6d6a1
mk: Run debuginfo tests by default, but only if gdb is available
2013-02-10 14:19:12 -08:00
Jeff Olson
3a813e29b6
etc: rework of how libuv is integrated into the build
...
- thanks to work in libuv's upstream, we can call libuv's Makefile directly
with parameters, instead of descending in gyp-uv madness and generating
our own.
2013-02-10 11:51:05 -08:00
Brian Leibig
6bfbdadd3b
Add debug info tests
2013-02-09 13:09:19 -05:00
Brian Anderson
0e913a4c90
mk: Parameterize tests.mk to the max
2013-02-05 20:02:46 -08:00
Dimitri Krassovski
2c46bf7e31
Add support for clang 4.2 (as reported by apple clang) r=graydon
2013-02-04 11:28:51 -08:00
Cody Schroeder
e10d720ee1
Remove CFG_LLVM_CONFIG probe from configure script
2013-01-30 00:40:35 -08:00
William Ting
bb51a8442f
Add support for Ubuntu named clang packages.
...
Ubuntu's clang packages have additional information appended to the end of
the version.
- Building Rust v0.5 with clang v3.0-6ubuntu3 fails.
- Building Rust v0.5 and incoming with clang v3.1-5ppa (backported from Debian)
works.
Closes #4441 .
2013-01-28 21:54:11 -08:00
kyeongwoon
987f824f23
Support ARM and Android
...
Conflicts:
src/libcore/os.rs
src/librustc/back/link.rs
src/librustc/driver/driver.rs
src/librustc/metadata/loader.rs
src/librustc/middle/trans/base.rs
2013-01-13 16:43:39 -08:00
Jyun-Yan You
37f97ff504
support clang 3.2
2013-01-12 12:02:22 +08:00
Brian Anderson
b43e639bf6
Remove unused bigint from runtime
2013-01-08 13:53:45 -08:00
Jimmy Lu
b17b3d9c12
add option validation to configure, now it will error out on undefined options
2012-11-30 23:20:18 -05:00
Graydon Hoare
4b0e1336b2
configure: force clang when on freebsd.
2012-11-14 15:03:29 -08:00
Brian Anderson
1b0c6665d9
Merge remote-tracking branch 'brson/repl'
...
Conflicts:
mk/install.mk
src/rt/rustrt.def.in
2012-11-04 13:42:39 -08:00
Zack Corr
ea996556b9
rusti: Remove linenoise module, add to rt, remove core::rl
2012-10-30 11:08:36 +10:00
Zack Corr
4912428cb5
rusti: Add linenoise, wrap into core::rl and add rusti REPL tool
...
Add Brian Leibig to AUTHORS.txt for REPL contributions
2012-10-27 18:03:15 +10:00
Gabriel
f1da4424bf
submodule sync
won't work in a leaf submodule.
2012-10-22 14:35:31 -07:00
Mahmut Bulut
c05d96c191
Valgrind check disable
2012-10-20 13:57:47 -07:00
Luqman Aden
3d76a75193
configure: check for pandoc version properly.
2012-10-18 20:58:57 -04:00
Graydon Hoare
e0b71dd6b3
configure: note dep on head.
2012-10-18 14:51:20 -07:00
Graydon Hoare
33795bc4d3
configure: fix use of bash-specific here strings (also awk, please no more deps).
2012-10-18 14:51:20 -07:00
Tony Young
2c1ed186fc
Check pandoc's version correctly for >=1.10.
2012-10-19 00:30:17 +13:00
Arkaitz Jimenez
cf8bded7aa
Enable configure to detect 32 bit systems on 64 bit kernels
...
These systems run 32 bit binaries so arch needs to be forced
to 32 bits.
2012-10-17 13:42:47 -07:00
Brian Anderson
c56a7e5c25
Reorder the submodule ops in configure
2012-10-05 11:32:28 -07:00
Erick Tryzelaar
2d903abeab
configure should recursively sync submodules
2012-10-05 11:32:28 -07:00
auREAX
26ed387d7f
Rename configure --enable-pax-marks flag to --enable-pax-flags flag.
2012-10-05 00:08:34 +02:00
auREAX
039110ba22
Fix unnecessary tool detection at non-Linux OSes, fix GRSecurity detection documentation error.
2012-10-05 00:00:55 +02:00
auREAX
0bb437aafa
Add GRSecurity compatibility with --enable-pax-marks configure flag; add GRSecurity autodetection code to configure.
2012-10-04 11:56:24 -07:00
Brian Anderson
fd0de8bfd7
doc: Split out task tutorail. Add links to sub-tutorials
2012-09-22 15:34:01 -07:00
Francisco Souza
25bc65b487
configure: support clang 4.1 (provided by XCode 4.5)
...
Apple keeps calling 4.x its version of clang 3.1.
2012-09-20 11:29:28 -03:00
Brian Anderson
864cca14ee
docs: Make supplemental tutorials testable
2012-09-15 18:06:20 -07:00
Zack Corr
d7aa9918ef
Add experimental JIT compiler
2012-08-31 16:20:35 -07:00
Francisco Souza
50f2db4a0e
configure: fix compatibility issue with Apple clang 4.0
...
Fix compatibility with Mountain Lion.
Closes #3049 .
2012-07-30 15:46:42 -07:00
Zack Corr
de5c15edfb
Allow 3.0, 3.1, 3.0svn and 3.1svn for llvm-root
2012-07-24 17:11:13 -07:00
Ben Striegel
6322eda35c
Fail to configure without an LLVM-friendly Python
...
This addresses issue #2720 . According to LLVM's documentation, it requires a
version of Python between 2.4 and 2.7. Without the proper version, LLVM fails
to build with cryptic errors. Prior to this commit, the configure script
checked for the `python` command in the environment, but didn't actually check
the version, which can cause problems e.g. on Linux distros where the default
is Python 3. Now the configure script always prefers to select a more specific
version of Python when available, in the order `python2.7` > `python2.6` >
`python2` > `python`, and will always check to ensure that the interpreter's
version is in the correct range.
2012-06-25 20:18:09 -04:00
Brian Anderson
630c084da6
test: Move tests with rustc deps into run-pass-fulldeps
...
These tests require a lot more to be built before running so are not part of
check-lite
2012-06-01 16:01:56 -07:00
Graydon Hoare
079c3b02a8
Update llvm and integrate clang and compiler-rt.
2012-04-30 17:48:38 -07:00
Brian Anderson
7ba0dce013
build: Fix logic around --enable-local-rust
2012-04-19 15:46:25 -07:00
Evan McClanahan
2c93b1b2df
add the option --enable-local-rust to pull rust from your environment
...
rather than the snapshots.
make sure to get all of the files.
update to add nmatsakis' requested feature of pointing to a
different rustc install root.
usage: --enable-local-rust to enable
--local-rust-root="/path/to/rustc/" to change the path, which defaults to
"/usr/local/"
Tested on OS X and Linux, likely broken on windows.
2012-04-10 20:32:40 -07:00
Haitao Li
b2ec26c152
Print configure script found toolchain version
...
Closes #2169
2012-04-10 18:29:57 +08:00
Brian Anderson
f452973a7f
build: Add --enable-debug configure option
...
When CFG_ENABLE_DEBUG is defined it will call rustc with -g --cfg=debug
and cc with -DRUST_DEBUG. Otherwise it calls rustc with --cfg=ndebug and cc
with -DRUST_NDEBUG.
I plan to use this for a few things in the runtime.
2012-03-29 19:10:38 -07:00
Graydon Hoare
59336b8acb
Move config.stamp touch to configure script.
2012-03-26 18:03:53 -07:00
Graydon Hoare
89dec28a5c
Be more careful with CFG_{SRC,BUILD}_DIR ending in slash.
2012-03-26 18:03:53 -07:00
Brian Anderson
57281f52e5
test: Begin running the language ref examples. Mostly xfailed
2012-03-20 18:59:21 -07:00
Brian Anderson
93a082149a
build: Switch from naturaldocs to rustdoc
2012-03-09 22:56:53 -08:00
Brian Anderson
a7c4c18667
configure: Cleanup
2012-03-08 12:57:40 -08:00
Daniel Brooks
2049d1f05e
only require git if the source looks like it was checked out from git, otherwise don't attempt to manage the submodules
2012-03-08 12:57:40 -08:00
Daniel Brooks
11b403d513
it'll fail if you don't have git, so mark that as required
2012-03-08 12:57:39 -08:00
Brian Anderson
8a32f8efe5
build: Add --enable-helgrind option
2012-03-02 14:08:02 -08:00
Graydon Hoare
cccb0fbf72
Un-silence one too many greps.
2012-02-28 22:39:46 -08:00
Graydon Hoare
8c337026b5
configure: correct submodule code, only reconfigure LLVM when changed.
2012-02-28 22:39:45 -08:00
Graydon Hoare
341f414220
configure: quiet some greps.
2012-02-28 22:39:44 -08:00
Graydon Hoare
1c14d36e72
configure: chmod the right artifact and cp / mv with -f to overwrite.
2012-02-28 22:39:43 -08:00
Graydon Hoare
418c6bcec3
Only modify Makefile and config.mk if they change during configure.
2012-02-28 12:08:26 -08:00
Niko Matsakis
bceea8339a
change def's that are always local to use node_id, add --inline opt
2012-02-28 06:31:28 -08:00
Graydon Hoare
5fc2e9e9ab
support a fast-make mode that avoids globbing into llvm and libuv
2012-02-10 12:07:11 -08:00
Graydon Hoare
c485301d21
Update libuv.
2012-02-02 17:39:47 -08:00
Graydon Hoare
3a5c75eff9
Tidy up redundant code in configure relating to valopt and triples.
2012-01-30 16:29:13 -08:00
Graydon Hoare
0bf992969f
Merge pull request #1669 from graydon/inno-setup
...
Add Inno Setup installer script rather than NSIS
2012-01-26 18:16:30 -08:00
Jyun-Yan You
5257a5c6c3
let clang build llvm
2012-01-26 11:44:16 -08:00
unknown
fe57a7e582
Add Inno Setup installer script rather than NSIS
2012-01-25 16:02:53 -08:00
Jyun-Yan You
c2bf9b7726
freebsd clang support
2012-01-24 11:48:36 -08:00
Brian Anderson
327c8bc733
build: Run tutorial tests
2012-01-20 19:56:06 -08:00
Graydon Hoare
0d7df062f4
Teach configure to search for multiple commands-with-similar-names. Add NaturalDocs (vs. naturaldocs).
2012-01-19 13:10:14 -08:00
Brian Anderson
17fef6caaf
configure: Don't use pandoc < 1.8. Closes #1513
2012-01-18 14:32:37 -08:00
Graydon Hoare
193279daa2
Refactor the doc building rules a bit, sensitize them to the presence or absence of xetex and luatex (for now).
2012-01-18 14:14:42 -08:00
Graydon Hoare
af4e18d980
Improve the node-doc-building logic.
2012-01-17 14:46:51 -08:00
Grahame Bowland
9be247b9b8
build the tutorial if node.js is available
2012-01-17 23:56:20 +08:00
Haitao Li
ef0775fec8
build: Check and set perf --log-fd option
...
Linux perf tool version 3.2 introduced a new option "--log-fd" defaults
to 0, which leads to error "Failed opening logfd: Illegal argument" when
executing perf tests.
Set logfd to stderr to let perf test work.
Issue #1538
2012-01-17 10:48:46 +08:00
Brian Anderson
6860dcc958
Register snapshots
2012-01-15 13:50:37 -08:00
Brian Anderson
9e40e43e74
build: Build libraries in the bin directory on win32
2012-01-14 13:43:04 -08:00
Reuben Morais
04dd610053
Fix clang option in configure script
2012-01-14 02:41:12 -02:00
Brian Anderson
dcac427795
Revert "build: Build libraries in the bin directory on win32"
...
This reverts commit 23e0d16b5f
.
2012-01-12 20:06:45 -08:00
Brian Anderson
6becf517e3
Revert "Register snapshots"
...
This reverts commit 17d504e0a9
.
2012-01-12 20:06:30 -08:00
Brian Anderson
d95de0dd95
Merge remote-tracking branch 'brson/win32'
2012-01-12 19:25:27 -08:00
Graydon Hoare
fefdb63c4c
Begin shift over to using pandoc, markdown and llnextgen for reference manual. Fix man page URL while at it.
2012-01-12 19:10:30 -08:00
Brian Anderson
17d504e0a9
Register snapshots
2012-01-12 17:16:31 -08:00
Brian Anderson
23e0d16b5f
build: Build libraries in the bin directory on win32
2012-01-12 13:59:05 -08:00
Brian Anderson
f921e2e3d1
Revert "build: Build libraries in the bin directory on win32"
...
This reverts commit c00ec5f9c9
.
2012-01-11 14:13:11 -08:00
Brian Anderson
c00ec5f9c9
build: Build libraries in the bin directory on win32
2012-01-11 13:57:11 -08:00
Reuben Morais
d593b74469
Allow Clang 3.1
2012-01-08 23:53:26 -02:00
Brian Anderson
90c07f38c1
configure: Disable git submodule management when there is no .git dir
...
Tarballs for distribution will not have a git repo.
2012-01-07 14:26:54 -08:00
Graydon Hoare
c74d5ce046
Stop configure early if git or subconfigures fail.
2012-01-05 19:00:37 -08:00
User Jyyou
a59c4b1b47
freebsd support
2012-01-01 20:18:55 -08:00
Stefan Plantikow
9c4b3c26f0
Changes to configure (Fix for #1291 )
2011-12-14 01:46:08 +01:00
Austin Seipp
638b51488f
Disable unused features in the LLVM build.
...
Issue #1274 - should make the build a wee bit faster.
2011-12-09 19:27:18 -08:00
Graydon Hoare
447414f007
Establish 'core' library separate from 'std'.
2011-12-06 12:13:04 -08:00
Brian Anderson
f1eb7ce013
configure: LLVM 3.0 no longer supported
2011-12-04 15:01:41 -08:00
Niko Matsakis
9acc2bfcad
add --host-triple
2011-12-02 19:05:49 -08:00
Niko Matsakis
50e2e07255
use 64-bit as host if on 64-bit CPU
2011-11-30 15:44:35 -08:00
Niko Matsakis
21ffc55e57
update io test to use tmp directory, and update configure to create it
2011-11-29 12:51:09 -08:00
Niko Matsakis
c9061733c6
misc fixes
2011-11-29 12:51:07 -08:00
Niko Matsakis
9c12c7c7f5
basic builds function
2011-11-29 12:51:07 -08:00
Brian Anderson
8d7863fad0
configure: Add --disable-manage-submodules switch
...
This will keep configure/make from updating submodules, which becomes
very annoying when you are working on LLVM
2011-11-28 18:01:42 -08:00
Brian Anderson
d2199e8716
Various fixes for x86_64 on linux
...
Configure LLVM correctly, use the right data layout, add the readlink
function back, fix C constants, etc.
2011-11-16 15:24:56 -08:00
Niko Matsakis
895822a61c
more consistent naming convention
2011-11-16 15:16:41 -08:00
Niko Matsakis
cda2e07c37
reverse sense of check
2011-11-16 15:16:41 -08:00
Niko Matsakis
1456a23f72
make CFG_OPTIMIZE_CXX an option
2011-11-16 15:16:41 -08:00
Niko Matsakis
b55b8dc8bc
add default for --debug-llvm option
2011-11-16 15:16:41 -08:00
Niko Matsakis
d77968dd7c
finish up the shim approach
2011-11-16 15:16:40 -08:00
Niko Matsakis
34a5074432
fix handling of target-triples: use a comma to separate hosts
2011-11-08 21:11:47 -08:00
Brian Anderson
81a93eff93
configure: Handle absolute source paths when configuring LLVM
2011-11-05 13:23:11 -07:00
Brian Anderson
c0d220362f
configure: Quote the git command
2011-11-05 13:23:11 -07:00
Brian Anderson
2e54a76737
Cleanup configure script
2011-11-05 13:23:11 -07:00
Brian Anderson
8e14d188de
configure: Use i686 as the CPU type instead of i386
...
Seems to prevent the warning about linking bitcode with different triples.
2011-11-05 13:23:11 -07:00
Brian Anderson
4b6585c924
Parameterize the LLVM build over the target triples
2011-11-05 13:23:11 -07:00
Brian Anderson
a4e1a438f6
Cleanup LLVM build rules after rebase onto x64 changes
2011-11-05 13:23:11 -07:00
Brian Anderson
225f50ea96
Begin remove old LLVM configuration code
2011-11-05 13:23:11 -07:00
Brian Anderson
a0ff3db258
LLVM build cleanup
2011-11-05 13:23:11 -07:00
Brian Anderson
e47f410536
Use LLVM directly from the build directory
...
This will cut out the few seconds it takes to run make install.
2011-11-05 13:23:10 -07:00
Brian Anderson
26bb6716ef
Tie the LLVM build into ours
2011-11-05 13:23:10 -07:00
Brian Anderson
bd67c70163
Call LLVM's configure script from ours
2011-11-05 13:23:10 -07:00
Brian Anderson
1a05274738
Add submodule management to configure script
2011-11-05 13:23:10 -07:00
Brian Anderson
7c3616057d
configure: change --only-gcc to --enable-clang to make clang opt-in
2011-11-03 12:01:31 -07:00
Brian Anderson
1deaf97002
configure: cleanup
2011-11-02 16:26:22 -07:00
Brian Anderson
4151a3a67f
configure: abort early on --help
2011-11-02 16:25:22 -07:00
Elly Jones
098cf43761
configure: support --target-triples and --only-gcc.
...
Signed-off-by: Elly Jones <elly@leptoquark.net>
2011-11-02 19:19:33 -04:00
Brian Anderson
0003a50e33
Change the error message when no LLVM is found
2011-11-02 16:10:40 -07:00
Elly Jones
234a4e58bd
configure: add --llvm-root
...
Signed-off-by: Elly Jones <elly@leptoquark.net>
2011-11-02 16:10:40 -07:00
Elly Jones
a26554d97b
configure: add support for --prefix=<prefix>
...
Signed-off-by: Elly Jones <elly@leptoquark.net>
2011-11-02 16:10:40 -07:00
Niko Matsakis
2bfa72ea42
virtualize rustllvm construction per target triple
2011-11-02 14:14:20 -07:00
Niko Matsakis
54af489e6f
virtualize the runtime per target triple.
2011-11-02 14:14:20 -07:00
Niko Matsakis
93781297bf
enable building with different target arch
2011-11-02 14:13:22 -07:00
Niko Matsakis
20946e6970
start going back to an i386 build
2011-11-02 14:13:22 -07:00
Brian Anderson
e0abcf3cd5
Document CFG_ONLY_GCC
2011-10-29 14:14:30 -07:00
Austin Seipp
83413b59a0
Prioritize GCC over Clang if CFG_ONLY_GCC is set.
...
On OS X I'd rather just be able to use GCC instead of the clang
builds I use/play with.
2011-10-29 14:11:23 -07:00
Brian Anderson
0c6200743c
Add std docs to the build process
2011-10-27 14:59:22 -07:00
Brian Anderson
7ae757583a
Begin documenting std and add doc generation using naturaldocs
...
Naturaldocs isn't really that great but it seems easier to get
something working than with doxygen, for which we would need to
convert rust code to something C++ish. We probably want to just
write a rustdoc utility at some point.
2011-10-25 18:01:52 -07:00
Austin Seipp
5ccf372755
Make sure $CFG_LLVM_CONFIG is set to $CFG_LLVM_ROOT/bin/llvm-config
...
On my machine I have two LLVM builds, one of regular HEAD and one
for Rust in ~/rust-llvm - by default CFG_LLVM_CONFIG is set to
/usr/local/bin/llvm-config which is wrong, because the probe for it
initially happens earlier in configure and succeeds (so putvar is called.)
This causes it to be emitted twice into the Makefile but the second
instance wins.
2011-10-23 01:07:40 -05:00
Brian Anderson
d77996a30f
Add LLVM 3.1svn to supported versions
2011-10-15 15:53:18 -07:00
Brian Anderson
6e654564db
Lots of build system cleanup and documentation
...
This splits mk/stageN.mk into host.mk and target.mk and makes
the build rules somewhat simpler - there's no more building from stageN
into stageN+1; instead we always build from stageN(host) to
stageN(target) then promote from stageN(target) to stageN+1(host).
Add a big honkin explaination right at the top of Makefile.in
2011-10-02 00:57:53 -07:00
Brian Anderson
9563c17d78
Have 'make install' do something close to useful
...
We'll copy the files to the right location. Still need to rpath.
Issue #529
2011-09-30 22:47:40 -07:00
Brian Anderson
821dd6c02c
Change the directory for target libs
...
This pushes them down from stageN/lib/rustc/$(target) to
stageN/lib/rustc/$(target)/lib in order to make room for a target bin dir
2011-09-30 17:19:24 -07:00