File: regenerateall.py

package info (click to toggle)
paraview 4.1.0%2Bdfsg%2B1-1
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 278,136 kB
  • ctags: 340,527
  • sloc: cpp: 2,314,053; ansic: 817,139; python: 245,770; xml: 68,996; tcl: 48,285; fortran: 39,116; yacc: 5,713; java: 3,827; perl: 3,108; sh: 2,045; lex: 1,809; makefile: 935; asm: 471; pascal: 228
file content (74 lines) | stat: -rw-r--r-- 1,922 bytes parent folder | download | duplicates (6)
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
#!/usr/local/apps/bin/python
import os, string

#
# Get the output of a command as a tuple of strings.
#
def GetFilenames(command):
    p = os.popen(command)
    files = p.readlines()
    p.close()
    return files

#
# Get a list of all files that have a .code extension and contain "CreateNode".
# 
def GetCreateNodeFiles():
    files = GetFilenames("grep -i CreateNode *.code")
    retval = []
    for f in files:
        index = string.find(f, ':')
        if(index != -1):
            str = f[:index]
            if(str not in retval):
                retval = retval + [str]
    return retval

#
# Execute a command. It's wrapped for debugging.
#
def systemCommand(command):
    print command
    return os.system(command)

###############################################################################
#
# Purpose: This program regenerates all of the state objects in this directory
#          by first checking out the XML files and then calling xml2atts.
#
# Programmer: Brad Whitlock
# Date:       Tue May 20 10:00:56 PDT 2003
#
# Modifications:
#   Brad Whitlock, Fri Dec 14 15:56:16 PST 2007
#   Removed cleartool commands.
#
###############################################################################

def main():
    # Get the names of the XML files in this directory.
    files = GetFilenames("ls *.xml")

    # Check out each XML file and regenerate the C and h files.
    for f in files:
        bname = f[:-5]
        command = "../../bin/xml2atts -clobber %s" % f
        systemCommand(command)

    # Warn about files that have special CreateNode functions.
    cnfiles = GetCreateNodeFiles()
    if(len(cnfiles) > 0):
        print "***"
        print "*** The following code files have special CreateNode methods."
        print "*** These .code files may need to be updated:"
        print "***"
        for f in cnfiles:
            print f

    return 0

#
# Call the main function
#
main()