#!/usr/bin/python import os.path, os from sys import argv, exit base_template=""" %s """ classpath_entry = """ """ classpath_sourcepath_entry = """ """ def main(): if len(argv) != 2 and len(argv) != 3: print "Usage: python %s []" % argv[0] print """Example: python %s "/usr/share/java:/usr/share/java-ext" "/usr/share/src-jars" """ % argv[0] exit(1) src_entries = {} if len(argv) == 3: for dr in argv[2].split(":"): if dr.strip() and os.path.exists(dr): for f in os.listdir(dr): if f != "rhn.jar" and f.endswith(".jar") and not f in src_entries: src_entries[f] = os.path.join(dr,f) entries = {} entries['tools.jar'] = classpath_entry % "/usr/lib/jvm/java/lib/tools.jar" entries['ant-junit.jar'] = classpath_entry % "/usr/share/java/ant/ant-junit.jar" entries['ant.jar'] = classpath_entry % "/usr/share/java/ant.jar" for dr in argv[1].split(":"): if dr.strip(): if os.path.isdir(dr): for f in os.listdir(dr): if f != "rhn.jar" and f.endswith(".jar") and not f in entries: if f in src_entries: entries[f] = classpath_sourcepath_entry % (os.path.join(dr,f) , src_entries[f]) elif f[:-4] + "-" +"src.jar" in src_entries: entries[f] = classpath_sourcepath_entry % (os.path.join(dr,f) , src_entries[f[:-4] + "-" +"src.jar"]) elif f[:-4] + "-" +"sources.jar" in src_entries: entries[f] = classpath_sourcepath_entry % (os.path.join(dr,f) , src_entries[f[:-4] + "-" +"sources.jar"]) else: entries[f] = classpath_entry % os.path.join(dr,f) if os.path.isfile(dr): f = os.path.basename(dr) if f != "rhn.jar" and f.endswith(".jar") and not f in entries: entries[f] = classpath_entry % dr print base_template % "\n".join (entries.values()) if __name__=="__main__": main()