Commit Graph

231 Commits

Author SHA1 Message Date
Mikael Urankar 06a556fb49 lang/rust: remove disable-ldconfig it's not an option for quite some time 2021-02-04 17:21:27 +00:00
Mikael Urankar 13c484cc67 lang/rust: reroll the armv7 bootstrap
The current one fails to build Rust.

PR:		251254
Reported by:	mmel
2021-01-30 17:21:47 +00:00
Mikael Urankar 6c562c69e9 lang/rust: revert part of r563191
It contains unrelated changes
2021-01-29 10:52:10 +00:00
Mikael Urankar 650775e0fa lang/rust: reroll the aarch64 bootstrap.
This new bootstrap is based on rust 1.49.0 built with a 12.1 sysroot.

PR:		251254
Reported by:	dch, mmel
Tested by:	dch, mikael
2021-01-29 10:49:01 +00:00
Piotr Kubaj 39a7835690 lang/rust: fix build on powerpc64le 2021-01-07 21:17:22 +00:00
Mikael Urankar a798515415 lang/rust: Update to 1.49.0
Changes: https://github.com/rust-lang/rust/releases/tag/1.49.0

Tested by:	mikael, pkubaj
Differential Revision:	https://reviews.freebsd.org/D27940
2021-01-06 10:13:58 +00:00
Mikael Urankar 19066be21b lang/rust: Fix build with libressl 3.2.3
PR:		251766
Submitted by:	John Kennedy
2020-12-12 18:51:33 +00:00
Piotr Kubaj e376b15e56 lang/rust: fix build on powerpc64le 2020-11-24 20:22:41 +00:00
Mikael Urankar 4e449e031e lang/rust: Update to 1.48.0
Changes: https://github.com/rust-lang/rust/releases/tag/1.48.0

Reviewed by:	jbeich
Tested by:	bdragon, jbeich, mikael
Differential Revision:	https://reviews.freebsd.org/D27293
2020-11-24 12:48:53 +00:00
Mikael Urankar 0d9ade169a lang/rust: exclude SOURCES in nightly build
Exclude SOURCES in nightly build as it tries to download cargo crates in
install phase and it causes build breakage
2020-11-22 13:51:14 +00:00
Mikael Urankar d7c44bd243 lang/rust: fix build with libressl-3.2.2
PR:		250589
Submitted by:	John Kennedy <warlock@phouka.net>
2020-10-28 13:41:33 +00:00
Mikael Urankar 9afa07826e lang/rust: restore REINPLACE_CMD for ppc64-elfv1
This patch is needed for ppc64-elfv1 and we don't build rust-nightly on tier2 arch

Reported by:	ashish
2020-10-14 16:58:48 +00:00
Mikael Urankar 3cf8e92eef lang/rust-nightly: Update to 1.49.0.20201014 2020-10-14 09:25:31 +00:00
Mikael Urankar d9b97de179 lang/rust: Update to 1.47.0
- Add powerpc64le arch (submitted by bdragon in D26711)
  - Disable DOCS, same problem fixed in r546048

  - Update devel/racer to 2.1.36
  - Import upstream patch to fix www/firefox
    (https://hg.mozilla.org/integration/autoland/rev/e2cede25c027)
  - Import gentoo patches to fix www/firefox-esr, www/cliqz and mail/thunderbird
    (https://dev.gentoo.org/~whissi/mozilla/patchsets/firefox-esr-78-patches-03.tar.xz : 0036, 0037 and 0038)
  - Force rebuild all consumers to catch regressions

Changelog:
  https://github.com/rust-lang/rust/releases/tag/1.47.0

Differential Revision:	https://reviews.freebsd.org/D26721
2020-10-13 08:36:35 +00:00
Tobias Kortkamp c9a06251c5 lang/rust: Update to 1.46.0
- Force rebuild all consumers to catch regressions early

Changes:	https://blog.rust-lang.org/2020/08/27/Rust-1.46.0.html
With hat:	rust
Differential Revision:	https://reviews.freebsd.org/D26176
2020-08-30 18:36:07 +00:00
Tobias Kortkamp 1c843dbb6a lang/rust*: Bring back the llvm-config-wrapper patches after r543251
Apparently they are still needed:
http://gohan03.nyi.freebsd.org/data/head-amd64-default-baseline/p543836_s363720/logs/errors/rust-1.45.1.log
http://gohan03.nyi.freebsd.org/data/head-amd64-default-baseline/p543836_s363720/logs/errors/rust-nightly-1.47.0.20200724.log
http://gohan03.nyi.freebsd.org/data/head-amd64-default-baseline/p544005_s363784/logs/errors/rust-1.45.1.log

Reported by:	antoine
2020-08-05 14:46:18 +00:00
Tobias Kortkamp 8b057d47a9 lang/rust: Update to 1.45.2
Changes:	https://blog.rust-lang.org/2020/08/03/Rust-1.45.2.html
2020-08-03 15:18:49 +00:00
Tobias Kortkamp 9137d53fe2 lang/rust: Update to 1.45.1
- Apply the "hard links break `env::current_exe()`" workaround from
  r543251 to lang/rust too
- Force rebuild all consumers for the soundness bug in 1.45.0

Changes:	https://blog.rust-lang.org/2020/07/30/Rust-1.45.1.html
With hat:	rust
Differential Revision:	https://reviews.freebsd.org/D25835
2020-07-30 18:26:53 +00:00
Tobias Kortkamp ec25a08615 lang/rust: Add back to static.rust-lang.org 2020-07-17 06:48:00 +00:00
Tobias Kortkamp b0f1d6430e lang/rust: Update to 1.45.0
- This Rust release comes with LLVM 10.  Drop the LLVM patches we
  no longer need.
- On FreeBSD 13.0 powerpc64 set the elfv2 ABI explicitly in the
  Rust target instead of patching LLVM.
- Build LLVM with Ninja.  It can shorten the build time slightly.
- Force rebuild all consumers to catch regressions early

Changes:	https://blog.rust-lang.org/2020/07/16/Rust-1.45.0.html
Tested by:	mikael, pkubaj, tobik
With hat:	rust
Differential Revision:	https://reviews.freebsd.org/D25658
2020-07-17 06:44:04 +00:00
Piotr Kubaj 3a6db341d9 lang/rust: build with Clang on powerpc64 elfv2
It looks like the LLVM bug that made Rust fail to build is gone (or Rust just doesn't trigger it anymore). I tested that Rust itself and Firefox build.

Bump PORTREVISION because of dependency change.

PR:		247388
Approved by:	tobik (maintainer)
2020-06-18 20:36:08 +00:00
Tobias Kortkamp 75b6e79ccf lang/rust: Update to 1.44.1
- Properly fix powerpc64 builds [1]

Changes:	https://blog.rust-lang.org/2020/06/18/Rust.1.44.1.html
PR:		247307 [1]
Submitted by:	pkubaj [1]
Reviewed by:	mikael, pkubaj, tobik
With hat:	rust
Differential Revision:	https://reviews.freebsd.org/D25297
2020-06-18 14:13:38 +00:00
Tobias Kortkamp d85c40b711 lang/rust-nightly: Update to 1.46.0.20200615
- Try building LLVM with Ninja
- Move post-configure to lang/rust

Changes:	https://github.com/rust-lang/rust/compare/826cb062a6...4fb54ed484
2020-06-15 22:26:47 +00:00
Piotr Kubaj cf570d9f85 lang/rust: fix build on powerpc64 2020-06-07 23:37:30 +00:00
Tobias Kortkamp a48473296f lang/rust: Update to 1.44.0
- Remove devel/cargo-tree since it is now integrated into cargo
- Add patch to fix build with LibreSSL 3.1.x and 3.2.0 [1]
- Force rebuild all consumers to catch regressions early

Changes:	https://blog.rust-lang.org/2020/06/04/Rust-1.44.0.html
PR:		246332 [1]
Tested by:	mikael, tobik
With hat:	rust
Differential Revision:	https://reviews.freebsd.org/D25099
2020-06-04 18:08:00 +00:00
Alan Somers a91e9355f1 lang/rust-nightly: enable the Rust profiler
Enable the rust profiler on rust-nightly (as an unstable feature, it's not
allowed on the stable toolchain). This allows it to generate code coverage
reports.

https://doc.rust-lang.org/unstable-book/compiler-flags/profile.html
https://crates.io/crates/grcov

Reviewed by:	tobik
Approved by:	tobik (maintainer)
Differential Revision:	https://reviews.freebsd.org/D24765
2020-05-18 18:40:41 +00:00
Tobias Kortkamp 9cab4e16c4 lang/rust: Update to 1.43.1
- Remove upstreamed patches
- On ppc64 revert e82ec2315e5adb1c291c3702cd2ac1f46ecd0fcf to fix segfaults

Changes:	https://blog.rust-lang.org/2020/05/07/Rust.1.43.1.html
With hat:	rust
Differential Revision:	https://reviews.freebsd.org/D24734
2020-05-07 15:58:38 +00:00
Tobias Kortkamp 5b8c9933be lang/rust: Let the framework extract the bootstraps
It is possible for lang/python37 to be built in such a way that it
installs an unloadable lzma module which then causes Rust to fallback
to trying to fetch/extract the tar.gz bootstraps instead.

As a workaround and since it also simplifies some things, let the
ports framework extract the bootstraps and "install" them under
WRKDIR.  We point the build to them in config.toml.  This is similar
to how things are hooked up in lang/rust-bootstrap and Rust will
then not try to fetch and extract the bootstraps on its own.

PR:		243766
Reviewed by:	mikael
Differential Revision:	https://reviews.freebsd.org/D24582
2020-04-28 04:33:35 +00:00
Tobias Kortkamp 443b443a1f lang/rust: Go back to static.rust-lang.org 2020-04-23 15:34:59 +00:00
Tobias Kortkamp 5abe8902a5 lang/rust: Update to 1.43.0
- Add workaround to fix build when CC/CXX have "clang" in them [1]
- Respect AR to fix build with external toolchains [2]
- Force rebuild all consumers to catch regressions early

Changes:	https://blog.rust-lang.org/2020/04/23/Rust-1.43.0.html
PR:		238556 [1], 245583 [2]
Reported by:	Matthias Apitz <guru@unixarea.de> [1], Greg V <greg@unrelenting.technology> [2]
Tested by:	mikael, pkubaj, tobik
With hat:	rust
Differential Revision:	https://reviews.freebsd.org/D24521
2020-04-23 15:32:29 +00:00
Tobias Kortkamp eefc22ffc3 devel/libgit2: Update to 1.0.0
Changes:	https://github.com/libgit2/libgit2/releases/tag/v1.0.0
ABI:		https://abi-laboratory.pro/tracker/timeline/libgit2
Approved by:	mfechner (maintainer)
Differential Revision:	https://reviews.freebsd.org/D24471
2020-04-19 03:55:22 +00:00
Tobias Kortkamp 95ebc1c533 lang/rust-nightly: Update to 1.44.0.20200319
Go back to system libgit2 now that it was updated to 0.99.0.

Changes:	https://github.com/rust-lang/rust/compare/96bb8b31c8...f509b26a77
2020-03-19 07:05:29 +00:00
Tobias Kortkamp 3ca7fb22b4 devel/libgit2: Update to 0.99.0
- Switch to the release tarballs libgit2 now publishes
- Drop CURL option since it is no longer used
- Use system libpcre instead of the bundled one
- Hook up tests
- Bump consumers for ABI changes

Changes:	https://github.com/libgit2/libgit2/releases/tag/v0.99.0
ABI:		https://abi-laboratory.pro/tracker/timeline/libgit2/
2020-03-19 05:47:59 +00:00
Tobias Kortkamp 8f23b03499 lang/rust-bootstrap: Unbreak powerpc64_elfv2 flavor after r528599
error: could not find native static library `stdc++`, perhaps an -L flag is missing?

error: aborting due to previous error

error: could not compile `rustc_llvm`.

PR:		244813
2020-03-17 22:32:20 +00:00
Piotr Kubaj 9f2b11f787 lang/rust: fix build on powerpc64 elfv2
After upgrade to LLVM 10, core in stage 1 fails to compile (no clear reason, rustc crashes):
pid 26828 (rustc), jid 0, uid 0: exited on signal 11 (core dumped)

Compilation with GCC works fine, so switch to GCC for the time being.

PR:		244813
Approved by:	mikael
2020-03-17 19:25:19 +00:00
Tobias Kortkamp 25b7de7213 lang/rust: Update to 1.42.0
- Force rebuild all consumers to catch regressions early

Changes:	https://blog.rust-lang.org/2020/03/12/Rust-1.42.html
Tested by:	mikael, tobik
With hat:	rust
Differential Revision:	https://reviews.freebsd.org/D24020
2020-03-12 19:39:24 +00:00
Tobias Kortkamp 0fadf15072 lang/rust-nightly: Update to 1.43.0.20200306
libgit2-sys is now based on libgit2 0.99.0.  While 0.99.0 is supposed
to be API compatible with 0.28, it has not yet been updated in the
ports tree and the git2 crate now make use of some of the new
function return values.  Stop relying on system libgit2 and use the
bundled one.  Upstream does not make any guarantees about system
libgit2 support in the first place.

Changes:	https://github.com/rust-lang/rust/compare/6d69caba11...96bb8b31c8
2020-03-06 12:43:06 +00:00
Tobias Kortkamp d0c2a2ceea lang/rust: Attempt to address unreliable rust-lld build
It sometimes fails [0,1] and sometimes succeeds [2,3].  When it
fails it fails with

running: "cmake" "/wrkdirs/usr/ports/lang/rust/work/rustc-1.41.1-src/src/llvm-project/lld" "-DCMAKE_INSTALL_MESSAGE=LAZY" "-DCMAKE_C_COMPILER=cc" "-DCMAKE_CXX_COMPILER=c++" "-DCMAKE_C_FLAGS=-ffunction-sections -fdata-sections -fPIC -m64 -pipe -fstack-protector-strong -fno-strict-aliasing" "-DCMAKE_CXX_FLAGS=-ffunction-sections -fdata-sections -fPIC -m64 -pipe -fstack-protector-strong -fno-strict-aliasing" "-DLLVM_CONFIG_PATH=/wrkdirs/usr/ports/lang/rust/work/rustc-1.41.1-src/build/bootstrap/debug/deps/llvm-config-wrapper" "-DLLVM_INCLUDE_TESTS=OFF" "-DCMAKE_INSTALL_PREFIX=/wrkdirs/usr/ports/lang/rust/work/rustc-1.41.1-src/build/x86_64-unknown-freebsd/lld" "-DCMAKE_BUILD_TYPE=Release"
-- The C compiler identification is Clang 9.0.1
-- The CXX compiler identification is Clang 9.0.1
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
CMake Error at CMakeLists.txt:23 (message):
  llvm-config failed with status No such file or directory

-- Configuring incomplete, errors occurred!

There seems to be some kind of race when using llvm-config-wrapper,
but at the point where LLD is built, both llvm-config and
llvm-config-wrapper should definitely be available.  Both are built
successfully much earlier in the build.  Attempt to improve reliability
by not using the wrapper.  It is a hack in the first place that is
only really needed on Windows.

This is a shot in the dark.  I am unable to reproduce this myself.

[0] http://beefy18.nyi.freebsd.org/data/head-amd64-default/p527397_s358451/logs/errors/rust-1.41.1.log
[1] http://gohan03.nyi.freebsd.org/data/head-amd64-default-baseline/p527486_s358478/logs/errors/rust-1.41.1.log
[2] http://beefy18.nyi.freebsd.org/data/head-amd64-default/p527397_s358451/logs/rust-nightly-1.43.0.20200228.log
[3] http://gohan03.nyi.freebsd.org/data/head-amd64-default-baseline/p527313_s358414/logs/rust-1.41.1.log
2020-03-01 11:09:44 +00:00
Tobias Kortkamp daf2ea4a45 lang/rust: Update to 1.41.1
- Force rebuild all consumers to fix potential miscompilations with
  1.41.0
- Enable SOURCES by default.  The sources are indexed by RLS and
  required for it to function properly, so they should be available
  by default.  This also makes sure we test the option properly.
- Remove implied --config=config.toml from x.py args
- Switch to the upstreamed backtrace crate patches like rust-nightly
- Enable WASM by default [0]
- Strip libraries (D23650) [1]
- Simplify plist generation (D23735) [2]

Changes:	https://blog.rust-lang.org/2020/02/27/Rust-1.41.1.html
Submitted by:	mikael [0,1,2]
With hat:	rust
Differential Revision:	https://reviews.freebsd.org/D23835
2020-02-27 15:22:28 +00:00
Mikael Urankar 232ad0ecf3 lang/rust: add the WASM option
Add the WASM (WebAssembly) option to build the wasm32-unknown-unknown target, off by default.

Reviewed by:	tobik
Approved by:	tobik, manu (mentor)
Differential Revision:	https://reviews.freebsd.org/D23653
2020-02-16 15:22:07 +00:00
Mikael Urankar de3daa4dbf Trim whitespace
Reviewed by:	tobik, manu
Approved by:	manu (mentor)
Differential Revision:	https://reviews.freebsd.org/D23649
2020-02-12 16:59:46 +00:00
Tobias Kortkamp 30e19b499b lang/rust: Silence stage-qa warnings when building with SOURCES=on
PR:		243850
2020-02-06 20:51:20 +00:00
Tobias Kortkamp b807a7b276 lang/rust-nightly: Update to 1.43.0.20200205
Remove some cruft while here.

Changes:	https://github.com/rust-lang/rust/compare/41f41b2354...c9290dceee
2020-02-05 04:29:55 +00:00
Tobias Kortkamp 83209114b8 lang/rust: Update to 1.41.0
- Force rebuild all consumers to catch regressions early
- Switch to cross-compiled (from amd64) bootstraps for all
  architectures generated with the incoming lang/rust-bootstrap
- Update cargo-c to 0.5.2 to unbreak librav1e build
- Make use of regular MAKE_ENV/TEST_ENV in lang/rust
- Turn on RUST_BACKTRACE in lang/rust and USES=cargo to hopefully
  produce more useful failure logs when something panics during
  builds

Changes:	https://blog.rust-lang.org/2020/01/30/Rust-1.41.0.html
Tested by:	mikael, tobik
With hat:	rust
Differential Revision:	https://reviews.freebsd.org/D23385
2020-01-30 20:00:06 +00:00
Tobias Kortkamp 0ff0daf382 Unbreak lang/rust-nightly after r524013 2020-01-27 06:21:25 +00:00
Tobias Kortkamp 3679ebcd64 lang/rust: Apply some of the patches for lang/rust-bootstrap (D23133)
They should not affect the regular lang/rust build.
2020-01-25 05:41:19 +00:00
Tobias Kortkamp 9c9d62dce0 lang/rust-nightly: Update to 1.42.0.20200124
Nightly bootstraps now have the fix from r523512.  Switch to them
for the time being and drop the workaround.
2020-01-24 20:53:31 +00:00
Tobias Kortkamp d82b187e65 lang/rust-nightly: Unbreak with lld on 13.0 i386
= note: ld: error: relocation R_386_PC32 cannot be used against symbol __rust_probestack; recompile with -fPIC
          >>> defined in /wrkdirs/usr/ports/lang/rust-nightly/work/rustc-nightly-src/build/i686-unknown-freebsd/stage1/lib/rustlib/i686-unknown-freebsd/lib/libcompiler_builtins-6570a75fe85f0e1a.rlib(compiler_builtins-6570a75fe85f0e1a.compiler_builtins.2i519eqi-cgu.15.rcgu.o)
          >>> referenced by std.4xivr03c-cgu.14
          >>>               std-9bd70afd58e204b7.std.4xivr03c-cgu.14.rcgu.o:(_$LT$alloc..boxed..Box$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$A$GT$$GT$::call_once::h1c78ed6e734a2bfc (.llvm.10122419023709863394)) in archive /wrkdirs/usr/ports/lang/rust-nightly/work/rustc-nightly-src/build/i686-unknown-freebsd/stage1/lib/rustlib/i686-unknown-freebsd/lib/libstd-9bd70afd58e204b7.rlib

          ld: error: relocation R_386_PC32 cannot be used against symbol __rust_probestack; recompile with -fPIC
          >>> defined in /wrkdirs/usr/ports/lang/rust-nightly/work/rustc-nightly-src/build/i686-unknown-freebsd/stage1/lib/rustlib/i686-unknown-freebsd/lib/libcompiler_builtins-6570a75fe85f0e1a.rlib(compiler_builtins-6570a75fe85f0e1a.compiler_builtins.2i519eqi-cgu.15.rcgu.o)
          >>> referenced by std.4xivr03c-cgu.14
          >>>               std-9bd70afd58e204b7.std.4xivr03c-cgu.14.rcgu.o:(std::io::util::copy::h9115f048f2203467) in archive /wrkdirs/usr/ports/lang/rust-nightly/work/rustc-nightly-src/build/i686-unknown-freebsd/stage1/lib/rustlib/i686-unknown-freebsd/lib/libstd-9bd70afd58e204b7.rlib
          clang-cpp: error: linker command failed with exit code 1 (use -v to see invocation)

error: aborting due to previous error

http://beefy17.nyi.freebsd.org/data/head-i386-default/p523508_s356869/logs/rust-nightly-1.42.0.20200118.log
2020-01-19 06:53:15 +00:00
Tobias Kortkamp 31a186d154 lang/rust: Simplify makesum and MASTER_SITES 2020-01-18 09:56:06 +00:00
Tobias Kortkamp 50c841a2c2 lang/rust-nightly: Update to 1.42.0.20200118 2020-01-18 09:49:47 +00:00