blob: 15633ad25329cff0fc9aee06dcaf9f7c80857adb (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
|
#!/bin/sh
# Usage: haschanged.sh [-l] [tag]
#
# Show changes in git for all modules since either tag specified on command
# line or the most recent tag on main branch (as found by git describe)
#
# If -l is given, shows git log since tag
SHOW_LOG=0
if test "x$1" = "x-l" ; then
SHOW_LOG=1
shift
fi
TAG=$1
haschanged() {
if ! test -d $1; then
exit $1 is not a directory
fi
cd $1
for i in `ls -1`; do
if test -e $i/configure.ac; then
cd $i
if test "x${TAG}" != "x" ; then
LAST_TAG=`git tag -l $TAG`
else
LAST_TAG=`git describe --abbrev=0`
fi
if test "x${LAST_TAG}" = "x" ; then
echo $1/${i}: tag ${TAG} not found
else
HEAD_DESC=`git describe`
if test "${HEAD_DESC}" != "${LAST_TAG}" ; then
echo $1/$i has changed since $LAST_TAG
if test "${SHOW_LOG}" = 1 ; then
echo ''
git log "${LAST_TAG}"..
echo '============================================'
echo ''
fi
else
echo $1/$i has not changed since $LAST_TAG
fi
fi
cd ..
fi
done
cd ..
}
haschanged app
haschanged data
haschanged doc
haschanged driver
haschanged font
haschanged lib
haschanged proto
haschanged util
haschanged xserver
|