ee = ../../../env/bin/python3 -m ee report_dir = ee/reports sch = ../../../thirdparty/unlockoslo/hardware/alpha-3/alpha.sch sch_files = ../../../thirdparty/unlockoslo/hardware/alpha-3/alpha.sch pcb = ../../../thirdparty/unlockoslo/hardware/alpha-3/alpha.kicad_pcb rule kicad-gerber description = kicad-gerber command = $ee kicad-gerber $ --output-dir $gerber_dir $ --pcb $pcb # mkdir -p $( # (cd $(GERBER_DIR); zip tmp.zip $(foreach GBR,$(GERBERS),$(notdir $(GBR)))) # mv $(GERBER_DIR)/tmp.zip $@ rule kicad-make-bom description = kicad-make-bom $out command = $ee kicad-make-bom --sch $sch --out $out rule pn-part-search-list description = pn-part-search-list supplier: $supplier command = $ee pn-part-search-list --in $in --out $out --supplier $supplier rule part-apply-function command = $ee part-apply-function --execution $execution --in $in --out $out $functions $arguments rule part-find-requirements description = part-find-requirements command = $ee part-find-requirements --in $in --out $out rule part-validate-parts command = $ee part-validate-parts --in $in --out $out rule digikey-search-parts description = digikey-search-parts command = $ee digikey-search-parts --in $in --out $out rule element14-search-parts description = element14-search-parts command = $ee element14-search-parts --in $in --out $out rule create-bom description = create-bom command = $ee create-bom --schematic $schematic --part-db $part_dbs --out $out $strategy rule split-parts-by-supplier description = split-parts-by-supplier command = $ee split-parts-by-supplier --parts $order $part_dbs --out-dir $out_dir rule import-parts-yaml description = import-parts-yaml $in command = $ee import-parts-yaml --in $in --out $out rule drawio-decompress command = $ee drawio-decompress --in $in --out $out rule drawio-to-parts command = $ee drawio-to-parts --in $in --out $out $args rule part-from-excel command = $ee part-from-excel --in $in --out $out --sheet "$sheet" build gerbers: phony prod/gerber.zip build prod/gerber.zip: kicad-gerber $pcb gerber_dir = prod build ee/kicad-sch.xml: kicad-make-bom $sch build ee/sch.xml: part-apply-function ee/kicad-sch.xml execution = kicad functions = --function ee.kicad.functions.default arguments = build $report_dir/part-validate-parts.rst: part-validate-parts ee/sch.xml build ee/requirements.xml: part-find-requirements ee/sch.xml # Supplier digikey build ee/digikey/pn-part-search-list.xml: pn-part-search-list ee/sch.xml supplier = digikey build ee/digikey/downloaded.xml | ee/digikey/downloaded.rst: digikey-search-parts ee/digikey/pn-part-search-list.xml build ee/digikey/parts.xml: part-apply-function ee/digikey/downloaded.xml execution = digikey functions = --function ee.digikey.functions.default build ee/bom.xml | $report_dir/bom.rst: create-bom ee/sch.xml ee/digikey/parts.xml schematic = ee/sch.xml part_dbs = ee/digikey/parts.xml build ee/orders/index.xml: split-parts-by-supplier ee/bom.xml ee/digikey/parts.xml order = ee/bom.xml part_dbs = --part-db ee/digikey/parts.xml out_dir = ee/orders default ee/orders/index.xml rule seeed-download-opl description = seeed-download-opl $opl command = $ee seeed-download-opl --out $out --opl $opl build seeed-download-opls: phony ee/seeed/opl/SEEED.xml ee/seeed/opl/HQCHIP.xml build ee/seeed/opl/SEEED.xml: seeed-download-opl opl = SEEED build ee/seeed/opl/HQCHIP.xml: seeed-download-opl opl = HQCHIP