]>
git.proxmox.com Git - rustc.git/blob - src/ci/docker/dist-i686-freebsd/build-toolchain.sh
2 # Copyright 2016 The Rust Project Developers. See the COPYRIGHT
3 # file at the top-level directory of this distribution and at
4 # http://rust-lang.org/COPYRIGHT.
6 # Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
7 # http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
8 # <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
9 # option. This file may not be copied, modified, or distributed
10 # except according to those terms.
21 echo ERROR: An error was encountered with the build.
26 bash
-c "while true; do sleep 30; echo \$(date) - building ...; done" &
37 # First up, build binutils
38 curl https
://ftp.gnu.org
/gnu
/binutils
/binutils-
$BINUTILS.
tar.bz2 |
tar xjf
-
41 hide_output ..
/binutils-
$BINUTILS/configure \
42 --target=$ARCH-unknown-freebsd10
44 hide_output
make install
48 # Next, download the FreeBSD libc and relevant header files
53 URL
=ftp://ftp.freebsd.org
/pub
/FreeBSD
/releases
/amd64
/10.2-RELEASE/base.txz
56 URL
=ftp://ftp.freebsd.org
/pub
/FreeBSD
/releases
/i386
/10.2-RELEASE/base.txz
59 curl
$URL |
tar xJf
- -C freebsd .
/usr
/include .
/usr
/lib .
/lib
61 dst
=/usr
/local
/$ARCH-unknown-freebsd10
63 cp -r freebsd
/usr
/include
$dst/
64 cp freebsd
/usr
/lib
/crt1.o
$dst/lib
65 cp freebsd
/usr
/lib
/Scrt1.o
$dst/lib
66 cp freebsd
/usr
/lib
/crti.o
$dst/lib
67 cp freebsd
/usr
/lib
/crtn.o
$dst/lib
68 cp freebsd
/usr
/lib
/libc.a
$dst/lib
69 cp freebsd
/usr
/lib
/libutil.a
$dst/lib
70 cp freebsd
/usr
/lib
/libutil_p.a
$dst/lib
71 cp freebsd
/usr
/lib
/libm.a
$dst/lib
72 cp freebsd
/usr
/lib
/librt.so
.1 $dst/lib
73 cp freebsd
/usr
/lib
/libexecinfo.so
.1 $dst/lib
74 cp freebsd
/lib
/libc.so
.7 $dst/lib
75 cp freebsd
/lib
/libm.so
.5 $dst/lib
76 cp freebsd
/lib
/libutil.so
.9 $dst/lib
77 cp freebsd
/lib
/libthr.so
.3 $dst/lib
/libpthread.so
79 ln -s libc.so
.7 $dst/lib
/libc.so
80 ln -s libm.so
.5 $dst/lib
/libm.so
81 ln -s librt.so
.1 $dst/lib
/librt.so
82 ln -s libutil.so
.9 $dst/lib
/libutil.so
83 ln -s libexecinfo.so
.1 $dst/lib
/libexecinfo.so
86 # Finally, download and build gcc to target FreeBSD
89 curl https
://ftp.gnu.org
/gnu
/gcc
/gcc-
$GCC/gcc-
$GCC.
tar.gz |
tar xzf
-
91 .
/contrib
/download_prerequisites
95 hide_output ..
/gcc-
$GCC/configure \
96 --enable-languages=c
,c
++ \
97 --target=$ARCH-unknown-freebsd10 \
101 --disable-libquadmath \
104 --disable-libcilkrts \
106 --disable-libsanitizer \
107 --disable-libquadmath-support \
109 hide_output
make -j10
110 hide_output
make install