Lines Matching +full:python3 +full:- +full:github
2 # ===----------------------------------------------------------------------===##
6 # SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
8 # ===----------------------------------------------------------------------===##
11 # This script builds picolibc (https://github.com/picolibc/picolibc) from
15 set -e
26 [-h|--help] Display this help and exit.
28 --build-dir <DIR> Path to the directory to use for building.
30 --install-dir <DIR> Path to the directory to install the library to.
34 while [[ $# -gt 0 ]]; do
36 -h|--help)
40 --build-dir)
44 --install-dir)
48 --target)
59 if [ -z ${!arg+x} ]; then
60 error "Missing required argument '--${arg//_/-}'"
62 error "Argument to --${arg//_/-} must not be empty"
67 echo "--- Downloading picolibc"
68 picolibc_source_dir="${build_dir}/picolibc-source"
69 picolibc_build_dir="${build_dir}/picolibc-build"
70 mkdir -p "${picolibc_source_dir}"
71 mkdir -p "${picolibc_build_dir}"
74 curl -L "https://github.com/picolibc/picolibc/archive/${picolibc_commit}.zip" --output "${picolibc_source_dir}/picolibc.zip"
75 unzip -q "${picolibc_source_dir}/picolibc.zip" -d "${picolibc_source_dir}"
76 mv "${picolibc_source_dir}/picolibc-${picolibc_commit}"/* "${picolibc_source_dir}"
77 rm -rf "${picolibc_source_dir}/picolibc-${picolibc_commit}"
79 cat <<EOF > "${picolibc_build_dir}/meson-cross-build.txt"
81 c = ['${CC:-cc}', '--target=${target}', '-mfloat-abi=soft', '-nostdlib']
82 ar = 'llvm-ar'
83 as = 'llvm-as'
85 strip = 'llvm-strip'
95 venv_dir="${build_dir}/meson-venv"
96 python3 -m venv "${venv_dir}"
101 -Dincludedir=include -Dlibdir=lib -Dspecsdir=none -Dmultilib=false -Dpicoexit=false \
102 --prefix "${install_dir}" \
103 --cross-file "${picolibc_build_dir}/meson-cross-build.txt" \
107 "${venv_dir}/bin/meson" install -C "${picolibc_build_dir}"