pkgsrc-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[pkgsrc/trunk]: pkgsrc/lang/rust rust: Restore SunOS support.
details: https://anonhg.NetBSD.org/pkgsrc/rev/8b36e8ef1839
branches: trunk
changeset: 373540:8b36e8ef1839
user: jperkin <jperkin%pkgsrc.org@localhost>
date: Thu Jan 04 15:18:50 2018 +0000
description:
rust: Restore SunOS support.
diffstat:
lang/rust/Makefile | 45 ++++++---
lang/rust/distinfo | 8 +-
lang/rust/patches/patch-src_vendor_filetime_.cargo-checksum.json | 10 ++
lang/rust/patches/patch-src_vendor_filetime_src_unix.rs | 22 ++++
4 files changed, 68 insertions(+), 17 deletions(-)
diffs (156 lines):
diff -r e5d6858fd193 -r 8b36e8ef1839 lang/rust/Makefile
--- a/lang/rust/Makefile Thu Jan 04 14:47:25 2018 +0000
+++ b/lang/rust/Makefile Thu Jan 04 15:18:50 2018 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.25 2018/01/01 21:18:37 adam Exp $
+# $NetBSD: Makefile,v 1.26 2018/01/04 15:18:50 jperkin Exp $
DISTNAME= rustc-1.22.1-src
PKGNAME= ${DISTNAME:S/rustc/rust/:S/-src//}
@@ -101,13 +101,13 @@
RUST_STD_STAGE0:= rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
DISTFILES:= ${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
.endif
-#.if !empty(MACHINE_PLATFORM:MSunOS-*-x86_64) || make(distinfo) || make (makesum) || make(mdi)
-#RUST_ARCH:= x86_64-sun-solaris
-#RUST_STAGE0:= rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
-#SITES.${RUST_STAGE0}= https://us-east.manta.joyent.com/pkgsrc/public/pkg-bootstraps/
-#DISTFILES:= ${DISTFILES} ${RUST_STAGE0}
-#RUST_BOOTSTRAP_PATH?= ${WRKDIR}/rust-${RUST_STAGE0_VER}-${RUST_ARCH}
-#.endif
+.if !empty(MACHINE_PLATFORM:MSunOS-*-x86_64) || make(distinfo) || make (makesum) || make(mdi)
+RUST_ARCH:= x86_64-sun-solaris
+RUST_STAGE0:= rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
+SITES.${RUST_STAGE0}= https://us-east.manta.joyent.com/pkgsrc/public/pkg-bootstraps/
+DISTFILES:= ${DISTFILES} ${RUST_STAGE0}
+RUST_BOOTSTRAP_PATH?= ${WRKDIR}/rust-${RUST_STAGE0_VER}-${RUST_ARCH}
+.endif
.if !empty(MACHINE_PLATFORM:MNetBSD-*-i386) || make(distinfo) || make (makesum) || make(mdi)
RUST_ARCH= i686-unknown-netbsd
RUST_STAGE0:= rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
@@ -116,7 +116,9 @@
SITES.${RUST_STAGE0}= https://deuterium.ryoon.net/pub/rust/
SITES.${RUST_STD_STAGE0}= https://deuterium.ryoon.net/pub/rust/
DISTFILES:= ${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
-DIST_SUBDIR= ${PKGNAME}
+# Setting this changes it for every distfile, which doesn't match what is
+# currently in distinfo.
+#DIST_SUBDIR= ${PKGNAME}
# For atomic ops
CFLAGS+= -march=i586
pre-build:
@@ -211,30 +213,41 @@
# Create a relocatable stage2 bootstrap from the bits we just built that can be
# used to build the next version of rust. Currently only tested on SmartOS.
#
-BOOTSTRAP_TMPDIR= ${WRKDIR}/${PKGNAME}-${RUST_ARCH}
+BOOTSTRAP_TMPDIR= ${WRKDIR}/${PKGNAME_NOREV}-${RUST_ARCH}
USE_TOOLS+= gtar
stage0-bootstrap: install
+ ${RM} -rf ${BOOTSTRAP_TMPDIR}
${MKDIR} ${BOOTSTRAP_TMPDIR}
${CP} -R ${DESTDIR}/${PREFIX}/bin ${BOOTSTRAP_TMPDIR}/
${CP} -R ${DESTDIR}/${PREFIX}/lib ${BOOTSTRAP_TMPDIR}/
.if ${OS_VARIANT} == "SmartOS"
+ ${MKDIR} ${BOOTSTRAP_TMPDIR}/lib/pkgsrc
for lib in libgcc_s.so.1 libssp.so.0 libstdc++.so.6; do \
${CP} `${PKG_CC} -print-file-name=$${lib}` \
- ${BOOTSTRAP_TMPDIR}/lib/; \
+ ${BOOTSTRAP_TMPDIR}/lib/pkgsrc/; \
done
- for f in ${BOOTSTRAP_TMPDIR}/bin/rust{c,doc}; do \
- /usr/bin/elfedit -e 'dyn:runpath $$ORIGIN/../lib' $$f; \
+ for lib in libcrypto.so.1.0.0 libcurl.so.4 libhttp_parser.so.2 \
+ libiconv.so.2 libidn2.so.0 libintl.so.8 liblber-2.4.so.2 \
+ libldap-2.4.so.2 libnghttp2.so.14 libsasl2.so.3 \
+ libssh2.so.1 libssl.so.1.0.0 libunistring.so.2 libz.so.1; do \
+ ${CP} ${PREFIX}/lib/$${lib} ${BOOTSTRAP_TMPDIR}/lib/pkgsrc/; \
+ done
+ for f in ${BOOTSTRAP_TMPDIR}/bin/{cargo,rls,rustc,rustdoc}; do \
+ /usr/bin/elfedit -e 'dyn:runpath $$ORIGIN/../lib:$$ORIGIN/../lib/pkgsrc' $$f; \
+ done
+ for f in ${BOOTSTRAP_TMPDIR}/lib/pkgsrc/*.so*; do \
+ /usr/bin/elfedit -e 'dyn:runpath $$ORIGIN' $$f; \
done
for f in ${BOOTSTRAP_TMPDIR}/lib/*.so*; do \
- /usr/bin/elfedit -e 'dyn:runpath $$ORIGIN' $$f; \
+ /usr/bin/elfedit -e 'dyn:runpath $$ORIGIN:$$ORIGIN/pkgsrc' $$f; \
done
for f in ${BOOTSTRAP_TMPDIR}/lib/rustlib/${RUST_ARCH}/lib/*.so*; do \
- /usr/bin/elfedit -e 'dyn:runpath $$ORIGIN:$$ORIGIN/../../..' $$f; \
+ /usr/bin/elfedit -e 'dyn:runpath $$ORIGIN:$$ORIGIN/../../..:$$ORIGIN/../../../pkgsrc' $$f; \
done
.endif
(cd ${WRKDIR}; \
- ${GTAR} -zcf ${PKGNAME}-${RUST_ARCH}.tar.gz ${PKGNAME}-${RUST_ARCH})
+ ${GTAR} -zcf ${PKGNAME_NOREV}-${RUST_ARCH}.tar.gz ${PKGNAME_NOREV}-${RUST_ARCH})
.include "../../devel/cmake/buildlink3.mk"
.include "../../devel/libgit2/buildlink3.mk"
diff -r e5d6858fd193 -r 8b36e8ef1839 lang/rust/distinfo
--- a/lang/rust/distinfo Thu Jan 04 14:47:25 2018 +0000
+++ b/lang/rust/distinfo Thu Jan 04 15:18:50 2018 +0000
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.14 2017/12/20 05:38:21 maya Exp $
+$NetBSD: distinfo,v 1.15 2018/01/04 15:18:50 jperkin Exp $
SHA1 (rust-1.21.0-i686-apple-darwin.tar.gz) = 9e01c8800419db1de2c31dee06494194ab843b7d
RMD160 (rust-1.21.0-i686-apple-darwin.tar.gz) = 0f5f73fb5dfca510afd9acaf755893901a3180ca
@@ -16,6 +16,10 @@
RMD160 (rust-1.21.0-x86_64-apple-darwin.tar.gz) = c1fb237215d34059041065c0508308eea767f7b3
SHA512 (rust-1.21.0-x86_64-apple-darwin.tar.gz) = dd19ec67b22c43d219ee88319312ab82964d40d0996931eb1c7df12defebc17827fbdbb4f7096aff6cee6772c8f6b6f1614a487b8b2a0ab3b5f3cb66417aaf8a
Size (rust-1.21.0-x86_64-apple-darwin.tar.gz) = 133932530 bytes
+SHA1 (rust-1.21.0-x86_64-sun-solaris.tar.gz) = 5da64aa97e4aba82d02f7547dbdd44a9305005fc
+RMD160 (rust-1.21.0-x86_64-sun-solaris.tar.gz) = b0c1aa3734faf03d2b02fa301562b79ec145aa66
+SHA512 (rust-1.21.0-x86_64-sun-solaris.tar.gz) = 952280e446c86091340202caa206ea7f31295d82cc65da95a4e78fa691bdf837ded587d916ff3226adc639f7483db8ab12a99ef7e233cdac46c33e9edcc738ad
+Size (rust-1.21.0-x86_64-sun-solaris.tar.gz) = 146676219 bytes
SHA1 (rust-1.21.0-x86_64-unknown-linux-gnu.tar.gz) = a725a3cdaf937b30788d55363f962a1da1a6e2e2
RMD160 (rust-1.21.0-x86_64-unknown-linux-gnu.tar.gz) = 5d4feca3675ec279868e52b7bdb84349be9c9e83
SHA512 (rust-1.21.0-x86_64-unknown-linux-gnu.tar.gz) = 8ffee69e895eba1564eecff769a105c8069cc66ce85f4ae6d1316eef5483185d8b4180595a1d67b2f08802b74e349c7677398203d89e3b131b56b2ea7ce0e980
@@ -58,3 +62,5 @@
SHA1 (patch-src_libstd_build.rs) = 32dad8a474300f9f37bce8b92acca762cf8cc4ab
SHA1 (patch-src_llvm_cmake_modules_AddLLVM.cmake) = 282d97cce8d01cfefe565185d4999c2db9ccc13f
SHA1 (patch-src_llvm_lib_CodeGen_MachineDominanceFrontier.cpp) = 2899771b1a23be840b9305eff7e5e5f957239ccb
+SHA1 (patch-src_vendor_filetime_.cargo-checksum.json) = 7cdd486b65ad780c3a472bc1846d55270dcbcdeb
+SHA1 (patch-src_vendor_filetime_src_unix.rs) = e31011cdc146897b6530c51d76929b8ac194f6a2
diff -r e5d6858fd193 -r 8b36e8ef1839 lang/rust/patches/patch-src_vendor_filetime_.cargo-checksum.json
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/lang/rust/patches/patch-src_vendor_filetime_.cargo-checksum.json Thu Jan 04 15:18:50 2018 +0000
@@ -0,0 +1,10 @@
+$NetBSD: patch-src_vendor_filetime_.cargo-checksum.json,v 1.1 2018/01/04 15:18:51 jperkin Exp $
+
+Update checksum for src/unix.rs patch.
+
+--- src/vendor/filetime/.cargo-checksum.json.orig 2017-11-22 23:37:31.000000000 +0000
++++ src/vendor/filetime/.cargo-checksum.json
+@@ -1 +1 @@
+-{"files":{".cargo-ok":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",".gitignore":"f9b1ca6ae27d1c18215265024629a8960c31379f206d9ed20f64e0b2dcf79805",".travis.yml":"fed0342a81e321ed9d4189905a9987d60d5b83b3c097dd3dc62d81461c8b65d8","Cargo.toml":"34c5b16ec63d0079f74203650c1766d928384f16801472f0e19912dee8e3fd9e","Cargo.toml.orig":"6ed10b4b57d08fa891d9c8d8579509107b2046965db9c76145b6ede345c9a570","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"fef1998633eb2f460e6b12bc1133a21f5674e0b53ae5914ba1e53f1b63a185c3","appveyor.yml":"3a74394c3e3ef3b2c7d9458f526e47587977e98d026b63f00be29479075ff597","src/lib.rs":"12dff581c45905398c5eab919cda969d811d1e56a486aee13b12027d7840a5f7","src/redox.rs":"7b6376069ea06e6593058699af40fa780c3d621c010d31bfa6c1bfae18de28f4","src/unix.rs":"943587ee42bfcb684cb0abf8567d478dc21006e01f96fb86c76e5d0e2b7932dd","src/windows.rs":"37dd08863698a5c32c103374ad1ed776405b75038c88bc48b7db28ad9c5bf86b"},"package":"6ab199bf38537c6f38792669e081e0bb278b9b7405bba2642e4e5d15bf732c0e"}
+\ No newline at end of file
++{"files":{".cargo-ok":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",".gitignore":"f9b1ca6ae27d1c18215265024629a8960c31379f206d9ed20f64e0b2dcf79805",".travis.yml":"fed0342a81e321ed9d4189905a9987d60d5b83b3c097dd3dc62d81461c8b65d8","Cargo.toml":"34c5b16ec63d0079f74203650c1766d928384f16801472f0e19912dee8e3fd9e","Cargo.toml.orig":"6ed10b4b57d08fa891d9c8d8579509107b2046965db9c76145b6ede345c9a570","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"fef1998633eb2f460e6b12bc1133a21f5674e0b53ae5914ba1e53f1b63a185c3","appveyor.yml":"3a74394c3e3ef3b2c7d9458f526e47587977e98d026b63f00be29479075ff597","src/lib.rs":"12dff581c45905398c5eab919cda969d811d1e56a486aee13b12027d7840a5f7","src/redox.rs":"7b6376069ea06e6593058699af40fa780c3d621c010d31bfa6c1bfae18de28f4","src/unix.rs":"24e6c14adb4b66879f4f616d7617e948f9fc4ab497b77c008825daef59e45456","src/windows.rs":"37dd08863698a5c32c103374ad1ed776405b75038c88bc48b7db28ad9c5bf86b"},"package":"6ab199bf38537c6f38792669e081e0bb278b9b7405bba2642e4e5d15bf732c0e"}
diff -r e5d6858fd193 -r 8b36e8ef1839 lang/rust/patches/patch-src_vendor_filetime_src_unix.rs
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/lang/rust/patches/patch-src_vendor_filetime_src_unix.rs Thu Jan 04 15:18:50 2018 +0000
@@ -0,0 +1,22 @@
+$NetBSD: patch-src_vendor_filetime_src_unix.rs,v 1.1 2018/01/04 15:18:51 jperkin Exp $
+
+SunOS does not have lutimes.
+
+--- src/vendor/filetime/src/unix.rs.orig 2017-11-22 23:37:31.000000000 +0000
++++ src/vendor/filetime/src/unix.rs
+@@ -14,12 +14,12 @@ pub fn set_file_times(p: &Path, atime: F
+ set_file_times_u(p, atime, mtime, libc::utimes)
+ }
+
+-#[cfg(target_os = "android")]
++#[cfg(any(target_os = "android", target_os = "solaris"))]
+ pub fn set_symlink_file_times(_p: &Path, _atime: FileTime, _mtime: FileTime) -> io::Result<()> {
+- Err(io::Error::new(io::ErrorKind::Other, "not supported on Android"))
++ Err(io::Error::new(io::ErrorKind::Other, "not supported"))
+ }
+
+-#[cfg(not(target_os = "android"))]
++#[cfg(not(any(target_os = "android", target_os = "solaris")))]
+ pub fn set_symlink_file_times(p: &Path, atime: FileTime, mtime: FileTime) -> io::Result<()> {
+ set_file_times_u(p, atime, mtime, libc::lutimes)
+ }
Home |
Main Index |
Thread Index |
Old Index