Update danio_gcc.sh

This commit is contained in:
Daniel
2019-12-13 21:07:16 +01:00
committed by GitHub
parent a9f9402d71
commit 797237008f
+27 -27
View File
@@ -64,46 +64,46 @@ runit()
build()
{
if [ "${buildnewlib}" -eq "0" ]; then
make -C linux-dl ARCH="`echo ${TARGET} | cut -f 1 -d '-' | sed -e s/i.86/x86/ -e s/x86_64/x86/ -e s/sun4u/sparc64/ -e s/arm.*/arm/ -e s/sa110/arm/ -e s/s390x/s390/ -e s/parisc64/parisc/ -e s/ppc.*/powerpc/ -e s/mips.*/mips/ -e s/sh[234].*/sh/ -e s/aarch64.*/arm64/ -e s/riscv.*/riscv/`" INSTALL_HDR_PATH="${PREFIX}/${TARGET}" headers_install | tee logs/${TARGET}-linux-headers.log || return ${?}
make -C linux-dl ARCH="`echo ${TARGET} | cut -f 1 -d '-' | sed -e s/i.86/x86/ -e s/x86_64/x86/ -e s/sun4u/sparc64/ -e s/arm.*/arm/ -e s/sa110/arm/ -e s/s390x/s390/ -e s/parisc64/parisc/ -e s/ppc.*/powerpc/ -e s/mips.*/mips/ -e s/sh[234].*/sh/ -e s/aarch64.*/arm64/ -e s/riscv.*/riscv/`" INSTALL_HDR_PATH="${PREFIX}/${TARGET}" headers_install | tee -i logs/${TARGET}-linux-headers.log || return ${?}
find ${PREFIX}/${TARGET} -name "..install.cmd" | xargs rm -rf || return ${?}
find ${PREFIX}/${TARGET} -name ".install" | xargs rm -rf || return ${?}
fi
mkdir -pv build-binutils || return ${?}
(cd build-binutils; ../binutils-gdb-dl/configure --target="${TARGET}" --prefix="${PREFIX}" --disable-nls --enable-obsolete --disable-debug ${ARGS}) | tee logs/${TARGET}-configure-binutils.log || return ${?}
make -C build-binutils -j${nproc} | tee logs/${TARGET}-build-binutils.log || return ${?}
make -C build-binutils -j${nproc} install | tee logs/${TARGET}-install-binutils.log || return ${?}
(cd build-binutils; ../binutils-gdb-dl/configure --target="${TARGET}" --prefix="${PREFIX}" --disable-nls --enable-obsolete --disable-debug ${ARGS}) | tee -i logs/${TARGET}-configure-binutils.log || return ${?}
make -C build-binutils -j${nproc} | tee -i logs/${TARGET}-build-binutils.log || return ${?}
make -C build-binutils -j${nproc} install | tee -i logs/${TARGET}-install-binutils.log || return ${?}
if [ ! -e gcc-dl/.dl_ok ]; then
(cd gcc-dl; contrib/download_prerequisites) | tee logs/${TARGET}-gcc-dl-prerequisites.log || return ${?}
(cd gcc-dl; contrib/download_prerequisites) | tee -i logs/${TARGET}-gcc-dl-prerequisites.log || return ${?}
touch gcc-dl/.dl_ok || return ${?}
fi
mkdir -pv build-gcc || return ${?}
(cd build-gcc; ../gcc-dl/configure --target="${TARGET}" --prefix="${PREFIX}" --enable-languages="c,c++" --with-pkgversion="*DANiO* GCC (`echo ${TARGET} | cut -f 1 -d '-'`)" ${ARGS} ${EXTRA_ARGS}) | tee logs/${TARGET}-configure-gcc.log || return ${?}
make -C build-gcc -j${nproc} all-gcc | tee logs/${TARGET}-gcc-all-gcc.log || return ${?}
make -C build-gcc -j${nproc} install-gcc | tee logs/${TARGET}-gcc-install-gcc.log || return ${?}
(cd build-gcc; ../gcc-dl/configure --target="${TARGET}" --prefix="${PREFIX}" --enable-languages="c,c++" --with-pkgversion="*DANiO* GCC (`echo ${TARGET} | cut -f 1 -d '-'`)" ${ARGS} ${EXTRA_ARGS}) | tee -i logs/${TARGET}-configure-gcc.log || return ${?}
make -C build-gcc -j${nproc} all-gcc | tee -i logs/${TARGET}-gcc-all-gcc.log || return ${?}
make -C build-gcc -j${nproc} install-gcc | tee -i logs/${TARGET}-gcc-install-gcc.log || return ${?}
if [ "${buildnewlib}" -ne "0" ]; then
mkdir -pv build-newlib || return ${?}
(cd build-newlib; ../newlib-dl/configure --prefix="${PREFIX}" --target="${TARGET}" ${ARGS}) | tee logs/${TARGET}-configure-newlib.log || return ${?}
make -C build-newlib -j${nproc} | tee logs/${TARGET}-build-newlib.log || return ${?}
make -C build-newlib -j${nproc} install | tee logs/${TARGET}-install-newlib.log || return ${?}
(cd build-newlib; ../newlib-dl/configure --prefix="${PREFIX}" --target="${TARGET}" ${ARGS}) | tee -i logs/${TARGET}-configure-newlib.log || return ${?}
make -C build-newlib -j${nproc} | tee -i logs/${TARGET}-build-newlib.log || return ${?}
make -C build-newlib -j${nproc} install | tee -i logs/${TARGET}-install-newlib.log || return ${?}
#(cd gcc-dl; ln -svf ../newlib-dl/newlib newlib; ln -svf ../newlib-dl/libgloss libgloss) || return ${?}
make -C build-gcc -j${nproc} all-target-libgcc | tee logs/${TARGET}-gcc-all-target-libgcc.log || return ${?}
make -C build-gcc -j${nproc} install-target-libgcc | tee logs/${TARGET}-gcc-install-target-libgcc.log || return ${?}
make -C build-gcc -j${nproc} all-target-libgcc | tee -i logs/${TARGET}-gcc-all-target-libgcc.log || return ${?}
make -C build-gcc -j${nproc} install-target-libgcc | tee -i logs/${TARGET}-gcc-install-target-libgcc.log || return ${?}
else
mkdir -pv build-glibc || return ${?}
env CC="${TARGET}-gcc" CXX="${TARGET}-g++" sh -c '(cd build-glibc; ../glibc-dl/configure --prefix="${PREFIX}/${TARGET}" --host="${TARGET}" --with-headers="${PREFIX}/${TARGET}/include" --with-pkgversion="*DANiO* GLIBC (`echo ${TARGET} | cut -f 1 -d '-'`)" --enable-add-ons ${ARGS})' | tee logs/${TARGET}-configure-glibc.log || return ${?}
make -C build-glibc -j${nproc} install-bootstrap-headers=yes install-headers | tee logs/${TARGET}-bootstrap-headers-glibc.log || return ${?}
make -C build-glibc -j${nproc} csu/subdir_lib | tee logs/${TARGET}-build-glibc-csu.log || return ${?}
env CC="${TARGET}-gcc" CXX="${TARGET}-g++" sh -c '(cd build-glibc; ../glibc-dl/configure --prefix="${PREFIX}/${TARGET}" --host="${TARGET}" --with-headers="${PREFIX}/${TARGET}/include" --with-pkgversion="*DANiO* GLIBC (`echo ${TARGET} | cut -f 1 -d '-'`)" --enable-add-ons ${ARGS})' | tee -i logs/${TARGET}-configure-glibc.log || return ${?}
make -C build-glibc -j${nproc} install-bootstrap-headers=yes install-headers | tee -i logs/${TARGET}-bootstrap-headers-glibc.log || return ${?}
make -C build-glibc -j${nproc} csu/subdir_lib | tee -i logs/${TARGET}-build-glibc-csu.log || return ${?}
mkdir -pv ${PREFIX}/${TARGET}/lib || return ${?}
cp -ravf build-glibc/csu/crt1.o build-glibc/csu/crti.o build-glibc/csu/crtn.o ${PREFIX}/${TARGET}/lib | tee logs/${TARGET}-install-csu.log || return ${?}
cp -ravf build-glibc/csu/crt1.o build-glibc/csu/crti.o build-glibc/csu/crtn.o ${PREFIX}/${TARGET}/lib | tee -i logs/${TARGET}-install-csu.log || return ${?}
#${TARGET}-gcc -nostdlib -nostartfiles -shared -x c /dev/null -o ${PREFIX}/${TARGET}/lib/libc.so || return ${?}
touch ${PREFIX}/${TARGET}/include/gnu/stubs.h || return ${?}
make -C build-gcc -j${nproc} all-target-libgcc | tee logs/${TARGET}-gcc-all-target-libgcc.log || return ${?}
make -C build-gcc -j${nproc} install-target-libgcc | tee logs/${TARGET}-gcc-install-target-libgcc.log || return ${?}
make -C build-glibc -j${nproc} | tee logs/${TARGET}-build-glibc.log || return ${?}
make -C build-glibc -j${nproc} install | tee logs/${TARGET}-install-glibc.log || return ${?}
make -C build-gcc -j${nproc} all-target-libgcc | tee -i logs/${TARGET}-gcc-all-target-libgcc.log || return ${?}
make -C build-gcc -j${nproc} install-target-libgcc | tee -i logs/${TARGET}-gcc-install-target-libgcc.log || return ${?}
make -C build-glibc -j${nproc} | tee -i logs/${TARGET}-build-glibc.log || return ${?}
make -C build-glibc -j${nproc} install | tee -i logs/${TARGET}-install-glibc.log || return ${?}
fi
make -C build-gcc -j${nproc} all-target-libstdc++-v3 | tee logs/${TARGET}-gcc-all-target-libstdc++-v3.log || return ${?}
make -C build-gcc -j${nproc} install-target-libstdc++-v3 | tee logs/${TARGET}-gcc-install-target-libstdc++-v3.log || return ${?}
make -C build-gcc -j${nproc} all-target-libstdc++-v3 | tee -i logs/${TARGET}-gcc-all-target-libstdc++-v3.log || return ${?}
make -C build-gcc -j${nproc} install-target-libstdc++-v3 | tee -i logs/${TARGET}-gcc-install-target-libstdc++-v3.log || return ${?}
}
strip_n_pack()
{
@@ -114,15 +114,15 @@ runit()
find ${PREFIX}/${TARGET} -type f | xargs file | grep "ELF" | cut -f 1 -d ":" | xargs ${TARGET}-strip -S --strip-unneeded #for sysroot
if [ "${buildnewlib}" -ne "0" ]; then
if [ "${1}" = "64" ]; then
(cd rel-bin; tar -cJvf "${OUT}/${TARGET}-GCC_${gcc_version_}-newlib-`date +"%d-%m-%Y"`-`uname -s`_x86-64.txz" ${TARGET}) | tee logs/${TARGET}-package.log || return ${?}
(cd rel-bin; tar -cJvf "${OUT}/${TARGET}-GCC_${gcc_version_}-newlib-`date +"%d-%m-%Y"`-`uname -s`_x86-64.txz" ${TARGET}) | tee -i logs/${TARGET}-package.log || return ${?}
else
(cd rel-bin; tar -cJvf "${OUT}/${TARGET}-GCC_${gcc_version_}-newlib-`date +"%d-%m-%Y"`-`uname -s`_x86-32.txz" ${TARGET}) | tee logs/${TARGET}-package.log || return ${?}
(cd rel-bin; tar -cJvf "${OUT}/${TARGET}-GCC_${gcc_version_}-newlib-`date +"%d-%m-%Y"`-`uname -s`_x86-32.txz" ${TARGET}) | tee -i logs/${TARGET}-package.log || return ${?}
fi
else
if [ "${1}" = "64" ]; then
(cd rel-bin; tar -cJvf "${OUT}/${TARGET}-GCC_${gcc_version_}-glibc-`date +"%d-%m-%Y"`-`uname -s`_x86-64.txz" ${TARGET}) | tee logs/${TARGET}-package.log || return ${?}
(cd rel-bin; tar -cJvf "${OUT}/${TARGET}-GCC_${gcc_version_}-glibc-`date +"%d-%m-%Y"`-`uname -s`_x86-64.txz" ${TARGET}) | tee -i logs/${TARGET}-package.log || return ${?}
else
(cd rel-bin; tar -cJvf "${OUT}/${TARGET}-GCC_${gcc_version_}-glibc-`date +"%d-%m-%Y"`-`uname -s`_x86-32.txz" ${TARGET}) | tee logs/${TARGET}-package.log || return ${?}
(cd rel-bin; tar -cJvf "${OUT}/${TARGET}-GCC_${gcc_version_}-glibc-`date +"%d-%m-%Y"`-`uname -s`_x86-32.txz" ${TARGET}) | tee -i logs/${TARGET}-package.log || return ${?}
fi
fi
}