File: cpp2xml.sh

package info (click to toggle)
actiona 3.11.1-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 54,580 kB
  • sloc: cpp: 969,398; xml: 52,881; javascript: 32,914; python: 23,909; sh: 550; ansic: 90; makefile: 9
file content (32 lines) | stat: -rw-r--r-- 703 bytes parent folder | download
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
CWD=`pwd`

d="$CWD"
f="$1"

bn=$(basename "$d/$f")
bn_nosuffix=$(basename "$d/$f" .h)
xmlfile="xml_auto/$bn_nosuffix.xml"

#cat "$d/$f" | grep -v "friend class" > src_copy/$bn

if [ $f -nt srcml/$bn_nosuffix.srcml ]
then
    srcml -l C++ $f -o srcml/new_$bn_nosuffix.srcml
    tidy -q -i -xml -m srcml/new_$bn_nosuffix.srcml

    diff srcml/new_$bn_nosuffix.srcml srcml/$bn_nosuffix.srcml
    if [ $? -ne 0 ]
    then
        mv srcml/new_$bn_nosuffix.srcml srcml/$bn_nosuffix.srcml
    else
        rm srcml/new_$bn_nosuffix.srcml
    fi
fi

xsltproc "$d/srcml2xml.xsl" srcml/$bn_nosuffix.srcml > "$xmlfile"
tidy -wrap 150 -q -i -xml -m "$xmlfile"

if [ $? -eq 1 ]; then
    echo "error"
    exit 1
fi