# - DPDK_DEP_CFLAGS
# - DPDK_DEP_LDFLAGS
# - DPDK_DEP_MOFED (y/[n])
+# - DPDK_DEP_NUMA (y/[n])
# - DPDK_DEP_PCAP (y/[n])
# - DPDK_DEP_SSL (y/[n])
# - DPDK_DEP_SZE (y/[n])
success=false
on_exit ()
{
- if [ "$DPDK_NOTIFY" = notify-send ] ; then
- if $success ; then
+ if $success ; then
+ [ "$DPDK_NOTIFY" != notify-send ] || \
notify-send -u low --icon=dialog-information 'DPDK build' 'finished'
- elif [ -z "$signal" ] ; then
+ elif [ -z "$signal" ] ; then
+ [ -z "$dir" ] || echo "failed to build $dir" >&2
+ [ "$DPDK_NOTIFY" != notify-send ] || \
notify-send -u low --icon=dialog-error 'DPDK build' 'failed'
- fi
fi
}
# catch manual interrupt to ignore notification
unset DPDK_DEP_CFLAGS
unset DPDK_DEP_LDFLAGS
unset DPDK_DEP_MOFED
+ unset DPDK_DEP_NUMA
unset DPDK_DEP_PCAP
unset DPDK_DEP_SSL
unset DPDK_DEP_SZE
config () # <directory> <target> <options>
{
- if [ ! -e $1/.config ] ; then
+ reconfig=false
+ if git rev-parse 2>&- && [ -n "$(git diff HEAD~ -- config)" ] ; then
+ echo 'Default config may have changed'
+ reconfig=true
+ fi
+ if [ ! -e $1/.config ] || $reconfig ; then
echo "================== Configure $1"
make T=$2 O=$1 config
sed -ri 's,(TEST_PMD_RECORD_.*=)n,\1y,' $1/.config )
# Automatic configuration
- ! echo $2 | grep -q '^x86_64' || \
+ test "$DPDK_DEP_NUMA" != y || \
sed -ri 's,(NUMA=)n,\1y,' $1/.config
- sed -ri 's,(PCI_CONFIG=)n,\1y,' $1/.config
sed -ri 's,(LIBRTE_IEEE1588=)n,\1y,' $1/.config
sed -ri 's,(BYPASS=)n,\1y,' $1/.config
test "$DPDK_DEP_ARCHIVE" != y || \
sed -ri 's,(PMD_SZEDATA2=)n,\1y,' $1/.config
test "$DPDK_DEP_ZLIB" != y || \
sed -ri 's,(BNX2X_PMD=)n,\1y,' $1/.config
+ test "$DPDK_DEP_ZLIB" != y || \
+ sed -ri 's,(QEDE_PMD=)n,\1y,' $1/.config
sed -ri 's,(NFP_PMD=)n,\1y,' $1/.config
test "$DPDK_DEP_PCAP" != y || \
sed -ri 's,(PCAP=)n,\1y,' $1/.config
O=$(readlink -m $dir/examples/performance-thread)
unset RTE_TARGET
echo "################## $dir done."
+ unset dir
done
if ! $short ; then