#!/bin/env beesh

# BEE_VERSION gcc-7.5.0-0

# Note: The test suite runs address sanitizer tests. In the current mariux64 environment
# this requires
#
#     sudo sysctl vm.overcommit_memory=0

SRCURL[0]="https://ftp.gnu.org/gnu/gcc/gcc-${PKGVERSION}/gcc-${PKGVERSION}.tar.xz"

LIBEXECDIR=/usr/lib
LIBDIR=/usr/lib

mee_patch_post() {

    # ignore libiberty.. used from binutils..
    sed -i 's/install_to_$(INSTALL_DEST) //' libiberty/Makefile.in

    # don't fix includes..
    sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in
}

mee_configure() {
    bee_configure \
       --enable-shared \
       --enable-threads=posix \
       --enable-__cxa_atexit \
       --enable-clocale=gnu \
       --enable-languages=c,fortran,c++,objc,obj-c++ \
       --disable-multilib \
       --with-system-zlib \
       --with-diagnostics-color=auto-if-env
}

mee_check() {
    make -k check 2>&1 | tee check.log
}

mee_install_post() {

    mkdir -vp ${D}/lib

    ln -sv ${BINDIR}/cpp ${D}/lib

    ln -sv gcc ${D}${BINDIR}/cc

    install -v -dm755 ${D}${LIBDIR}/bfd-plugins
    ln -sfv ../gcc/$(gcc -dumpmachine)/${PKGVERSION}/liblto_plugin.so ${D}${LIBDIR}/bfd-plugins/

    mv -v ${D}${LIBDIR}64/* ${D}${LIBDIR}
    rmdir -v  ${D}${LIBDIR}64

    mkdir -p ${D}${DATADIR}/gdb/auto-load/${LIBDIR}
    mv -v ${D}${LIBDIR}/*-gdb.py ${D}${DATADIR}/gdb/auto-load/${LIBDIR}

    echo "${S}/contrib/test_summary | grep -A7 Sum"
    echo "grep FAIL ${B}/check.log"
}