~ubuntu-branches/debian/stretch/adios/stretch

« back to all changes in this revision

Viewing changes to utils/skel/bin/skel

  • Committer: Package Import Robot
  • Author(s): Alastair McKinstry
  • Date: 2014-06-16 23:06:38 UTC
  • mfrom: (1.1.4)
  • Revision ID: package-import@ubuntu.com-20140616230638-5a0z7ylxx8i0edrg
Tags: 1.7.0-1
* New upstream release.
* Add adios.pc pkgconfig file. adios_config now uses this.

Show diffs side-by-side

added added

removed removed

Lines of Context:
25
25
import skel_replay
26
26
import skel_source
27
27
import skel_submit
 
28
import skel_suite
 
29
import skel_template
28
30
import skel_xml
29
31
 
30
32
def get_parser():
37
39
Skel: Create, run and analyze skeletal I/O applications
38
40
-------------------------------------------------------
39
41
Available subcommands include:
40
 
    skel install
41
42
    skel help
42
43
    skel makefile
43
44
    skel params
 
45
    skel replay
44
46
    skel source
45
47
    skel submit
46
48
    skel xml
47
49
        
48
50
    Use skel help <subcommand> to see detailed options for each subcommand.''')
49
51
    parser.add_argument ('subcommand', metavar='subcommand', help='Skel command to execute')
50
 
    parser.add_argument ('project', metavar='project', help='Name of the skel project')
 
52
    #parser.add_argument ('project', metavar='project', help='Name of the skel project')
51
53
    #parser.add_argument ('-g', '--group', help='adios group (only valid for skel params)')
52
54
 
53
55
    return parser
56
58
def main(argv=None):
57
59
 
58
60
    skel_settings.create_settings_dir_if_needed()
 
61
    parser = get_parser()
59
62
 
60
63
    # install does not require a project, so let's just check for it directly
61
64
    if sys.argv[1] == 'install':
62
 
        return 0;
 
65
        return 0
 
66
 
 
67
    # Also look for skel help, and print the list of subcommands...
 
68
    if sys.argv[1] == 'help' and len(sys.argv) == 2:
 
69
        print parser.description 
 
70
        return 0
 
71
 
 
72
    if sys.argv[1] == 'help':
 
73
        if sys.argv[2] == 'makefile':
 
74
            sys.argv = ["skel", "makefile", "junk", "-h"]
 
75
            skel_makefile.generate_makefiles_with_args (None, parser)
 
76
        elif sys.argv[2] == 'params':
 
77
            sys.argv = ["skel", "params", "junk", "-h"]
 
78
            skel_params.generate_param_file_with_args (None, parser)
 
79
        elif sys.argv[2] == 'replay':
 
80
            sys.argv = ["skel", "replay", "junk", "-h"]
 
81
        elif sys.argv[2] == 'source':
 
82
            sys.argv = ["skel", "source", "junk", "-h"]
 
83
            skel_source.create_sources_with_args (None, parser)
 
84
        elif sys.argv[2] == 'submit':
 
85
            sys.argv = ["skel", "submit", "junk", "-h"]
 
86
            skel_submit.generate_submit_scripts_with_args (parser)
 
87
        elif sys.argv[2] == 'xml':
 
88
            sys.argv = ["skel", "xml", "junk", "-h"]
 
89
        else:
 
90
            print "Unknown help topic" 
 
91
            exit(1)
63
92
 
64
93
    #args = parse_command_line()
65
 
    parser = get_parser()
66
94
    args, unknown = parser.parse_known_args()
67
95
 
68
96
    # ignore .xml suffix if used (tab completion)
69
 
    if args.project and args.project.endswith (".xml"):
70
 
        args.project = args.project[:-4]
 
97
    #if args.project and args.project.endswith (".xml"):
 
98
    #    args.project = args.project[:-4]
71
99
 
72
100
    if args.subcommand == 'install':
73
101
        return 0
74
102
 
 
103
    if args.subcommand == 'template':
 
104
        skel_template.fill_template (parser)
 
105
        return 0
 
106
 
75
107
    if args.subcommand == 'xml':
76
 
        skel_xml.create_skel_xml (args.project, parser)
 
108
        skel_xml.create_skel_xml (parser)
77
109
        return 0
78
110
 
79
111
    if args.subcommand == 'replay':
80
112
        skel_replay.do_replay_with_args (parser)
81
113
        return 0
82
114
 
83
 
    try:
84
 
        config = adios.adiosConfig (args.project + '_skel.xml')
85
 
    except (IOError):
86
 
        print( "Error reading " + args.project + "_skel.xml. Try running skel xml " + args.project + " first.")/
87
 
        return 1
 
115
    if args.subcommand == 'suite':
 
116
        skel_suite.gen_suite_with_args (parser)
 
117
        return 0
 
118
 
 
119
 
 
120
    # Decided to push this further down rather than deal with increasingly
 
121
    # complicated landscape of which subcommands do or don't require
 
122
    # a project or an xml file.
 
123
    #try:
 
124
    #    config = adios.adiosConfig (args.project + '_skel.xml')
 
125
    #except (IOError):
 
126
    #    print "XXError reading " + args.project + "_skel.xml. Try running skel xml " + args.project + " first."
 
127
    #    return 1
88
128
 
89
129
    if args.subcommand == 'params':
90
130
        #outfilename = args.project + '_params.xml'
95
135
            #return 999
96
136
 
97
137
        #skel_params.generate_param_file (args.project, outfilename, config, args.group)
98
 
        skel_params.generate_param_file_with_args (config, parser)
 
138
        skel_params.generate_param_file_with_args (parser)
99
139
        return 0
100
140
    
101
141
    
102
142
    if args.subcommand == 'source':
103
143
        #skel_source.create_sources (params, config, args.project)
104
 
        skel_source.create_sources_with_args (config, parser)
 
144
        skel_source.create_sources_with_args (parser)
105
145
        return 0
106
146
 
107
147
 
108
148
    if args.subcommand == 'makefile':
109
149
        #skel_makefile.generate_makefiles (params, config)
110
 
        skel_makefile.generate_makefiles_with_args (config, parser)
 
150
        skel_makefile.generate_makefiles_with_args (parser)
111
151
        return 0
112
152
 
113
153