Commit graph

531 commits

Author SHA1 Message Date
Niko Matsakis
e702d20191 allow immut vars to be moved. enforce mut vars after stage0 in std. 2012-03-14 20:46:36 -04:00
Niko Matsakis
6b35875dca annotate libstd and start enforcing mutability 2012-03-14 20:46:36 -04:00
Brian Anderson
3de30f4ef2 rt: Change alignof to rust_alignof. Remove -Wno-c++11-compat. Closes #1644 2012-03-12 18:03:48 -07:00
Brian Anderson
6bab5c07e4 build: Make tutorial and lang ref depend on rust.css 2012-03-10 15:26:09 -08:00
Brian Anderson
93a082149a build: Switch from naturaldocs to rustdoc 2012-03-09 22:56:53 -08:00
Brian Anderson
4d4995fc60 build: Fix some deps in tools.mk 2012-03-09 22:56:53 -08:00
Niko Matsakis
5c4ffd0dd7 build libcore with --enforce-mut-vars 2012-03-07 07:47:54 -08:00
Niko Matsakis
712dd23541 make inline enabled by default 2012-03-06 09:01:40 -08:00
Graydon Hoare
87c14f1e3d Move src/comp to src/rustc 2012-03-02 18:46:13 -08:00
Brian Anderson
8a32f8efe5 build: Add --enable-helgrind option 2012-03-02 14:08:02 -08:00
Jeff Olson
d461637cc5 missing build file update for parent commit 2012-02-28 17:56:15 -08:00
Niko Matsakis
1fd9abaa47 rename aux to auxiliary, since aux is apparently reserved on windows 2012-02-28 06:45:33 -08:00
Niko Matsakis
5c1338a18e add ability to run multi-crate tests, run tests with --inline 2012-02-28 06:31:29 -08:00
Niko Matsakis
13781f3d8d retool serializer to be built by stage0 rustc 2012-02-24 21:14:34 -08:00
Niko Matsakis
be9914625b allow snapshot to be specified in make command line 2012-02-24 20:46:27 -08:00
Graydon Hoare
5b4da3c5e1 Correct install.mk to use CFG_LIBDIR for correct install paths on windows. 2012-02-24 18:29:44 -08:00
Daniel Brooks
3c95fa22da python might be in a path with spaces in it, you never know 2012-02-21 00:53:01 -08:00
Graydon Hoare
224eb977f8 Fix dependencies of stage2 check-fast driver. 2012-02-17 23:02:26 -08:00
Graydon Hoare
a4d2beb16b Only modify PATH on win32 when in MSYSTEM shell 2012-02-17 23:02:25 -08:00
Brian Anderson
b2cfb7ef82 rt: Add rust_port_select function 2012-02-16 11:12:22 -08:00
Brian Anderson
4eeb706e84 build: Set RUST_THREADS=1 on FreeBSD to avoid a threading bug 2012-02-12 18:23:23 -08:00
Brian Anderson
deec6b9ccf build: Disable libuv makefile auto-regeneration 2012-02-11 18:00:52 -08:00
Niko Matsakis
fdddf8f9e1 put serializer into the build and encode full item paths 2012-02-10 20:48: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
Brian Anderson
5d8d591ffc rt: Remove sync::yield and sync::sleep 2012-02-09 19:00:16 -08:00
Brian Anderson
421c8db144 rt: Move rust_thread to its own files 2012-02-09 19:00:16 -08:00
Brian Anderson
e0d5b92b84 rt: Begin moving stack-building functions to rust_stack.cpp 2012-02-09 19:00:15 -08:00
Jyun-Yan You
b778dac197 fix build on freebsd 2012-02-09 18:41:57 -08:00
Niko Matsakis
5163606d06 platform-specific valgrind suppression 2012-02-05 09:07:23 -08:00
Brian Anderson
8d881967a2 rt: Extract rust_scheduler from rust_task_thread 2012-02-03 23:48:12 -08:00
Brian Anderson
f94339cc1c rt: Rename rust_scheduler to rust_task_thread 2012-02-03 23:48:12 -08:00
Marijn Haverbeke
c1b075d042 Remove experimental GC code
It's been sitting unused long enough to have bitrotted completely.
2012-02-03 11:34:12 +01:00
Brian Anderson
7f2980b749 rt: Remove bitrotted tests 2012-02-02 18:10:24 -08:00
Graydon Hoare
c485301d21 Update libuv. 2012-02-02 17:39:47 -08:00
Niko Matsakis
af2dd9b3b7 register new snapshot, revert USE_SNAPSHOT_RUNTIME setting 2012-02-01 21:02:19 -08:00
Niko Matsakis
196d69beb2 make boxes self-describing (fixes #1493)" (take 2)
this will be used to generate a new snapshot.
2012-02-01 18:52:08 -08:00
Niko Matsakis
3116643806 Revert "make boxes self-describing (fixes #1493)" until a new
snapshot is prepared.
2012-02-01 18:50:19 -08:00
Niko Matsakis
c36207bfb8 make boxes self-describing (fixes #1493) 2012-02-01 18:18:07 -08:00
Brian Anderson
5c89938544 rt: Remove rust_timer. Unused 2012-02-01 16:05:17 -08:00
Graydon Hoare
9db1d16f61 Add a 'make uninstall' target. Close #1668. 2012-01-30 16:29:20 -08:00
Brian Anderson
2ca0b37321 build: Don't use -T option on install cmd. Not OS X compatible 2012-01-28 14:32:38 -08:00
Aleksander Balicki
6841c777f6 Update cp to install, so we can safely install on systems with restrictive umasks 2012-01-28 02:52:44 +01:00
Brian Anderson
f0ba69a96f Remove the --no-core command-line option
It is superceeded by the #[no_core] attribute
2012-01-26 20:30:46 -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
Marijn Haverbeke
3aed4b04ce [makefiles] Make rustc depend on librustc
This ensures the lib is not just built, but also copied into the right
lib directory when a rustc binary is used as make target.
2012-01-26 15:43:39 +01:00
unknown
fe57a7e582 Add Inno Setup installer script rather than NSIS 2012-01-25 16:02:53 -08:00
Brian Anderson
7356126457 build: Add a comment explaining -Wno-c++11-compat 2012-01-24 11:55:42 -08:00
Jyun-Yan You
c2bf9b7726 freebsd clang support 2012-01-24 11:48:36 -08:00
Austin Seipp
62c4d2ce82 Add an INSTALL.txt and make it part of the source distribution 2012-01-23 16:07:01 -06:00
Brian Anderson
07f8555b3e std: Add some hacks to use libuv 2012-01-22 20:06:58 -08:00
Brian Anderson
327c8bc733 build: Run tutorial tests 2012-01-20 19:56:06 -08:00
Graydon Hoare
16e4369fe3 Include man page in dist. 2012-01-20 12:06:14 -08:00
Niko Matsakis
cac46eac4b revert accidental commits 2012-01-20 09:34:15 -08:00
Niko Matsakis
b7811e613d small fixes for building dist on windows 2012-01-20 08:59:07 -08:00
Brian Anderson
f6c7cfdc3e Revert "build: Surround makensis command in quotes"
This reverts commit cd39fdcae3.
2012-01-20 02:31:00 -08:00
Brian Anderson
cd39fdcae3 build: Surround makensis command in quotes
Quick hack - on the bots this is installed in a dir containing spaces.
2012-01-20 02:09:26 -08:00
Graydon Hoare
fcd52f5714 Conditionalize PKG_EXE on makensis. 2012-01-19 21:29:27 -08:00
Graydon Hoare
4376189050 Update deps on the dist rule to something more modern. 2012-01-19 21:02:49 -08:00
Graydon Hoare
5f8f641211 Split dist rules by platform. 2012-01-19 18:34:41 -08:00
Graydon Hoare
c2dba1799f Actually use CFG_NATURALDOCS rather than hardcoding naturaldocs name. 2012-01-19 13:26:59 -08:00
Graydon Hoare
5378d5185e Fix the dist target to include Much Less Junk from llvm (notably not .git!) 2012-01-19 11:11:43 -08:00
Marijn Haverbeke
df02ca1df9 [makefiles] Don't add css file to set of DOCS targets 2012-01-19 14:19:23 +01:00
Marijn Haverbeke
a4b77758f0 Move tutorial over to a format similar to the reference doc
And adjust highlighting/testing scripts to deal with this.
2012-01-19 13:34:10 +01:00
Graydon Hoare
b0d5436dd0 Give up trying to be clever about masking out parts of llvm and libuv. 2012-01-18 18:44:06 -08:00
Graydon Hoare
9f66ea0ac1 Fix path munging in dist rule. 2012-01-18 18:44:06 -08:00
Graydon Hoare
3074fd591d Tidy tidy 2012-01-18 18:44:06 -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
Haitao Li
397d9148a7 build: Run tidy first before all other check targets
`make check` executes `tidy` after compile. It reminds me that I've left
long lines or trailing whitespaces only after compilation finshed. That
is too late since I have to recompile only because fixing the trivial
formatting issues.

Run tidy first to avoid potentially unnecessary re-compilation.
2012-01-19 02:51:57 +08:00
Marijn Haverbeke
ba6c94e321 Add a stylesheet to make the reference HTML look a bit prettier 2012-01-18 16:28:31 +01:00
Brian Anderson
6e27b27cf8 libstd: Move std tests into libstd 2012-01-17 19:48:58 -08:00
Brian Anderson
de4053f473 build: Start running libcore tests 2012-01-17 19:41:05 -08:00
Graydon Hoare
dbd3d6ac09 Move the ifdefs to nest properly. Real clever. 2012-01-17 16:50:13 -08:00
Graydon Hoare
80c7bfb069 Rename some readmes and fix some dist logic. 2012-01-17 16:50:13 -08:00
Graydon Hoare
c1bf17ed4f cp -a only. 2012-01-17 15:47:35 -08:00
Brian Anderson
fa718dcebf build: Stop passing --lib argument 2012-01-17 15:13:43 -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
Haitao Li
394a80cfd8 build: Stop building stage3 on normal test cycles
Issue #1419
2012-01-16 20:30:39 +08:00
Brian Anderson
b9cd983f36 build: Start running rustdoc tests 2012-01-16 01:07:41 -08:00
Brian Anderson
16462a77b0 build: Add rustdoc to tidy rules 2012-01-15 14:30:12 -08:00
Brian Anderson
66e97a9b08 rustdoc: Add a crate file 2012-01-15 14:30:12 -08:00
Brian Anderson
9e40e43e74 build: Build libraries in the bin directory on win32 2012-01-14 13:43:04 -08:00
Brian Anderson
09856537ab build: Add shortcut targets for pretty-print tests 2012-01-13 14:48:07 -08: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
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
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
Graydon Hoare
0fba2d0255 Fix 'make distcheck', close #1445. 2012-01-10 14:34:53 -08:00
Niko Matsakis
005e319485 make use of snapshot runtime predicated on variable USE_SNAPSHOT_RUNTIME 2012-01-09 19:53:32 -08:00
Brian Anderson
d4ae1cae60 rt: Build the stage0 runtime for non-hosts from the working dir 2012-01-09 13:34:01 -08:00
Niko Matsakis
8506241f3a fix how we walk functions to match new closure fmt 2012-01-06 22:40:31 -08:00
Marijn Haverbeke
d214e3df16 Don't delete css and js files in doc/ when making clean
We have a bunch of these in the repository.
2012-01-06 17:40:05 +01:00
Brian Anderson
82cb906dd8 build: Don't delete llvm files as part of make clean
Doing this is just resulting in a broken workspace. We have a clean-llvm
target that does the right thing. If we want to we can make it a dependency
of clean, but most people don't need to clean llvm and doing so results
in a lengthy rebuild.
2012-01-05 22:46:13 -08:00
Graydon Hoare
8634c238c6 Fix a couple paths in the dist target. 2012-01-05 16:36:48 -08:00
Jyun-Yan You
274fc1b59c fix link error 2012-01-01 20:18:55 -08:00
Jyun-Yan You
21eadbe6f1 add missing library, enable segmented stacks for freebsd 2012-01-01 20:18:55 -08:00
User Jyyou
a59c4b1b47 freebsd support 2012-01-01 20:18:55 -08:00
Graydon Hoare
90ae3e3168 Document copy/move/swap/assign expressions more accurately. Fix up some drift on log docs. 2011-12-30 15:10:55 -08:00
Graydon Hoare
468ced3868 Make install and check targets depend on all. Close #1395. 2011-12-30 12:48:07 -08:00
Graydon Hoare
7e611366bb Make clean cleaner. 2011-12-30 12:47:43 -08:00
Graydon Hoare
51a9274cf6 Add rustdoc to build. 2011-12-20 18:27:27 -08:00
Haitao Li
bc95ccb536 Separate driver rustc and librustc
rustc is now a minimal wrapper of librustc.
2011-12-20 21:06:04 +08:00
Marijn Haverbeke
ebdf3ef2c0 Don't make rustc depend on librustc 2011-12-19 15:48:58 +01:00
Brian Anderson
cb5f636ff1 rustc: Don't emit compact unwind info on mac
It's not compatible with the subtlety of __morestack
2011-12-18 00:42:37 -08:00
Graydon Hoare
c758e11fd3 Install and snapshot cargo by default. 2011-12-16 19:37:27 -08:00
Graydon Hoare
4f826b34cb Update build machinery to build and install librustc everywhere (including snapshots). 2011-12-16 17:21:28 -08:00
Haitao Li
d5af61d679 build: Tidy cargo when checking formatting 2011-12-16 17:17:24 +08:00
Haitao Li
55cc110822 build: Remove the temp hack for libraries renaming transition 2011-12-16 17:17:24 +08:00
Brian Anderson
21cf9c8698 build: Touch llvm-config after building
llvm-config is the file we base our LLVM build rule on, but rebuilding LLVM
doesn't always rebuild it, so touch.
2011-12-13 14:32:32 -08:00
Haitao Li
2ba317ddb2 build: Temp hack to make transition to new snapshot 2011-12-12 16:15:29 -08:00
Haitao Li
6dbd4c21e9 rustc: build versioned library with hash in its name
Also updated build to install versioned libraries and added a few
missing actions for `make clean`.
2011-12-12 16:15:29 -08:00
Brian Anderson
4699b6865f build: Use llvm-mc as our assembler
LLVM's assembler understands .cfi pseudo-ops on the mac, which we need in
order to generate frames that can be DWARF-unwound
2011-12-10 18:51:21 -08:00
Graydon Hoare
dfd699a852 Pass --no-core when building libcore. 2011-12-07 13:32:59 -08:00
Graydon Hoare
447414f007 Establish 'core' library separate from 'std'. 2011-12-06 12:13:04 -08:00
Austin Seipp
b513a5a500 Make valgrind usage more consistent and less error prone.
I was still having issues with the build system somehow getting confused
as to which set of valgrind headers to use when compiling rt.

This commit moves all the valgrind headers into their own directory
under rt and makes the usage more consistent. The compiler is now passed
the -DNVALGRIND flag when valgrind is not installed, as opposed to
passing -DHAVE_VALGRIND.

We also pass -I src/rt to the compiler when building rt so you can more
easily import what you want. I also cleaned up some erroneous #includes
along the way.

It should be safe to always just import the local valgrind headers and use
them without question. NVALGRIND turns the operations to no-ops when it
is active, and the build and tests run cleanly with or without.
2011-12-06 01:15:29 -06:00
Brian Anderson
a92218e630 Upgrade LLVM to svn revision 145779
This pulls in commits 145765 & 145766, which are required for split stacks.
2011-12-04 14:59:56 -08:00
Brian Anderson
9711596bec Fix definition of check-stageN-all targets 2011-12-03 20:23:54 -08:00
Niko Matsakis
9cc2515dfa make check test stage3 2011-12-02 19:05:50 -08:00
Niko Matsakis
1eb378b23a make "check" match "all": only the host triple 2011-12-02 19:05:49 -08:00
Stefan Plantikow
1b7f1415d6 build: added CFG_INSTALL_SNAP for automatically activating test snapshots
This is only guaranteed to work when building in the top-level dir
2011-12-02 12:23:50 -08:00
Graydon Hoare
d1fd7d49a7 Build infra and minor build-enabling bugfixes for cargo. 2011-12-01 11:31:29 -08:00
Brian Anderson
7476a39e47 stdlib: Implement some preliminary libuv bindings
std::uv is intended to be low-level, exactly mirroring the C API.
Difficult to continue the implementation now without scheduler
improvements.
2011-12-01 10:24:21 -08:00
Brian Anderson
b2fd6121c0 build: Pass -fPIC to the libuv build 2011-12-01 10:24:21 -08:00
Niko Matsakis
c1be673e76 fix path for the find command 2011-11-30 15:44:59 -08:00
Brian Anderson
fc6f3b1b14 build: Have 'make check' run all target/host combinations 2011-11-29 15:37:33 -08:00
Brian Anderson
2979b3d006 build: Fix stage0 rules for non-host targets 2011-11-29 15:03:03 -08:00
Niko Matsakis
5ce33ceb76 improve install, fix MKFILE_DEPS so it works 2011-11-29 13:01:10 -08:00
Niko Matsakis
865a796081 fix snap 2011-11-29 13:01:10 -08:00
Brian Anderson
52993f7c32 Adjust perf target to use correct variable names 2011-11-29 13:00:30 -08:00
Niko Matsakis
aba6e63543 work on perf 2011-11-29 12:51:12 -08:00
Niko Matsakis
6bced5be31 fix more problems w/ check-fast 2011-11-29 12:51:11 -08:00
Niko Matsakis
4f92204765 make check-fast work 2011-11-29 12:51:11 -08:00
Niko Matsakis
821298737a fix dependencies for snap-stage[23] 2011-11-29 12:51:11 -08:00
Niko Matsakis
6e55426c8c tweak to get windows test-running correct 2011-11-29 12:51:10 -08:00
Niko Matsakis
44ccc36d93 update snapshot scripts 2011-11-29 12:51:10 -08:00
Niko Matsakis
4817222102 fix clean target 2011-11-29 12:51:09 -08:00
Niko Matsakis
9c00c62b08 fix makefiles, add option to ignore changes in makefiles 2011-11-29 12:51:09 -08:00
Niko Matsakis
8371beb590 makefiles now seem to be working, rustc is not 2011-11-29 12:51:08 -08:00
Niko Matsakis
791dc23c83 make check works 2011-11-29 12:51:08 -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
cd91c6d065 rt: Build __morestack as a static library and copy it to the right places 2011-11-28 18:01:42 -08:00
Brian Anderson
e075412a92 build: Stop linking morestack.S to rt
__morestack has to be linked statically. The odd calling convention on x86_64
results in the arguments to __morestack (r10 & r11) being clobbered by the
dynamic linker. gcc links all the __morestack functions statically.
2011-11-28 16:37:29 -08:00
Brian Anderson
aa2fbbac0d build: Create a better definition of LLVM deps 2011-11-25 19:36:19 -08:00
Haitao Li
2ac63801d2 doc: Build keywords multitable automatically
Keywords are now listed in a plain text file. They're sorted in
column-major order and rendered as a texinfo multitable in rust.texi.

Fixes issue #1216.
2011-11-23 21:11:18 +01:00
Brian Anderson
6bdf347418 rt: Make __morestack (without unwinding) work on 32-bit linux 2011-11-22 18:02:10 -08:00
Stefan Plantikow
25b44a8973 Added CFG_NOTIDY flag to the build
This should allow a small speedup for test builds; unset by default
2011-11-18 21:19:18 -08:00