OSDN Git Service

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