From d7eb97bbc3347bf37449db93463d646f6d5d7319 Mon Sep 17 00:00:00 2001 From: Dan Nicholson Date: Tue, 23 Oct 2007 18:17:16 -0700 Subject: [PATCH] confdiff.sh: A testing script for comparing configs settings This is a simple script that compares the make variables set by two different configs stubs. The purpose is to highlight differences so that any unnecessary duplication or divergence can be removed. For example, on Linux x86: $ ./bin/confdiff.sh linux linux-x86 The output isn't very clean, but it should highlight that the only difference is that the x86 target uses x86 assembler sources. The script uses bash, mktemp, make, sed and diff. It is probably not very portable and might only work on GNU make. --- bin/confdiff.sh | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100755 bin/confdiff.sh diff --git a/bin/confdiff.sh b/bin/confdiff.sh new file mode 100755 index 00000000000..568fcd6d56e --- /dev/null +++ b/bin/confdiff.sh @@ -0,0 +1,48 @@ +#!/bin/bash -e + +usage() +{ + echo "Usage: $0 " + echo "Highlight differences between Mesa configs" + echo "Example:" + echo " $0 linux linux-x86" +} + +die() +{ + echo "$@" >&2 + return 1 +} + +case "$1" in +-h|--help) usage; exit 0;; +esac + +[ $# -lt 2 ] && die 2 targets needed. See $0 --help +target1=$1 +target2=$2 + +topdir=$(cd "`dirname $0`"/..; pwd) +cd "$topdir" + +[ -f "./configs/$target1" ] || die Missing configs/$target1 +[ -f "./configs/$target2" ] || die Missing configs/$target2 + +trap 'rm -f "$t1" "$t2"' 0 + +t1=$(mktemp) +t2=$(mktemp) + +make -f- -n -p < $t1 +TOP = . +include \$(TOP)/configs/$target1 +default: +EOF + +make -f- -n -p < $t2 +TOP = . +include \$(TOP)/configs/$target2 +default: +EOF + +diff -pu -I'^#' $t1 $t2 -- 2.30.2