43 lines
933 B
Bash
43 lines
933 B
Bash
|
#!/bin/bash
|
||
|
|
||
|
function status_update {
|
||
|
echo "### $1 ###"
|
||
|
}
|
||
|
|
||
|
base_dir="$(dirname "$(readlink -f "$0")")"
|
||
|
cd "$base_dir"
|
||
|
|
||
|
# First, clone Francesco's eh_frame_check
|
||
|
status_update "Cloning eh_frame_check"
|
||
|
git clone https://github.com/francesco-zappa-nardelli/eh_frame_check/
|
||
|
|
||
|
# Then, clone glibc
|
||
|
status_update "Cloning glibc"
|
||
|
git clone git://sourceware.org/git/glibc.git glibc
|
||
|
|
||
|
# Install a virtualenv with required pip packages
|
||
|
status_update "Installing python virtualenv"
|
||
|
virtualenv -p python3 venv
|
||
|
source venv/bin/activate
|
||
|
pip install -r requirements.txt
|
||
|
|
||
|
# Compiling glibc
|
||
|
status_update "Compiling base glibc"
|
||
|
(
|
||
|
mkdir -p glibc/build/install
|
||
|
cd glibc/build
|
||
|
../configure --prefix=install
|
||
|
make
|
||
|
)
|
||
|
|
||
|
# Compiling testsuite
|
||
|
status_update "Compiling glibc testsuite"
|
||
|
status_update "Feel free to go and drink some coffee now. This will take some time."
|
||
|
(
|
||
|
cd glibc/build
|
||
|
make check
|
||
|
)
|
||
|
|
||
|
# Done!
|
||
|
status_update "All set!"
|