2018-02-05 18:15:54 +00:00
|
|
|
#!/bin/sh
|
|
|
|
# Verify what is about to be pushed. Called by "git
|
|
|
|
# push" after it has checked the remote status, but before anything has been
|
|
|
|
# pushed. If this script exits with a non-zero status nothing will be pushed.
|
|
|
|
#
|
|
|
|
# This hook is called with the following parameters:
|
|
|
|
#
|
|
|
|
# $1 -- Name of the remote to which the push is being done
|
|
|
|
# $2 -- URL to which the push is being done
|
|
|
|
#
|
|
|
|
# If pushing without using a named remote those arguments will be equal.
|
|
|
|
|
|
|
|
# <local ref> <local sha1> <remote ref> <remote sha1>
|
|
|
|
#
|
|
|
|
|
|
|
|
rc=0
|
2018-06-21 20:12:24 +00:00
|
|
|
SYSTEM=`uname -s`
|
2018-02-05 18:15:54 +00:00
|
|
|
|
|
|
|
# Redirect output to stderr.
|
|
|
|
exec 1>&2
|
|
|
|
|
2018-06-21 20:12:24 +00:00
|
|
|
if [ "$SYSTEM" = "FreeBSD" ]; then
|
2019-07-25 12:35:34 +00:00
|
|
|
MAKE="gmake MAKE=gmake -j $(sysctl -a | grep -E -i 'hw.ncpu' | awk '{print $2}')"
|
2018-06-21 20:12:24 +00:00
|
|
|
COMP="clang"
|
|
|
|
else
|
2019-07-25 12:35:34 +00:00
|
|
|
MAKE="make -j $(nproc)"
|
2018-06-21 20:12:24 +00:00
|
|
|
COMP="gcc"
|
|
|
|
fi
|
2018-02-05 18:15:54 +00:00
|
|
|
|
2018-06-21 20:12:24 +00:00
|
|
|
echo "Running make with $COMP ..."
|
|
|
|
echo "${MAKE} clean " > make.log
|
2018-02-05 18:15:54 +00:00
|
|
|
$MAKE clean >> make.log 2>&1
|
2020-06-02 01:01:30 +00:00
|
|
|
|
2018-06-21 20:12:24 +00:00
|
|
|
echo "${MAKE} CONFIG_DEBUG=n CONFIG_WERROR=y " >> make.log
|
2018-02-05 18:15:54 +00:00
|
|
|
$MAKE CONFIG_DEBUG=n CONFIG_WERROR=y >> make.log 2>&1
|
|
|
|
rc=$?
|
|
|
|
if [ $rc -ne 0 ]; then
|
|
|
|
tail -20 make.log
|
|
|
|
echo ""
|
|
|
|
echo "ERROR make returned errors!"
|
|
|
|
echo "ERROR Fix the problem and use 'git commit' to update your changes."
|
|
|
|
echo "ERROR See `pwd`/make.log for more information."
|
|
|
|
echo ""
|
|
|
|
exit $rc
|
|
|
|
fi
|
|
|
|
|
2018-07-12 07:09:41 +00:00
|
|
|
echo "${MAKE} SKIP_DPDK_BUILD=1 clean " >> make.log
|
|
|
|
$MAKE clean SKIP_DPDK_BUILD=1 >> make.log 2>&1
|
|
|
|
echo "${MAKE} CONFIG_DEBUG=y CONFIG_WERROR=y SKIP_DPDK_BUILD=1 " >> make.log
|
|
|
|
$MAKE CONFIG_DEBUG=y CONFIG_WERROR=y SKIP_DPDK_BUILD=1 >> make.log 2>&1
|
2018-02-05 18:15:54 +00:00
|
|
|
rc=$?
|
|
|
|
if [ $rc -ne 0 ]; then
|
|
|
|
tail -20 make.log
|
|
|
|
echo ""
|
|
|
|
echo "ERROR make returned errors!"
|
|
|
|
echo "ERROR Fix the problem and use 'git commit' to update your changes."
|
|
|
|
echo "ERROR See `pwd`/make.log for more information."
|
|
|
|
echo ""
|
|
|
|
exit $rc
|
|
|
|
fi
|
|
|
|
|
|
|
|
echo "Running unittest.sh ..."
|
|
|
|
echo "./test/unit/unittest.sh" >> make.log
|
|
|
|
"./test/unit/unittest.sh" >> make.log 2>&1
|
|
|
|
rc=$?
|
|
|
|
if [ $rc -ne 0 ]; then
|
|
|
|
tail -20 make.log
|
|
|
|
echo ""
|
|
|
|
echo "ERROR unittest returned errors!"
|
|
|
|
echo "ERROR Fix the problem and use 'git commit' to update your changes."
|
|
|
|
echo "ERROR See `pwd`/make.log for more information."
|
|
|
|
echo ""
|
|
|
|
exit $rc
|
|
|
|
fi
|
|
|
|
|
2018-06-21 20:12:24 +00:00
|
|
|
echo "$MAKE clean " >> make.log
|
2018-02-05 18:15:54 +00:00
|
|
|
$MAKE clean >> make.log 2>&1
|
|
|
|
|
|
|
|
echo "Pushing to $1 $2"
|
|
|
|
|
|
|
|
exit $rc
|