about summary refs log tree commit diff
path: root/src/ci/docker
diff options
context:
space:
mode:
authorbgermann <bgermann@users.noreply.github.com>2017-10-17 15:53:18 +0200
committerbgermann <bgermann@users.noreply.github.com>2017-10-17 15:53:18 +0200
commitb3ea6e5fc548fd03f1902f9abfe4e3f11d426d39 (patch)
tree25116afdf237daf49467a1cdc0d7674e72fe4e8c /src/ci/docker
parent611f375a862148595d1d7c221870312e572f7d3c (diff)
downloadrust-b3ea6e5fc548fd03f1902f9abfe4e3f11d426d39.tar.gz
rust-b3ea6e5fc548fd03f1902f9abfe4e3f11d426d39.zip
Make Solaris builder compatible with Solaris 10 retry
Unfortunately, #45255 does not quite cut it,
so use a different approach to have Solaris 10 compatibility
by tricking libbacktrace's autoconf tests.
The sysroot download routine is slightly changed, too.
Diffstat (limited to 'src/ci/docker')
-rwxr-xr-xsrc/ci/docker/cross2/build-solaris-toolchain.sh28
1 files changed, 14 insertions, 14 deletions
diff --git a/src/ci/docker/cross2/build-solaris-toolchain.sh b/src/ci/docker/cross2/build-solaris-toolchain.sh
index 935cbe5d61b..29d1d4414f2 100755
--- a/src/ci/docker/cross2/build-solaris-toolchain.sh
+++ b/src/ci/docker/cross2/build-solaris-toolchain.sh
@@ -38,37 +38,38 @@ cd solaris
 
 dpkg --add-architecture $APT_ARCH
 apt-get update
-apt-get download           \
-  libc:$APT_ARCH           \
+apt-get download $(apt-cache depends --recurse --no-replaces \
   libc-dev:$APT_ARCH       \
-  libm:$APT_ARCH           \
   libm-dev:$APT_ARCH       \
-  libpthread:$APT_ARCH     \
   libpthread-dev:$APT_ARCH \
-  libresolv:$APT_ARCH      \
   libresolv-dev:$APT_ARCH  \
-  librt:$APT_ARCH          \
   librt-dev:$APT_ARCH      \
-  libsocket:$APT_ARCH      \
   libsocket-dev:$APT_ARCH  \
   system-crt:$APT_ARCH     \
-  system-header:$APT_ARCH
+  system-header:$APT_ARCH  \
+  | grep "^\w")
 
 for deb in *$APT_ARCH.deb; do
   dpkg -x $deb .
 done
 
-# Strip Solaris 11 functions that are optionally used by libbacktrace.
+# Remove Solaris 11 functions that are optionally used by libbacktrace.
 # This is for Solaris 10 compatibility.
-$ARCH-sun-solaris2.10-strip -N dl_iterate_phdr -N strnlen lib/$LIB_ARCH/libc.so
+rm usr/include/link.h
+patch -p0  << 'EOF'
+--- usr/include/string.h	2017-10-09 03:15:04.000000000 +0200
++++ usr/include/string10.h	2017-10-16 11:27:26.498764422 +0200
+@@ -93 +92,0 @@
+-extern size_t strnlen(const char *, size_t);
+EOF
 
 mkdir                  /usr/local/$ARCH-sun-solaris2.10/usr
 mv usr/include         /usr/local/$ARCH-sun-solaris2.10/usr/include
 mv usr/lib/$LIB_ARCH/* /usr/local/$ARCH-sun-solaris2.10/lib
 mv     lib/$LIB_ARCH/* /usr/local/$ARCH-sun-solaris2.10/lib
 
-ln -s /usr/local/$ARCH-sun-solaris2.10/usr/include /usr/local/$ARCH-sun-solaris2.10/sys-include
-ln -s /usr/local/$ARCH-sun-solaris2.10/usr/include /usr/local/$ARCH-sun-solaris2.10/include
+ln -s usr/include /usr/local/$ARCH-sun-solaris2.10/sys-include
+ln -s usr/include /usr/local/$ARCH-sun-solaris2.10/include
 
 cd ..
 rm -rf solaris
@@ -97,8 +98,7 @@ hide_output ../gcc-$GCC/configure \
   --disable-libada                \
   --disable-libsanitizer          \
   --disable-libquadmath-support   \
-  --disable-lto                   \
-  --with-sysroot=/usr/local/$ARCH-sun-solaris2.10
+  --disable-lto
 
 hide_output make -j10
 hide_output make install