update to modern structure using shared libraries
authorBdale Garbee <bdale@gag.com>
Mon, 15 Jul 2013 05:07:48 +0000 (23:07 -0600)
committerBdale Garbee <bdale@gag.com>
Mon, 15 Jul 2013 05:07:48 +0000 (23:07 -0600)
Makefile
gafrc
project

index cae4751915f492fa8a32eaaa2553c3b9304dc516..d660c1dd0cfca6d2909fa1f23f8929e10cb922f6 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,52 +1,76 @@
 PROJECT=swdadapter
+AM=../altusmetrum
+SCHEME=$(AM)/scheme
 
 # intentionally want to rebuild drc and bom on every invocation
-all:   hw
+all:   drc partslist partslist.csv pcb
 
-hw:    drc partslist partslist.csv pcb
-
-drc:   swdadapter.sch
+drc:   swdadapter.sch Makefile
        -gnetlist -g drc2 swdadapter.sch -o swdadapter.drc
 
-partslist:     swdadapter.sch
+partslist:     swdadapter.sch Makefile
        gnetlist -g bom -o swdadapter.unsorted swdadapter.sch
        head -n1 swdadapter.unsorted > partslist
        tail -n+2 swdadapter.unsorted | sort >> partslist
        rm -f swdadapter.unsorted
 
 partslist.csv: swdadapter.sch Makefile
-       gnetlist -L ../altusmetrum/scheme -g partslistgag \
+       gnetlist -L $(SCHEME) -g partslistgag \
                -o swdadapter.unsorted swdadapter.sch
        head -n1 swdadapter.unsorted > partslist.csv
        tail -n+2 swdadapter.unsorted | sort -t \, -k 8 >> partslist.csv
        rm -f swdadapter.unsorted
 
-pcb:   swdadapter.sch project
+partslist.dk: $(PROJECT).sch Makefile $(SCHEME)/gnet-partslist-bom.scm
+       gnetlist -L $(SCHEME) -g partslist-bom -Ovendor=digikey -o $@ $(PROJECT).sch
+
+pcb:   swdadapter.sch project Makefile
        gsch2pcb project
 
+# note that 'gschlas -e foo.sch' will embed all symbols in the schematic, this
+# might be a really good idea for publishing designs to the web that others
+# might review?  Like this example from DJ:
+#
+#web :
+#        for i in channel.sch ethernet.sch power.sch mcu.sch; do \
+#          cp $$i tmp.sch ; \
+#          gschlas -e tmp.sch ; \
+#          mv tmp.sch ${WEB}/$$i; \
+#        done
+
+# this shoves local work out to the git.gag.com repository
+push:  
+       git push --mirror
+
 swdadapter.xy: swdadapter.pcb
        pcb -x bom swdadapter.pcb
 
 swdadapter.bottom.gbr: swdadapter.pcb
        pcb -x gerber swdadapter.pcb
 
-zip:   swdadapter.bottom.gbr swdadapter.bottommask.gbr swdadapter.fab.gbr swdadapter.top.gbr swdadapter.topmask.gbr swdadapter.topsilk.gbr swdadapter.plated-drill.cnc
-       zip swdadapter.zip *.gbr *.cnc
+zip:   swdadapter.bottom.gbr swdadapter.bottommask.gbr swdadapter.fab.gbr swdadapter.top.gbr swdadapter.topmask.gbr swdadapter.toppaste.gbr swdadapter.topsilk.gbr swdadapter.plated-drill.cnc swdadapter.xy  Makefile # swdadapter.xls
+       zip swdadapter.zip swdadapter.*.gbr swdadapter.*.cnc swdadapter.xy # swdadapter.xls
 
-oshpark: swdadapter.bottom.gbr swdadapter.bottommask.gbr swdadapter.top.gbr swdadapter.topmask.gbr swdadapter.topsilk.gbr swdadapter.plated-drill.cnc
+oshpark: swdadapter.bottom.gbr swdadapter.bottommask.gbr swdadapter.top.gbr swdadapter.topmask.gbr swdadapter.plated-drill.cnc
        mv swdadapter.bottom.gbr bottom\ layer.ger
        mv swdadapter.bottommask.gbr bottom\ solder\ mask.ger
+       mv swdadapter.bottomsilk.gbr bottom\ silk\ screen.ger
        mv swdadapter.outline.gbr board\ outline.ger
        mv swdadapter.top.gbr top\ layer.ger
        mv swdadapter.topmask.gbr top\ solder\ mask.ger
-       mv swdadapter.topsilk.gbr top\ silk\ screen.ger
        mv swdadapter.plated-drill.cnc drills.xln
        zip swdadapter-oshpark.zip *.ger *.xln
 
+stencil:       swdadapter.bottom.gbr swdadapter.toppaste.gbr swdadapter.outline.gbr
+       zip swdadapter-stencil.zip swdadapter.toppaste.gbr swdadapter.outline.gbr
+
 clean:
        rm -f *.bom *.drc *.log *~ swdadapter.ps *.gbr *.cnc *bak* *- *.zip 
-       rm -f *.net *.xy *.cmd *.png partslist partslist.csv
-       rm -f *.partslist *.new.pcb *.unsorted
-       rm -f *.hex *.cod *.lst *.ps *.o *.asm
-       rm -f *.ger *.xln *.dk *.mouser
+       rm -f *.net *.xy *.cmd *.png partslist partslist.csv *.ger *.xln
+       rm -f *.partslist *.new.pcb *.unsorted swdadapter.xls muffin-5267.pdf
+
+muffins: partslist.csv $(AM)/glabels/muffin-short-5267.glabels
+       glabels-3-batch $(AM)/glabels/muffin-short-5267.glabels \
+               -i partslist.csv -o muffin-5267.ps >/dev/null && \
+               ps2pdf muffin-5267.ps && rm muffin-5267.ps
 
diff --git a/gafrc b/gafrc
index 1e29942304e195af657c8c6cb5a4269d96e63224..9e10ee91551f9386b3fa0c84041ba680e2a34e39 100644 (file)
--- a/gafrc
+++ b/gafrc
@@ -1,3 +1,3 @@
 ; empty the library path and populate it with only our own symbols
 (reset-component-library)
-(component-library "./symbols")
+(load "../altusmetrum/gafrc")
diff --git a/project b/project
index a20d67cc2b32bb00d0322fe6db694eed54ffcc18..c1bc2ffe1e038cb016f96b2da0ea39450d8ada5b 100644 (file)
--- a/project
+++ b/project
@@ -6,7 +6,7 @@ schematics      swdadapter.sch
 # are derived from the first listed schematic...
 output-name    swdadapter
 
-elements-dir packages
+elements-dir ../altusmetrum/packages
 
 # stick to newlib elements, don't use the older/odder m4 stuff
 skip-m4