generated.
in general case, the output of `rustc -vV` is still used as part of the
hashed data. the output contains the exact version of the rustc and the
LLVM version used.
but when used for build the port, it will use a less changing string:
only the major+minor version (without patch number) and no more LLVM
version.
the choice between the two way is based on the presence of environment
variable.
it will permit to avoid change in filenames (and so PLIST regeneration
requirement) when:
- patch release of rustc is pushed
- llvm is updated
Version 1.31.1 (2018-12-20)
- Fix Rust failing to build on powerpc-unknown-netbsd
- Fix broken go-to-definition in RLS
- Fix infinite loop on hover in RLS
some existing COMPILER lines with arch restrictions etc. In the usual
case this is now using "COMPILER = base-clang ports-gcc base-gcc" on
ports with c++ libraries in WANTLIB.
This is basically intended to be a noop on architectures using clang
as the system compiler, but help with other architectures where we
currently have many ports knocked out due to building with an unsuitable
compiler -
- some ports require c++11/newer so the GCC version in base that is used
on these archirtectures is too old.
- some ports have conflicts where an executable is built with one compiler
(e.g. gcc from base) but a library dependency is built with a different
one (e.g. gcc from ports), resulted in mixing incompatible libraries in the
same address space.
devel/gmp is intentionally skipped as it's on the path to building gcc -
the c++ library there is unused in ports (and not built by default upstream)
so intending to disable building gmpcxx in a future commit.
Cf https://blog.rust-lang.org/2018/05/10/Rust-1.26.html
- add arm64 support, tested by phessler@
- respect MAKE_JOBS again
- use lld on i386 to support 128 bits integers
- cleanup old patches
- only build what we actually package
- to keep RUST_BACKTRACE=1 enabled during build, properly separate
MAKE_ENV and TEST_ENV, by introducing a TEST_BIN variable used to
launch rustbuild with TEST_ENV (some tests are failing if RUST_BACKTRACE
is enabled).
- remove llvm-6 backported patches. this version of rustc has full
support of it. Hashes in library names will change when ports llvm
is upgraded, so PLIST will have to be regenerated.
- backport #49140 to be able to run "make test" without installing rustc
- regen amd64 bootstrap (i386 will come later and is marked BROKEN
anyway)
- add MAP_STACK flag for use with sigaltstack() (only used for signal
handler used for stack overflow detection)
- change a bit the way stack overflow is detected
Backports some patches for LLVM6 compatibility.
Note that this is likely to be BROKEN-i386 soonish, i'm giving it a last
chance locally but i never managed to build it here. That also means we
can say goodbye to firefox on i386.
used on i386. Set DPB_PROPERTIES=lonesome on i386 so that no new jobs
are sent to the worker building rust.
Fixes rust packaging on i386 within dpb.
same diff/ok sthen@
Even if it can be made to build eventually after multiple tries (we
occasionally got lucky with chromium before that was disabled, but it
was rare), this isn't sustainable.
In short: you'll need to use amd64 if you want to use one of the more
common web browsers on OpenBSD.
full changelog at https://blog.rust-lang.org/2017/11/22/Rust-1.22.html
port changes:
- switch to clang and libc++ (instead of egcc and estdc++)
- use devel/llvm instead of the embedded llvm version
- make i386 produce code for 'pentiumpro' instead of 'pentium4' so that
ppl can use ripgrep on pentium II's (yay!)
- use a hack (codegen-units=16) to fix memory pressure issues on i386.
Might not work forever.....
tested on i386 & amd64, went into an i386 bulk.
all the hard work from semarie@
clang/rust finds it when linking some rust code - somewhat needed by
stylo (the css engine written in rust within mozilla). Modeled after
what is done in lang/g77.
From semarie@, who discussed it with espie@.