[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: gEDA-dev: Making a windows binary available




On Dec 9, 2008, at 7:35 AM, Duncan Drennan wrote:

>> Can you email me a .ps print of an empty title block, printed from
>> within gschem, and using the command-line technique.
>
> I figured out what is happening here. I use a Makefile with the
> following to print multiple page schematics:
>
> printps2: $(SHEETS)
> 	rm -f ONEPAGE.ps
> 	rm -f $(PROJNAME).ps
> 	for S in $(SHEETS); \
> 	do \
> 	gschem -q -o ONEPAGE.ps -s "d:\Program
> files\gEDA\share\gEDA\scheme\print.scm" $$S; \
> 	cat ONEPAGE.ps; done > $(PROJNAME).ps
> 	rm -f ONEPAGE.ps
>

That's a complicated way to do it. Better, I think, to use rules  
rather than procedures, and let make figure it out. Start with some  
"boilerplate":

# Definitions to generate the drawings

S2PS=gschem -p -o $@ -s print.scm $<

%.sym.ps : %.sym
         $(S2PS)

%.ps : %.sch
         $(S2PS)

# And definitions to assemble the documentation

A2PS=a2ps -1 --medium=letter --toc -o $@ $^
PS2PDF=ps2pdf -sPAPERSIZE=letter

%.pdf : %.ps
         $(PS2PDF) $<

Now, list the things that go into the doc:

VIDEODOCS= \
         Video.txt \
         chain.ps \
         Video.1.ps \
         Video.2.ps \
         Video.bom.txt

Then, one specific rule assembles the doc (assuming you have the  
descriptive doc Video.txt and a rule to make the BOM: "left as an  
exercise"):

Video.ps : $(VIDEODOCS)
         $(A2PS)

With this, you can type "make Video.pdf" and make figures out what to  
do (and what doesn't need to be done).

Of course, I like this because I can put whatever I need into the  
documentation file as long as it exists or there's a rule to make it.  
It's much more flexible than a procedure.

John Doty              Noqsi Aerospace, Ltd.
http://www.noqsi.com/
jpd@noqsi.com




_______________________________________________
geda-dev mailing list
geda-dev@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-dev