update Makefile to generate lht targets too
[hw/altusmetrum] / packages / Makefile
1 .SUFFIXES: .5c .py .fp .lht
2
3 DIRS= \
4         diodes \
5         jst \
6         molex \
7         norcomp \
8         phoenix \
9         pinheader \
10         switches \
11         te-connectivity 
12
13 SOIC= \
14         ssop-16.fp \
15         ssop-28.fp \
16         soic-16.fp \
17         soic-24.fp \
18         hssop-56.fp
19
20 FOOTPRINTS= \
21         $(SOIC) \
22         s-pwson-n8.fp \
23         s-pwson-n6.fp \
24         lga14.fp \
25         lga14b.fp \
26         MS5607.fp \
27         uson-8.fp \
28         wson6x5.fp \
29         hvqfn33.fp \
30         ZX62-B-5PA.fp \
31         TDK_PS12.fp \
32         ABM3B.fp \
33         ABM3C.fp \
34         ABM8.fp \
35         7S.fp \
36         1212-8.fp \
37         AN3111.fp \
38         lqfp32.fp \
39         lqfp48.fp \
40         lqfp64.fp \
41         lqfp100.fp \
42         LPCC16.fp \
43         MPU6000.fp \
44         MPU9250.fp \
45         UBLOX-MAX.fp \
46         TI-QFN32.fp \
47         TI-QFN36.fp \
48         TI-QFN32-new.fp \
49         NDK32.fp \
50         sma-edge.fp \
51         MO-220.fp \
52         8ufson2x2.fp \
53         ti-qfn20.fp \
54         qfn-16.fp \
55         ap.10g.fp \
56         BTM182.fp \
57         PNswitchDPDT.fp \
58         NHD-C0216.fp \
59         KSCJ.fp \
60         ADXL78.fp \
61         MOT1317.fp \
62         mlp8-4x3.fp \
63         saw.fp \
64         fotofab2x3.fp \
65         linear-s8.fp \
66         ufqfpn48.fp \
67         saw.fp \
68         tfsoj-8.fp \
69         bc4aa.fp \
70         linear-s8.fp \
71         PJ-037A.fp \
72         cx1vsm.fp \
73         pklcs1212.fp \
74         CR32.fp \
75         FTDI-QFN32.fp \
76         g6z1f.fp \
77         g6z1fe.fp \
78         W3011A.fp \
79         DIODE-SMA.fp \
80         2512.fp \
81         lipo-15x24.fp \
82         wire-ant.fp \
83         PCM12SMTR.fp \
84         usbAmale.fp \
85         usbAmale-around.fp \
86         nx3215sa.fp \
87         DR127.fp \
88         PowerPAD32.fp \
89         usb_onboard.fp \
90         u-pdfn-8.fp \
91         ufqfpn28.fp \
92         ufqfpn24.fp \
93         sot666.fp \
94         sot323.fp \
95         sod323.fp \
96         sod123.fp \
97         0806.fp \
98         fuse345.fp \
99         g5rl1ae.fp \
100         DO-214AA.fp \
101         DO-214AC.fp \
102         BU2032SM.fp \
103         TO252AA.fp \
104         TO252.fp \
105         TO252FET.fp \
106         SD.fp \
107         microSD.fp \
108         v-bite.fp \
109         qfn16-3x3.fp \
110         1051330011.fp \
111         2013499-1.fp \
112         servo.fp \
113         servo-motor.fp \
114         TDK_PS12-small.fp \
115         CAP_FC8.fp \
116         fuse3568.fp \
117         ABM12.fp \
118         MD-60S.fp \
119         RN4678.fp \
120         JTIBM15.fp \
121         s-pqfp-g32.fp \
122         A29100-009.fp \
123         506CD.fp \
124         11071.lht \
125         11071.fp \
126         M1040M.fp \
127         pts645.fp \
128         l102.fp \
129         l201.fp \
130         so-8ep.fp \
131         do-214ac.fp \
132         l8x8.fp \
133         c8x8.fp \
134         sk6812.fp \
135         VQFN-HR-12.fp \
136         wqfn-16.fp
137
138 .5c.fp:
139         nickle $*.5c -o $@
140
141 .py.fp:
142         python $*.py > $@
143
144 .py.lht:
145         python $*.py > $@
146
147 BUILDDIRS=$(DIRS:%=build-%)
148 CLEANDIRS=$(DIRS:%=clean-%)
149
150 all: $(BUILDDIRS) $(FOOTPRINTS) .gitignore
151 $(DIRS): $(BUILDDIRS) 
152 $(BUILDDIRS): 
153         $(MAKE) -C $(@:build-%=%)
154
155 $(CLEANDIRS):
156         $(MAKE) -C $(@:clean-%=%) clean
157
158 $(FOOTPRINTS): footprint.5c fplht.py
159
160 clean: $(CLEANDIRS)
161         rm -f $(FOOTPRINTS) *.pyc
162
163 .PHONY: subdirs $(DIRS)
164 .PHONY: subdirs $(BUILDDIRS)
165 .PHONY: subdirs $(CLEANDIRS)
166
167 .gitignore: Makefile
168         for i in $@ $(FOOTPRINTS); do echo $$i; done > $@
169
170 ssop-16.fp: ssop.5c
171         nickle ssop.5c 16 3.85 > $@
172
173 ssop-28.fp: ssop.5c
174         nickle ssop.5c 28 > $@
175
176 hssop-56.fp: ssop.5c
177         nickle ssop.5c 56 7.6 1.9 0.4 0.635 > $@
178
179 soic-16.fp: soic.5c
180         nickle soic.5c 16 > $@
181
182 soic-24.fp: soic.5c
183         nickle soic.5c 24 7.5 > $@
184
185 lipo-15x24.fp: lipo-pad.5c
186         nickle lipo-pad.5c 15 24 > $@