blob: ba30448230753d9d796ed3c49cba9cca4f53c46c (
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
64
65
66
67
68
69
70
71
72
73
74
|
#! /bin/bash
#
P=$(dirname $0)
#
[ $# -gt 0 -a "$1" == "-x" ] && SMASH="Yes"
#
CURRENT=$P/api
PREV=$P/api-prev
NEXT=$P/api-next
INCLUDE=$(pkg-config --variable=includedir ecore)
#
[ ! -d $NEXT ] && mkdir $NEXT
[ ! -d $PREV ] && mkdir $PREV
[ ! -d $CURRENT ] && mkdir $CURRENT
#
rm *-diff 2>/dev/null
#
if [ "$SMASH" == "Yes" ]; then
rm -fr $PREV && cp -R $CURRENT $PREV || exit 1
else
PREV=$CURRENT
echo "no -x argument, won't override previous data"
echo "new api will be stored in $NEXT"
fi
#
for header in \
"${INCLUDE}/eina-1/eina/eina_types.h" \
"${INCLUDE}/eina-1/eina/eina_xattr.h" \
"${INCLUDE}/eina-1/eina/eina_main.h" \
"${INCLUDE}/eina-1/eina/eina_log.h" \
"${INCLUDE}/eina-1/eina/eina_list.h" \
"${INCLUDE}/eina-1/eina/eina_hash.h" \
"${INCLUDE}/eet-1/Eet.h" \
"${INCLUDE}/edje-1/Edje.h" \
"${INCLUDE}/evas-1/Evas.h" \
"${INCLUDE}/evas-1/Evas_GL.h" \
"${INCLUDE}/ecore-1/Ecore.h" \
"${INCLUDE}/ecore-1/Ecore_Con.h" \
"${INCLUDE}/ecore-1/Ecore_Input.h" \
"${INCLUDE}/ecore-1/Ecore_Getopt.h" \
"${INCLUDE}/ecore-1/Ecore_Evas.h" \
"${INCLUDE}/ecore-1/Ecore_Fb.h" \
"${INCLUDE}/ecore-1/Ecore_File.h" \
"${INCLUDE}/EMap.h" \
"${INCLUDE}/elementary-0/Elementary.h" \
"${INCLUDE}/elementary-0/elm_general.h" \
"${INCLUDE}/elementary-0/elm_tooltip.h" \
"${INCLUDE}/elementary-0/elm_object_item.h" \
"${INCLUDE}/elementary-0/elm_icon.h" \
; do
#
if [ ! -e "$header" ]; then
echo "$header not found, we won't generate bindings for this header."
continue
fi
#
DIR=$(dirname $header)
FILE=$(basename $header)
#
for what in functions enums types callbacks variables; do
F=$FILE-$what
sed -r -n -f "$P/sed-$what" $header > $NEXT/$F
if [ -f $PREV/$F ]; then
diff -u0 $PREV/$F $NEXT/$F > $P/$F-diff
N=$(cat $P/$F-diff | wc -l)
[ $N -eq 0 ] && rm $P/$F-diff || echo "see $P/$F-diff"
fi
done
#
done
#
if [ "$SMASH" == "Yes" ]; then
rm -fr $CURRENT && mv $NEXT $CURRENT || exit 1
fi
|