Commit graph

165 commits

Author SHA1 Message Date
Tobias Kortkamp
7589599b53 lang/rust: Unbreak on armv6
error: couldn't load codegen backend "/usr/ports/lang/rust/work/rustc-1.37.0-src/build/armv6-unknown-freebsd/stage1/lib/rustlib/armv6-unknown-freebsd/codegen-backends/librustc_codegen_llvm-llvm.so": "/usr/ports/lang/rust/work/rustc-1.37.0-src/build/armv6-unknown-freebsd/stage1/lib/rustlib/armv6-unknown-freebsd/codegen-backends/librustc_codegen_llvm-llvm.so: Undefined symbol \"__clear_cache\""

__clear_cache is implemented in compiler-rt and was dropped upstream with [1]:
aa41e0d25f

For some unknown reason this is a problem on armv6.  Bring back the
compiler-rt submodule for now to workaround this.

Submitted by:	 mikael.urankar_gmail.com
Differential Revision:	https://reviews.freebsd.org/D21415
2019-09-01 07:26:54 +00:00
Tobias Kortkamp
40666d2b8f lang/rust: Update to 1.37.0
- Force rebuild all consumers to catch regressions early

Thanks to Mikaël Urankar for providing updated bootstraps for
aarch64, armv6, armv7, powerpc64.

Changes:	https://blog.rust-lang.org/2019/08/15/Rust-1.37.0.html
Tested by:	jbeich, tobik, greg@unrelenting.technology (aarch64)
With hat:	rust
Differential Revision:	https://reviews.freebsd.org/D21247
2019-08-15 14:30:16 +00:00
Bryan Drewery
83810d6015 NOCCACHE also disables setting CCACHE_WRAPPER_PATH which can break the build. 2019-07-28 20:27:52 +00:00
Gerald Pfeifer
ea8c8ec7da Bump PORTREVISION for ports depending on the canonical version of GCC
as defined in Mk/bsd.default-versions.mk which has moved from GCC 8.3
to GCC 9.1 under most circumstances now after revision 507371.

This includes ports
 - with USE_GCC=yes or USE_GCC=any,
 - with USES=fortran,
 - using Mk/bsd.octave.mk which in turn features USES=fortran, and
 - with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
   c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, everything INDEX-11 shows with a dependency on lang/gcc9 now.

PR:		238330
2019-07-26 20:46:53 +00:00
Tobias Kortkamp
c0f71bfc7a lang/rust: Clean up more things
- Drop pre-install target: `make restage` should be run after a
  failed `make stage` to wipe out and repopulate the staging
  directory.  No need to hack around this.
- Drop RUST_MANIFESTS, it is only one value after r490852 and now
  only used once in post-install.
- Drop RUST_CHANNEL.  It is only used in do-configure.
- Drop LLNEXTGEN option.  There are no references to LLNextgen in
  the Rust sources, so it appears to not be used for anything
  anymore.
2019-07-16 15:49:35 +00:00
Tobias Kortkamp
216ad339a3 lang/rust: Drop {pre,post}-configure targets
They are no longer necessary since r487977 when we disabled vendor
checksums.
2019-07-15 18:08:37 +00:00
Tobias Kortkamp
00ee8f926e lang/rust: Clean up bootstrap handling
Fix handling of BOOTSTRAPS_SUFFIX.  On powerpc64 the -elfv1 suffix
needs to be stripped from the bootstraps since Rust expects them
without it.

PR:		239158
Reported by:	pkubaj
2019-07-15 15:27:29 +00:00
Tobias Kortkamp
f69160b440 lang/rust: Update to 1.36.0
- Force rebuild all consumers to catch regressions early

Thanks to Mikaël Urankar for providing updated bootstraps for
aarch64, armv6, armv7, powerpc64.

Changes:	https://blog.rust-lang.org/2019/07/04/Rust-1.36.0.html
Tested by:	jbeich, mikael.urankar@gmail.com
With hat:	rust
Differential Revision:	https://reviews.freebsd.org/D20810
2019-07-04 14:41:57 +00:00
Tobias Kortkamp
67a6401e6f lang/rust: Overwrite makesum target instead of makesum-all-archs
One less thing to remember during updates.
2019-05-29 08:15:52 +00:00
Tobias Kortkamp
bebaf73f0e lang/rust*: Add link to upstream issue for the LLVM STAGEDIR bug 2019-05-29 08:12:21 +00:00
Tobias Kortkamp
bfa7cfe319 lang/rust: Clean up MASTER_SITES
Use HTTPS consistently and remove old sites that only contain
Rust < 1.27.0 bootstraps.
2019-05-24 06:46:58 +00:00
Tobias Kortkamp
f30ebc2bec lang/rust: Update to 1.35.0
- Force rebuild all consumers to catch regressions early

Thanks to Mikaël Urankar for providing updated bootstraps for
aarch64, armv6, armv7, powerpc64.

Changes:	https://blog.rust-lang.org/2019/05/23/Rust-1.35.0.html
Reviewed by:	jbeich
Tested by:	pkubaj (powerpc64), mikael.urankar@gmail.com (aarch64)
With hat:	rust
Differential Revision:	https://reviews.freebsd.org/D20332
2019-05-24 03:25:11 +00:00
Tobias Kortkamp
6bd3ed2a9b lang/rust: Update to 1.34.2
- While here add patches from [1] for LibreSSL 2.9.1 support

[1] https://github.com/sfackler/rust-openssl/pull/1097

Changes:	https://blog.rust-lang.org/2019/05/13/Security-advisory.html
Changes:	https://blog.rust-lang.org/2019/05/14/Rust-1.34.2.html
PR:		237495 [1]
Security:	37528379-76a8-11e9-a4fd-00012e582166
2019-05-15 03:12:15 +00:00
Tobias Kortkamp
6c5e524edf lang/rust: Update to 1.34.1
- Add stdsimd patches from D19940 to attempt to unbreak powerpc64, armv{6,7} [1]

Changes:	https://blog.rust-lang.org/2019/04/25/Rust-1.34.1.html
PR:		237507 [1]
Submitted by:	mikael.urankar@gmail.com [1]
Reviewed by:	jbeich [1]
Tested by:	pkubaj (stdsimd patches with 1.34.0 on powerpc64) [1]
With hat:	rust
Differential Revision:	https://reviews.freebsd.org/D19940 [1]
2019-04-26 04:28:47 +00:00
Tobias Kortkamp
67b6dd1b42 lang/rust: Update to 1.34.0
- Update devel/racer to latest version that can build with 1.34.0
- Drop no longer needed patch from textproc/ripgrep
- Force rebuild all consumers to catch regressions early

Thanks to Mikaël Urankar for providing updated bootstraps for
aarch64, armv6, armv7, powerpc64.

Changes:	https://blog.rust-lang.org/2019/04/11/Rust-1.34.0.html
Reviewed by:	jbeich
With hat:	rust
Differential Revision:	https://reviews.freebsd.org/D19850
2019-04-11 19:39:28 +00:00
Matthias Fechner
c07657834f Bump revision to make sure port is build against new libgit2 version 0.28.1.
PR:		236801
Reported by:	jbeich
2019-03-27 21:34:24 +00:00
Jan Beich
87378368c4 lang/rust: update to 1.33.0
- www/firefox temporarily loses SIMD in charset conversion, see
  https://bugzilla.mozilla.org/show_bug.cgi?id=1521249
- Force rebuild all consumers to catch regressions early

Changes:	https://blog.rust-lang.org/2019/02/28/Rust-1.33.0.html
Tested by:	Mikaël Urankar (aarch64, armv6, armv7, powerpc64), Piotr Kubaj (powerpc64)
Approved by:	rust (tobik)
Differential Revision:	https://reviews.freebsd.org/D19354
2019-02-28 18:51:45 +00:00
Tobias Kortkamp
0ac4bf8be6 lang/rust: Attempt to fix build on powerpc64
Add change forgotten in r493268.

Pointy hat:	tobik
2019-02-25 23:09:09 +00:00
Tobias Kortkamp
ea6c7641aa lang/rust: Ignore with qemu-user-static and on aarch64 without fixed ld-elf.so.1
- Rust will not run without a fixed ld-elf.so.1 on aarch64
- Builds with qemu-user-static currently hang after a while

PR:		221185
Submitted by:	Mikaël Urankar <mikael.urankar@gmail.com>
2019-02-21 19:03:17 +00:00
Tobias Kortkamp
ea2b4d789b lang/rust: Add aarch64, armv{6,7}, and powerpc64 bootstraps
PR:		216143, 228892
Submitted by:	Mikaël Urankar <mikael.urankar@gmail.com>
Differential Revision:	https://reviews.freebsd.org/D18367
2019-02-18 15:30:39 +00:00
Jan Beich
17006791eb lang/rust: don't hardcode manifest files after r489132
Approved by:	rust (tobik)
Differential Revision:	https://reviews.freebsd.org/D18737
2019-01-21 11:27:18 +00:00
Jan Beich
bea7824c1c lang/rust: oops, don't default to pre-releases
Differential Revision:	https://reviews.freebsd.org/D18858
2019-01-17 19:55:58 +00:00
Jan Beich
5da2437891 lang/rust: rename patches to match diff prefix
Git even with -M -C -C couldn't detect all renames in modified files,
so rename in a separate commit.

Approved by:	rust (tobik)
Differential Revision:	https://reviews.freebsd.org/D18858
2019-01-17 19:51:04 +00:00
Jan Beich
6f333b0b12 lang/rust: update to 1.32.0
- devel/racer no longer needs to dowgrade rustc-ap-syntax
- Force rebuild all consumers to catch regressions early

Changes:	https://blog.rust-lang.org/2019/01/17/Rust-1.32.0.html
Approved by:	rust (tobik)
Differential Revision:	https://reviews.freebsd.org/D18858
2019-01-17 19:50:38 +00:00
Tobias Kortkamp
0d7fced0f2 lang/rust: Use ECHO_CMD not ECHO as per bsd.commands.mk 2019-01-16 13:20:45 +00:00
Jan Beich
701b2fb530 lang/rust: disclaim /proc fix 2019-01-02 16:37:02 +00:00
Tobias Kortkamp
d6cb3d9218 lang/rust: Update to 1.31.1
- Simplify .cargo-checksum.json handling [1].  Similar to USES=cargo
  we disable vendor checksum checking by clearing the list of files
  in all .cargo-checksum.json, so that cargo does not complain when
  we patch something.  The overall distfile is already checked by
  us which should be enough.
- Add an overridable CARGO_VENDOR_DIR variable to set the crate
  vendor directory which has moved location in nightly
- Add upstream openssl-sys patch to fix build with LibreSSL 2.9.0 [2]

Changes:	https://blog.rust-lang.org/2018/12/20/Rust-1.31.1.html
Submitted by:	mikael.urankar@gmail.com [1], ml@vishwin.info [2]
Differential Revision:	https://reviews.freebsd.org/D18610
2018-12-21 10:37:09 +00:00
Jan Beich
f3d3f56fa4 lang/rust: drop unused conflicts after r446815 2018-12-17 10:33:12 +00:00
Jan Beich
4c515ab8c0 lang/rust-nightly: update to 1.32.0.20181214 2018-12-14 18:20:51 +00:00
Jan Beich
7c64203f67 lang/rust: update to 1.31.0
- devel/racer no longer needs to dowgrade rustc-ap-syntax
- Force rebuild all consumers to catch regressions early

Changes:	https://blog.rust-lang.org/2018/12/06/Rust-1.31.0.html
Approved by:	rust (tobik)
Differential Revision:	https://reviews.freebsd.org/D18427
2018-12-06 17:11:14 +00:00
Dmitry Marakasov
ebea87491a - Specify LICENSE_FILEs uniformly
Approved by:	portmgr blanket
2018-12-04 09:01:26 +00:00
Jean-Sébastien Pédron
d53d5a0590 lang/rust: Update to 1.30.1
Release notes:
* https://blog.rust-lang.org/2018/11/08/Rust-1.30.1.html
2018-11-09 23:32:39 +00:00
Jan Beich
d12ed11522 lang/rust: update to 1.30.0
- Force rebuild all consumers to catch regressions early

Changes:	https://blog.rust-lang.org/2018/10/25/Rust-1.30.0.html
Approved by:	rust (tobik)
MFH:		2018Q4 (less rust versions to support)
Differential Revision:	https://reviews.freebsd.org/D17695
2018-10-25 21:59:37 +00:00
Jan Beich
2e8d729d62 lang/rust: update to 1.29.2
- Force rebuild all consumers in case some are affected by miscompilation

Changes:	https://blog.rust-lang.org/2018/10/12/Rust-1.29.2.html
PR:		229826 (follow up)
Approved by:	rust (tobik)
MFH:		2018Q4
Differential Revision:	https://reviews.freebsd.org/D17477
2018-10-12 19:01:02 +00:00
Jean-Sébastien Pédron
90b5c7eeb5 lang/rust: Add patches to support LibreSSL 2.8.1
PR:		230470
Reported by:	Charlie Li <ml+freebsd@vishwin.info>
2018-09-30 22:28:27 +00:00
Jan Beich
a9d287a5ea lang/rust: update to 1.29.1
- Force rebuild all consumers as standard library is statically linked

Changes:	https://blog.rust-lang.org/2018/09/25/Rust-1.29.1.html
PR:		229826 (follow up)
Approved by:	dumbbell
Differential Revision:	https://reviews.freebsd.org/D17337
2018-09-28 17:59:24 +00:00
Jan Beich
5f4b386da8 lang/rust: sort LIB_DEPENDS by library name instead of origin
Requested by:	dumbbell (maintainer)
2018-09-21 11:24:21 +00:00
Jan Beich
49c8598e32 lang/rust: unbundle libgit2/libssh2
- libgit2 in ports is nowadays newer than bundled version
- libssh2 was already unbundled until 1.29.0 update
- Unbundle libssh2 for USES=cargo (unused atm)

PR:		231411
Approved by:	rust (dumbbell, tobik)
2018-09-21 11:16:08 +00:00
Jan Beich
38ed2724f9 lang/rust: unbreak if ssl != base
[ 13%] Building C object src/CMakeFiles/libssh2.dir/channel.c.o
  /usr/bin/cc -DLIBSSH2_CLEAR_MEMORY -DLIBSSH2_DH_GEX_NEW=1 -DLIBSSH2_HAVE_ZLIB=1 -DLIBSSH2_OPENSSL -I/usr/local/include -Isrc/vendor/libssh2-sys/libssh2/include -Ibuild/x86_64-unknown-freebsd/stage2-tools/x86_64-unknown-freebsd/release/build/libssh2-sys-149db94635ec1367/out/build/src  -ffunction-sections -fdata-sections -fPIC -ffunction-sections -fdata-sections -fPIC -m64 -m64 -O3 -DNDEBUG   -std=gnu90 -o CMakeFiles/libssh2.dir/channel.c.o   -c src/vendor/libssh2-sys/libssh2/src/channel.c
  src/vendor/libssh2-sys/libssh2/src/channel.c:2262:44: error: use of undeclared identifier 'LIBSSH2_ERROR_CHANNEL_WINDOW_FULL'
	      return _libssh2_error(session, LIBSSH2_ERROR_CHANNEL_WINDOW_FULL,
					     ^

PR:		231411
Reported by:	many
Obtained from:	upstream (libssh2)
Approved by:	portmgr blanket
2018-09-20 10:07:37 +00:00
Jean-Sébastien Pédron
aa8061d1c1 lang/rust: Update to 1.29.0
Release notes:
* https://blog.rust-lang.org/2018/07/20/Rust-1.27.2.html
* https://blog.rust-lang.org/2018/08/02/Rust-1.28.html
* https://blog.rust-lang.org/2018/09/13/Rust-1.29.html

Up to and including Rust 1.27.x, the Rust build system shelled out to
a configure script to detect the presence and usability of libunwind.
Since Rust 1.28.0, it's using a static result in a `build.rs` file and
expects libunwind to be used. It was not the case on FreeBSD so far, so
we need a patch to this `build.rs` to disable that. We still need to
study if the FreeBSD port should use libunwind and what to do with this
patch. But this problem prevented the update to Rust 1.28.0 already, so
enough delay.

The update also comes with a patch to a few `USE_GECKO`-based ports such
as Firefox [1]. Their configure script has some asumptions on the output
of `rustc --print target-list` which are not true anymore. The patch was
already committed upstream.

The aarch64 version is still marked as BROKEN because I didn't find the
time to work on it. As a consequence, there is also no aarch64 bootstrap
for Rust 1.29.0.

PR:		229826
Approved by:	jbeich [1]
Obtained from:	https://bugzilla.mozilla.org/show_bug.cgi?id=1479540 [1]
Differential Revision:	https://reviews.freebsd.org/D17178
2018-09-16 07:57:08 +00:00
Sunpoet Po-Chuan Hsieh
d6acd4f262 Update WWW
Approved by:	portmgr (blanket)
2018-09-09 16:59:26 +00:00
Jean-Sébastien Pédron
6d4a3088ba lang/rust: Udpate checksums in libgit2-sys/.cargo-checksum.json
It was part of the initial patch from Charlie Li to support LibreSSL
2.7. However, I misread it and though he was only removing bits
which were not needed anymore (updating checksums for openssl and
openssl-sys).

Now, we update all three: libgit2-sys, openssl and openssl-sys.

PR:		226955
Submitted by:	Charlie Li <ml+freebsd@vishwin.info>
Reported by:	Charlie Li <ml+freebsd@vishwin.info>
2018-07-23 07:32:23 +00:00
Jean-Sébastien Pédron
813370b342 lang/rust: Add patches to fix the build with LibreSSL 2.7
PR:		226955
Submitted by:	Charlie Li <ml+freebsd@vishwin.info>
2018-07-21 15:04:14 +00:00
Jean-Sébastien Pédron
80e30d6133 lang/rust: Update to 1.27.1
Release notes:
* https://blog.rust-lang.org/2018/06/21/Rust-1.27.html
* https://blog.rust-lang.org/2018/07/10/Rust-1.27.1.html

Rust is marked as broken on aarch64. The reason is the bootstrap
compiler crashes currently. See PR 228892 which tracks the issue.

A patch for aarch64 is still included. It fixes the sign for unqualified
C char. This patch still needs to be upstream, but for that, the
compiler needs to work again first.

PR:		228892
2018-07-19 20:57:09 +00:00
Jean-Sébastien Pédron
4f60577fd4 lang/rust: Update to 1.26.2
Release notes:
* https://blog.rust-lang.org/2018/05/29/Rust-1.26.1.html
* https://blog.rust-lang.org/2018/06/05/Rust-1.26.2.html
2018-06-09 09:28:57 +00:00
Jean-Sébastien Pédron
8a62f1221e lang/rust: Add make makesum-all-archs target
It is a helper to ease the generation of the `distinfo` file for all the
architectures we support. It avoids the manual commands.
2018-06-08 23:31:35 +00:00
Jean-Sébastien Pédron
12721bb2ad lang/rust: Update to 1.26.0
The announcement is available on Rust blog:
https://blog.rust-lang.org/2018/05/10/Rust-1.26.html

Rust 1.25.0, used as the bootstrap compiler, contains the patch from
bdrewery@ to use the compat (non-ino64) symbols on FreeBSD 12-CURRENT.
Therefore, we don't need `old_fstat.c` and the associated machinery in
the `Makefile` anymore.
2018-05-15 13:43:34 +00:00
Bryan Drewery
18dac0b76c Update to 1.25.0.
- The ABI patch is no longer needed on head due to fixes being upstreamed
  to use the pre-ino64 symbols.  The ABI patch is still needed for the
  bootstrap but should be removable for 1.26.0 if it uses beta 2018-03-18.

PR:		227130 [based on]
Tested by:	dumbbell, Charlie Li
Submitted by:	riggs [based on]
Differential Revision:	https://reviews.freebsd.org/D14921 [based on]
2018-04-16 21:35:26 +00:00
Jean-Sébastien Pédron
9882c6b366 lang/rust: Update to 1.24.1
The announcement is available on Rust blog:
https://blog.rust-lang.org/2018/03/01/Rust-1.24.1.html

There is a compilation error when it builds `clippy-driver` and `miri`
but it apparently doesn't affect the result. There are probably optional
tools/dependencies.
2018-03-22 18:14:21 +00:00
Bryan Drewery
6e03832857 Update rust-nightly to 2018-03-21.
The ABI patch and bootstrap patching are no longer needed on head after
fixes fully upstreamed in https://github.com/rust-lang/rust/issues/42681.
2018-03-21 16:20:51 +00:00