%define centos_base_release 1 %define GCC_VER 8.3.0 %define TARGET x86_64-linux-musl %define INSTALL_DIR /opt/occlum/toolchains/gcc # to skip no build id error %undefine _missing_build_ids_terminate_build Name: occlum-toolchains-gcc Version: %{_musl_version} Release: %{centos_base_release}%{?dist} Summary: occlum toolchains gcc Group: Development/Libraries License: BSD License URL: https://github.com/occlum/occlum Source0: https://github.com/occlum/occlum/archive/%{_musl_version}.tar.gz Source1: https://github.com/occlum/musl-cross-make/archive/0.9.9.hotfix.tar.gz Source2: https://ftp.gnu.org/pub/gnu/gcc/gcc-%{GCC_VER}/gcc-%{GCC_VER}.tar.xz Source3: config.sub Source4: https://ftp.gnu.org/pub/gnu/binutils/binutils-2.33.1.tar.xz Source5: https://ftp.gnu.org/pub/gnu/gmp/gmp-6.1.2.tar.bz2 Source6: https://ftp.gnu.org/pub/gnu/mpc/mpc-1.1.0.tar.gz Source7: https://ftp.gnu.org/pub/gnu/mpfr/mpfr-4.0.2.tar.bz2 Source8: https://ftp.barfooze.de/pub/sabotage/tarballs/linux-headers-4.19.88.tar.xz # Get Source9 from download script Source9: musl-%{_musl_version}.tar.gz Source10: occlum-gcc.sh Patch0: musl-cross-make-disable-download.patch ExclusiveArch: x86_64 BuildRequires: git %description Occlum toolchains gcc %prep %setup -q -c -n %{name}-%{version} %setup -q -T -D -a 1 # This patch replaces syscall instruction with libc's syscall wrapper cp occlum-%{version}/tools/toolchains/gcc/0014-libgomp-*.diff musl-cross-make-0.9.9.hotfix/patches/gcc-%{GCC_VER}/ pushd musl-cross-make-0.9.9.hotfix mkdir -p sources/gcc-%{GCC_VER}.tar.xz.tmp && cp %{SOURCE2} sources/gcc-%{GCC_VER}.tar.xz.tmp mkdir -p sources/config.sub.tmp && cp %{SOURCE3} sources/config.sub.tmp mkdir -p sources/binutils-2.33.1.tar.xz.tmp && cp %{SOURCE4} sources/binutils-2.33.1.tar.xz.tmp mkdir -p sources/gmp-6.1.2.tar.bz2.tmp && cp %{SOURCE5} sources/gmp-6.1.2.tar.bz2.tmp mkdir -p sources/mpc-1.1.0.tar.gz.tmp && cp %{SOURCE6} sources/mpc-1.1.0.tar.gz.tmp mkdir -p sources/mpfr-4.0.2.tar.bz2.tmp && cp %{SOURCE7} sources/mpfr-4.0.2.tar.bz2.tmp mkdir -p sources/linux-headers-4.19.88.tar.xz.tmp && cp %{SOURCE8} sources/linux-headers-4.19.88.tar.xz.tmp tar xf %{SOURCE9} %patch0 -p1 popd %build cd musl-cross-make-0.9.9.hotfix cat > config.mak < %{buildroot}%{INSTALL_DIR}/bin/occlum-gcc < %{buildroot}%{INSTALL_DIR}/bin/occlum-g++ < %{buildroot}%{INSTALL_DIR}/bin/occlum-ld < - 0.14.0-1 - Integrate with Occlum * Mon Jul 20 2020 Chunmei Xu - 0.14.0-0 - Package init