#!/usr/bin/env python
import commands
import sys
foundModules = list()
if len(sys.argv) != 2:
print "Syntax: " + sys.argv[0] + " <script>"
sys.exit()
else:
perl_script = sys.argv[1]
command = 'egrep "^use" ' + perl_script
(status,modules) = commands.getstatusoutput(command)
if status == 0:
for module in modules.split("\n"):
module = module.split(" ")[1].replace(";","")
foundModules.append(module)
if len(foundModules) > 0:
print "Found " + str(len(foundModules)) + " modules in " + perl_script
for module in sorted(foundModules):
print "Testing " + module + ":",
perlme = """
#!/usr/bin/perl
eval ("use """ + module + """");
if($@){
exit(1);
}
else{
exit(0);
}
"""
command = "echo '" + perlme + "' | perl"
(status,output) = commands.getstatusoutput(command)
if status == 0:
print "OK"
else:
print "NOT INSTALLED"
else:
print "Didn't find any perl modules"