]> git.ipfire.org Git - people/pmueller/ipfire-2.x.git/blobdiff - tools/make-functions
toolchain: Build without hardening
[people/pmueller/ipfire-2.x.git] / tools / make-functions
index d5f0a71262750a62a743314678c6159f9431b35a..cb455a94a3606ee72cebf41531806a55199b88a2 100644 (file)
@@ -108,8 +108,10 @@ configure_target() {
        # Old variable names
        MACHINE="${TARGET_ARCH}"
 
-       CFLAGS="-O2 -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fPIC"
-       CFLAGS="${CFLAGS} -fstack-protector-strong --param=ssp-buffer-size=4 ${CFLAGS_ARCH}"
+       # Enables hardening
+       HARDENING_CFLAGS="-Wp,-D_FORTIFY_SOURCE=2 -fstack-protector-strong --param=ssp-buffer-size=4"
+
+       CFLAGS="-O2 -pipe -Wall -fexceptions -fPIC ${CFLAGS_ARCH}"
        CXXFLAGS="${CFLAGS}"
 }
 
@@ -310,6 +312,16 @@ exiterror() {
                losetup -d /dev/loop${i} 2>/dev/null
            fi;
        done
+
+       if [ -n "${LOGFILE}" ]; then
+               echo # empty line
+
+               local line
+               while read -r line; do
+                       echo "    ${line}"
+               done <<< "$(tail -n30 ${LOGFILE})"
+       fi
+
        echo -e "\nERROR: $*"
        echo "       Check $LOGFILE for errors if applicable"
        exit 1
@@ -468,7 +480,8 @@ entershell() {
                PATH=/tools/ccache/bin:/bin:/usr/bin:/sbin:/usr/sbin:/tools/bin \
                VERSION=$VERSION CONFIG_ROOT=$CONFIG_ROOT \
                NAME="$NAME" SNAME="$SNAME" SLOGAN="$SLOGAN" \
-               CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" \
+               CFLAGS="${CFLAGS} ${HARDENING_CFLAGS}" \
+               CXXFLAGS="${CXXFLAGS} ${HARDENING_CFLAGS}" \
                CCACHE_DIR=/usr/src/ccache \
                CCACHE_COMPRESS="${CCACHE_COMPRESS}" \
                CCACHE_COMPILERCHECK="${CCACHE_COMPILERCHECK}" \
@@ -555,7 +568,9 @@ lfsmake1() {
 
        local PKG_TIME_START=`date +%s`
 
-       cd $BASEDIR/lfs && make -f $*   BUILDTARGET=$BUILDTARGET \
+       cd $BASEDIR/lfs && \
+               PATH="/tools/ccache/bin:/tools/bin:$PATH" \
+               make -f $* TOOLCHAIN=1 BUILDTARGET=$BUILDTARGET \
                                                CROSSTARGET="${CROSSTARGET}" \
                                                MACHINE=$MACHINE \
                                                MACHINE_TYPE=$MACHINE_TYPE \
@@ -592,7 +607,8 @@ lfsmake2() {
                                                SYSTEM_RELEASE="${SYSTEM_RELEASE}" \
                                                CONFIG_ROOT=$CONFIG_ROOT \
                                                NAME="$NAME" SNAME="$SNAME" SLOGAN="$SLOGAN" \
-                                               CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" \
+                                               CFLAGS="${CFLAGS} ${HARDENING_CFLAGS}" \
+                                               CXXFLAGS="${CXXFLAGS} ${HARDENING_CFLAGS}" \
                                                CCACHE_DIR=/usr/src/ccache \
                                                CCACHE_COMPRESS="${CCACHE_COMPRESS}" \
                                                CCACHE_COMPILERCHECK="${CCACHE_COMPILERCHECK}" \
@@ -634,7 +650,8 @@ ipfiremake() {
                                                CONFIG_ROOT=$CONFIG_ROOT \
                                                NAME="$NAME" SNAME="$SNAME" SLOGAN="$SLOGAN" \
                                                SYSTEM_RELEASE="$SYSTEM_RELEASE" \
-                                               CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" \
+                                               CFLAGS="${CFLAGS} ${HARDENING_CFLAGS}" \
+                                               CXXFLAGS="${CXXFLAGS} ${HARDENING_CFLAGS}" \
                                                CCACHE_DIR=/usr/src/ccache \
                                                CCACHE_COMPRESS="${CCACHE_COMPRESS}" \
                                                CCACHE_COMPILERCHECK="${CCACHE_COMPILERCHECK}" \
@@ -674,7 +691,8 @@ ipfiredist() {
                                        VERSION=$VERSION \
                                        CONFIG_ROOT=$CONFIG_ROOT \
                                        NAME="$NAME" SNAME="$SNAME" SLOGAN="$SLOGAN" \
-                                       CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" \
+                                       CFLAGS="${CFLAGS} ${HARDENING_CFLAGS}" \
+                                       CXXFLAGS="${CXXFLAGS} ${HARDENING_CFLAGS}" \
                                        CCACHE_DIR=/usr/src/ccache \
                                        CCACHE_COMPRESS="${CCACHE_COMPRESS}" \
                                        CCACHE_COMPILERCHECK="${CCACHE_COMPILERCHECK}" \
@@ -715,7 +733,8 @@ installmake() {
                                                SYSTEM_RELEASE="${SYSTEM_RELEASE}" \
                                                CONFIG_ROOT=$CONFIG_ROOT \
                                                NAME="$NAME" SNAME="$SNAME" SLOGAN="$SLOGAN" \
-                                               CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" \
+                                               CFLAGS="${CFLAGS} ${HARDENING_CFLAGS}" \
+                                               CXXFLAGS="${CXXFLAGS} ${HARDENING_CFLAGS}" \
                                                CCACHE_DIR=/usr/src/ccache CCACHE_COMPRESS=1 CCACHE_HASHDIR=1 \
                                                KVER=$KVER \
                                                BUILDTARGET="$BUILDTARGET" \