1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170
|
## -*- makefile -*-
##
## COPYRIGHT
##
## PCB, interactive printed circuit board design
## Copyright (C) 1994,1995,1996 Thomas Nau
##
## This program is free software; you can redistribute it and/or modify
## it under the terms of the GNU General Public License as published by
## the Free Software Foundation; either version 2 of the License, or
## (at your option) any later version.
##
## This program is distributed in the hope that it will be useful,
## but WITHOUT ANY WARRANTY; without even the implied warranty of
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
## GNU General Public License for more details.
##
## You should have received a copy of the GNU General Public License
## along with this program; if not, write to the Free Software
## Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
##
## Contact addresses for paper mail and Email:
## Thomas Nau, Schlehenweg 15, 88471 Baustetten, Germany
## Thomas.Nau@rz.uni-ulm.de
##
## RCS: $Id: Makefile.am,v 1.24 2006/04/15 03:33:16 djdelorie Exp $
##
info_TEXINFOS= pcb.texi
# We avoid adding all the dependencies except in maintainer mode. This is
# because the automake team feels that you should not require the user
# to have makeinfo and friends installed just to build the package.
# This seems reasonable. Because of that, the documentation must be
# built in the source directory so it can be found when creating a distfile
# and this means you can't build outside the source tree with a read-only
# source. So, ignore the dependencies unless we're in maintainer mode
# but be sure and put the generated files in the distfile via EXTRA_DIST
# and dist_pkgdata_DATA. Also this helps us avoid problem with users
# having various out of date versions of the texinfo package installed
# which can have all sorts of issues.
pcb_TEXINFOS= @MAINTAINER_MODE_TRUE@ ${inline_texi} ${pcb_output} ${tab_texi}
dist_pkgdata_DATA= ${html_docs} ${ps_docs} ${pdf_docs} ${pcb_output}
dist_man_MANS= pcb.1
html_docs= ${info_TEXINFOS:.texi=.html}
ps_docs= ${info_TEXINFOS:.texi=.ps} refcard.ps
pdf_docs= ${info_TEXINFOS:.texi=.pdf} refcard.pdf
# put the html manual into 1 file instead of multiple files?
AM_MAKEINFOHTMLFLAGS= --css-include=$(srcdir)/pcb.css --no-split
# use this to avoid having the clean target delete pcb.{dvi,html,pdf,ps}
# which unfortunately deletes files which are part of the distfile
mostlyclean-aminfo:
-rm -rf pcb.aux pcb.cp pcb.cps pcb.fn pcb.fns pcb.ky pcb.kys pcb.log pcb.pg \
pcb.pgs pcb.tmp pcb.toc pcb.tp pcb.tps pcb.vr pcb.vrs
EXTRA_DIST= \
ascii2texi.awk \
extract-docs \
refcard.tex \
pcb.dvi \
pcb.css \
refcard.dvi \
${inline_texi} \
${pcb_files} \
${tab_files} \
${tab_texi}
MAINTAINERCLEANFILES= \
refcard.aux refcard.dvi refcard.log refcard.pdf refcard.ps \
${pcb_output} ${tab_texi} ${inline_texi} pcb.dvi pcb.html pcb.pdf pcb.ps
BUILT_SOURCES= @MAINTAINER_MODE_TRUE@ ${tab_texi} ${pcb_output} ${inline_texi}
inline_texi= \
actions.texi \
pcbfile.texi
ASCII2TEXI= ${AWK} -f $(srcdir)/ascii2texi.awk ncol=3
# Tables
tab_files= \
fractional_size.tab \
letter_size.tab \
metric_size.tab \
wire_size.tab
tab_texi= ${tab_files:.tab=.texi}
# PCB Drawings
pcb_files= \
pad.pcb \
puller.pcb \
thermal.pcb
pcb_output= \
${pcb_files:.pcb=.eps} \
${pcb_files:.pcb=.gif} \
${pcb_files:.pcb=.pdf} \
${pcb_files:.pcb=.png}
${inline_texi} : extracted-docs
# no need to build these when not in maintainer mode. They're not used then
# anyway.
.PHONY : extracted-docs
extracted-docs :
@MAINTAINER_MODE_TRUE@${PERL} $(srcdir)/extract-docs $(srcdir)
@@MAINTAINER_MODE_FALSE@echo "Skipping documentation extraction since you are not in maintainer-mode"
SUFFIXES = .dvi .eps .gif .pcb .pdf .png .ps .tab .tex
.pcb.eps :
../src/pcb-bin -x eps --only-visible --font-path $(top_srcdir)/src --eps-file $@ $<
.pcb.gif :
../src/pcb-bin -x png --only-visible --format GIF --font-path $(top_srcdir)/src --outfile $@ $<
.pcb.png :
../src/pcb-bin -x png --only-visible --font-path $(top_srcdir)/src --outfile $@ $<
.eps.pdf :
if MISSING_PS2PDF
@echo "****************************************************"
@echo "WARNING: ps2pdf is missing on your system but"
@echo "$@ is out of date and needs to rebuilt."
@echo "Changes to $< will be ignored"
else
${PS2PDF} `${AWK} 'BEGIN{s=8}; /BoundingBox/ {printf("-r%d -g%dx%d", s*72, s*$$4, s*$$5);}' $<` $< $@
endif
.tab.texi:
${ASCII2TEXI} $< > $@
.tex.dvi:
if MISSING_LATEX
@echo "****************************************************"
@echo "WARNING: LaTeX is missing on your system but"
@echo "$@ is out of date and needs to rebuilt."
@echo "Changes to $< will be ignored"
else
${LATEX} $<
${LATEX} $<
${LATEX} $<
endif
.dvi.ps:
if MISSING_DVIPS
@echo "****************************************************"
@echo "WARNING: dvips is missing on your system but"
@echo "$@ is out of date and needs to rebuilt."
@echo "Changes to $< will be ignored"
else
${DVIPS} -Ppdf -j0 -D 300 -o $@ $<
endif
.tex.pdf:
if MISSING_PDFLATEX
@echo "****************************************************"
@echo "WARNING: pdflatex is missing on your system but"
@echo "$@ is out of date and needs to rebuilt."
@echo "Changes to $< will be ignored"
else
${PDFLATEX} $<
${PDFLATEX} $<
${PDFLATEX} $<
endif
|