Commit 424faa3c authored by Vladimir Bashkirtsev's avatar Vladimir Bashkirtsev

Updated rustc to 1.89.0

parent 13c9edf1
...@@ -4,16 +4,16 @@ all: config-toml ...@@ -4,16 +4,16 @@ all: config-toml
mkswap swap mkswap swap
swapon swap swapon swap
tar xf rustc-1.64.0-src.tar.xz tar xf rustc-1.89.0-src.tar.xz
mkdir rustc-home mkdir rustc-home
# mkdir rustc-1.64.0-src/build # mkdir rustc-1.89.0-src/build
# cd rustc-1.64.0-src/build && cmake "/build/packages/rustc/rustc-1.64.0-src/src/llvm-project/llvm" "-G" "Ninja" "-DLLVM_ENABLE_ASSERTIONS=OFF" "-DLLVM_ENABLE_PLUGINS=OFF" "-DLLVM_TARGETS_TO_BUILD=X86;WebAssembly" "-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=AVR;M68k" "-DLLVM_INCLUDE_EXAMPLES=OFF" "-DLLVM_INCLUDE_DOCS=OFF" "-DLLVM_INCLUDE_BENCHMARKS=OFF" "-DLLVM_INCLUDE_TESTS=OFF" "-DLLVM_ENABLE_TERMINFO=OFF" "-DLLVM_ENABLE_LIBEDIT=OFF" "-DLLVM_ENABLE_BINDINGS=OFF" "-DLLVM_ENABLE_Z3_SOLVER=OFF" "-DLLVM_PARALLEL_COMPILE_JOBS=1" "-DLLVM_TARGET_ARCH=x86_64" "-DLLVM_DEFAULT_TARGET_TRIPLE=x86_64-unknown-linux-gnu" "-DLLVM_INSTALL_UTILS=ON" "-DLLVM_ENABLE_ZLIB=ON" "-DLLVM_LINK_LLVM_DYLIB=ON" "-DLLVM_ENABLE_LIBXML2=OFF" "-DLLVM_VERSION_SUFFIX=-rust-1.64.0-stable" "-DCMAKE_INSTALL_MESSAGE=LAZY" "-DCMAKE_C_COMPILER=cc" "-DCMAKE_CXX_COMPILER=c++" "-DCMAKE_ASM_COMPILER=cc" "-DCMAKE_C_FLAGS=-ffunction-sections -fdata-sections -fPIC -m64" "-DCMAKE_CXX_FLAGS=-ffunction-sections -fdata-sections -fPIC -m64" "-DCMAKE_SHARED_LINKER_FLAGS=" "-DCMAKE_MODULE_LINKER_FLAGS=" "-DCMAKE_EXE_LINKER_FLAGS=" "-DCMAKE_INSTALL_PREFIX=/build/packages/rustc/rustc-1.64.0-src/build/x86_64-unknown-linux-gnu/llvm" "-DCMAKE_ASM_FLAGS= -ffunction-sections -fdata-sections -fPIC -m64" "-DCMAKE_BUILD_TYPE=Release" # cd rustc-1.89.0-src/build && cmake "/build/packages/rustc/rustc-1.89.0-src/src/llvm-project/llvm" "-G" "Ninja" "-DLLVM_ENABLE_ASSERTIONS=OFF" "-DLLVM_ENABLE_PLUGINS=OFF" "-DLLVM_TARGETS_TO_BUILD=X86;WebAssembly" "-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=AVR;M68k" "-DLLVM_INCLUDE_EXAMPLES=OFF" "-DLLVM_INCLUDE_DOCS=OFF" "-DLLVM_INCLUDE_BENCHMARKS=OFF" "-DLLVM_INCLUDE_TESTS=OFF" "-DLLVM_ENABLE_TERMINFO=OFF" "-DLLVM_ENABLE_LIBEDIT=OFF" "-DLLVM_ENABLE_BINDINGS=OFF" "-DLLVM_ENABLE_Z3_SOLVER=OFF" "-DLLVM_PARALLEL_COMPILE_JOBS=1" "-DLLVM_TARGET_ARCH=x86_64" "-DLLVM_DEFAULT_TARGET_TRIPLE=x86_64-unknown-linux-gnu" "-DLLVM_INSTALL_UTILS=ON" "-DLLVM_ENABLE_ZLIB=ON" "-DLLVM_LINK_LLVM_DYLIB=ON" "-DLLVM_ENABLE_LIBXML2=OFF" "-DLLVM_VERSION_SUFFIX=-rust-1.89.0-stable" "-DCMAKE_INSTALL_MESSAGE=LAZY" "-DCMAKE_C_COMPILER=cc" "-DCMAKE_CXX_COMPILER=c++" "-DCMAKE_ASM_COMPILER=cc" "-DCMAKE_C_FLAGS=-ffunction-sections -fdata-sections -fPIC -m64" "-DCMAKE_CXX_FLAGS=-ffunction-sections -fdata-sections -fPIC -m64" "-DCMAKE_SHARED_LINKER_FLAGS=" "-DCMAKE_MODULE_LINKER_FLAGS=" "-DCMAKE_EXE_LINKER_FLAGS=" "-DCMAKE_INSTALL_PREFIX=/build/packages/rustc/rustc-1.89.0-src/build/x86_64-unknown-linux-gnu/llvm" "-DCMAKE_ASM_FLAGS= -ffunction-sections -fdata-sections -fPIC -m64" "-DCMAKE_BUILD_TYPE=Release"
# cd rustc-1.64.0-src/build && ninja # cd rustc-1.89.0-src/build && ninja
# cd rustc-1.64.0-src/build && ninja install # cd rustc-1.89.0-src/build && ninja install
# exit 1 # exit 1
cd rustc-1.64.0-src ; \ cd rustc-1.89.0-src ; \
if [ `uname -m` = "armv7l" ]; then \ if [ `uname -m` = "armv7l" ]; then \
echo "$$CONFIG_TOML" | sed "s/TARGET/ARM/" > config.toml ; \ echo "$$CONFIG_TOML" | sed "s/TARGET/ARM/" > config.toml ; \
TARGET="armv7-unknown-linux-gnueabihf" ; \ TARGET="armv7-unknown-linux-gnueabihf" ; \
...@@ -34,16 +34,68 @@ all: config-toml ...@@ -34,16 +34,68 @@ all: config-toml
fi fi
rm -rf rustc-home rm -rf rustc-home
rm -rf rustc-1.64.0-src rm -rf rustc-1.89.0-src
swapoff swap swapoff swap
rm -rf swap rm -rf swap
temporary:
dd if=/dev/zero of=swap bs=1048576 count=3072
chmod 600 swap
mkswap swap
swapon swap
tar xf rustc-1.89.0-src.tar.xz
mkdir rustc-home
mount -t tmpfs -o size=2G tmpfs rustc-home
if [ `uname -m` = "armv7l" ]; then \
echo "$$CONFIG_TOML" | sed "s/\/usr/\/build\/usr/" | sed "s/TARGET/ARM/" > rustc-1.89.0-src/config.toml ; \
elif [ `uname -m` = "aarch64" ]; then \
echo "$$CONFIG_TOML" | sed "s/\/usr/\/build\/usr/" | sed "s/TARGET/AArch64/" > rustc-1.89.0-src/config.toml ; \
else \
echo "$$CONFIG_TOML" | sed "s/\/usr/\/build\/usr/" | sed "s/TARGET/X86/" > rustc-1.89.0-src/config.toml ; \
ln -s /lib /lib64 ; \
fi
cd rustc-1.89.0-src && HOME=$(CURDIR)/rustc-home python3 ./x.py build
-cd rustc-1.89.0-src && HOME=$(CURDIR)/rustc-home python3 ./x.py test --verbose --no-fail-fast
cd rustc-1.89.0-src && HOME=$(CURDIR)/rustc-home python3 ./x.py install
if [ `uname -m` = "armv7l" ]; then \
cp -r rustc-1.89.0-src/build/x86_64-unknown-linux-gnu/llvm/bin/* /build/usr/bin ; \
cp -r rustc-1.89.0-src/build/x86_64-unknown-linux-gnu/llvm/lib/* /build/usr/lib ; \
elif [ `uname -m` = "aarch64" ]; then \
cp -r rustc-1.89.0-src/build/aarch64-unknown-linux-gnu/llvm/bin/* /build/usr/bin ; \
cp -r rustc-1.89.0-src/build/aarch64-unknown-linux-gnu/llvm/lib/* /build/usr/lib ; \
else \
cp -r rustc-1.89.0-src/build/x86_64-unknown-linux-gnu/llvm/bin/* /build/usr/bin ; \
cp -r rustc-1.89.0-src/build/x86_64-unknown-linux-gnu/llvm/lib/* /build/usr/lib ; \
rm -rf /lib64 ; \
fi
echo "/build/usr/lib" >> /etc/ld.so.conf
ldconfig
clean:
umount rustc-home
rm -rf rustc-home
rm -rf rustc-1.89.0-src
swapoff swap
rm -rf swap
rm -rf /build/usr
rm -f /etc/bash_completion.d/cargo
rm -f /etc/bash_completion.d/cargo.old
sed '/^\/build\/usr\/lib/d' -i /etc/ld.so.conf
ldconfig
config-toml: config-toml:
define CONFIG_TOML define CONFIG_TOML
[llvm] [llvm]
skip-rebuild=true
targets = "TARGET;WebAssembly" targets = "TARGET;WebAssembly"
download-ci-llvm = false
# When using system llvm prefer shared libraries # When using system llvm prefer shared libraries
link-shared = true link-shared = true
...@@ -57,7 +109,7 @@ extended = true ...@@ -57,7 +109,7 @@ extended = true
[install] [install]
prefix = "/usr" prefix = "/usr"
docdir = "share/doc/rustc-1.64.0" docdir = "share/doc/rustc-1.89.0"
[rust] [rust]
channel = "stable" channel = "stable"
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment