def gen_vendor_mapfile(vendor_obj, maxage=-1): """ :type vendor_obj: sourcing.vendors.VendorBase """ if isinstance(vendor_obj, int): vendor_obj = vendor_list[vendor_obj] if 'electronics' == vendor_obj.pclass: logger.info('Generating electronics mapfile for ' + vendor_obj.name) symlib = gsymlib.gen_symlib() symlib.sort(key=lambda x: x.ident) idents = [] for symbol in symlib: if symbol.ident.strip() != "": idents.append(symbol.ident) gen_mapfile(vendor_obj, idents, maxage) logger.info("Done Generating Electronics Vendor Map : " + vendor_obj.name) elif 'electronics_pcb' == vendor_obj.pclass: logger.info('Generating PCB mapfile for ' + vendor_obj.name) pcblib = projects.pcbs idents = [] for pcb, folder in iteritems(pcblib): idents.append(pcb) gen_mapfile(vendor_obj, idents, maxage) logger.info("Done Generating PCB Vendor Map File : " + vendor_obj.name) else: logger.warning('Vendor pclass is not recognized. Not generating map.') return
def gen_vendor_mapfile(vendor_obj): """ :type vendor_obj: sourcing.vendors.VendorBase """ if isinstance(vendor_obj, int): vendor_obj = vendor_list[vendor_obj] if 'electronics' == vendor_obj.pclass: logger.info('Generating electronics mapfile for ' + vendor_obj.name) symlib = gsymlib.gen_symlib() symlib.sort(key=lambda x: x.ident) idents = [] for symbol in symlib: if symbol.ident.strip() != "": idents.append(symbol.ident) gen_mapfile(vendor_obj, idents) logger.info("Done Generating Electronics Vendor Map : " + vendor_obj.name) elif 'electronics_pcb' == vendor_obj.pclass: logger.info('Generating PCB mapfile for ' + vendor_obj.name) pcblib = projects.pcbs idents = [] for pcb, folder in iteritems(pcblib): idents.append(pcb) gen_mapfile(vendor_obj, idents) logger.info("Done Generating PCB Vendor Map File : " + vendor_obj.name) else: logger.warning('Vendor pclass is not recognized. Not generating map.') return
def generate_gsymlib(): """ Profiles gsymlib generation. When the ``gsymlib`` module is loaded, it automatically generates the gEDA symbol library from the library on the filesystem. This function profiles the generation of the symlib. :download:`Raw execution profile <../../../profiling/gedaif/gsymlib/gsymlib.profile>` :download:`SVG of execution profile <../../../profiling/gedaif/gsymlib/gsymlib.profile.svg>` .. rubric:: Execution Profile .. image:: ../../../profiling/gedaif/gsymlib/gsymlib.profile.svg .. rubric:: pstats Output .. literalinclude:: ../../../profiling/gedaif/gsymlib/gsymlib.profile.stats """ symlib = gsymlib.gen_symlib()