139 Commits

Author SHA1 Message Date
landry
531b5386c3 Divide build time by at least three and various fixes, all from semarie@
- stop pruning optimizations coming from the environment (ie OpenBSD's
  default -O2 -pipe) when building llvm - this resulted in a very slow
llvm, and in a veeery slow rust build, and an awfully slow rust
compiler. Yay. See https://github.com/rust-lang/rust/issues/39900
- only add cmake to BDEP when rustc is compiled with bundled llvm
- propagate verbose cmake flag to bundled llvm build

tested on i386 and amd64
2017-02-18 13:15:48 +00:00
landry
ba61ea94c0 Update to rust 1.15.1.
- switch to rustbuild build system instead of configure (the world
  definitely needed one more build system!)
- the build still takes +INF hours, this is being investigated

Note that rust will be a hard-requirement for gecko 54... sigh.

Tested by semarie@ and myself on i386 & amd64.

All the hard work and countless build hours by semarie@, thanks!
2017-02-15 12:52:35 +00:00
landry
da554e47cc Temporarly switch rust to build with embedded llvm.
rust doesnt build yet with llvm 4.0, which should be soon updated in the
portstree. Upstream rust support for llvm 4.0 is in the pipe.

From semarie@
2017-02-02 08:02:50 +00:00
landry
8847458053 Apply some black magic (shoplifted from lang/ghc) to fix
DISTFILES/SUPDISTFILES handling so that non-supported archs dont error
out in dpb with cryptic messages such as 'Incomplete info for
rust/rustc-bootstrap-sparc64-.tar.gz'

Reminder: DISTFILES is supposed to contain the list of files needed *on
the current arch* while SUPDISTFILES should have the list *of all files
that port might use* (think about make makesum)

discussed with semarie@
2017-01-06 17:32:22 +00:00
landry
67092985c1 update rust to 1.14.0, from MAINTAINER semarie@
for details, please see https://blog.rust-lang.org/2016/12/22/Rust-1.14.html

tested on i386 w/ llvm 3.9.0 here, and sebastien tested both amd64 & i386.
2016-12-26 13:52:46 +00:00
juanfra
5ef55a2e76 Add support for i386 to rust. From semarie (MAINTAINER). 2016-12-06 22:39:49 +00:00
danj
e1c2d8f71b Update to rust-1.13.0, from semarie who takes maintainership again
ok aja@
2016-11-12 16:42:24 +00:00
danj
90c749b360 Update to rust-1.12.1
For release note see https://blog.rust-lang.org/2016/10/20/Rust-1.12.1.html

Please note, semarie rebuilded the bootstrap due to a bug in rustc: 1.12.0
wasn't able to rebuild 1.12.1 without intrusive patches in the build system

From semarie, ok ajacoutot
2016-10-25 17:08:07 +00:00
danj
e0210e3221 Update to rust-1.12.0
From semarie (maintainer), ok ajacoutot
2016-10-05 16:48:10 +00:00
naddy
9faa30cbf8 When testing the bootstrap version, the configure script failed to
use the included libraries. If a system library was bumped, the
binary wouldn't run at the configure stage, even if it ran fine
during the build.

So patch the configure script to pass LD_LIBRARY_PATH as it is done
during the build.  From Sebastien Marie.
2016-09-03 19:51:47 +00:00
ajacoutot
a660b7d542 Unbreak, from semarie:
When using --enable-local-rebuild option, the configure script will
check the existence of rustc binary from the local-rust-root directory
(/usr/local by default). It is the binary the build process will copy in
stage0 directory.

With the diff, we explicity use the bootstrap directory for configuring.
Note that we still we manually copying all the bootstrap files in
post-configure, as the standard build system will *not* copy the
libraries in lib/ which could be required to run rustc binary
(libraries like libc.so used by bootstrapper).
2016-09-01 09:41:40 +00:00
landry
db735d1b2f Update to rust 1.11.0, from semarie@, thanks!
All tests passing here.
2016-08-31 08:33:19 +00:00
landry
ebcc7c96fe Sebastien drops MAINTAINERship for lack of time... any takers ?
Thanks for your work on it !
2016-08-13 07:40:43 +00:00
sthen
cac30155c9 don't add rustc-bootstrap-${MACHINE_ARCH} to DISTFILES unless it's amd64
(currently the only arch in ONLY_FOR_ARCHS), otherwise fetch failures are
reported when dpb on any other arch tries to fetch a nonexistent
rustc-bootstrap-<somearch>. ok semarie@ kili@
2016-06-12 13:07:42 +00:00
semarie
9ec79eb0b3 lang/rust: change bootstrap method
OK juanfra@
2016-06-09 04:20:10 +00:00
semarie
094c2dd09a lang/rust update to 1.9.0
- changes in Makefile to make it compute itself the RUST_HASH value

- use new configure option --disable-codegen-tests as with don't have FileCheck
  (from llvm) binary. remove the patches in configure and src/compiletest/runtest.rs

- disable (for now) two news tests added with unix socket support, that doesn't
  pass. I will investigate them later.

- disable run-pass/backtrace test. The support of libbacktrace has been remove
  recently.
2016-05-29 07:26:46 +00:00
semarie
f29eca3929 lang/rust: fallback to LOCALBASE for sysroot
- std::env::current_exe() returns an error instead of returning wrong
  pathname (no complete, but rust build scripts makes (bad)
  assumptions that I couldn't patch for now).

- rustc / rustdoc to use CFG_PREFIX (configure --prefix value) when
  std::env::current_exe() return an error

- remove the installed wrapper used to pass --sysroot argument to
  rustc (the wrapper was used for workaround the problem differently
  for rustc, but didn't resolv the problem for rustdoc as it doesn't
  have --sysroot argument).

looks ok edd@
2016-05-25 06:39:35 +00:00
semarie
91aed3f450 lang/rust: new bootstrap for TIB (updated archive as the previous was busted) 2016-05-09 14:08:41 +00:00
semarie
1edf4f94bd lang/rust: new bootstrap for TIB 2016-05-09 08:04:44 +00:00
semarie
9414cd5321 add plist update too in lang/rust
(and bump revision)

bad semarie@, no cookie.
2016-04-14 03:42:12 +00:00
semarie
6e19421df3 update lang/rust to 1.8.0
ok juanfra@
2016-04-13 17:33:51 +00:00
semarie
b939951454 lang/rust: use devel/llvm for building
switch from embedded version of LLVM to system version.

OK juanfra@
2016-03-11 05:30:45 +00:00
semarie
fc59f1c69d update lang/rust to 1.7.0
"looks reasonable" bmercer@
2016-03-05 15:05:33 +00:00
semarie
7e556aba66 lang/rust: remove python run-depends
it is only needed at compile-time.

ok ajacoutot@
2016-01-25 05:36:05 +00:00
semarie
6cc1d59ac2 update lang/rust to 1.6.0
ok juanfra@
2016-01-22 09:03:14 +00:00
semarie
a7ac139c37 install libraries with rustc
- remove now unneeded MAKE_ENV option to pass --sysroot argument to bootstrapper
- backport the latest changes for building rustc under openbsd
- switch the install from installing a stage3 rustc binary to installing a stage2 rustc binary (and all required libraries)

ok juanfra@
2016-01-13 07:39:07 +00:00
semarie
a8a8bd2850 update lang/rust to 1.5.0
ok landry@
2015-12-10 17:53:57 +00:00
semarie
26167df76a update lang/rust to 1.4.0
tested by mmc@ and bmercer@
2015-11-02 12:44:24 +00:00
semarie
fcc46726b9 update lang/rust to 1.3.0
ok landry@
2015-09-22 08:11:24 +00:00
semarie
e0f924287f update rust to 1.2.0
ok jca@
2015-08-28 06:51:07 +00:00
semarie
8d6e2a8e26 Update to rust-1.1.0
OK landry@
2015-06-27 15:37:32 +00:00
ajacoutot
302d84c7e8 Bump LIBESTDC_VERSION after default gcc4 switched to 4.9.
That thing should be reworked somehow...
2015-05-28 10:29:44 +00:00
pascal
f0585aa4cf gcc4 bumps, reminded by aja@ 2015-05-28 10:17:22 +00:00
espie
912e2fccdd fix bulk build, make sure we don't grab execinfo.h by mistake 2015-05-24 19:36:59 +00:00
bmercer
ba8852efda Update to rust-1.0.0, from Sébastien Marie. Tested by myself, sthen, and afresh, OK sthen@ 2015-05-19 23:42:38 +00:00
landry
073b1a542b Update to rust-1.0.0beta2, from maintainer Sébastien Marie
Ensure we link against the correct libestdc++ version.
Remove a patch merged upstream.
2015-04-18 12:19:09 +00:00
naddy
aa43014a67 don't require unused curl or wget; from maintainer Sebastien Marie 2015-04-10 18:13:06 +00:00
sthen
a1e8134b34 s/ONLY_FOR_ARCHS-main/ONLY_FOR_ARCHS/, -docs doesn't build on !amd64 either 2015-04-08 13:02:57 +00:00
landry
65b08f4a62 Import rust 1.0.0beta, all the hard work from Sébastien Marie (thanks!)
Rust is a systems programming language that runs blazingly fast, prevents
almost all crashes, and eliminates data races.

Featuring:
- zero-cost abstractions
- move semantics
- guaranteed memory safety
- threads without data races
- trait-based generics
- pattern matching
- type inference
- minimal runtime
- efficient C bindings

some packaging tweaks by me, ok/testing bcallah@ jca@
2015-04-06 16:01:05 +00:00