Skip to content

Commit 34613f9

Browse files
author
Jonathan Perkin
committed
rust: Update to 1.48.0.
Clean up some of the pkgsrc Makefile, there's still lots in here that should just be deleted though. Switch SunOS to the illumos bootstrap by default. Version 1.48.0 (2020-11-19) ========================== Language -------- - [The `unsafe` keyword is now syntactically permitted on modules.][75857] This is still rejected *semantically*, but can now be parsed by procedural macros. Compiler -------- - [Stabilised the `-C link-self-contained=<yes|no>` compiler flag.][76158] This tells `rustc` whether to link its own C runtime and libraries or to rely on a external linker to find them. (Supported only on `windows-gnu`, `linux-musl`, and `wasi` platforms.) - [You can now use `-C target-feature=+crt-static` on `linux-gnu` targets.][77386] Note: If you're using cargo you must explicitly pass the `--target` flag. - [Added tier 2\* support for `aarch64-unknown-linux-musl`.][76420] \* Refer to Rust's [platform support page][forge-platform-support] for more information on Rust's tiered platform support. Libraries --------- - [`io::Write` is now implemented for `&ChildStdin` `&Sink`, `&Stdout`, and `&Stderr`.][76275] - [All arrays of any length now implement `TryFrom<Vec<T>>`.][76310] - [The `matches!` macro now supports having a trailing comma.][74880] - [`Vec<A>` now implements `PartialEq<[B]>` where `A: PartialEq<B>`.][74194] - [The `RefCell::{replace, replace_with, clone}` methods now all use `#[track_caller]`.][77055] Stabilized APIs --------------- - [`slice::as_ptr_range`] - [`slice::as_mut_ptr_range`] - [`VecDeque::make_contiguous`] - [`future::pending`] - [`future::ready`] The following previously stable methods are now `const fn`'s: - [`Option::is_some`] - [`Option::is_none`] - [`Option::as_ref`] - [`Result::is_ok`] - [`Result::is_err`] - [`Result::as_ref`] - [`Ordering::reverse`] - [`Ordering::then`] Cargo ----- Rustdoc ------- - [You can now link to items in `rustdoc` using the intra-doc link syntax.][74430] E.g. ``/// Uses [`std::future`]`` will automatically generate a link to `std::future`'s documentation. See ["Linking to items by name"][intradoc-links] for more information. - [You can now specify `#[doc(alias = "<alias>")]` on items to add search aliases when searching through `rustdoc`'s UI.][75740] Compatibility Notes ------------------- - [Promotion of references to `'static` lifetime inside `const fn` now follows the same rules as inside a `fn` body.][75502] In particular, `&foo()` will not be promoted to `'static` lifetime any more inside `const fn`s. - [Associated type bindings on trait objects are now verified to meet the bounds declared on the trait when checking that they implement the trait.][27675] - [When trait bounds on associated types or opaque types are ambiguous, the compiler no longer makes an arbitrary choice on which bound to use.][54121] - [Fixed recursive nonterminals not being expanded in macros during pretty-print/reparse check.][77153] This may cause errors if your macro wasn't correctly handling recursive nonterminal tokens. - [`&mut` references to non zero-sized types are no longer promoted.][75585] - [`rustc` will now warn if you use attributes like `#[link_name]` or `#[cold]` in places where they have no effect.][73461] - [Updated `_mm256_extract_epi8` and `_mm256_extract_epi16` signatures in `arch::{x86, x86_64}` to return `i32` to match the vendor signatures.][73166] - [`mem::uninitialized` will now panic if any inner types inside a struct or enum disallow zero-initialization.][71274] - [`#[target_feature]` will now error if used in a place where it has no effect.][78143] - [Foreign exceptions are now caught by `catch_unwind` and will cause an abort.][70212] Note: This behaviour is not guaranteed and is still considered undefined behaviour, see the [`catch_unwind`] documentation for further information. Internal Only ------------- These changes provide no direct user facing benefits, but represent significant improvements to the internals and overall performance of rustc and related tools. - [Building `rustc` from source now uses `ninja` by default over `make`.][74922] You can continue building with `make` by setting `ninja=false` in your `config.toml`. - [cg_llvm: `fewer_names` in `uncached_llvm_type`][76030] - [Made `ensure_sufficient_stack()` non-generic][76680] [78143]: rust-lang/rust#78143 [76680]: rust-lang/rust#76680 [76030]: rust-lang/rust#76030 [70212]: rust-lang/rust#70212 [27675]: rust-lang/rust#27675 [54121]: rust-lang/rust#54121 [71274]: rust-lang/rust#71274 [77386]: rust-lang/rust#77386 [77153]: rust-lang/rust#77153 [77055]: rust-lang/rust#77055 [76275]: rust-lang/rust#76275 [76310]: rust-lang/rust#76310 [76420]: rust-lang/rust#76420 [76158]: rust-lang/rust#76158 [75857]: rust-lang/rust#75857 [75585]: rust-lang/rust#75585 [75740]: rust-lang/rust#75740 [75502]: rust-lang/rust#75502 [74880]: rust-lang/rust#74880 [74922]: rust-lang/rust#74922 [74430]: rust-lang/rust#74430 [74194]: rust-lang/rust#74194 [73461]: rust-lang/rust#73461 [73166]: rust-lang/rust#73166 [intradoc-links]: https://doc.rust-lang.org/rustdoc/linking-to-items-by-name.html [`catch_unwind`]: https://doc.rust-lang.org/std/panic/fn.catch_unwind.html [`Option::is_some`]: https://doc.rust-lang.org/std/option/enum.Option.html#method.is_some [`Option::is_none`]: https://doc.rust-lang.org/std/option/enum.Option.html#method.is_none [`Option::as_ref`]: https://doc.rust-lang.org/std/option/enum.Option.html#method.as_ref [`Result::is_ok`]: https://doc.rust-lang.org/std/result/enum.Result.html#method.is_ok [`Result::is_err`]: https://doc.rust-lang.org/std/result/enum.Result.html#method.is_err [`Result::as_ref`]: https://doc.rust-lang.org/std/result/enum.Result.html#method.as_ref [`Ordering::reverse`]: https://doc.rust-lang.org/std/cmp/enum.Ordering.html#method.reverse [`Ordering::then`]: https://doc.rust-lang.org/std/cmp/enum.Ordering.html#method.then [`slice::as_ptr_range`]: https://doc.rust-lang.org/std/primitive.slice.html#method.as_ptr_range [`slice::as_mut_ptr_range`]: https://doc.rust-lang.org/std/primitive.slice.html#method.as_mut_ptr_range [`VecDeque::make_contiguous`]: https://doc.rust-lang.org/std/collections/struct.VecDeque.html#method.make_contiguous [`future::pending`]: https://doc.rust-lang.org/std/future/fn.pending.html [`future::ready`]: https://doc.rust-lang.org/std/future/fn.ready.html
1 parent a7a56a6 commit 34613f9

9 files changed

+89
-90
lines changed

rust/Makefile

+47-30
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# $NetBSD: Makefile,v 1.197 2020/09/29 16:45:16 gdt Exp $
22

3-
DISTNAME= rustc-1.47.0-src
3+
DISTNAME= rustc-1.48.0-src
44
PKGNAME= ${DISTNAME:S/rustc/rust/:S/-src//}
55
CATEGORIES= lang
66
MASTER_SITES= https://static.rust-lang.org/dist/
@@ -32,21 +32,16 @@ CONFIGURE_ARGS+= --prefix=${PREFIX}
3232
CONFIGURE_ARGS+= --mandir=${PREFIX}/${PKGMANDIR}
3333
CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR}
3434
CONFIGURE_ARGS+= --python=${PYTHONBIN}
35+
# Switch this to "nightly" to build a nightly compiler, required for some software,
36+
# then update BOOTSTRAP_NAME below.
3537
CONFIGURE_ARGS+= --release-channel=stable
36-
#CONFIGURE_ARGS+= --enable-local-rust
3738
CONFIGURE_ARGS+= --local-rust-root=${RUST_BOOTSTRAP_PATH}
3839
CONFIGURE_ARGS+= --enable-extended # Build and install cargo too.
3940
CONFIGURE_ARGS+= --enable-rpath
4041
CONFIGURE_ARGS+= --disable-codegen-tests
4142
CONFIGURE_ARGS+= --disable-dist-src
4243
CONFIGURE_ARGS+= --disable-llvm-static-stdcpp
4344
CONFIGURE_ARGS+= --disable-ninja
44-
# XXX: to be enabled in the future
45-
#CONFIGURE_ARGS+= --jemalloc-root=${BUILDLINK_PREFIX.jemalloc}/lib
46-
47-
# Use "dist" build target for cross compile of bootstrap
48-
#BUILD_TARGET= dist
49-
BUILD_TARGET= build
5045

5146
# Include (optional) settings to cross-build rust
5247
.include "cross.mk"
@@ -67,8 +62,6 @@ CFLAGS.SunOS+= -D_POSIX_PTHREAD_SEMANTICS
6762

6863
UNLIMIT_RESOURCES+= cputime datasize virtualsize
6964

70-
TEST_TARGET= check
71-
7265
# bin/* lib/*, but names vary
7366
CHECK_RELRO_SUPPORTED= no
7467
CHECK_SSP_SUPPORTED= no
@@ -172,14 +165,23 @@ RUST_STD_STAGE0:= rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
172165
DISTFILES:= ${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
173166
pre-build-fix:
174167
.endif
168+
#
169+
# The SunOS target defaults to illumos as that's what the current bootstraps
170+
# are built on. If you wish to target Oracle Solaris you'll need to create an
171+
# x86_64-sun-solaris bootstrap and comment out the overrides.
172+
#
175173
.if !empty(MACHINE_PLATFORM:MSunOS-*-x86_64) || make(distinfo) || make (makesum) || make(mdi)
176-
RUST_STAGE0_VER= 1.46.0
177-
RUST_ARCH:= x86_64-sun-solaris
178-
#RUST_ARCH:= x86_64-unknown-illumos
174+
RUST_STAGE0_VER= 1.48.0
175+
RUST_ARCH:= x86_64-unknown-illumos
179176
RUST_STAGE0:= rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
180177
SITES.${RUST_STAGE0}= https://us-east.manta.joyent.com/pkgsrc/public/pkg-bootstraps/
181178
DISTFILES:= ${DISTFILES} ${RUST_STAGE0}
182179
RUST_BOOTSTRAP_PATH?= ${WRKDIR}/rust-${RUST_STAGE0_VER}-${RUST_ARCH}
180+
# Override default "x86_64-sun-solaris" selection
181+
CONFIGURE_ARGS+= --set=target.${RUST_ARCH}.llvm-config=${LLVM_CONFIG_PATH}
182+
CONFIGURE_ARGS+= --build=${RUST_ARCH}
183+
CONFIGURE_ARGS+= --host=${RUST_ARCH}
184+
CONFIGURE_ARGS+= --target=${RUST_ARCH}
183185
pre-build-fix:
184186
.endif
185187
.if !empty(MACHINE_PLATFORM:MFreeBSD-*-i386) || make(distinfo) || make (makesum) || make(mdi)
@@ -281,8 +283,9 @@ TOOLS_PLATFORM.gzcat= ${PREFIX}/bin/gzip -cd
281283

282284
SUBST_CLASSES+= rpath
283285
SUBST_STAGE.rpath= pre-configure
284-
SUBST_FILES.rpath+= src/librustc_codegen_ssa/back/linker.rs
286+
SUBST_FILES.rpath+= compiler/rustc_codegen_ssa/src/back/linker.rs
285287
SUBST_FILES.rpath+= src/bootstrap/builder.rs
288+
SUBST_FILES.rpath+= src/bootstrap/compile.rs
286289
SUBST_VARS.rpath= PREFIX
287290

288291
#
@@ -292,16 +295,16 @@ SUBST_VARS.rpath= PREFIX
292295
# updating and verification.
293296
#
294297
CKSUM_CRATES+= vendor/libc
295-
CKSUMS+= 9f96e346d87296e2b0b87b9fe375d67fb66cd88ce61ea2905466c8c5891d3108
296-
CKSUMS+= ebcb0709586e6ed1e8b4538368201638006e26042d464bbc1151bef9eb158f8c
298+
CKSUMS+= a9e46c0eee970cb5b4bd910924141d223fad4aa45380d3df1ce4b25992a13037
299+
CKSUMS+= 41394431697e352653c37188233bd44776881eb704132203b1a232271d1afd92
297300

298301
CKSUM_CRATES+= vendor/lzma-sys
299302
CKSUMS+= 6fd5e9245db34c6f557b8bfcaf03db82fc88c3b06dbfbb5f03b2bcd138983ef9
300303
CKSUMS+= 5e252578b5d266f6a4c8dc9f71ca7a91536ccb8c5c7d7753b82f12ec886459ef
301304

302305
CKSUM_CRATES+= vendor/stacker
303-
CKSUMS+= 37ef9666d048191eeca23d8f7d99cf912b953cc489bf860107aec306b95b2d99
304-
CKSUMS+= 410f22f5e95860530be1abaaf2e279d2f4226e5c17c2cee302661d8079246b3a
306+
CKSUMS+= cee329550bad2ed1182abb71db9c24558a91b12e1eab8d9a48e23b997bb8f04e
307+
CKSUMS+= 79915b243d02df1dc698f5c2de3a9356c6c296d2dedb06d9035dbcc2f8972cf4
305308

306309
SUBST_CLASSES+= cksum
307310
SUBST_STAGE.cksum= pre-configure
@@ -349,18 +352,29 @@ pre-build: pre-build-fix
349352
cp ${FILESDIR}/libgcc_s.so.1 ${RUST_BOOTSTRAP_PATH}/lib/.
350353
.endif
351354

355+
#
356+
# These are essentially copies of the "all", "test", and "install" Makefile
357+
# targets, but are duplicated here so that we can specify -j.
358+
#
352359
do-build:
353-
cd ${WRKSRC} \
354-
&& ${_ULIMIT_CMD} ${SETENV} ${INSTALL_ENV} ${MAKE_ENV} \
355-
sh -c "if [ \"${BUILD_TARGET}\" = \"dist\" ]; then \
356-
unset DESTDIR; \
357-
fi; \
358-
${PYTHONBIN} ./x.py -v ${BUILD_TARGET} -j ${_MAKE_JOBS_N}"
360+
${RUN}${_ULIMIT_CMD} \
361+
cd ${WRKSRC} && \
362+
${SETENV} ${MAKE_ENV} ${PYTHONBIN} ./x.py -v \
363+
build --stage 2 -j ${_MAKE_JOBS_N} && \
364+
${SETENV} ${MAKE_ENV} ${PYTHONBIN} ./x.py -v \
365+
doc --stage 2 -j ${_MAKE_JOBS_N}
366+
367+
do-test:
368+
${RUN}${_ULIMIT_CMD} \
369+
cd ${WRKSRC} && \
370+
${SETENV} ${MAKE_ENV} ${PYTHONBIN} ./x.py -v \
371+
test -j ${_MAKE_JOBS_N}
359372

360373
do-install:
361-
cd ${WRKSRC} \
362-
&& ${_ULIMIT_CMD} ${SETENV} ${INSTALL_ENV} ${MAKE_ENV} \
363-
${PYTHONBIN} ./x.py -v install -j ${_MAKE_JOBS_N}
374+
${RUN}${_ULIMIT_CMD} \
375+
cd ${WRKSRC} && \
376+
${SETENV} ${MAKE_ENV} ${INSTALL_ENV} ${PYTHONBIN} ./x.py -v \
377+
install -j ${_MAKE_JOBS_N}
364378

365379
.if ${OPSYS} == "Darwin"
366380
.PHONY: fix-darwin-install-name
@@ -378,7 +392,11 @@ GENERATE_PLIST+= ${FIND} ${DESTDIR}${PREFIX} \( -type f -o -type l \) -print | \
378392
# Create a relocatable stage2 bootstrap from the bits we just built that can be
379393
# used to build the next version of rust. Currently only tested on SmartOS.
380394
#
381-
BOOTSTRAP_TMPDIR= ${WRKDIR}/${PKGNAME_NOREV}-${RUST_ARCH}
395+
# Use the alternate BOOTSTRAP_NAME when creating a nightly release.
396+
#
397+
#BOOTSTRAP_NAME= ${PKGNAME_NOREV:C/rust/rust-nightly/}-${RUST_ARCH}
398+
BOOTSTRAP_NAME= ${PKGNAME_NOREV}-${RUST_ARCH}
399+
BOOTSTRAP_TMPDIR= ${WRKDIR}/${BOOTSTRAP_NAME}
382400
USE_TOOLS+= gtar
383401

384402
# The NetBSD part is so far untested, because I could not convince
@@ -452,8 +470,7 @@ stage0-bootstrap: install
452470
for f in ${BOOTSTRAP_TMPDIR}/lib/rustlib/*/*/*.so*; do \
453471
${ELFEDIT} -e 'dyn:runpath $$ORIGIN:$$ORIGIN/../../..:$$ORIGIN/../../../pkgsrc' $$f; \
454472
done
455-
(cd ${WRKDIR}; \
456-
${GTAR} -zcf ${PKGNAME_NOREV}-${RUST_ARCH}.tar.gz ${PKGNAME_NOREV}-${RUST_ARCH})
473+
(cd ${WRKDIR}; ${GTAR} -zcf ${BOOTSTRAP_NAME}.tar.gz ${BOOTSTRAP_NAME})
457474
.endif
458475

459476
.include "options.mk"

rust/cross.mk

-17
Original file line numberDiff line numberDiff line change
@@ -48,20 +48,3 @@
4848

4949
# May be required when cross-building on NetBSD
5050
#MAKE_ENV+= OPENSSL_DIR=/usr
51-
52-
#
53-
# Cross-compile illumos target. The host is identical, it's just the target
54-
# that is renamed from x86_64-sun-solaris to x86_64-unknown-illumos.
55-
#
56-
#TARGET= x86_64-unknown-illumos
57-
#
58-
# Use these variables for "cross-compiling" from x86_64-sun-solaris.
59-
#
60-
#CONFIGURE_ARGS+= --set=target.${TARGET}.llvm-config=${LLVM_CONFIG_PATH}
61-
#CONFIGURE_ARGS+= --host=${TARGET}
62-
#CONFIGURE_ARGS+= --target=${TARGET}
63-
#
64-
# Set this variable when using a native x86_64-unknown-illumos bootstrap, as
65-
# the build still defaults to x86_64-sun-solaris based on uname.
66-
#
67-
#CONFIGURE_ARGS+= --build=${TARGET}

rust/distinfo

+13-13
Original file line numberDiff line numberDiff line change
@@ -40,14 +40,14 @@ SHA1 (rust-1.44.1-x86_64-unknown-linux-gnu.tar.gz) = d9f79f976c7270a782cba9e5c08
4040
RMD160 (rust-1.44.1-x86_64-unknown-linux-gnu.tar.gz) = 3a5cbf8538b3aadfe2bda6cbec5599a2eccba9ce
4141
SHA512 (rust-1.44.1-x86_64-unknown-linux-gnu.tar.gz) = aa78c32a3dfd4b01d5e69a44bc978206b50581586af1b45105400fbd6b28a9946141063d68781218ca9fbaaf0edfdfe708081ecf97facba176095868b6187773
4242
Size (rust-1.44.1-x86_64-unknown-linux-gnu.tar.gz) = 189534350 bytes
43-
SHA1 (rust-1.46.0-x86_64-sun-solaris.tar.gz) = 081ed2fab901b7b4fbf5035b731abe7793e927b8
44-
RMD160 (rust-1.46.0-x86_64-sun-solaris.tar.gz) = fdac437710f87a228d4c56b569fc831784f193c5
45-
SHA512 (rust-1.46.0-x86_64-sun-solaris.tar.gz) = cbb5be647b1ee0f2f2074d1e3138e6b1ec69e500e4411342255128b1625cb78797af15e0bc895601d62f43ce50049401b2f88edb7c951a405ee7aa645e4b67cf
46-
Size (rust-1.46.0-x86_64-sun-solaris.tar.gz) = 174780795 bytes
4743
SHA1 (rust-1.46.0-x86_64-unknown-netbsd.tar.gz) = 61956d35f668318f91523edf983ef280c967e4f8
4844
RMD160 (rust-1.46.0-x86_64-unknown-netbsd.tar.gz) = f73fe050d4f536bba8577104eb93471a468b714c
4945
SHA512 (rust-1.46.0-x86_64-unknown-netbsd.tar.gz) = afaeb235f445a8813838548ee694c90ab71c3a0fc235652ce0d35e932f0609e2be9f5986bd99ed80d03b24e1b1362ccb6db05cb1eff61284a523477b19f34d7a
5046
Size (rust-1.46.0-x86_64-unknown-netbsd.tar.gz) = 154685586 bytes
47+
SHA1 (rust-1.48.0-x86_64-unknown-illumos.tar.gz) = 23afcbc003c01940277978553b4afd75ec5d333d
48+
RMD160 (rust-1.48.0-x86_64-unknown-illumos.tar.gz) = 6510186be6f216e47cb1971500dbf1fd27f96e09
49+
SHA512 (rust-1.48.0-x86_64-unknown-illumos.tar.gz) = e0153c7c400eea2f3b59c9f63c0ee0dbaf3f8ccf645c1ad4c66f90727d41894dcb49ddacf622fc8572ab45734472e59970de64939bec0f6d6f94f5797ce05fb4
50+
Size (rust-1.48.0-x86_64-unknown-illumos.tar.gz) = 189960423 bytes
5151
SHA1 (rust-std-1.44.0-armv7-unknown-netbsd-eabihf.tar.gz) = ef2043dd95e4b56526060f9497c523ca7670ebcd
5252
RMD160 (rust-std-1.44.0-armv7-unknown-netbsd-eabihf.tar.gz) = f2a11dea07bd9982b99e26baf74259ce21af3121
5353
SHA512 (rust-std-1.44.0-armv7-unknown-netbsd-eabihf.tar.gz) = 8903e258f3cc3a9fd8b1bf982b42560bbc47b3be583dea8687d50eadc92a98f739211d865a812de2cf6e4828e94e97a5934a02120d3eaff8342669ee1e0afc37
@@ -92,22 +92,22 @@ SHA1 (rust-std-1.46.0-x86_64-unknown-netbsd.tar.gz) = 154767516a8f1e358c340d602e
9292
RMD160 (rust-std-1.46.0-x86_64-unknown-netbsd.tar.gz) = 1f504e4f7053246067d0e41ddbcadd85ddf573c6
9393
SHA512 (rust-std-1.46.0-x86_64-unknown-netbsd.tar.gz) = 2e3431bfe462408906b4553a181653b68c615bae6170362e73dd125ae538b499cd745cc903ca79db41aff9bff3ce366726c92570be5fa264723be7d7018fbbce
9494
Size (rust-std-1.46.0-x86_64-unknown-netbsd.tar.gz) = 22644831 bytes
95-
SHA1 (rustc-1.47.0-src.tar.gz) = 5a337c88aeb04a31011037671588fd66b046ca32
96-
RMD160 (rustc-1.47.0-src.tar.gz) = 2fee85c5e52046982a51eff62f64e123f798ed56
97-
SHA512 (rustc-1.47.0-src.tar.gz) = a6df9e2d599806eeddbfb35f7dea976781533f63d369a765b8a304221281c9f9e642ff952978f69eaaa0b28740ab5ea566b35ce481097c37fd5117bfec1f43dd
98-
Size (rustc-1.47.0-src.tar.gz) = 151861620 bytes
95+
SHA1 (rustc-1.48.0-src.tar.gz) = a26f089d27c9cc283a7305fc8ece6b4674a036fd
96+
RMD160 (rustc-1.48.0-src.tar.gz) = 28b6c2319a29c8f4282bf15da2c97d8c43bb27e1
97+
SHA512 (rustc-1.48.0-src.tar.gz) = e28e5f0813cfd94fb92399a2d64aa19bdf0933b5fc768ea10da2a5b787c94bac6a5efb98b2c3702da3d1c46c6766b157df3727e5845b4b83a237b44ec45b27ba
98+
Size (rustc-1.48.0-src.tar.gz) = 154487032 bytes
99+
SHA1 (patch-compiler_rustc__codegen__ssa_src_back_linker.rs) = 72746bbf0fa5e72fe151c95e3876b9eb1e70ae39
100+
SHA1 (patch-compiler_rustc__llvm_build.rs) = b5157022f0f1942ae2db1ab78145af1526780b18
101+
SHA1 (patch-compiler_rustc__target_src_spec_solaris__base.rs) = bcc420e4c8148cc0c92826aa7d146fc47e7c4863
102+
SHA1 (patch-compiler_rustc__target_src_spec_x86__64__sun__solaris.rs) = 2c6f22a6c8412573b0e5ad436c8a231a3b740326
99103
SHA1 (patch-library_backtrace_crates_backtrace-sys_src_libbacktrace_configure) = 5dc1cfc843894156b513c86453db5032917a5529
100104
SHA1 (patch-library_std_build.rs) = 34b95b6dcaa788fe7e0e10e9c77a796d35e6ca14
101105
SHA1 (patch-library_std_src_sys_unix_thread.rs) = f3af869fba5bc0ab8d28042f55fe830f93b8ef54
102106
SHA1 (patch-library_unwind_build.rs) = ae096a20aed95304eb3806be4cd237fe4ffd9afb
103107
SHA1 (patch-src_bootstrap_bootstrap.py) = 53e0409527f3e52dd00b5c86e6c38047626e2379
104-
SHA1 (patch-src_bootstrap_builder.rs) = d0fa2a58fa89171cb58e236384bcce614daf412f
108+
SHA1 (patch-src_bootstrap_builder.rs) = 59d7ac0c525f232ed5d89ef725b6cad9fa13d23f
105109
SHA1 (patch-src_bootstrap_compile.rs) = 67d5ad13e13e6818535a319f55e990d511e7b83f
106110
SHA1 (patch-src_bootstrap_lib.rs) = 3277f2be69a269ac761a2a6ab4d5389d121e6ca6
107-
SHA1 (patch-src_librustc__codegen__ssa_back_linker.rs) = 48b71063184c1ef608d41a8cf5014a6c064a8893
108-
SHA1 (patch-src_librustc__llvm_build.rs) = 7cc2aa0568aa2cbf4eb1fdbb00922b10df0b3ff6
109-
SHA1 (patch-src_librustc__target_spec_solaris__base.rs) = 10b00a889f2d3788172098021e8fc1e4939ec897
110-
SHA1 (patch-src_librustc__target_spec_x86__64__sun__solaris.rs) = f6ad33b41906bbf83a1cbd0e2fe13a4da37266fa
111111
SHA1 (patch-src_llvm-project_llvm_CMakeLists.txt) = d49503d19c30a64d571eb7fa79e7aad7038cd427
112112
SHA1 (patch-src_llvm-project_llvm_cmake_modules_AddLLVM.cmake) = 77a2a9e4d324885d6fa5e68cf15ef84db0a2483b
113113
SHA1 (patch-src_llvm-project_llvm_include_llvm-c_DataTypes.h) = 7588a46aaa277ef04b33ac6d904b9d1d81579f2a

rust/patches/patch-src_librustc__codegen__ssa_back_linker.rs rust/patches/patch-compiler_rustc__codegen__ssa_src_back_linker.rs

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
$NetBSD: patch-src_librustc__codegen__ssa_back_linker.rs,v 1.1 2019/09/09 16:19:49 adam Exp $
1+
$NetBSD$
22

33
Do not use @rpath on Darwin.
44

5-
--- src/librustc_codegen_ssa/back/linker.rs.orig 2020-08-24 15:00:49.000000000 +0000
6-
+++ src/librustc_codegen_ssa/back/linker.rs
5+
--- compiler/rustc_codegen_ssa/src/back/linker.rs.orig 2020-11-16 14:01:53.000000000 +0000
6+
+++ compiler/rustc_codegen_ssa/src/back/linker.rs
77
@@ -244,7 +244,7 @@ impl<'a> GccLinker<'a> {
88
// the right `-Wl,-install_name` with an `@rpath` in it.
99
if self.sess.opts.cg.rpath || self.sess.opts.debugging_opts.osx_rpath_install_name {

rust/patches/patch-src_librustc__llvm_build.rs rust/patches/patch-compiler_rustc__llvm_build.rs

+5-5
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
$NetBSD: patch-src_librustc__llvm_build.rs,v 1.6 2019/09/19 17:37:29 jperkin Exp $
1+
$NetBSD$
22

3-
fix build on NetBSD HEAD-llvm. XXX there is probably a better way to do this.
3+
Fix build on NetBSD HEAD-llvm. XXX there is probably a better way to do this.
44

5-
--- src/librustc_llvm/build.rs.orig 2019-08-13 06:27:22.000000000 +0000
6-
+++ src/librustc_llvm/build.rs
7-
@@ -261,7 +261,13 @@ fn main() {
5+
--- compiler/rustc_llvm/build.rs.orig 2020-11-16 14:01:53.000000000 +0000
6+
+++ compiler/rustc_llvm/build.rs
7+
@@ -284,7 +284,13 @@ fn main() {
88
"c++"
99
} else if target.contains("netbsd") && llvm_static_stdcpp.is_some() {
1010
// NetBSD uses a separate library when relocation is required

rust/patches/patch-src_librustc__target_spec_solaris__base.rs rust/patches/patch-compiler_rustc__target_src_spec_solaris__base.rs

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
$NetBSD: patch-src_librustc__target_spec_solaris__base.rs,v 1.3 2020/03/13 18:34:53 jperkin Exp $
1+
$NetBSD$
22

33
Enable frame pointers on SunOS.
44

5-
--- src/librustc_target/spec/solaris_base.rs.orig 2020-08-24 15:00:49.000000000 +0000
6-
+++ src/librustc_target/spec/solaris_base.rs
5+
--- compiler/rustc_target/src/spec/solaris_base.rs.orig 2020-11-16 14:01:53.000000000 +0000
6+
+++ compiler/rustc_target/src/spec/solaris_base.rs
77
@@ -7,6 +7,7 @@ pub fn opts() -> TargetOptions {
88
has_rpath: true,
99
target_family: Some("unix".to_string()),
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
$NetBSD$
2+
3+
Disable stack probes on SunOS.
4+
5+
--- compiler/rustc_target/src/spec/x86_64_sun_solaris.rs.orig 2020-11-16 14:01:53.000000000 +0000
6+
+++ compiler/rustc_target/src/spec/x86_64_sun_solaris.rs
7+
@@ -5,7 +5,6 @@ pub fn target() -> TargetResult {
8+
base.pre_link_args.insert(LinkerFlavor::Gcc, vec!["-m64".to_string()]);
9+
base.cpu = "x86-64".to_string();
10+
base.max_atomic_width = Some(64);
11+
- base.stack_probes = true;
12+
13+
Ok(Target {
14+
llvm_target: "x86_64-pc-solaris".to_string(),

rust/patches/patch-src_bootstrap_builder.rs

+4-4
Original file line numberDiff line numberDiff line change
@@ -5,17 +5,17 @@ Use @PREFIX@, not $ORIGIN in rpath.
55

66
Fix RPATH for pkgsrc.
77

8-
--- src/bootstrap/builder.rs.orig 2020-08-24 15:00:49.000000000 +0000
8+
--- src/bootstrap/builder.rs.orig 2020-11-16 14:01:53.000000000 +0000
99
+++ src/bootstrap/builder.rs
10-
@@ -481,7 +481,6 @@ impl<'a> Builder<'a> {
10+
@@ -475,7 +475,6 @@ impl<'a> Builder<'a> {
1111
install::Clippy,
1212
install::Miri,
1313
install::Analysis,
1414
- install::Src,
1515
install::Rustc
1616
),
17-
Kind::Run => describe!(run::ExpandYamlAnchors,),
18-
@@ -1003,7 +1002,7 @@ impl<'a> Builder<'a> {
17+
Kind::Run => describe!(run::ExpandYamlAnchors, run::BuildManifest,),
18+
@@ -1001,7 +1000,7 @@ impl<'a> Builder<'a> {
1919
rustflags.arg("-Zosx-rpath-install-name");
2020
Some("-Wl,-rpath,@loader_path/../lib")
2121
} else if !target.contains("windows") {

rust/patches/patch-src_librustc__target_spec_x86__64__sun__solaris.rs

-15
This file was deleted.

0 commit comments

Comments
 (0)