OSDN Git Service

Check for -pthread and -lpthread at configure time.
[pf3gnuchains/gcc-fork.git] / libgo / Makefile.am
1 # Makefile.am -- Go library Makefile.
2
3 # Copyright 2009, 2010 The Go Authors. All rights reserved.
4 # Use of this source code is governed by a BSD-style
5 # license that can be found in the LICENSE file.
6
7 # Process this file with autoreconf to produce Makefile.in.
8
9 # Go support.
10 SUFFIXES = .c .go .gox .o .obj .lo .a
11
12 if LIBGO_IS_RTEMS
13 subdirs = testsuite
14 endif
15
16 SUBDIRS = ${subdirs}
17
18 MAINT_CHARSET = latin1
19
20 mkinstalldirs = $(SHELL) $(toplevel_srcdir)/mkinstalldirs
21 PWD_COMMAND = $${PWDCMD-pwd}
22 STAMP = echo timestamp >
23
24 toolexecdir = $(glibgo_toolexecdir)
25 toolexeclibdir = $(glibgo_toolexeclibdir)
26
27 LIBFFI = @LIBFFI@
28 LIBFFIINCS = @LIBFFIINCS@
29
30 WARN_CFLAGS = $(WARN_FLAGS) $(WERROR)
31
32 # -I/-D flags to pass when compiling.
33 AM_CPPFLAGS = -I $(srcdir)/runtime $(LIBFFIINCS) $(PTHREAD_CFLAGS)
34
35 ACLOCAL_AMFLAGS = -I ./config -I ../config
36
37 AM_CFLAGS = -fexceptions -fplan9-extensions $(SPLIT_STACK) $(WARN_CFLAGS) \
38         $(STRINGOPS_FLAG) \
39         -I $(srcdir)/../gcc -I $(MULTIBUILDTOP)../../gcc/include
40
41 if USING_SPLIT_STACK
42 AM_LDFLAGS = -XCClinker $(SPLIT_STACK)
43 endif
44
45 # Multilib support.
46 MAKEOVERRIDES=
47
48 # Work around what appears to be a GNU make  handling MAKEFLAGS
49 # values defined in terms of make variables, as is the case for CC and
50 # friends when we are called from the top level Makefile.
51 AM_MAKEFLAGS = \
52         "AR_FLAGS=$(AR_FLAGS)" \
53         "CC_FOR_BUILD=$(CC_FOR_BUILD)" \
54         "CC_FOR_TARGET=$(CC_FOR_TARGET)" \
55         "CFLAGS=$(CFLAGS)" \
56         "CXXFLAGS=$(CXXFLAGS)" \
57         "CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \
58         "CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" \
59         "GOC_FOR_TARGET=$(GOC_FOR_TARGET)" \
60         "GOC=$(GOC)" \
61         "GOCFLAGS=$(GOCFLAGS)" \
62         "INSTALL=$(INSTALL)" \
63         "INSTALL_DATA=$(INSTALL_DATA)" \
64         "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \
65         "INSTALL_SCRIPT=$(INSTALL_SCRIPT)" \
66         "LDFLAGS=$(LDFLAGS)" \
67         "LIBCFLAGS=$(LIBCFLAGS)" \
68         "LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" \
69         "MAKE=$(MAKE)" \
70         "MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" \
71         "PICFLAG=$(PICFLAG)" \
72         "PICFLAG_FOR_TARGET=$(PICFLAG_FOR_TARGET)" \
73         "SHELL=$(SHELL)" \
74         "RUNTESTFLAGS=$(RUNTESTFLAGS)" \
75         "exec_prefix=$(exec_prefix)" \
76         "infodir=$(infodir)" \
77         "libdir=$(libdir)" \
78         "includedir=$(includedir)" \
79         "prefix=$(prefix)" \
80         "tooldir=$(tooldir)" \
81         "gxx_include_dir=$(gxx_include_dir)" \
82         "AR=$(AR)" \
83         "AS=$(AS)" \
84         "LD=$(LD)" \
85         "RANLIB=$(RANLIB)" \
86         "NM=$(NM)" \
87         "NM_FOR_BUILD=$(NM_FOR_BUILD)" \
88         "NM_FOR_TARGET=$(NM_FOR_TARGET)" \
89         "DESTDIR=$(DESTDIR)" \
90         "WERROR=$(WERROR)"
91
92 # Subdir rules rely on $(FLAGS_TO_PASS)
93 FLAGS_TO_PASS = $(AM_MAKEFLAGS)
94
95 toolexeclib_LTLIBRARIES = libgo.la
96 toolexeclib_LIBRARIES = libgobegin.a
97
98 toolexeclib_DATA = \
99         asn1.gox \
100         big.gox \
101         bufio.gox \
102         bytes.gox \
103         cmath.gox \
104         ebnf.gox \
105         exec.gox \
106         expvar.gox \
107         flag.gox \
108         fmt.gox \
109         gob.gox \
110         hash.gox \
111         html.gox \
112         http.gox \
113         image.gox \
114         io.gox \
115         json.gox \
116         log.gox \
117         math.gox \
118         mime.gox \
119         net.gox \
120         netchan.gox \
121         os.gox \
122         patch.gox \
123         path.gox \
124         rand.gox \
125         reflect.gox \
126         regexp.gox \
127         rpc.gox \
128         runtime.gox \
129         scanner.gox \
130         smtp.gox \
131         sort.gox \
132         strconv.gox \
133         strings.gox \
134         sync.gox \
135         syscall.gox \
136         syslog.gox \
137         tabwriter.gox \
138         template.gox \
139         testing.gox \
140         time.gox \
141         try.gox \
142         unicode.gox \
143         utf16.gox \
144         utf8.gox \
145         websocket.gox \
146         xml.gox
147
148 toolexeclibarchivedir = $(toolexeclibdir)/archive
149
150 toolexeclibarchive_DATA = \
151         archive/tar.gox \
152         archive/zip.gox
153
154 toolexeclibcompressdir = $(toolexeclibdir)/compress
155
156 toolexeclibcompress_DATA = \
157         compress/flate.gox \
158         compress/gzip.gox \
159         compress/zlib.gox
160
161 toolexeclibcontainerdir = $(toolexeclibdir)/container
162
163 toolexeclibcontainer_DATA = \
164         container/heap.gox \
165         container/list.gox \
166         container/ring.gox \
167         container/vector.gox
168
169 toolexeclibcryptodir = $(toolexeclibdir)/crypto
170
171 toolexeclibcrypto_DATA = \
172         crypto/aes.gox \
173         crypto/block.gox \
174         crypto/blowfish.gox \
175         crypto/cast5.gox \
176         crypto/hmac.gox \
177         crypto/md4.gox \
178         crypto/md5.gox \
179         crypto/ocsp.gox \
180         crypto/rand.gox \
181         crypto/rc4.gox \
182         crypto/ripemd160.gox \
183         crypto/rsa.gox \
184         crypto/sha1.gox \
185         crypto/sha256.gox \
186         crypto/sha512.gox \
187         crypto/subtle.gox \
188         crypto/tls.gox \
189         crypto/x509.gox \
190         crypto/xtea.gox
191
192 toolexeclibdebugdir = $(toolexeclibdir)/debug
193
194 toolexeclibdebug_DATA = \
195         debug/dwarf.gox \
196         debug/elf.gox \
197         debug/gosym.gox \
198         debug/macho.gox \
199         debug/pe.gox \
200         debug/proc.gox
201
202 toolexeclibencodingdir = $(toolexeclibdir)/encoding
203
204 toolexeclibencoding_DATA = \
205         encoding/ascii85.gox \
206         encoding/base64.gox \
207         encoding/binary.gox \
208         encoding/git85.gox \
209         encoding/hex.gox \
210         encoding/pem.gox
211
212 toolexeclibexpdir = $(toolexeclibdir)/exp
213
214 toolexeclibexp_DATA = \
215         exp/datafmt.gox \
216         exp/draw.gox \
217         exp/eval.gox
218
219 toolexeclibgodir = $(toolexeclibdir)/go
220
221 toolexeclibgo_DATA = \
222         go/ast.gox \
223         go/doc.gox \
224         go/parser.gox \
225         go/printer.gox \
226         go/scanner.gox \
227         go/token.gox \
228         go/typechecker.gox
229
230 toolexeclibhashdir = $(toolexeclibdir)/hash
231
232 toolexeclibhash_DATA = \
233         hash/adler32.gox \
234         hash/crc32.gox \
235         hash/crc64.gox
236
237 toolexeclibhttpdir = $(toolexeclibdir)/http
238
239 toolexeclibhttp_DATA = \
240         http/pprof.gox
241
242 toolexeclibimagedir = $(toolexeclibdir)/image
243
244 toolexeclibimage_DATA = \
245         image/jpeg.gox \
246         image/png.gox
247
248 toolexeclibindexdir = $(toolexeclibdir)/index
249
250 toolexeclibindex_DATA = \
251         index/suffixarray.gox
252
253 toolexeclibiodir = $(toolexeclibdir)/io
254
255 toolexeclibio_DATA = \
256         io/ioutil.gox
257
258 toolexeclibmimedir = $(toolexeclibdir)/mime
259
260 toolexeclibmime_DATA = \
261         mime/multipart.gox
262
263 toolexeclibnetdir = $(toolexeclibdir)/net
264
265 toolexeclibnet_DATA = \
266         net/dict.gox \
267         net/textproto.gox
268
269 toolexeclibosdir = $(toolexeclibdir)/os
270
271 toolexeclibos_DATA = \
272         os/signal.gox
273
274 toolexeclibrpcdir = $(toolexeclibdir)/rpc
275
276 toolexeclibrpc_DATA = \
277         rpc/jsonrpc.gox
278
279 toolexeclibruntimedir = $(toolexeclibdir)/runtime
280
281 toolexeclibruntime_DATA = \
282         runtime/pprof.gox
283
284 toolexeclibtestingdir = $(toolexeclibdir)/testing
285
286 toolexeclibtesting_DATA = \
287         testing/iotest.gox \
288         testing/quick.gox \
289         testing/script.gox
290
291 if HAVE_SYS_MMAN_H
292 runtime_mem_file = runtime/mem.c
293 else
294 runtime_mem_file = runtime/mem_posix_memalign.c
295 endif
296
297 if LIBGO_IS_RTEMS
298 rtems_task_variable_add_file = runtime/rtems-task-variable-add.c
299 else
300 rtems_task_variable_add_file =
301 endif
302
303 runtime_files = \
304         runtime/go-append.c \
305         runtime/go-assert.c \
306         runtime/go-assert-interface.c \
307         runtime/go-byte-array-to-string.c \
308         runtime/go-breakpoint.c \
309         runtime/go-caller.c \
310         runtime/go-can-convert-interface.c \
311         runtime/go-chan-cap.c \
312         runtime/go-chan-len.c \
313         runtime/go-check-interface.c \
314         runtime/go-close.c \
315         runtime/go-closed.c \
316         runtime/go-construct-map.c \
317         runtime/go-convert-interface.c \
318         runtime/go-defer.c \
319         runtime/go-deferred-recover.c \
320         runtime/go-eface-compare.c \
321         runtime/go-eface-val-compare.c \
322         runtime/go-getgoroot.c \
323         runtime/go-go.c \
324         runtime/go-gomaxprocs.c \
325         runtime/go-int-array-to-string.c \
326         runtime/go-int-to-string.c \
327         runtime/go-interface-compare.c \
328         runtime/go-interface-val-compare.c \
329         runtime/go-lock-os-thread.c \
330         runtime/go-map-delete.c \
331         runtime/go-map-index.c \
332         runtime/go-map-len.c \
333         runtime/go-map-range.c \
334         runtime/go-nanotime.c \
335         runtime/go-new-channel.c \
336         runtime/go-new-map.c \
337         runtime/go-new.c \
338         runtime/go-note.c \
339         runtime/go-panic.c \
340         runtime/go-panic-defer.c \
341         runtime/go-print.c \
342         runtime/go-rec-big.c \
343         runtime/go-rec-nb-big.c \
344         runtime/go-rec-nb-small.c \
345         runtime/go-rec-small.c \
346         runtime/go-recover.c \
347         runtime/go-reflect.c \
348         runtime/go-reflect-call.c \
349         runtime/go-reflect-chan.c \
350         runtime/go-reflect-map.c \
351         runtime/go-rune.c \
352         runtime/go-runtime-error.c \
353         runtime/go-sched.c \
354         runtime/go-select.c \
355         runtime/go-semacquire.c \
356         runtime/go-send-big.c \
357         runtime/go-send-nb-big.c \
358         runtime/go-send-nb-small.c \
359         runtime/go-send-small.c \
360         runtime/go-signal.c \
361         runtime/go-strcmp.c \
362         runtime/go-string-to-byte-array.c \
363         runtime/go-string-to-int-array.c \
364         runtime/go-strplus.c \
365         runtime/go-strslice.c \
366         runtime/go-trampoline.c \
367         runtime/go-type-eface.c \
368         runtime/go-type-error.c \
369         runtime/go-type-identity.c \
370         runtime/go-type-interface.c \
371         runtime/go-type-string.c \
372         runtime/go-typedesc-equal.c \
373         runtime/go-typestring.c \
374         runtime/go-unreflect.c \
375         runtime/go-unsafe-new.c \
376         runtime/go-unsafe-newarray.c \
377         runtime/go-unsafe-pointer.c \
378         runtime/go-unwind.c \
379         runtime/mcache.c \
380         runtime/mcentral.c \
381         $(runtime_mem_file) \
382         runtime/mfinal.c \
383         runtime/mfixalloc.c \
384         runtime/mgc0.c \
385         runtime/mheap.c \
386         runtime/mheapmap32.c \
387         runtime/mheapmap64.c \
388         runtime/msize.c \
389         runtime/proc.c \
390         runtime/thread.c \
391         $(rtems_task_variable_add_file) \
392         chan.c \
393         iface.c \
394         malloc.c \
395         map.c \
396         mprof.c \
397         reflect.c \
398         sigqueue.c \
399         string.c
400
401 goc2c.$(OBJEXT): runtime/goc2c.c
402         $(CC_FOR_BUILD) -c $(CFLAGS_FOR_BUILD) $<
403
404 goc2c: goc2c.$(OBJEXT)
405         $(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) -o $@ $<
406
407 malloc.c: $(srcdir)/runtime/malloc.goc goc2c
408         ./goc2c --gcc --go-prefix libgo_runtime $< > $@.tmp
409         mv -f $@.tmp $@
410
411 mprof.c: $(srcdir)/runtime/mprof.goc goc2c
412         ./goc2c --gcc --go-prefix libgo_runtime $< > $@.tmp
413         mv -f $@.tmp $@
414
415 reflect.c: $(srcdir)/runtime/reflect.goc goc2c
416         ./goc2c --gcc --go-prefix libgo_reflect $< > $@.tmp
417         mv -f $@.tmp $@
418
419 sigqueue.c: $(srcdir)/runtime/sigqueue.goc goc2c
420         ./goc2c --gcc --go-prefix libgo_runtime $< > $@.tmp
421         mv -f $@.tmp $@
422
423 %.c: $(srcdir)/runtime/%.goc goc2c
424         ./goc2c --gcc $< > $@.tmp
425         mv -f $@.tmp $@
426
427 go_asn1_files = \
428         go/asn1/asn1.go \
429         go/asn1/common.go \
430         go/asn1/marshal.go
431
432 go_big_files = \
433         go/big/arith.go \
434         go/big/int.go \
435         go/big/nat.go \
436         go/big/rat.go
437
438 go_bufio_files = \
439         go/bufio/bufio.go
440
441 go_bytes_files = \
442         go/bytes/buffer.go \
443         go/bytes/bytes.go \
444         go/bytes/bytes_decl.go
445 go_bytes_c_files = \
446         go/bytes/indexbyte.c
447
448 go_cmath_files = \
449         go/cmath/abs.go \
450         go/cmath/asin.go \
451         go/cmath/conj.go \
452         go/cmath/exp.go \
453         go/cmath/isinf.go \
454         go/cmath/isnan.go \
455         go/cmath/log.go \
456         go/cmath/phase.go \
457         go/cmath/polar.go \
458         go/cmath/pow.go \
459         go/cmath/rect.go \
460         go/cmath/sin.go \
461         go/cmath/sqrt.go \
462         go/cmath/tan.go
463
464 go_ebnf_files = \
465         go/ebnf/ebnf.go \
466         go/ebnf/parser.go
467
468 go_exec_files = \
469         go/exec/exec.go \
470         go/exec/lp_unix.go
471
472 go_expvar_files = \
473         go/expvar/expvar.go
474
475 go_flag_files = \
476         go/flag/flag.go
477
478 go_fmt_files = \
479         go/fmt/doc.go \
480         go/fmt/format.go \
481         go/fmt/print.go \
482         go/fmt/scan.go
483
484 go_gob_files = \
485         go/gob/decode.go \
486         go/gob/decoder.go \
487         go/gob/doc.go \
488         go/gob/encode.go \
489         go/gob/encoder.go \
490         go/gob/error.go \
491         go/gob/type.go
492
493 go_hash_files = \
494         go/hash/hash.go
495
496 go_html_files = \
497         go/html/doc.go \
498         go/html/entity.go \
499         go/html/escape.go \
500         go/html/token.go
501
502 go_http_files = \
503         go/http/chunked.go \
504         go/http/client.go \
505         go/http/dump.go \
506         go/http/fs.go \
507         go/http/lex.go \
508         go/http/persist.go \
509         go/http/request.go \
510         go/http/response.go \
511         go/http/server.go \
512         go/http/status.go \
513         go/http/transfer.go \
514         go/http/url.go
515
516 go_image_files = \
517         go/image/color.go \
518         go/image/format.go \
519         go/image/geom.go \
520         go/image/image.go \
521         go/image/names.go
522
523 go_io_files = \
524         go/io/multi.go \
525         go/io/io.go \
526         go/io/pipe.go
527
528 go_json_files = \
529         go/json/decode.go \
530         go/json/encode.go \
531         go/json/indent.go \
532         go/json/scanner.go \
533         go/json/stream.go
534
535 go_log_files = \
536         go/log/log.go
537
538 go_math_files = \
539         go/math/acosh.go \
540         go/math/asin.go \
541         go/math/asinh.go \
542         go/math/atan.go \
543         go/math/atanh.go \
544         go/math/atan2.go \
545         go/math/bits.go \
546         go/math/cbrt.go \
547         go/math/const.go \
548         go/math/copysign.go \
549         go/math/erf.go \
550         go/math/exp.go \
551         go/math/exp2.go \
552         go/math/expm1.go \
553         go/math/fabs.go \
554         go/math/fdim.go \
555         go/math/floor.go \
556         go/math/fmod.go \
557         go/math/frexp.go \
558         go/math/gamma.go \
559         go/math/hypot.go \
560         go/math/hypot_port.go \
561         go/math/j0.go \
562         go/math/j1.go \
563         go/math/jn.go \
564         go/math/ldexp.go \
565         go/math/lgamma.go \
566         go/math/log.go \
567         go/math/log1p.go \
568         go/math/log10.go \
569         go/math/logb.go \
570         go/math/modf.go \
571         go/math/nextafter.go \
572         go/math/pow.go \
573         go/math/pow10.go \
574         go/math/remainder.go \
575         go/math/signbit.go \
576         go/math/sin.go \
577         go/math/sincos.go \
578         go/math/sinh.go \
579         go/math/sqrt.go \
580         go/math/sqrt_port.go \
581         go/math/tan.go \
582         go/math/tanh.go \
583         go/math/unsafe.go
584
585 go_mime_files = \
586         go/mime/grammar.go \
587         go/mime/mediatype.go \
588         go/mime/type.go
589
590 if LIBGO_IS_RTEMS
591 go_net_fd_os_file = go/net/fd_rtems.go
592 go_net_newpollserver_file = go/net/newpollserver_rtems.go
593 else
594 go_net_fd_os_file = go/net/fd_linux.go
595 go_net_newpollserver_file = go/net/newpollserver.go
596 endif
597
598 go_net_files = \
599         go/net/dial.go \
600         go/net/dnsclient.go \
601         go/net/dnsconfig.go \
602         go/net/dnsmsg.go \
603         $(go_net_newpollserver_file) \
604         go/net/fd.go \
605         $(go_net_fd_os_file) \
606         go/net/hosts.go \
607         go/net/ip.go \
608         go/net/iprawsock.go \
609         go/net/ipsock.go \
610         go/net/net.go \
611         go/net/parse.go \
612         go/net/pipe.go \
613         go/net/port.go \
614         go/net/sock.go \
615         go/net/tcpsock.go \
616         go/net/udpsock.go \
617         go/net/unixsock.go
618
619 go_netchan_files = \
620         go/netchan/common.go \
621         go/netchan/export.go \
622         go/netchan/import.go
623
624 go_os_files = \
625         go/os/dir.go \
626         go/os/env.go \
627         go/os/env_unix.go \
628         go/os/error.go \
629         go/os/exec.go \
630         go/os/file.go \
631         go/os/file_unix.go \
632         go/os/getwd.go \
633         go/os/path.go \
634         go/os/proc.go \
635         go/os/stat.go \
636         go/os/sys_linux.go \
637         go/os/time.go \
638         go/os/types.go
639
640 go_patch_files = \
641         go/patch/apply.go \
642         go/patch/git.go \
643         go/patch/patch.go \
644         go/patch/textdiff.go
645
646 go_path_files = \
647         go/path/match.go \
648         go/path/path.go
649
650 go_rand_files = \
651         go/rand/exp.go \
652         go/rand/normal.go \
653         go/rand/rand.go \
654         go/rand/rng.go \
655         go/rand/zipf.go
656
657 go_reflect_files = \
658         go/reflect/deepequal.go \
659         go/reflect/type.go \
660         go/reflect/value.go
661
662 go_regexp_files = \
663         go/regexp/regexp.go
664
665 go_rpc_files = \
666         go/rpc/client.go \
667         go/rpc/debug.go \
668         go/rpc/server.go
669
670 go_runtime_files = \
671         go/runtime/debug.go \
672         go/runtime/error.go \
673         go/runtime/extern.go \
674         go/runtime/sig.go \
675         go/runtime/softfloat64.go \
676         go/runtime/type.go \
677         version.go
678
679 if LIBGO_IS_386
680 GOARCH = 386
681 else
682 if LIBGO_IS_X86_64
683 GOARCH = amd64
684 else
685 if LIBGO_IS_ARM
686 GOARCH = arm
687 else
688 GOARCH = unknown
689 endif
690 endif
691 endif
692
693 if LIBGO_IS_LINUX
694 GOOS = linux
695 else
696 if LIBGO_IS_DARWIN
697 GOOS = darwin
698 else
699 if LIBGO_IS_FREEBSD
700 GOOS = freebsd
701 else
702 if LIBGO_IS_RTEMS
703 GOOS = rtems
704 else
705 GOOS = unknown
706 endif
707 endif
708 endif
709 endif
710
711 version.go: s-version; @true
712 s-version: Makefile
713         rm -f version.go.tmp
714         echo "package runtime" > version.go.tmp
715         echo 'const defaultGoroot = "$(prefix)"' >> version.go.tmp
716         echo 'const theVersion = "'`$(CC) --version | sed 1q`'"' >> version.go.tmp
717         echo 'const theGoarch = "'$(GOARCH)'"' >> version.go.tmp
718         echo 'const theGoos = "'$(GOOS)'"' >> version.go.tmp
719         $(SHELL) $(srcdir)/../move-if-change version.go.tmp version.go
720         $(STAMP) $@
721
722 go_scanner_files = \
723         go/scanner/scanner.go
724
725 go_smtp_files = \
726         go/smtp/auth.go \
727         go/smtp/smtp.go
728
729 go_sort_files = \
730         go/sort/sort.go
731
732 go_strconv_files = \
733         go/strconv/atob.go \
734         go/strconv/atof.go \
735         go/strconv/atoi.go \
736         go/strconv/decimal.go \
737         go/strconv/ftoa.go \
738         go/strconv/itoa.go \
739         go/strconv/quote.go
740
741 go_strings_files = \
742         go/strings/reader.go \
743         go/strings/strings.go
744
745 go_sync_files = \
746         go/sync/mutex.go \
747         go/sync/once.go \
748         go/sync/rwmutex.go
749 go_sync_c_files = \
750         go/sync/cas.c
751
752 go_syslog_files = \
753         go/syslog/syslog.go
754
755 go_tabwriter_files = \
756         go/tabwriter/tabwriter.go
757
758 go_template_files = \
759         go/template/format.go \
760         go/template/template.go
761
762 go_testing_files = \
763         go/testing/benchmark.go \
764         go/testing/testing.go
765
766 go_time_files = \
767         go/time/format.go \
768         go/time/sleep.go \
769         go/time/tick.go \
770         go/time/time.go \
771         go/time/zoneinfo_unix.go
772
773 go_try_files = \
774         go/try/try.go
775
776 go_unicode_files = \
777         go/unicode/casetables.go \
778         go/unicode/digit.go \
779         go/unicode/letter.go \
780         go/unicode/tables.go
781
782 go_utf16_files = \
783         go/utf16/utf16.go
784
785 go_utf8_files = \
786         go/utf8/string.go \
787         go/utf8/utf8.go
788
789 go_websocket_files = \
790         go/websocket/client.go \
791         go/websocket/server.go \
792         go/websocket/websocket.go
793
794 go_xml_files = \
795         go/xml/read.go \
796         go/xml/xml.go
797
798 go_archive_tar_files = \
799         go/archive/tar/common.go \
800         go/archive/tar/reader.go \
801         go/archive/tar/writer.go
802
803 go_archive_zip_files = \
804         go/archive/zip/reader.go \
805         go/archive/zip/struct.go
806
807 go_compress_flate_files = \
808         go/compress/flate/deflate.go \
809         go/compress/flate/huffman_bit_writer.go \
810         go/compress/flate/huffman_code.go \
811         go/compress/flate/inflate.go \
812         go/compress/flate/reverse_bits.go \
813         go/compress/flate/token.go \
814         go/compress/flate/util.go
815
816 go_compress_gzip_files = \
817         go/compress/gzip/gzip.go \
818         go/compress/gzip/gunzip.go
819
820 go_compress_zlib_files = \
821         go/compress/zlib/reader.go \
822         go/compress/zlib/writer.go
823
824 go_container_heap_files = \
825         go/container/heap/heap.go
826
827 go_container_list_files = \
828         go/container/list/list.go
829
830 go_container_ring_files = \
831         go/container/ring/ring.go
832
833 go_container_vector_files = \
834         go/container/vector/defs.go \
835         go/container/vector/intvector.go \
836         go/container/vector/stringvector.go \
837         go/container/vector/vector.go
838
839 go_crypto_aes_files = \
840         go/crypto/aes/block.go \
841         go/crypto/aes/cipher.go \
842         go/crypto/aes/const.go
843 go_crypto_block_files = \
844         go/crypto/block/cbc.go \
845         go/crypto/block/cfb.go \
846         go/crypto/block/cmac.go \
847         go/crypto/block/cipher.go \
848         go/crypto/block/ctr.go \
849         go/crypto/block/eax.go \
850         go/crypto/block/ecb.go \
851         go/crypto/block/ofb.go \
852         go/crypto/block/xor.go
853 go_crypto_blowfish_files = \
854         go/crypto/blowfish/block.go \
855         go/crypto/blowfish/const.go \
856         go/crypto/blowfish/cipher.go
857 go_crypto_cast5_files = \
858         go/crypto/cast5/cast5.go
859 go_crypto_hmac_files = \
860         go/crypto/hmac/hmac.go
861 go_crypto_md4_files = \
862         go/crypto/md4/md4.go \
863         go/crypto/md4/md4block.go
864 go_crypto_md5_files = \
865         go/crypto/md5/md5.go \
866         go/crypto/md5/md5block.go
867 go_crypto_ocsp_files = \
868         go/crypto/ocsp/ocsp.go
869 go_crypto_rand_files = \
870         go/crypto/rand/rand.go \
871         go/crypto/rand/rand_unix.go
872 go_crypto_rc4_files = \
873         go/crypto/rc4/rc4.go
874 go_crypto_ripemd160_files = \
875         go/crypto/ripemd160/ripemd160.go \
876         go/crypto/ripemd160/ripemd160block.go
877 go_crypto_rsa_files = \
878         go/crypto/rsa/pkcs1v15.go \
879         go/crypto/rsa/rsa.go
880 go_crypto_sha1_files = \
881         go/crypto/sha1/sha1.go \
882         go/crypto/sha1/sha1block.go
883 go_crypto_sha256_files = \
884         go/crypto/sha256/sha256.go \
885         go/crypto/sha256/sha256block.go
886 go_crypto_sha512_files = \
887         go/crypto/sha512/sha512.go \
888         go/crypto/sha512/sha512block.go
889 go_crypto_subtle_files = \
890         go/crypto/subtle/constant_time.go
891 go_crypto_tls_files = \
892         go/crypto/tls/alert.go \
893         go/crypto/tls/ca_set.go \
894         go/crypto/tls/common.go \
895         go/crypto/tls/conn.go \
896         go/crypto/tls/handshake_client.go \
897         go/crypto/tls/handshake_messages.go \
898         go/crypto/tls/handshake_server.go \
899         go/crypto/tls/prf.go \
900         go/crypto/tls/tls.go
901 go_crypto_x509_files = \
902         go/crypto/x509/x509.go
903 go_crypto_xtea_files = \
904         go/crypto/xtea/block.go \
905         go/crypto/xtea/cipher.go
906
907 go_debug_dwarf_files = \
908         go/debug/dwarf/buf.go \
909         go/debug/dwarf/const.go \
910         go/debug/dwarf/entry.go \
911         go/debug/dwarf/open.go \
912         go/debug/dwarf/type.go \
913         go/debug/dwarf/unit.go
914 go_debug_elf_files = \
915         go/debug/elf/elf.go \
916         go/debug/elf/file.go
917 go_debug_gosym_files = \
918         go/debug/gosym/pclntab.go \
919         go/debug/gosym/symtab.go
920 go_debug_macho_files = \
921         go/debug/macho/file.go \
922         go/debug/macho/macho.go
923 go_debug_pe_files = \
924         go/debug/pe/file.go \
925         go/debug/pe/pe.go
926
927 if LIBGO_IS_LINUX
928 proc_file = go/debug/proc/proc_linux.go
929 if LIBGO_IS_386
930 regs_file = go/debug/proc/regs_linux_386.go
931 else
932 if LIBGO_IS_X86_64
933 regs_file = go/debug/proc/regs_linux_amd64.go
934 else
935 regs_file =
936 endif
937 endif
938 else
939 if LIBGO_IS_DARWIN
940 proc_file = go/debug/proc/proc_darwin.go
941 if LIBGO_IS_386
942 regs_file = go/debug/proc/regs_darwin_386.go
943 else
944 if LIBGO_IS_X86_64
945 regs_file = go/debug/proc/regs_darwin_amd64.go
946 else
947 regs_file =
948 endif
949 endif
950 else
951 if LIBGO_IS_FREEBSD
952 proc_file = go/debug/proc/proc_freebsd.go
953 if LIBGO_IS_386
954 regs_file = go/debug/proc/regs_freebsd_386.go
955 else
956 if LIBGO_IS_X86_64
957 regs_file = go/debug/proc/regs_freebsd_amd64.go
958 else
959 regs_file =
960 endif
961 endif
962 else
963 proc_file =
964 regs_file =
965 endif
966 endif
967 endif
968
969 go_debug_proc_files = \
970         go/debug/proc/proc.go \
971         $(proc_file) \
972         $(regs_file)
973
974 go_encoding_ascii85_files = \
975         go/encoding/ascii85/ascii85.go
976 go_encoding_base64_files = \
977         go/encoding/base64/base64.go
978 go_encoding_binary_files = \
979         go/encoding/binary/binary.go
980 go_encoding_git85_files = \
981         go/encoding/git85/git.go
982 go_encoding_hex_files = \
983         go/encoding/hex/hex.go
984 go_encoding_pem_files = \
985         go/encoding/pem/pem.go
986
987 go_exp_datafmt_files = \
988         go/exp/datafmt/datafmt.go \
989         go/exp/datafmt/parser.go
990 go_exp_draw_files = \
991         go/exp/draw/draw.go \
992         go/exp/draw/event.go
993 go_exp_eval_files = \
994         go/exp/eval/abort.go \
995         go/exp/eval/bridge.go \
996         go/exp/eval/compiler.go \
997         go/exp/eval/expr.go \
998         go/exp/eval/expr1.go \
999         go/exp/eval/func.go \
1000         go/exp/eval/scope.go \
1001         go/exp/eval/stmt.go \
1002         go/exp/eval/type.go \
1003         go/exp/eval/typec.go \
1004         go/exp/eval/value.go \
1005         go/exp/eval/world.go
1006
1007 go_go_ast_files = \
1008         go/go/ast/ast.go \
1009         go/go/ast/filter.go \
1010         go/go/ast/print.go \
1011         go/go/ast/scope.go \
1012         go/go/ast/walk.go
1013 go_go_doc_files = \
1014         go/go/doc/comment.go \
1015         go/go/doc/doc.go
1016 go_go_parser_files = \
1017         go/go/parser/interface.go \
1018         go/go/parser/parser.go
1019 go_go_printer_files = \
1020         go/go/printer/nodes.go \
1021         go/go/printer/printer.go
1022 go_go_scanner_files = \
1023         go/go/scanner/errors.go \
1024         go/go/scanner/scanner.go
1025 go_go_token_files = \
1026         go/go/token/token.go
1027 go_go_typechecker_files = \
1028         go/go/typechecker/scope.go \
1029         go/go/typechecker/typechecker.go \
1030         go/go/typechecker/universe.go
1031
1032 go_hash_adler32_files = \
1033         go/hash/adler32/adler32.go
1034 go_hash_crc32_files = \
1035         go/hash/crc32/crc32.go
1036 go_hash_crc64_files = \
1037         go/hash/crc64/crc64.go
1038
1039 go_http_pprof_files = \
1040         go/http/pprof/pprof.go
1041
1042 go_image_jpeg_files = \
1043         go/image/jpeg/huffman.go \
1044         go/image/jpeg/idct.go \
1045         go/image/jpeg/reader.go
1046
1047 go_image_png_files = \
1048         go/image/png/reader.go \
1049         go/image/png/writer.go
1050
1051 go_index_suffixarray_files = \
1052         go/index/suffixarray/suffixarray.go
1053
1054 go_io_ioutil_files = \
1055         go/io/ioutil/ioutil.go \
1056         go/io/ioutil/tempfile.go
1057
1058 go_mime_multipart_files = \
1059         go/mime/multipart/multipart.go
1060
1061 go_net_dict_files = \
1062         go/net/dict/dict.go
1063
1064 go_net_textproto_files = \
1065         go/net/textproto/pipeline.go \
1066         go/net/textproto/reader.go \
1067         go/net/textproto/textproto.go \
1068         go/net/textproto/writer.go
1069
1070 go_os_signal_files = \
1071         go/os/signal/signal.go \
1072         unix.go
1073
1074 go_rpc_jsonrpc_files = \
1075         go/rpc/jsonrpc/client.go \
1076         go/rpc/jsonrpc/server.go
1077
1078 go_runtime_pprof_files = \
1079         go/runtime/pprof/pprof.go
1080
1081 go_testing_iotest_files = \
1082         go/testing/iotest/logger.go \
1083         go/testing/iotest/reader.go \
1084         go/testing/iotest/writer.go
1085 go_testing_quick_files = \
1086         go/testing/quick/quick.go
1087 go_testing_script_files = \
1088         go/testing/script/script.go
1089
1090 if LIBGO_IS_LINUX
1091 syscall_os_file = syscalls/syscall_linux.go
1092 if LIBGO_IS_386
1093 syscall_arch_file = syscalls/syscall_linux_386.go
1094 else
1095 if LIBGO_IS_X86_64
1096 syscall_arch_file = syscalls/syscall_linux_amd64.go
1097 else
1098 syscall_arch_file =
1099 endif
1100 endif
1101 else
1102 syscall_os_file =
1103 syscall_arch_file =
1104 endif
1105
1106 if LIBGO_IS_RTEMS
1107 syscall_exec_os_file = syscalls/exec_stubs.go
1108 syscall_socket_os_file = syscalls/socket_bsd.go
1109 syscall_socket_epoll_file=
1110 syscall_sysfile_os_file = syscalls/sysfile_rtems.go
1111 syscall_syscall_file = syscalls/syscall_stubs.go
1112 syscall_errstr_file = syscalls/errstr_rtems.go
1113 syscall_errstr_decl_file = syscalls/errstr_decl_rtems.go
1114 else
1115 syscall_exec_os_file = syscalls/exec.go
1116 syscall_socket_os_file = syscalls/socket_linux.go
1117 syscall_socket_epoll_file = syscalls/socket_epoll.go
1118 syscall_sysfile_os_file = syscalls/sysfile_linux.go
1119 syscall_syscall_file = syscalls/syscall.go
1120 syscall_errstr_file = syscalls/errstr.go
1121 if LIBGO_IS_LINUX
1122 syscall_errstr_decl_file = syscalls/errstr_decl_linux.go
1123 else
1124 syscall_errstr_decl_file = syscalls/errstr_decl.go
1125 endif
1126 endif
1127
1128 go_syscall_files = \
1129         $(syscall_errstr_file) \
1130         $(syscall_errstr_decl_file) \
1131         syscalls/exec_helpers.go \
1132         $(syscall_exec_os_file) \
1133         syscalls/socket.go \
1134         $(syscall_socket_os_file) \
1135         $(syscall_socket_epoll_file) \
1136         $(syscall_syscall_file) \
1137         syscalls/syscall_unix.go \
1138         syscalls/stringbyte.go \
1139         $(syscall_os_file) \
1140         $(syscall_arch_file) \
1141         syscalls/sysfile_posix.go \
1142         $(syscall_sysfile_os_file) \
1143         sysinfo.go
1144 go_syscall_c_files = \
1145         syscalls/errno.c
1146
1147 libgo_go_objs = \
1148         asn1/libasn1.la \
1149         big/libbig.la \
1150         bufio/libbufio.la \
1151         bytes/libbytes.la \
1152         cmath/libcmath.la \
1153         ebnf/libebnf.la \
1154         exec/libexec.la \
1155         expvar/libexpvar.la \
1156         flag/libflag.la \
1157         fmt/libfmt.la \
1158         gob/libgob.la \
1159         hash/libhash.la \
1160         html/libhtml.la \
1161         http/libhttp.la \
1162         image/libimage.la \
1163         io/libio.la \
1164         json/libjson.la \
1165         log/liblog.la \
1166         math/libmath.la \
1167         mime/libmime.la \
1168         net/libnet.la \
1169         netchan/libnetchan.la \
1170         os/libos.la \
1171         patch/libpatch.la \
1172         path/libpath.la \
1173         rand/librand.la \
1174         reflect/libreflect.la \
1175         regexp/libregexp.la \
1176         rpc/librpc.la \
1177         runtime/libruntime.la \
1178         scanner/libscanner.la \
1179         smtp/libsmtp.la \
1180         sort/libsort.la \
1181         strconv/libstrconv.la \
1182         strings/libstrings.la \
1183         sync/libsync.la \
1184         syslog/libsyslog.la \
1185         tabwriter/libtabwriter.la \
1186         template/libtemplate.la \
1187         time/libtime.la \
1188         try/libtry.la \
1189         unicode/libunicode.la \
1190         utf16/libutf16.la \
1191         utf8/libutf8.la \
1192         websocket/libwebsocket.la \
1193         xml/libxml.la \
1194         archive/libtar.la \
1195         archive/libzip.la \
1196         compress/libflate.la \
1197         compress/libgzip.la \
1198         compress/libzlib.la \
1199         container/libheap.la \
1200         container/liblist.la \
1201         container/libring.la \
1202         container/libvector.la \
1203         crypto/libaes.la \
1204         crypto/libblock.la \
1205         crypto/libblowfish.la \
1206         crypto/libcast5.la \
1207         crypto/libhmac.la \
1208         crypto/libmd4.la \
1209         crypto/libmd5.la \
1210         crypto/libocsp.la \
1211         crypto/librand.la \
1212         crypto/librc4.la \
1213         crypto/libripemd160.la \
1214         crypto/librsa.la \
1215         crypto/libsha1.la \
1216         crypto/libsha256.la \
1217         crypto/libsha512.la \
1218         crypto/libsubtle.la \
1219         crypto/libtls.la \
1220         crypto/libx509.la \
1221         crypto/libxtea.la \
1222         debug/libdwarf.la \
1223         debug/libelf.la \
1224         debug/libgosym.la \
1225         debug/libmacho.la \
1226         debug/libpe.la \
1227         debug/libproc.la \
1228         encoding/libascii85.la \
1229         encoding/libbase64.la \
1230         encoding/libbinary.la \
1231         encoding/libgit85.la \
1232         encoding/libhex.la \
1233         encoding/libpem.la \
1234         exp/libdatafmt.la \
1235         exp/libdraw.la \
1236         exp/libeval.la \
1237         go/libast.la \
1238         go/libdoc.la \
1239         go/libparser.la \
1240         go/libprinter.la \
1241         go/libscanner.la \
1242         go/libtoken.la \
1243         go/libtypechecker.la \
1244         hash/libadler32.la \
1245         hash/libcrc32.la \
1246         hash/libcrc64.la \
1247         http/libpprof.la \
1248         image/libjpeg.la \
1249         image/libpng.la \
1250         index/libsuffixarray.la \
1251         io/libioutil.la \
1252         mime/libmultipart.la \
1253         net/libdict.la \
1254         net/libtextproto.la \
1255         os/libsignal.la \
1256         rpc/libjsonrpc.la \
1257         runtime/libpprof.la \
1258         syscalls/libsyscall.la \
1259         testing/libtesting.la \
1260         testing/libiotest.la \
1261         testing/libquick.la \
1262         testing/libscript.la
1263
1264 libgo_la_SOURCES = $(runtime_files)
1265
1266 libgo_la_LIBADD = $(libgo_go_objs) $(LIBFFI) $(PTHREAD_LIBS)
1267
1268 libgobegin_a_SOURCES = \
1269         runtime/go-main.c
1270
1271 LTLDFLAGS = $(shell $(SHELL) $(top_srcdir)/../libtool-ldflags $(LDFLAGS))
1272
1273 GOCFLAGS = $(CFLAGS)
1274 AM_GOCFLAGS = $(STRINGOPS_FLAG)
1275 GOCOMPILE = $(GOC) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_GOCFLAGS) $(GOCFLAGS)
1276
1277 LTGOCOMPILE = $(LIBTOOL) --tag GO --mode=compile $(GOC) $(INCLUDES) \
1278         $(AM_GOCFLAGS) $(GOCFLAGS)
1279
1280 GOLINK = $(LIBTOOL) --tag GO --mode-link $(GOC) \
1281         $(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_GOCFLAGS) $(LTLDFLAGS) \
1282         $(PTHREAD_LIBS) -o $@
1283
1284 # Build a package.
1285 BUILDARCHIVE = \
1286         rm -f `echo $@ | sed -e 's|/lib|/|' -e 's/\.a/.gox/'`; \
1287         test -d $(@D) || $(MKDIR_P) $(@D); \
1288         rm -f $@; \
1289         files=`echo $^ | sed -e 's/[^ ]*\.gox//g'`; \
1290         if $(LTGOCOMPILE) -c -fgo-prefix="libgo_$(@D)" -o $@.$(OBJEXT) $$files; then \
1291           $(AR) rc $@ $@.$(OBJEXT); \
1292         else exit 1; fi
1293
1294 # Build a .la file from a .a file.
1295 .a.la:
1296         $(LINK) $<.lo
1297
1298 if LIBGO_IS_RTEMS
1299 use_dejagnu = yes
1300 else
1301 use_dejagnu = no
1302 endif
1303
1304 # Check a package.
1305 CHECK = \
1306         @GC="$(GOC) -L `${PWD_COMMAND}` -L `${PWD_COMMAND}`/.libs -Wl,-R,`${PWD_COMMAND}`/.libs"; \
1307         export GC; \
1308         RUNTESTFLAGS="$(RUNTESTFLAGS)"; \
1309         export RUNTESTFLAGS; \
1310         MAKE="$(MAKE)"; \
1311         export MAKE; \
1312         rm -f $@-log; \
1313         echo -n "$(@D) " >$@-log 2>&1; \
1314         prefix=`if test "$(@D)" = "regexp"; then echo regexp-test; else dirname $(@D); fi`; \
1315         test "$${prefix}" != "." || prefix="$(@D)"; \
1316         $(srcdir)/testsuite/gotest --dejagnu=$(use_dejagnu) --basedir=$(srcdir) --srcdir=$(srcdir)/go/$(@D) --prefix="libgo_$${prefix}" --pkgfiles="$(go_$(subst /,_,$(@D))_files)" >>$@-log 2>&1; \
1317         x=$$?; \
1318         cat $@-log; \
1319         exit $$x
1320
1321 # Build all packages before checking any.
1322 CHECK_DEPS = libgo.la libgobegin.a \
1323         $(toolexeclib_DATA) \
1324         $(toolexeclibarchive_DATA) \
1325         $(toolexeclibcompress_DATA) \
1326         $(toolexeclibcontainer_DATA) \
1327         $(toolexeclibcrypto_DATA) \
1328         $(toolexeclibdebug_DATA) \
1329         $(toolexeclibencoding_DATA) \
1330         $(toolexeclibexp_DATA) \
1331         $(toolexeclibgo_DATA) \
1332         $(toolexeclibhash_DATA) \
1333         $(toolexeclibhttp_DATA) \
1334         $(toolexeclibimage_DATA) \
1335         $(toolexeclibio_DATA) \
1336         $(toolexeclibos_DATA) \
1337         $(toolexeclibrpc_DATA) \
1338         $(toolexeclibruntime_DATA) \
1339         $(toolexeclibtesting_DATA)
1340
1341 asn1/libasn1.a: $(go_asn1_files) bytes.gox fmt.gox io.gox os.gox reflect.gox \
1342                 strconv.gox strings.gox time.gox
1343         $(BUILDARCHIVE)
1344 asn1/libasn1.la: asn1/libasn1.a
1345 asn1/check: $(CHECK_DEPS)
1346         $(CHECK)
1347 .PHONY: asn1/check
1348
1349 big/libbig.a: $(go_big_files) fmt.gox rand.gox strings.gox
1350         $(BUILDARCHIVE)
1351 big/libbig.la: big/libbig.a
1352 big/check: $(CHECK_DEPS)
1353         $(CHECK)
1354 .PHONY: big/check
1355
1356 bufio/libbufio.a: $(go_bufio_files) bytes.gox io.gox os.gox strconv.gox \
1357                 utf8.gox
1358         $(BUILDARCHIVE)
1359 bufio/libbufio.la: bufio/libbufio.a
1360 bufio/check: $(CHECK_DEPS)
1361         $(CHECK)
1362 .PHONY: bufio/check
1363
1364 bytes/libbytes.a: $(go_bytes_files) $(go_bytes_c_files) io.gox os.gox utf8.gox
1365         test -d bytes || $(MKDIR_P) bytes
1366         $(LTGOCOMPILE) -c -o bytes/bytes.$(OBJEXT) -fgo-prefix=libgo_bytes $(srcdir)/go/bytes/buffer.go $(srcdir)/go/bytes/bytes.go $(srcdir)/go/bytes/bytes_decl.go
1367         $(LTCOMPILE) -c -o bytes/index.$(OBJEXT) $(srcdir)/go/bytes/indexbyte.c
1368         rm -f $@
1369         $(AR) rc $@ bytes/bytes.$(OBJEXT) bytes/index.$(OBJEXT)
1370 bytes/libbytes.la: bytes/libbytes.a
1371         $(LINK) bytes/bytes.lo bytes/index.lo
1372 bytes/check: $(CHECK_DEPS)
1373         $(CHECK)
1374 .PHONY: bytes/check
1375
1376 cmath/libcmath.a: $(go_cmath_files) math.gox
1377         $(BUILDARCHIVE)
1378 cmath/libcmath.la: cmath/libcmath.a
1379 cmath/check: $(CHECK_DEPS)
1380         $(CHECK)
1381 .PHONY: cmath/check
1382
1383 ebnf/libebnf.a: $(go_ebnf_files) container/vector.gox go/scanner.gox \
1384                 go/token.gox os.gox strconv.gox unicode.gox utf8.gox
1385         $(BUILDARCHIVE)
1386 ebnf/libebnf.la: ebnf/libebnf.a
1387 ebnf/check: $(CHECK_DEPS)
1388         $(CHECK)
1389 .PHONY: ebnf/check
1390
1391 exec/libexec.a: $(go_exec_files) os.gox strings.gox
1392         $(BUILDARCHIVE)
1393 exec/libexec.la: exec/libexec.a
1394 exec/check: $(CHECK_DEPS)
1395         $(CHECK)
1396 .PHONY: exec/check
1397
1398 expvar/libexpvar.a: $(go_expvar_files) bytes.gox fmt.gox http.gox json.gox \
1399                 log.gox os.gox runtime.gox strconv.gox sync.gox
1400         $(BUILDARCHIVE)
1401 expvar/libexpvar.la: expvar/libexpvar.a
1402 expvar/check: $(CHECK_DEPS)
1403         $(CHECK)
1404 .PHONY: expvar/check
1405
1406 flag/libflag.a: $(go_flag_files) fmt.gox os.gox strconv.gox
1407         $(BUILDARCHIVE)
1408 flag/libflag.la: flag/libflag.a
1409 flag/check: $(CHECK_DEPS)
1410         $(CHECK)
1411 .PHONY: flag/check
1412
1413 fmt/libfmt.a: $(go_fmt_files) bytes.gox io.gox os.gox reflect.gox strconv.gox \
1414                 strings.gox unicode.gox utf8.gox
1415         $(BUILDARCHIVE)
1416 fmt/libfmt.la: fmt/libfmt.a
1417 fmt/check: $(CHECK_DEPS)
1418         $(CHECK)
1419 .PHONY: fmt/check
1420
1421 gob/libgob.a: $(go_gob_files) bytes.gox fmt.gox io.gox math.gox os.gox \
1422                 reflect.gox runtime.gox strings.gox sync.gox unicode.gox
1423         $(BUILDARCHIVE)
1424 gob/libgob.la: gob/libgob.a
1425 gob/check: $(CHECK_DEPS)
1426         $(CHECK)
1427 .PHONY: gob/check
1428
1429 hash/libhash.a: $(go_hash_files) io.gox
1430         $(BUILDARCHIVE)
1431 hash/libhash.la: hash/libhash.a
1432 hash/check: $(CHECK_DEPS)
1433         $(CHECK)
1434 .PHONY: hash/check
1435
1436 html/libhtml.a: $(go_html_files) bytes.gox io.gox os.gox strconv.gox \
1437                 strings.gox utf8.gox
1438         $(BUILDARCHIVE)
1439 html/libhtml.la: html/libhtml.a
1440 html/check: $(CHECK_DEPS)
1441         $(CHECK)
1442 .PHONY: html/check
1443
1444 http/libhttp.a: $(go_http_files) bufio.gox bytes.gox container/list.gox \
1445                 container/vector.gox crypto/rand.gox crypto/tls.gox \
1446                 encoding/base64.gox fmt.gox io.gox io/ioutil.gox log.gox \
1447                 mime.gox mime/multipart.gox net.gox os.gox path.gox sort.gox \
1448                 strconv.gox strings.gox sync.gox time.gox utf8.gox
1449         $(BUILDARCHIVE)
1450 http/libhttp.la: http/libhttp.a
1451 http/check: $(CHECK_DEPS)
1452         $(CHECK)
1453 .PHONY: http/check
1454
1455 image/libimage.a: $(go_image_files) bufio.gox io.gox os.gox strconv.gox
1456         $(BUILDARCHIVE)
1457 image/libimage.la: image/libimage.a
1458 image/check: $(CHECK_DEPS)
1459         $(CHECK)
1460 .PHONY: image/check
1461
1462 io/libio.a: $(go_io_files) os.gox runtime.gox sync.gox
1463         $(BUILDARCHIVE)
1464 io/libio.la: io/libio.a
1465 io/check: $(CHECK_DEPS)
1466         $(CHECK)
1467 .PHONY: io/check
1468
1469 json/libjson.a: $(go_json_files) bytes.gox container/vector.gox fmt.gox \
1470                 io.gox math.gox os.gox reflect.gox runtime.gox strconv.gox \
1471                 strings.gox unicode.gox utf16.gox utf8.gox
1472         $(BUILDARCHIVE)
1473 json/libjson.la: json/libjson.a
1474 json/check: $(CHECK_DEPS)
1475         $(CHECK)
1476 .PHONY: json/check
1477
1478 log/liblog.a: $(go_log_files) bytes.gox fmt.gox io.gox runtime.gox os.gox \
1479                 time.gox
1480         $(BUILDARCHIVE)
1481 log/liblog.la: log/liblog.a
1482 log/check: $(CHECK_DEPS)
1483         $(CHECK)
1484 .PHONY: log/check
1485
1486 math/libmath.a: $(go_math_files)
1487         $(BUILDARCHIVE)
1488 math/libmath.la: math/libmath.a
1489 math/check: $(CHECK_DEPS)
1490         $(CHECK)
1491 .PHONY: math/check
1492
1493 mime/libmime.a: $(go_mime_files) bufio.gox bytes.gox os.gox strings.gox \
1494                 sync.gox unicode.gox
1495         $(BUILDARCHIVE)
1496 mime/libmime.la: mime/libmime.a
1497 mime/check: $(CHECK_DEPS)
1498         $(CHECK)
1499 .PHONY: mime/check
1500
1501 net/libnet.a: $(go_net_files) fmt.gox io.gox os.gox reflect.gox strconv.gox \
1502                 strings.gox sync.gox syscall.gox
1503         $(BUILDARCHIVE)
1504 net/libnet.la: net/libnet.a
1505 net/check: $(CHECK_DEPS)
1506         $(CHECK)
1507 .PHONY: net/check
1508
1509 netchan/libnetchan.a: $(go_netchan_files) gob.gox log.gox net.gox os.gox \
1510                 reflect.gox sync.gox time.gox
1511         $(BUILDARCHIVE)
1512 netchan/libnetchan.la: netchan/libnetchan.a
1513 netchan/check: $(CHECK_DEPS)
1514         $(CHECK)
1515 .PHONY: netchan/check
1516
1517 os/libos.a: $(go_os_files) sync.gox syscall.gox
1518         $(BUILDARCHIVE)
1519 os/libos.la: os/libos.a
1520 os/check: $(CHECK_DEPS)
1521         $(CHECK)
1522 .PHONY: os/check
1523
1524 patch/libpatch.a: $(go_patch_files) bytes.gox compress/zlib.gox \
1525                 crypto/sha1.gox encoding/git85.gox fmt.gox io.gox os.gox \
1526                 path.gox strings.gox
1527         $(BUILDARCHIVE)
1528 patch/libpatch.la: patch/libpatch.a
1529 patch/check: $(CHECK_DEPS)
1530         $(CHECK)
1531 .PHONY: patch/check
1532
1533 path/libpath.a: $(go_path_files) io/ioutil.gox os.gox sort.gox strings.gox \
1534                 utf8.gox
1535         $(BUILDARCHIVE)
1536 path/libpath.la: path/libpath.a
1537 path/check: $(CHECK_DEPS)
1538         $(CHECK)
1539 .PHONY: path/check
1540
1541 rand/librand.a: $(go_rand_files) math.gox sync.gox
1542         $(BUILDARCHIVE)
1543 rand/librand.la: rand/librand.a
1544 rand/check: $(CHECK_DEPS)
1545         $(CHECK)
1546 .PHONY: rand/check
1547
1548 reflect/libreflect.a: $(go_reflect_files) math.gox runtime.gox strconv.gox \
1549                 sync.gox
1550         $(BUILDARCHIVE)
1551 reflect/libreflect.la: reflect/libreflect.a
1552 reflect/check: $(CHECK_DEPS)
1553         $(CHECK)
1554 .PHONY: reflect/check
1555
1556 regexp/libregexp.a: $(go_regexp_files) bytes.gox io.gox os.gox strings.gox \
1557                 utf8.gox
1558         $(BUILDARCHIVE)
1559 regexp/libregexp.la: regexp/libregexp.a
1560 regexp/check: $(CHECK_DEPS)
1561         $(CHECK)
1562 .PHONY: regexp/check
1563
1564 rpc/librpc.a: $(go_rpc_files) bufio.gox fmt.gox gob.gox http.gox io.gox \
1565                 log.gox net.gox os.gox reflect.gox sort.gox strings.gox \
1566                 strconv.gox sync.gox template.gox unicode.gox utf8.gox
1567         $(BUILDARCHIVE)
1568 rpc/librpc.la: rpc/librpc.a
1569 rpc/check: $(CHECK_DEPS)
1570         $(CHECK)
1571 .PHONY: rpc/check
1572
1573 runtime/libruntime.a: $(go_runtime_files)
1574         $(BUILDARCHIVE)
1575 runtime/libruntime.la: runtime/libruntime.a
1576 runtime/check: $(CHECK_DEPS)
1577         $(CHECK)
1578 .PHONY: runtime/check
1579
1580 scanner/libscanner.a: $(go_scanner_files) bytes.gox fmt.gox io.gox os.gox \
1581                 unicode.gox utf8.gox
1582         $(BUILDARCHIVE)
1583 scanner/libscanner.la: scanner/libscanner.a
1584 scanner/check: $(CHECK_DEPS)
1585         $(CHECK)
1586 .PHONY: scanner/check
1587
1588 smtp/libsmtp.a: $(go_smtp_files) crypto/tls.gox encoding/base64.gox io.gox \
1589                 net.gox net/textproto.gox os.gox strings.gox
1590         $(BUILDARCHIVE)
1591 smtp/libsmtp.la: smtp/libsmtp.a
1592 smtp/check: $(CHECK_DEPS)
1593         $(CHECK)
1594 .PHONY: smtp/check
1595
1596 sort/libsort.a: $(go_sort_files)
1597         $(BUILDARCHIVE)
1598 sort/libsort.la: sort/libsort.a
1599 sort/check: $(CHECK_DEPS)
1600         $(CHECK)
1601 .PHONY: sort/check
1602
1603 strconv/libstrconv.a: $(go_strconv_files) bytes.gox math.gox os.gox \
1604                 strings.gox unicode.gox utf8.gox
1605         $(BUILDARCHIVE)
1606 strconv/libstrconv.la: strconv/libstrconv.a
1607 strconv/check: $(CHECK_DEPS)
1608         $(CHECK)
1609 .PHONY: strconv/check
1610
1611 strings/libstrings.a: $(go_strings_files) os.gox unicode.gox utf8.gox
1612         $(BUILDARCHIVE)
1613 strings/libstrings.la: strings/libstrings.a
1614 strings/check: $(CHECK_DEPS)
1615         $(CHECK)
1616 .PHONY: strings/check
1617
1618 sync/libsync.a: $(go_sync_files) $(go_sync_c_files) runtime.gox
1619         test -d sync || $(MKDIR_P) sync
1620         $(LTGOCOMPILE) -c -o sync/mutex.$(OBJEXT) -fgo-prefix=libgo_sync $(srcdir)/go/sync/mutex.go $(srcdir)/go/sync/once.go $(srcdir)/go/sync/rwmutex.go
1621         $(LTCOMPILE) -c -o sync/cas.$(OBJEXT) $(srcdir)/go/sync/cas.c
1622         rm -f $@
1623         $(AR) rc $@ sync/mutex.$(OBJEXT) sync/cas.$(OBJEXT)
1624 sync/libsync.la: sync/libsync.a
1625         $(LINK) sync/mutex.lo sync/cas.lo
1626 sync/check: $(CHECK_DEPS)
1627         $(CHECK)
1628 .PHONY: sync/check
1629
1630 syslog/libsyslog.a: $(go_syslog_files) fmt.gox log.gox net.gox os.gox
1631         $(BUILDARCHIVE)
1632 syslog/libsyslog.la: syslog/libsyslog.a
1633 syslog/check: $(CHECK_DEPS)
1634         $(CHECK)
1635 .PHONY: syslog/check
1636
1637 tabwriter/libtabwriter.a: $(go_tabwriter_files) bytes.gox io.gox os.gox \
1638                 utf8.gox
1639         $(BUILDARCHIVE)
1640 tabwriter/libtabwriter.la: tabwriter/libtabwriter.a
1641 tabwriter/check: $(CHECK_DEPS)
1642         $(CHECK)
1643 .PHONY: tabwriter/check
1644
1645 template/libtemplate.a: $(go_template_files) bytes.gox fmt.gox io.gox os.gox \
1646                 reflect.gox runtime.gox strings.gox container/vector.gox
1647         $(BUILDARCHIVE)
1648 template/libtemplate.la: template/libtemplate.a
1649 template/check: $(CHECK_DEPS)
1650         $(CHECK)
1651 .PHONY: template/check
1652
1653 testing/libtesting.a: $(go_testing_files) flag.gox fmt.gox os.gox regexp.gox \
1654                 runtime.gox time.gox
1655         $(BUILDARCHIVE)
1656 testing/libtesting.la: testing/libtesting.a
1657 testing/check: $(CHECK_DEPS)
1658         $(CHECK)
1659 .PHONY: testing/check
1660
1661 time/libtime.a: $(go_time_files) bytes.gox io/ioutil.gox os.gox strconv.gox \
1662                 sync.gox syscall.gox
1663         $(BUILDARCHIVE)
1664 time/libtime.la: time/libtime.a
1665 time/check: $(CHECK_DEPS)
1666         $(CHECK)
1667 .PHONY: time/check
1668
1669 try/libtry.a: $(go_try_files) fmt.gox io.gox os.gox reflect.gox unicode.gox
1670         $(BUILDARCHIVE)
1671 try/libtry.la: try/libtry.a
1672 try/check: $(CHECK_DEPS)
1673         $(CHECK)
1674 .PHONY: try/check
1675
1676 unicode/libunicode.a: $(go_unicode_files)
1677         $(BUILDARCHIVE)
1678 unicode/libunicode.la: unicode/libunicode.a
1679 unicode/check: $(CHECK_DEPS)
1680         $(CHECK)
1681 .PHONY: unicode/check
1682
1683 utf16/libutf16.a: $(go_utf16_files) unicode.gox
1684         $(BUILDARCHIVE)
1685 utf16/libutf16.la: utf16/libutf16.a
1686 utf16/check: $(CHECK_DEPS)
1687         $(CHECK)
1688 .PHONY: utf16/check
1689
1690 utf8/libutf8.a: $(go_utf8_files) unicode.gox
1691         $(BUILDARCHIVE)
1692 utf8/libutf8.la: utf8/libutf8.a
1693 utf8/check: $(CHECK_DEPS)
1694         $(CHECK)
1695 .PHONY: utf8/check
1696
1697 websocket/libwebsocket.a: $(go_websocket_files) bufio.gox bytes.gox \
1698                 container/vector.gox crypto/md5.gox crypto/tls.gox \
1699                 encoding/binary.gox fmt.gox http.gox io.gox net.gox os.gox \
1700                 rand.gox strings.gox
1701         $(BUILDARCHIVE)
1702 websocket/libwebsocket.la: websocket/libwebsocket.a
1703 websocket/check: $(CHECK_DEPS)
1704         $(CHECK)
1705 .PHONY: websocket/check
1706
1707 xml/libxml.a: $(go_xml_files) bufio.gox bytes.gox io.gox os.gox reflect.gox \
1708                 strconv.gox strings.gox unicode.gox utf8.gox
1709         $(BUILDARCHIVE)
1710 xml/libxml.la: xml/libxml.a
1711 xml/check: $(CHECK_DEPS)
1712         $(CHECK)
1713 .PHONY: xml/check
1714
1715 archive/libtar.a: $(go_archive_tar_files) bytes.gox io.gox os.gox strconv.gox \
1716                 strings.gox
1717         $(BUILDARCHIVE)
1718 archive/libtar.la: archive/libtar.a
1719 archive/tar/check: $(CHECK_DEPS)
1720         @$(MKDIR_P) archive/tar
1721         $(CHECK)
1722 .PHONY: archive/tar/check
1723
1724 archive/libzip.a: $(go_archive_zip_files) bufio.gox bytes.gox \
1725                 compress/flate.gox hash.gox hash/crc32.gox \
1726                 encoding/binary.gox io.gox os.gox
1727         $(BUILDARCHIVE)
1728 archive/libzip.la: archive/libzip.a
1729 archive/zip/check: $(CHECK_DEPS)
1730         @$(MKDIR_P) archive/zip
1731         $(CHECK)
1732 .PHONY: archive/zip/check
1733
1734 compress/libflate.a: $(go_compress_flate_files) bufio.gox io.gox math.gox \
1735                 os.gox sort.gox strconv.gox
1736         $(BUILDARCHIVE)
1737 compress/libflate.la: compress/libflate.a
1738 compress/flate/check: $(CHECK_DEPS)
1739         @$(MKDIR_P) compress/flate
1740         $(CHECK)
1741 .PHONY: compress/flate/check
1742
1743 compress/libgzip.a: $(go_compress_gzip_files) bufio.gox compress/flate.gox \
1744                 hash.gox hash/crc32.gox io.gox os.gox
1745         $(BUILDARCHIVE)
1746 compress/libgzip.la: compress/libgzip.a
1747 compress/gzip/check: $(CHECK_DEPS)
1748         @$(MKDIR_P) compress/gzip
1749         $(CHECK)
1750 .PHONY: compress/gzip/check
1751
1752 compress/libzlib.a: $(go_compress_zlib_files) bufio.gox compress/flate.gox \
1753                 hash.gox hash/adler32.gox io.gox os.gox
1754         $(BUILDARCHIVE)
1755 compress/libzlib.la: compress/libzlib.a
1756 compress/zlib/check: $(CHECK_DEPS)
1757         @$(MKDIR_P) compress/zlib
1758         $(CHECK)
1759 .PHONY: compress/zlib/check
1760
1761 container/libheap.a: $(go_container_heap_files) sort.gox
1762         $(BUILDARCHIVE)
1763 container/libheap.la: container/libheap.a
1764 container/heap/check: $(CHECK_DEPS)
1765         @$(MKDIR_P) container/heap
1766         $(CHECK)
1767 .PHONY: container/heap/check
1768
1769 container/liblist.a: $(go_container_list_files)
1770         $(BUILDARCHIVE)
1771 container/liblist.la: container/liblist.a
1772 container/list/check: $(CHECK_DEPS)
1773         @$(MKDIR_P) container/list
1774         $(CHECK)
1775 .PHONY: container/list/check
1776
1777 container/libring.a: $(go_container_ring_files)
1778         $(BUILDARCHIVE)
1779 container/libring.la: container/libring.a
1780 container/ring/check: $(CHECK_DEPS)
1781         @$(MKDIR_P) container/ring
1782         $(CHECK)
1783 .PHONY: container/ring/check
1784
1785 container/libvector.a: $(go_container_vector_files)
1786         $(BUILDARCHIVE)
1787 container/libvector.la: container/libvector.a
1788 container/vector/check: $(CHECK_DEPS)
1789         @$(MKDIR_P) container/vector
1790         $(CHECK)
1791 .PHONY: container/vector/check
1792
1793 crypto/libaes.a: $(go_crypto_aes_files) os.gox strconv.gox
1794         $(BUILDARCHIVE)
1795 crypto/libaes.la: crypto/libaes.a
1796 crypto/aes/check: $(CHECK_DEPS)
1797         @$(MKDIR_P) crypto/aes
1798         $(CHECK)
1799 .PHONY: crypto/aes/check
1800
1801 crypto/libblock.a: $(go_crypto_block_files) fmt.gox io.gox os.gox strconv.gox
1802         $(BUILDARCHIVE)
1803 crypto/libblock.la: crypto/libblock.a
1804 crypto/block/check: $(CHECK_DEPS)
1805         @$(MKDIR_P) crypto/block
1806         $(CHECK)
1807 .PHONY: crypto/block/check
1808
1809 crypto/libblowfish.a: $(go_crypto_blowfish_files) os.gox strconv.gox
1810         $(BUILDARCHIVE)
1811 crypto/libblowfish.la: crypto/libblowfish.a
1812 crypto/blowfish/check: $(CHECK_DEPS)
1813         @$(MKDIR_P) crypto/blowfish
1814         $(CHECK)
1815 .PHONY: crypto/blowfish/check
1816
1817 crypto/libcast5.a: $(go_crypto_cast5_files) os.gox
1818         $(BUILDARCHIVE)
1819 crypto/libcast5.la: crypto/libcast5.a
1820 crypt/cast5/check: $(CHECK_DEPS)
1821         @$(MKDIR_P) crypto/cast5
1822         $(CHECK)
1823 .PHONY: crypto/cast5/check
1824
1825 crypto/libhmac.a: $(go_crypto_hmac_files) crypto/md5.gox crypto/sha1.gox \
1826                 hash.gox os.gox
1827         $(BUILDARCHIVE)
1828 crypto/libhmac.la: crypto/libhmac.a
1829 crypto/hmac/check: $(CHECK_DEPS)
1830         @$(MKDIR_P) crypto/hmac
1831         $(CHECK)
1832 .PHONY: crypto/hmac/check
1833
1834 crypto/libmd4.a: $(go_crypto_md4_files) hash.gox os.gox
1835         $(BUILDARCHIVE)
1836 crypto/libmd4.la: crypto/libmd4.a
1837 crypto/md4/check: $(CHECK_DEPS)
1838         @$(MKDIR_P) crypto/md4
1839         $(CHECK)
1840 .PHONY: crypto/md4/check
1841
1842 crypto/libmd5.a: $(go_crypto_md5_files) hash.gox os.gox
1843         $(BUILDARCHIVE)
1844 crypto/libmd5.la: crypto/libmd5.a
1845 crypto/md5/check: $(CHECK_DEPS)
1846         @$(MKDIR_P) crypto/md5
1847         $(CHECK)
1848 .PHONY: crypto/md5/check
1849
1850 crypto/libocsp.a: $(go_crypto_ocsp_files) asn1.gox crypto/rsa.gox \
1851                 crypto/sha1.gox crypto/x509.gox os.gox time.gox
1852         $(BUILDARCHIVE)
1853 crypto/libocsp.la: crypto/libocsp.a
1854 crypto/ocsp/check: $(CHECK_DEPS)
1855         @$(MKDIR_P) crypto/ocsp
1856         $(CHECK)
1857 .PHONY: crypto/ocsp/check
1858
1859 crypto/librand.a: $(go_crypto_rand_files) crypto/aes.gox io.gox os.gox \
1860                 sync.gox time.gox
1861         $(BUILDARCHIVE)
1862 crypto/librand.la: crypto/librand.a
1863 crypto/rand/check: $(CHECK_DEPS)
1864         @$(MKDIR_P) crypto/rand
1865         $(CHECK)
1866 .PHONY: crypto/rand/check
1867
1868 crypto/librc4.a: $(go_crypto_rc4_files) os.gox strconv.gox
1869         $(BUILDARCHIVE)
1870 crypto/librc4.la: crypto/librc4.a
1871 crypto/rc4/check: $(CHECK_DEPS)
1872         @$(MKDIR_P) crypto/rc4
1873         $(CHECK)
1874 .PHONY: crypto/rc4/check
1875
1876 crypto/libripemd160.a: $(go_crypto_ripemd160_files) hash.gox os.gox
1877         $(BUILDARCHIVE)
1878 crypto/libripemd160.la: crypto/libripemd160.a
1879 crypto/ripemd160/check: $(CHECK_DEPS)
1880         @$(MKDIR_P) crypto/ripemd160
1881         $(CHECK)
1882 .PHONY: crypto/ripemd160/check
1883
1884 crypto/librsa.a: $(go_crypto_rsa_files) big.gox crypto/sha1.gox \
1885                 crypto/subtle.gox encoding/hex.gox hash.gox io.gox os.gox
1886         $(BUILDARCHIVE)
1887 crypto/librsa.la: crypto/librsa.a
1888 crypto/rsa/check: $(CHECK_DEPS)
1889         @$(MKDIR_P) crypto/rsa
1890         $(CHECK)
1891 .PHONY: crypto/rsa/check
1892
1893 crypto/libsha1.a: $(go_crypto_sha1_files) hash.gox os.gox
1894         $(BUILDARCHIVE)
1895 crypto/libsha1.la: crypto/libsha1.a
1896 crypto/sha1/check: $(CHECK_DEPS)
1897         @$(MKDIR_P) crypto/sha1
1898         $(CHECK)
1899 .PHONY: crypto/sha1/check
1900
1901 crypto/libsha256.a: $(go_crypto_sha256_files) hash.gox os.gox
1902         $(BUILDARCHIVE)
1903 crypto/libsha256.la: crypto/libsha256.a
1904 crypto/sha256/check: $(CHECK_DEPS)
1905         @$(MKDIR_P) crypto/sha256
1906         $(CHECK)
1907 .PHONY: crypto/sha256/check
1908
1909 crypto/libsha512.a: $(go_crypto_sha512_files) hash.gox os.gox
1910         $(BUILDARCHIVE)
1911 crypto/libsha512.la: crypto/libsha512.a
1912 crypto/sha512/check: $(CHECK_DEPS)
1913         @$(MKDIR_P) crypto/sha512
1914         $(CHECK)
1915 .PHONY: crypto/sha512/check
1916
1917 crypto/libsubtle.a: $(go_crypto_subtle_files)
1918         $(BUILDARCHIVE)
1919 crypto/libsubtle.la: crypto/libsubtle.a
1920 crypto/subtle/check: $(CHECK_DEPS)
1921         @$(MKDIR_P) crypto/subtle
1922         $(CHECK)
1923 .PHONY: crypto/subtle/check
1924
1925 crypto/libtls.a: $(go_crypto_tls_files) bufio.gox bytes.gox container/list.gox \
1926                 crypto/hmac.gox crypto/md5.gox crypto/rc4.gox crypto/rand.gox \
1927                 crypto/rsa.gox crypto/sha1.gox crypto/subtle.gox \
1928                 crypto/rsa.gox crypto/x509.gox encoding/pem.gox fmt.gox \
1929                 hash.gox io.gox io/ioutil.gox net.gox os.gox strings.gox \
1930                 sync.gox time.gox
1931         $(BUILDARCHIVE)
1932 crypto/libtls.la: crypto/libtls.a
1933 crypto/tls/check: $(CHECK_DEPS)
1934         @$(MKDIR_P) crypto/tls
1935         $(CHECK)
1936 .PHONY: crypto/tls/check
1937
1938 crypto/libx509.a: $(go_crypto_x509_files) asn1.gox big.gox \
1939                 container/vector.gox crypto/rsa.gox crypto/sha1.gox hash.gox \
1940                 os.gox strings.gox time.gox
1941         $(BUILDARCHIVE)
1942 crypto/libx509.la: crypto/libx509.a
1943 crypto/x509/check: $(CHECK_DEPS)
1944         @$(MKDIR_P) crypto/x509
1945         $(CHECK)
1946 .PHONY: crypto/x509/check
1947
1948 crypto/libxtea.a: $(go_crypto_xtea_files) os.gox strconv.gox
1949         $(BUILDARCHIVE)
1950 crypto/libxtea.la: crypto/libxtea.a
1951 crypto/xtea/check: $(CHECK_DEPS)
1952         @$(MKDIR_P) crypto/xtea
1953         $(CHECK)
1954 .PHONY: crypto/xtea/check
1955
1956 debug/libdwarf.a: $(go_debug_dwarf_files) encoding/binary.gox os.gox \
1957                 strconv.gox
1958         $(BUILDARCHIVE)
1959 debug/libdwarf.la: debug/libdwarf.a
1960 debug/dwarf/check: $(CHECK_DEPS)
1961         @$(MKDIR_P) debug/dwarf
1962         $(CHECK)
1963 .PHONY: debug/dwarf/check
1964
1965 debug/libelf.a: $(go_debug_elf_files) bytes.gox debug/dwarf.gox \
1966                 encoding/binary.gox fmt.gox io.gox os.gox strconv.gox
1967         $(BUILDARCHIVE)
1968 debug/libelf.la: debug/libelf.a
1969 debug/elf/check: $(CHECK_DEPS)
1970         @$(MKDIR_P) debug/elf
1971         $(CHECK)
1972 .PHONY: debug/elf/check
1973
1974 debug/libgosym.a: $(go_debug_gosym_files) encoding/binary.gox fmt.gox os.gox \
1975                 strconv.gox strings.gox
1976         $(BUILDARCHIVE)
1977 debug/libgosym.la: debug/libgosym.a
1978 debug/gosym/check: $(CHECK_DEPS)
1979         @$(MKDIR_P) debug/gosym
1980         $(CHECK)
1981 .PHONY: debug/gosym/check
1982
1983 debug/libmacho.a: $(go_debug_macho_files) bytes.gox debug/dwarf.gox \
1984                 encoding/binary.gox fmt.gox io.gox os.gox strconv.gox
1985         $(BUILDARCHIVE)
1986 debug/libmacho.la: debug/libmacho.a
1987 debug/macho/check: $(CHECK_DEPS)
1988         @$(MKDIR_P) debug/macho
1989         $(CHECK)
1990 .PHONY: debug/macho/check
1991
1992 debug/libpe.a: $(go_debug_pe_files) debug/dwarf.gox encoding/binary.gox \
1993                 fmt.gox io.gox os.gox strconv.gox
1994         $(BUILDARCHIVE)
1995 debug/libpe.la: debug/libpe.a
1996 debug/pe/check: $(CHECK_DEPS)
1997         @$(MKDIR_P) debug/pe
1998         $(CHECK)
1999 .PHONY: debug/pe/check
2000
2001 debug/libproc.a: $(go_debug_proc_files) container/vector.gox fmt.gox \
2002                 io/ioutil.gox os.gox runtime.gox strconv.gox strings.gox \
2003                 sync.gox syscall.gox
2004         $(BUILDARCHIVE)
2005 debug/libproc.la: debug/libproc.a
2006 debug/proc/check: $(CHECK_DEPS)
2007         @$(MKDIR_P) debug/proc
2008         $(CHECK)
2009 .PHONY: debug/proc/check
2010
2011 encoding/libascii85.a: $(go_encoding_ascii85_files) io.gox os.gox strconv.gox
2012         $(BUILDARCHIVE)
2013 encoding/libascii85.la: encoding/libascii85.a
2014 encoding/ascii85/check: $(CHECK_DEPS)
2015         @$(MKDIR_P) encoding/ascii85
2016         $(CHECK)
2017 .PHONY: encoding/ascii85/check
2018
2019 encoding/libbase64.a: $(go_encoding_base64_files) io.gox os.gox strconv.gox
2020         $(BUILDARCHIVE)
2021 encoding/libbase64.la: encoding/libbase64.a
2022 encoding/base64/check: $(CHECK_DEPS)
2023         @$(MKDIR_P) encoding/base64
2024         $(CHECK)
2025 .PHONY: encoding/base64/check
2026
2027 encoding/libbinary.a: $(go_encoding_binary_files) io.gox math.gox os.gox \
2028                 reflect.gox
2029         $(BUILDARCHIVE)
2030 encoding/libbinary.la: encoding/libbinary.a
2031 encoding/binary/check: $(CHECK_DEPS)
2032         @$(MKDIR_P) encoding/binary
2033         $(CHECK)
2034 .PHONY: encoding/binary/check
2035
2036 encoding/libgit85.a: $(go_encoding_git85_files) bytes.gox io.gox os.gox \
2037                 strconv.gox
2038         $(BUILDARCHIVE)
2039 encoding/libgit85.la: encoding/libgit85.a
2040 encoding/git85/check: $(CHECK_DEPS)
2041         @$(MKDIR_P) encoding/git85
2042         $(CHECK)
2043 .PHONY: encoding/git85/check
2044
2045 encoding/libhex.a: $(go_encoding_hex_files) os.gox strconv.gox
2046         $(BUILDARCHIVE)
2047 encoding/libhex.la: encoding/libhex.a
2048 encoding/hex/check: $(CHECK_DEPS)
2049         @$(MKDIR_P) encoding/hex
2050         $(CHECK)
2051 .PHONY: encoding/hex/check
2052
2053 encoding/libpem.a: $(go_encoding_pem_files) bytes.gox encoding/base64.gox
2054         $(BUILDARCHIVE)
2055 encoding/libpem.la: encoding/libpem.a
2056 encoding/pem/check: $(CHECK_DEPS)
2057         @$(MKDIR_P) encoding/pem
2058         $(CHECK)
2059 .PHONY: encoding/pem/check
2060
2061 exp/libdatafmt.a: $(go_exp_datafmt_files) bytes.gox container/vector.gox \
2062                 fmt.gox go/scanner.gox go/token.gox io.gox os.gox reflect.gox \
2063                 runtime.gox strconv.gox strings.gox
2064         $(BUILDARCHIVE)
2065 exp/libdatafmt.la: exp/libdatafmt.a
2066 exp/datafmt/check: $(CHECK_DEPS)
2067         @$(MKDIR_P) exp/datafmt
2068         $(CHECK)
2069 .PHONY: exp/datafmt/check
2070
2071 exp/libdraw.a: $(go_exp_draw_files) image.gox os.gox
2072         $(BUILDARCHIVE)
2073 exp/libdraw.la: exp/libdraw.a
2074 exp/draw/check: $(CHECK_DEPS)
2075         @$(MKDIR_P) exp/draw
2076         $(CHECK)
2077 .PHONY: exp/draw/check
2078
2079 exp/libeval.a: $(go_exp_eval_files) big.gox go/ast.gox go/parser.gox \
2080                 go/scanner.gox go/token.gox fmt.gox log.gox strconv.gox \
2081                 strings.gox os.gox reflect.gox runtime.gox sort.gox template.gox
2082         $(BUILDARCHIVE)
2083 exp/libeval.la: exp/libeval.a
2084 exp/eval/check: $(CHECK_DEPS)
2085         @$(MKDIR_P) exp/eval
2086         $(CHECK)
2087 .PHONY: exp/eval/check
2088
2089 go/libast.a: $(go_go_ast_files) fmt.gox go/token.gox io.gox os.gox \
2090                 reflect.gox unicode.gox utf8.gox
2091         $(BUILDARCHIVE)
2092 go/libast.la: go/libast.a
2093 go/ast/check: $(CHECK_DEPS)
2094         @$(MKDIR_P) go/ast
2095         $(CHECK)
2096 .PHONY: go/ast/check
2097
2098 go/libdoc.a: $(go_go_doc_files) go/ast.gox go/token.gox io.gox regexp.gox \
2099                 sort.gox strings.gox template.gox
2100         $(BUILDARCHIVE)
2101 go/libdoc.la: go/libdoc.a
2102 go/doc/check: $(CHECK_DEPS)
2103         @$(MKDIR_P) go/doc
2104         $(CHECK)
2105 .PHONY: go/doc/check
2106
2107 go/libparser.a: $(go_go_parser_files) bytes.gox fmt.gox go/ast.gox \
2108                 go/scanner.gox go/token.gox io.gox io/ioutil.gox os.gox \
2109                 path.gox strings.gox
2110         $(BUILDARCHIVE)
2111 go/libparser.la: go/libparser.a
2112 go/parser/check: $(CHECK_DEPS)
2113         @$(MKDIR_P) go/parser
2114         $(CHECK)
2115 .PHONY: go/parser/check
2116
2117 go/libprinter.a: $(go_go_printer_files) bytes.gox fmt.gox go/ast.gox \
2118                 go/token.gox io.gox os.gox reflect.gox runtime.gox \
2119                 strings.gox tabwriter.gox
2120         $(BUILDARCHIVE)
2121 go/libprinter.la: go/libprinter.a
2122 go/printer/check: $(CHECK_DEPS)
2123         @$(MKDIR_P) go/printer
2124         $(CHECK)
2125 .PHONY: go/printer/check
2126
2127 go/libscanner.a: $(go_go_scanner_files) bytes.gox container/vector.gox fmt.gox \
2128                 go/token.gox io.gox os.gox sort.gox strconv.gox unicode.gox \
2129                 utf8.gox
2130         $(BUILDARCHIVE)
2131 go/libscanner.la: go/libscanner.a
2132 go/scanner/check: $(CHECK_DEPS)
2133         @$(MKDIR_P) go/scanner
2134         $(CHECK)
2135 .PHONY: go/scanner/check
2136
2137 go/libtoken.a: $(go_go_token_files) fmt.gox strconv.gox
2138         $(BUILDARCHIVE)
2139 go/libtoken.la: go/libtoken.a
2140 go/token/check: $(CHECK_DEPS)
2141         @$(MKDIR_P) go/token
2142         $(CHECK)
2143 .PHONY: go/token/check
2144
2145 go/libtypechecker.a: $(go_go_typechecker_files) fmt.gox go/ast.gox \
2146                 go/token.gox go/scanner.gox os.gox
2147         $(BUILDARCHIVE)
2148 go/libtypechecker.la: go/libtypechecker.a
2149 go/typechecker/check: $(CHECK_DEPS)
2150         @$(MKDIR_P) go/typechecker
2151         $(CHECK)
2152 .PHONY: go/typechecker/check
2153
2154 hash/libadler32.a: $(go_hash_adler32_files) hash.gox os.gox
2155         $(BUILDARCHIVE)
2156 hash/libadler32.la: hash/libadler32.a
2157 hash/adler32/check: $(CHECK_DEPS)
2158         @$(MKDIR_P) hash/adler32
2159         $(CHECK)
2160 .PHONY: hash/adler32/check
2161
2162 hash/libcrc32.a: $(go_hash_crc32_files) hash.gox os.gox
2163         $(BUILDARCHIVE)
2164 hash/libcrc32.la: hash/libcrc32.a
2165 hash/crc32/check: $(CHECK_DEPS)
2166         @$(MKDIR_P) hash/crc32
2167         $(CHECK)
2168 .PHONY: hash/crc32/check
2169
2170 hash/libcrc64.a: $(go_hash_crc64_files) hash.gox os.gox
2171         $(BUILDARCHIVE)
2172 hash/libcrc64.la: hash/libcrc64.a
2173 hash/crc64/check: $(CHECK_DEPS)
2174         @$(MKDIR_P) hash/crc64
2175         $(CHECK)
2176 .PHONY: hash/crc64/check
2177
2178 http/libpprof.a: $(go_http_pprof_files) bufio.gox fmt.gox http.gox os.gox \
2179                 runtime.gox runtime/pprof.gox strconv.gox strings.gox
2180         $(BUILDARCHIVE)
2181 http/libpprof.la: http/libpprof.a
2182 http/pprof/check: $(CHECK_DEPS)
2183         @$(MKDIR_P) http/pprof
2184         $(CHECK)
2185 .PHONY: http/pprof/check
2186
2187 image/libjpeg.a: $(go_image_jpeg_files) bufio.gox image.gox io.gox os.gox
2188         $(BUILDARCHIVE)
2189 image/libjpeg.la: image/libjpeg.a
2190 image/jpeg/check: $(CHECK_DEPS)
2191         @$(MKDIR_P) image/jpeg
2192         $(CHECK)
2193 .PHONY: image/jpeg/check
2194
2195 image/libpng.a: $(go_image_png_files) bufio.gox compress/zlib.gox fmt.gox \
2196                 hash.gox hash/crc32.gox image.gox io.gox os.gox strconv.gox
2197         $(BUILDARCHIVE)
2198 image/libpng.la: image/libpng.a
2199 image/png/check: $(CHECK_DEPS)
2200         @$(MKDIR_P) image/png
2201         $(CHECK)
2202 .PHONY: image/png/check
2203
2204 index/libsuffixarray.a: $(go_index_suffixarray_files) bytes.gox \
2205                 container/vector.gox sort.gox
2206         $(BUILDARCHIVE)
2207 index/libsuffixarray.la: index/libsuffixarray.a
2208 index/suffixarray/check: $(CHECK_DEPS)
2209         @$(MKDIR_P) index/suffixarray
2210         $(CHECK)
2211 .PHONY: index/suffixarray/check
2212
2213 io/libioutil.a: $(go_io_ioutil_files) bytes.gox io.gox os.gox sort.gox \
2214                 strconv.gox
2215         $(BUILDARCHIVE)
2216 io/libioutil.la: io/libioutil.a
2217 io/ioutil/check: $(CHECK_DEPS)
2218         @$(MKDIR_P) io/ioutil
2219         $(CHECK)
2220 .PHONY: io/ioutil/check
2221
2222 mime/libmultipart.a: $(go_mime_multipart_files) bufio.gox bytes.gox io.gox \
2223                 mime.gox os.gox regexp.gox strings.gox
2224         $(BUILDARCHIVE)
2225 mime/libmultipart.la: mime/libmultipart.a
2226 mime/multipart/check: $(CHECK_DEPS)
2227         @$(MKDIR_P) mime/multipart
2228         $(CHECK)
2229 .PHONY: mime/multipart/check
2230
2231 net/libdict.a: $(go_net_dict_files) container/vector.gox net/textproto.gox \
2232                 os.gox strconv.gox strings.gox
2233         $(BUILDARCHIVE)
2234 net/libdict.la: net/libdict.a
2235
2236 net/libtextproto.a: $(go_net_textproto_files) bufio.gox bytes.gox \
2237                 container/vector.gox fmt.gox io.gox io/ioutil.gox net.gox \
2238                 os.gox strconv.gox sync.gox
2239         $(BUILDARCHIVE)
2240 net/libtextproto.la: net/libtextproto.a
2241 net/textproto/check: $(CHECK_DEPS)
2242         @$(MKDIR_P) net/textproto
2243         $(CHECK)
2244 .PHONY: net/textproto/check
2245
2246 os/libsignal.a: $(go_os_signal_files) runtime.gox strconv.gox
2247         $(BUILDARCHIVE)
2248 os/libsignal.la: os/libsignal.a
2249 os/signal/check: $(CHECK_DEPS)
2250         @$(MKDIR_P) os/signal
2251         $(CHECK)
2252 .PHONY: os/signal/check
2253
2254 unix.go: $(srcdir)/go/os/signal/mkunix.sh sysinfo.go
2255         $(SHELL) $(srcdir)/go/os/signal/mkunix.sh sysinfo.go > $@.tmp
2256         mv -f $@.tmp $@
2257
2258 rpc/libjsonrpc.a: $(go_rpc_jsonrpc_files) fmt.gox io.gox json.gox net.gox \
2259                 os.gox rpc.gox sync.gox
2260         $(BUILDARCHIVE)
2261 rpc/libjsonrpc.la: rpc/libjsonrpc.a
2262 rpc/jsonrpc/check: $(CHECK_DEPS)
2263         @$(MKDIR_P) rpc/jsonrpc
2264         $(CHECK)
2265 .PHONY: rpc/jsonrpc/check
2266
2267 runtime/libpprof.a: $(go_runtime_pprof_files) bufio.gox fmt.gox io.gox os.gox \
2268                 runtime.gox
2269         $(BUILDARCHIVE)
2270 runtime/libpprof.la: runtime/libpprof.a
2271 runtime/pprof/check: $(CHECK_DEPS)
2272         @$(MKDIR_P) runtime/pprof
2273         $(CHECK)
2274 .PHONY: runtime/pprof/check
2275
2276 testing/libiotest.a: $(go_testing_iotest_files) io.gox log.gox os.gox
2277         $(BUILDARCHIVE)
2278 testing/libiotest.la: testing/libiotest.a
2279 testing/iotest/check: $(CHECK_DEPS)
2280         @$(MKDIR_P) testing/iotest
2281         $(CHECK)
2282 .PHONY: testing/iotest/check
2283
2284 testing/libquick.a: $(go_testing_quick_files) flag.gox fmt.gox math.gox \
2285                 os.gox rand.gox reflect.gox strings.gox
2286         $(BUILDARCHIVE)
2287 testing/libquick.la: testing/libquick.a
2288 testing/quick/check: $(CHECK_DEPS)
2289         @$(MKDIR_P) testing/quick
2290         $(CHECK)
2291 .PHONY: testing/quick/check
2292
2293 testing/libscript.a: $(go_testing_script_files) fmt.gox os.gox rand.gox \
2294                 reflect.gox strings.gox
2295         $(BUILDARCHIVE)
2296 testing/libscript.la: testing/libscript.a
2297 testing/script/check: $(CHECK_DEPS)
2298         @$(MKDIR_P) testing/script
2299         $(CHECK)
2300 .PHONY: testing/script/check
2301
2302 sysinfo.go: $(srcdir)/mksysinfo.sh config.h
2303         $(SHELL) $(srcdir)/mksysinfo.sh
2304 syscalls/libsyscall.a: $(go_syscall_files) $(go_syscall_c_files) sync.gox
2305         rm -f syscall.gox syscalls/libsyscall.a
2306         test -d syscalls || $(MKDIR_P) syscalls
2307         files=`echo $^ | sed -e 's/[^ ]*\.gox//g' -e's/[^ ]*\.c//g'`; \
2308         $(LTGOCOMPILE) -c -fgo-prefix="libgo_syscalls" -o syscalls/syscall.$(OBJEXT) $$files
2309         $(LTCOMPILE) -c -o syscalls/errno.$(OBJEXT) $(srcdir)/syscalls/errno.c
2310         $(AR) rc syscalls/libsyscall.a syscalls/syscall.$(OBJEXT) syscalls/errno.$(OBJEXT)
2311 syscalls/libsyscall.la: syscalls/libsyscall.a
2312         $(LINK) syscalls/syscall.lo syscalls/errno.lo
2313
2314 # How to build a .gox file from a .a file.
2315 BUILDGOX = \
2316         set -e; \
2317         rm -f $@.$(OBJEXT); \
2318         $(CC) -r -nostdlib -o $@.$(OBJEXT) -Wl,--whole-archive $<; \
2319         $(OBJCOPY) -j .go_export $@.$(OBJEXT) $@.tmp; \
2320         mv -f $@.tmp $@; \
2321         rm -f $@.$(OBJEXT)
2322
2323 asn1.gox: asn1/libasn1.a
2324         $(BUILDGOX)
2325 big.gox: big/libbig.a
2326         $(BUILDGOX)
2327 bufio.gox: bufio/libbufio.a
2328         $(BUILDGOX)
2329 bytes.gox: bytes/libbytes.a
2330         $(BUILDGOX)
2331 cmath.gox: cmath/libcmath.a
2332         $(BUILDGOX)
2333 ebnf.gox: ebnf/libebnf.a
2334         $(BUILDGOX)
2335 exec.gox: exec/libexec.a
2336         $(BUILDGOX)
2337 expvar.gox: expvar/libexpvar.a
2338         $(BUILDGOX)
2339 flag.gox: flag/libflag.a
2340         $(BUILDGOX)
2341 fmt.gox: fmt/libfmt.a
2342         $(BUILDGOX)
2343 gob.gox: gob/libgob.a
2344         $(BUILDGOX)
2345 hash.gox: hash/libhash.a
2346         $(BUILDGOX)
2347 html.gox: html/libhtml.a
2348         $(BUILDGOX)
2349 http.gox: http/libhttp.a
2350         $(BUILDGOX)
2351 image.gox: image/libimage.a
2352         $(BUILDGOX)
2353 io.gox: io/libio.a
2354         $(BUILDGOX)
2355 json.gox: json/libjson.a
2356         $(BUILDGOX)
2357 log.gox: log/liblog.a
2358         $(BUILDGOX)
2359 math.gox: math/libmath.a
2360         $(BUILDGOX)
2361 mime.gox: mime/libmime.a
2362         $(BUILDGOX)
2363 net.gox: net/libnet.a
2364         $(BUILDGOX)
2365 netchan.gox: netchan/libnetchan.a
2366         $(BUILDGOX)
2367 os.gox: os/libos.a
2368         $(BUILDGOX)
2369 patch.gox: patch/libpatch.a
2370         $(BUILDGOX)
2371 path.gox: path/libpath.a
2372         $(BUILDGOX)
2373 rand.gox: rand/librand.a
2374         $(BUILDGOX)
2375 reflect.gox: reflect/libreflect.a
2376         $(BUILDGOX)
2377 regexp.gox: regexp/libregexp.a
2378         $(BUILDGOX)
2379 rpc.gox: rpc/librpc.a
2380         $(BUILDGOX)
2381 runtime.gox: runtime/libruntime.a
2382         $(BUILDGOX)
2383 scanner.gox: scanner/libscanner.a
2384         $(BUILDGOX)
2385 smtp.gox: smtp/libsmtp.a
2386         $(BUILDGOX)
2387 sort.gox: sort/libsort.a
2388         $(BUILDGOX)
2389 strconv.gox: strconv/libstrconv.a
2390         $(BUILDGOX)
2391 strings.gox: strings/libstrings.a
2392         $(BUILDGOX)
2393 sync.gox: sync/libsync.a
2394         $(BUILDGOX)
2395 syslog.gox: syslog/libsyslog.a
2396         $(BUILDGOX)
2397 syscall.gox: syscalls/libsyscall.a
2398         $(BUILDGOX)
2399 tabwriter.gox: tabwriter/libtabwriter.a
2400         $(BUILDGOX)
2401 template.gox: template/libtemplate.a
2402         $(BUILDGOX)
2403 testing.gox: testing/libtesting.a
2404         $(BUILDGOX)
2405 time.gox: time/libtime.a
2406         $(BUILDGOX)
2407 try.gox: try/libtry.a
2408         $(BUILDGOX)
2409 unicode.gox: unicode/libunicode.a
2410         $(BUILDGOX)
2411 utf16.gox: utf16/libutf16.a
2412         $(BUILDGOX)
2413 utf8.gox: utf8/libutf8.a
2414         $(BUILDGOX)
2415 websocket.gox: websocket/libwebsocket.a
2416         $(BUILDGOX)
2417 xml.gox: xml/libxml.a
2418         $(BUILDGOX)
2419
2420 archive/tar.gox: archive/libtar.a
2421         $(BUILDGOX)
2422 archive/zip.gox: archive/libzip.a
2423         $(BUILDGOX)
2424
2425 compress/flate.gox: compress/libflate.a
2426         $(BUILDGOX)
2427 compress/gzip.gox: compress/libgzip.a
2428         $(BUILDGOX)
2429 compress/zlib.gox: compress/libzlib.a
2430         $(BUILDGOX)
2431
2432 container/heap.gox: container/libheap.a
2433         $(BUILDGOX)
2434 container/list.gox: container/liblist.a
2435         $(BUILDGOX)
2436 container/ring.gox: container/libring.a
2437         $(BUILDGOX)
2438 container/vector.gox: container/libvector.a
2439         $(BUILDGOX)
2440
2441 crypto/aes.gox: crypto/libaes.a
2442         $(BUILDGOX)
2443 crypto/block.gox: crypto/libblock.a
2444         $(BUILDGOX)
2445 crypto/blowfish.gox: crypto/libblowfish.a
2446         $(BUILDGOX)
2447 crypto/cast5.gox: crypto/libcast5.a
2448         $(BUILDGOX)
2449 crypto/hmac.gox: crypto/libhmac.a
2450         $(BUILDGOX)
2451 crypto/md4.gox: crypto/libmd4.a
2452         $(BUILDGOX)
2453 crypto/md5.gox: crypto/libmd5.a
2454         $(BUILDGOX)
2455 crypto/ocsp.gox: crypto/libocsp.a
2456         $(BUILDGOX)
2457 crypto/rand.gox: crypto/librand.a
2458         $(BUILDGOX)
2459 crypto/rc4.gox: crypto/librc4.a
2460         $(BUILDGOX)
2461 crypto/ripemd160.gox: crypto/libripemd160.a
2462         $(BUILDGOX)
2463 crypto/rsa.gox: crypto/librsa.a
2464         $(BUILDGOX)
2465 crypto/sha1.gox: crypto/libsha1.a
2466         $(BUILDGOX)
2467 crypto/sha256.gox: crypto/libsha256.a
2468         $(BUILDGOX)
2469 crypto/sha512.gox: crypto/libsha512.a
2470         $(BUILDGOX)
2471 crypto/subtle.gox: crypto/libsubtle.a
2472         $(BUILDGOX)
2473 crypto/tls.gox: crypto/libtls.a
2474         $(BUILDGOX)
2475 crypto/x509.gox: crypto/libx509.a
2476         $(BUILDGOX)
2477 crypto/xtea.gox: crypto/libxtea.a
2478         $(BUILDGOX)
2479
2480 debug/dwarf.gox: debug/libdwarf.a
2481         $(BUILDGOX)
2482 debug/elf.gox: debug/libelf.a
2483         $(BUILDGOX)
2484 debug/gosym.gox: debug/libgosym.a
2485         $(BUILDGOX)
2486 debug/macho.gox: debug/libmacho.a
2487         $(BUILDGOX)
2488 debug/pe.gox: debug/libpe.a
2489         $(BUILDGOX)
2490 debug/proc.gox: debug/libproc.a
2491         $(BUILDGOX)
2492
2493 encoding/ascii85.gox: encoding/libascii85.a
2494         $(BUILDGOX)
2495 encoding/base64.gox: encoding/libbase64.a
2496         $(BUILDGOX)
2497 encoding/binary.gox: encoding/libbinary.a
2498         $(BUILDGOX)
2499 encoding/git85.gox: encoding/libgit85.a
2500         $(BUILDGOX)
2501 encoding/hex.gox: encoding/libhex.a
2502         $(BUILDGOX)
2503 encoding/pem.gox: encoding/libpem.a
2504         $(BUILDGOX)
2505
2506 exp/datafmt.gox: exp/libdatafmt.a
2507         $(BUILDGOX)
2508 exp/draw.gox: exp/libdraw.a
2509         $(BUILDGOX)
2510 exp/eval.gox: exp/libeval.a
2511         $(BUILDGOX)
2512
2513 go/ast.gox: go/libast.a
2514         $(BUILDGOX)
2515 go/doc.gox: go/libdoc.a
2516         $(BUILDGOX)
2517 go/parser.gox: go/libparser.a
2518         $(BUILDGOX)
2519 go/printer.gox: go/libprinter.a
2520         $(BUILDGOX)
2521 go/scanner.gox: go/libscanner.a
2522         $(BUILDGOX)
2523 go/token.gox: go/libtoken.a
2524         $(BUILDGOX)
2525 go/typechecker.gox: go/libtypechecker.a
2526         $(BUILDGOX)
2527
2528 hash/adler32.gox: hash/libadler32.a
2529         $(BUILDGOX)
2530 hash/crc32.gox: hash/libcrc32.a
2531         $(BUILDGOX)
2532 hash/crc64.gox: hash/libcrc64.a
2533         $(BUILDGOX)
2534
2535 http/pprof.gox: http/libpprof.a
2536         $(BUILDGOX)
2537
2538 image/jpeg.gox: image/libjpeg.a
2539         $(BUILDGOX)
2540 image/png.gox: image/libpng.a
2541         $(BUILDGOX)
2542
2543 index/suffixarray.gox: index/libsuffixarray.a
2544         $(BUILDGOX)
2545
2546 io/ioutil.gox: io/libioutil.a
2547         $(BUILDGOX)
2548
2549 mime/multipart.gox: mime/libmultipart.a
2550         $(BUILDGOX)
2551
2552 net/dict.gox: net/libdict.a
2553         $(BUILDGOX)
2554 net/textproto.gox: net/libtextproto.a
2555         $(BUILDGOX)
2556
2557 os/signal.gox: os/libsignal.a
2558         $(BUILDGOX)
2559
2560 rpc/jsonrpc.gox: rpc/libjsonrpc.a
2561         $(BUILDGOX)
2562
2563 runtime/pprof.gox: runtime/libpprof.a
2564         $(BUILDGOX)
2565
2566 testing/iotest.gox: testing/libiotest.a
2567         $(BUILDGOX)
2568 testing/quick.gox: testing/libquick.a
2569         $(BUILDGOX)
2570 testing/script.gox: testing/libscript.a
2571         $(BUILDGOX)
2572
2573 TEST_PACKAGES = \
2574         asn1/check \
2575         big/check \
2576         bufio/check \
2577         bytes/check \
2578         cmath/check \
2579         ebnf/check \
2580         exec/check \
2581         expvar/check \
2582         flag/check \
2583         fmt/check \
2584         gob/check \
2585         html/check \
2586         http/check \
2587         io/check \
2588         json/check \
2589         log/check \
2590         math/check \
2591         mime/check \
2592         net/check \
2593         netchan/check \
2594         os/check \
2595         patch/check \
2596         path/check \
2597         rand/check \
2598         reflect/check \
2599         regexp/check \
2600         rpc/check \
2601         runtime/check \
2602         scanner/check \
2603         smtp/check \
2604         sort/check \
2605         strconv/check \
2606         strings/check \
2607         sync/check \
2608         syslog/check \
2609         tabwriter/check \
2610         template/check \
2611         time/check \
2612         try/check \
2613         unicode/check \
2614         utf16/check \
2615         utf8/check \
2616         websocket/check \
2617         xml/check \
2618         archive/tar/check \
2619         archive/zip/check \
2620         compress/flate/check \
2621         compress/gzip/check \
2622         compress/zlib/check \
2623         container/heap/check \
2624         container/list/check \
2625         container/ring/check \
2626         container/vector/check \
2627         crypto/aes/check \
2628         crypto/block/check \
2629         crypto/blowfish/check \
2630         crypto/cast5/check \
2631         crypto/hmac/check \
2632         crypto/md4/check \
2633         crypto/md5/check \
2634         crypto/ocsp/check \
2635         crypto/rand/check \
2636         crypto/rc4/check \
2637         crypto/ripemd160/check \
2638         crypto/rsa/check \
2639         crypto/sha1/check \
2640         crypto/sha256/check \
2641         crypto/sha512/check \
2642         crypto/subtle/check \
2643         crypto/tls/check \
2644         crypto/x509/check \
2645         crypto/xtea/check \
2646         debug/dwarf/check \
2647         debug/elf/check \
2648         debug/macho/check \
2649         debug/pe/check \
2650         encoding/ascii85/check \
2651         encoding/base64/check \
2652         encoding/binary/check \
2653         encoding/git85/check \
2654         encoding/hex/check \
2655         encoding/pem/check \
2656         exp/datafmt/check \
2657         exp/draw/check \
2658         exp/eval/check \
2659         go/parser/check \
2660         go/printer/check \
2661         go/scanner/check \
2662         go/typechecker/check \
2663         hash/adler32/check \
2664         hash/crc32/check \
2665         hash/crc64/check \
2666         image/png/check \
2667         index/suffixarray/check \
2668         io/ioutil/check \
2669         mime/multipart/check \
2670         net/textproto/check \
2671         os/signal/check \
2672         rpc/jsonrpc/check \
2673         testing/quick/check \
2674         testing/script/check
2675
2676 check-recursive: $(TEST_PACKAGES)
2677
2678 mostlyclean-local:
2679         find . -name '*.lo' -print | xargs $(LIBTOOL) --mode=clean rm -f
2680         find . -name '*.$(OBJEXT)' -print | xargs rm -f
2681
2682 clean-local:
2683         find . -name '*.la' -print | xargs $(LIBTOOL) --mode=clean rm -f
2684         find . -name '*.a' -print | xargs rm -f
2685
2686 CLEANFILES = *.go *.gox goc2c *.c s-version