libgo: Irix 6 patches.
[gcc.git] / libgo / Makefile.am
1 # Makefile.am -- Go library Makefile.
2
3 # Copyright 2009 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 crypto.gox \
109 ebnf.gox \
110 exec.gox \
111 expvar.gox \
112 flag.gox \
113 fmt.gox \
114 gob.gox \
115 hash.gox \
116 html.gox \
117 http.gox \
118 image.gox \
119 io.gox \
120 json.gox \
121 log.gox \
122 math.gox \
123 mime.gox \
124 net.gox \
125 netchan.gox \
126 os.gox \
127 patch.gox \
128 path.gox \
129 rand.gox \
130 reflect.gox \
131 regexp.gox \
132 rpc.gox \
133 runtime.gox \
134 scanner.gox \
135 smtp.gox \
136 sort.gox \
137 strconv.gox \
138 strings.gox \
139 sync.gox \
140 syscall.gox \
141 syslog.gox \
142 tabwriter.gox \
143 template.gox \
144 testing.gox \
145 time.gox \
146 try.gox \
147 unicode.gox \
148 utf16.gox \
149 utf8.gox \
150 websocket.gox \
151 xml.gox
152
153 toolexeclibgoarchivedir = $(toolexeclibgodir)/archive
154
155 toolexeclibgoarchive_DATA = \
156 archive/tar.gox \
157 archive/zip.gox
158
159 toolexeclibgocompressdir = $(toolexeclibgodir)/compress
160
161 toolexeclibgocompress_DATA = \
162 compress/bzip2.gox \
163 compress/flate.gox \
164 compress/gzip.gox \
165 compress/lzw.gox \
166 compress/zlib.gox
167
168 toolexeclibgocontainerdir = $(toolexeclibgodir)/container
169
170 toolexeclibgocontainer_DATA = \
171 container/heap.gox \
172 container/list.gox \
173 container/ring.gox \
174 container/vector.gox
175
176 toolexeclibgocryptodir = $(toolexeclibgodir)/crypto
177
178 toolexeclibgocrypto_DATA = \
179 crypto/aes.gox \
180 crypto/blowfish.gox \
181 crypto/cast5.gox \
182 crypto/cipher.gox \
183 crypto/des.gox \
184 crypto/dsa.gox \
185 crypto/ecdsa.gox \
186 crypto/elliptic.gox \
187 crypto/hmac.gox \
188 crypto/md4.gox \
189 crypto/md5.gox \
190 crypto/ocsp.gox \
191 crypto/openpgp.gox \
192 crypto/rand.gox \
193 crypto/rc4.gox \
194 crypto/ripemd160.gox \
195 crypto/rsa.gox \
196 crypto/sha1.gox \
197 crypto/sha256.gox \
198 crypto/sha512.gox \
199 crypto/subtle.gox \
200 crypto/tls.gox \
201 crypto/twofish.gox \
202 crypto/x509.gox \
203 crypto/xtea.gox
204
205 toolexeclibgocryptoopenpgpdir = $(toolexeclibgocryptodir)/openpgp
206
207 toolexeclibgocryptoopenpgp_DATA = \
208 crypto/openpgp/armor.gox \
209 crypto/openpgp/error.gox \
210 crypto/openpgp/packet.gox \
211 crypto/openpgp/s2k.gox
212
213 toolexeclibgodebugdir = $(toolexeclibgodir)/debug
214
215 toolexeclibgodebug_DATA = \
216 debug/dwarf.gox \
217 debug/elf.gox \
218 debug/gosym.gox \
219 debug/macho.gox \
220 debug/pe.gox \
221 debug/proc.gox
222
223 toolexeclibgoencodingdir = $(toolexeclibgodir)/encoding
224
225 toolexeclibgoencoding_DATA = \
226 encoding/ascii85.gox \
227 encoding/base32.gox \
228 encoding/base64.gox \
229 encoding/binary.gox \
230 encoding/line.gox \
231 encoding/git85.gox \
232 encoding/hex.gox \
233 encoding/pem.gox
234
235 toolexeclibgoexpdir = $(toolexeclibgodir)/exp
236
237 toolexeclibgoexp_DATA = \
238 exp/datafmt.gox \
239 exp/draw.gox \
240 exp/eval.gox
241
242 toolexeclibgogodir = $(toolexeclibgodir)/go
243
244 toolexeclibgogo_DATA = \
245 go/ast.gox \
246 go/doc.gox \
247 go/parser.gox \
248 go/printer.gox \
249 go/scanner.gox \
250 go/token.gox \
251 go/typechecker.gox
252
253 toolexeclibgohashdir = $(toolexeclibgodir)/hash
254
255 toolexeclibgohash_DATA = \
256 hash/adler32.gox \
257 hash/crc32.gox \
258 hash/crc64.gox \
259 hash/fnv.gox
260
261 toolexeclibgohttpdir = $(toolexeclibgodir)/http
262
263 toolexeclibgohttp_DATA = \
264 http/cgi.gox \
265 http/httptest.gox \
266 http/pprof.gox
267
268 toolexeclibgoimagedir = $(toolexeclibgodir)/image
269
270 toolexeclibgoimage_DATA = \
271 image/jpeg.gox \
272 image/png.gox
273
274 toolexeclibgoindexdir = $(toolexeclibgodir)/index
275
276 toolexeclibgoindex_DATA = \
277 index/suffixarray.gox
278
279 toolexeclibgoiodir = $(toolexeclibgodir)/io
280
281 toolexeclibgoio_DATA = \
282 io/ioutil.gox
283
284 toolexeclibgomimedir = $(toolexeclibgodir)/mime
285
286 toolexeclibgomime_DATA = \
287 mime/multipart.gox
288
289 toolexeclibgonetdir = $(toolexeclibgodir)/net
290
291 toolexeclibgonet_DATA = \
292 net/dict.gox \
293 net/textproto.gox
294
295 toolexeclibgoosdir = $(toolexeclibgodir)/os
296
297 if LIBGO_IS_LINUX
298 # os_inotify_gox = os/inotify.gox
299 os_inotify_gox =
300 else
301 os_inotify_gox =
302 endif
303
304 toolexeclibgoos_DATA = \
305 $(os_inotify_gox) \
306 os/signal.gox
307
308 toolexeclibgopathdir = $(toolexeclibgodir)/path
309
310 toolexeclibgopath_DATA = \
311 path/filepath.gox
312
313 toolexeclibgorpcdir = $(toolexeclibgodir)/rpc
314
315 toolexeclibgorpc_DATA = \
316 rpc/jsonrpc.gox
317
318 toolexeclibgoruntimedir = $(toolexeclibgodir)/runtime
319
320 toolexeclibgoruntime_DATA = \
321 runtime/debug.gox \
322 runtime/pprof.gox
323
324 toolexeclibgosyncdir = $(toolexeclibgodir)/sync
325
326 toolexeclibgosync_DATA = \
327 sync/atomic.gox
328
329 toolexeclibgotestingdir = $(toolexeclibgodir)/testing
330
331 toolexeclibgotesting_DATA = \
332 testing/iotest.gox \
333 testing/quick.gox \
334 testing/script.gox
335
336 if HAVE_SYS_MMAN_H
337 runtime_mem_file = runtime/mem.c
338 else
339 runtime_mem_file = runtime/mem_posix_memalign.c
340 endif
341
342 if LIBGO_IS_RTEMS
343 rtems_task_variable_add_file = runtime/rtems-task-variable-add.c
344 else
345 rtems_task_variable_add_file =
346 endif
347
348 runtime_files = \
349 runtime/go-append.c \
350 runtime/go-assert.c \
351 runtime/go-assert-interface.c \
352 runtime/go-byte-array-to-string.c \
353 runtime/go-breakpoint.c \
354 runtime/go-caller.c \
355 runtime/go-can-convert-interface.c \
356 runtime/go-cgo.c \
357 runtime/go-chan-cap.c \
358 runtime/go-chan-len.c \
359 runtime/go-check-interface.c \
360 runtime/go-close.c \
361 runtime/go-construct-map.c \
362 runtime/go-convert-interface.c \
363 runtime/go-copy.c \
364 runtime/go-defer.c \
365 runtime/go-deferred-recover.c \
366 runtime/go-eface-compare.c \
367 runtime/go-eface-val-compare.c \
368 runtime/go-getgoroot.c \
369 runtime/go-go.c \
370 runtime/go-gomaxprocs.c \
371 runtime/go-int-array-to-string.c \
372 runtime/go-int-to-string.c \
373 runtime/go-interface-compare.c \
374 runtime/go-interface-eface-compare.c \
375 runtime/go-interface-val-compare.c \
376 runtime/go-lock-os-thread.c \
377 runtime/go-map-delete.c \
378 runtime/go-map-index.c \
379 runtime/go-map-len.c \
380 runtime/go-map-range.c \
381 runtime/go-nanotime.c \
382 runtime/go-new-channel.c \
383 runtime/go-new-map.c \
384 runtime/go-new.c \
385 runtime/go-note.c \
386 runtime/go-panic.c \
387 runtime/go-panic-defer.c \
388 runtime/go-print.c \
389 runtime/go-rec-big.c \
390 runtime/go-rec-nb-big.c \
391 runtime/go-rec-nb-small.c \
392 runtime/go-rec-small.c \
393 runtime/go-recover.c \
394 runtime/go-reflect.c \
395 runtime/go-reflect-call.c \
396 runtime/go-reflect-chan.c \
397 runtime/go-reflect-map.c \
398 runtime/go-rune.c \
399 runtime/go-runtime-error.c \
400 runtime/go-sched.c \
401 runtime/go-select.c \
402 runtime/go-semacquire.c \
403 runtime/go-send-big.c \
404 runtime/go-send-nb-big.c \
405 runtime/go-send-nb-small.c \
406 runtime/go-send-small.c \
407 runtime/go-signal.c \
408 runtime/go-strcmp.c \
409 runtime/go-string-to-byte-array.c \
410 runtime/go-string-to-int-array.c \
411 runtime/go-strplus.c \
412 runtime/go-strslice.c \
413 runtime/go-trampoline.c \
414 runtime/go-type-eface.c \
415 runtime/go-type-error.c \
416 runtime/go-type-identity.c \
417 runtime/go-type-interface.c \
418 runtime/go-type-string.c \
419 runtime/go-typedesc-equal.c \
420 runtime/go-typestring.c \
421 runtime/go-unreflect.c \
422 runtime/go-unsafe-new.c \
423 runtime/go-unsafe-newarray.c \
424 runtime/go-unsafe-pointer.c \
425 runtime/go-unwind.c \
426 runtime/cpuprof.c \
427 runtime/mcache.c \
428 runtime/mcentral.c \
429 $(runtime_mem_file) \
430 runtime/mfinal.c \
431 runtime/mfixalloc.c \
432 runtime/mgc0.c \
433 runtime/mheap.c \
434 runtime/msize.c \
435 runtime/proc.c \
436 runtime/thread.c \
437 $(rtems_task_variable_add_file) \
438 chan.c \
439 iface.c \
440 malloc.c \
441 map.c \
442 mprof.c \
443 reflect.c \
444 sigqueue.c \
445 string.c
446
447 goc2c.$(OBJEXT): runtime/goc2c.c
448 $(CC_FOR_BUILD) -c $(CFLAGS_FOR_BUILD) $<
449
450 goc2c: goc2c.$(OBJEXT)
451 $(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) -o $@ $<
452
453 malloc.c: $(srcdir)/runtime/malloc.goc goc2c
454 ./goc2c --gcc --go-prefix libgo_runtime $< > $@.tmp
455 mv -f $@.tmp $@
456
457 mprof.c: $(srcdir)/runtime/mprof.goc goc2c
458 ./goc2c --gcc --go-prefix libgo_runtime $< > $@.tmp
459 mv -f $@.tmp $@
460
461 reflect.c: $(srcdir)/runtime/reflect.goc goc2c
462 ./goc2c --gcc --go-prefix libgo_reflect $< > $@.tmp
463 mv -f $@.tmp $@
464
465 sigqueue.c: $(srcdir)/runtime/sigqueue.goc goc2c
466 ./goc2c --gcc --go-prefix libgo_runtime $< > $@.tmp
467 mv -f $@.tmp $@
468
469 %.c: $(srcdir)/runtime/%.goc goc2c
470 ./goc2c --gcc $< > $@.tmp
471 mv -f $@.tmp $@
472
473 go_asn1_files = \
474 go/asn1/asn1.go \
475 go/asn1/common.go \
476 go/asn1/marshal.go
477
478 go_big_files = \
479 go/big/arith.go \
480 go/big/int.go \
481 go/big/nat.go \
482 go/big/rat.go
483
484 go_bufio_files = \
485 go/bufio/bufio.go
486
487 go_bytes_files = \
488 go/bytes/buffer.go \
489 go/bytes/bytes.go \
490 go/bytes/bytes_decl.go
491 go_bytes_c_files = \
492 go/bytes/indexbyte.c
493
494 go_cmath_files = \
495 go/cmath/abs.go \
496 go/cmath/asin.go \
497 go/cmath/conj.go \
498 go/cmath/exp.go \
499 go/cmath/isinf.go \
500 go/cmath/isnan.go \
501 go/cmath/log.go \
502 go/cmath/phase.go \
503 go/cmath/polar.go \
504 go/cmath/pow.go \
505 go/cmath/rect.go \
506 go/cmath/sin.go \
507 go/cmath/sqrt.go \
508 go/cmath/tan.go
509
510 go_crypto_files = \
511 go/crypto/crypto.go
512
513 go_ebnf_files = \
514 go/ebnf/ebnf.go \
515 go/ebnf/parser.go
516
517 go_exec_files = \
518 go/exec/exec.go \
519 go/exec/lp_unix.go
520
521 go_expvar_files = \
522 go/expvar/expvar.go
523
524 go_flag_files = \
525 go/flag/flag.go
526
527 go_fmt_files = \
528 go/fmt/doc.go \
529 go/fmt/format.go \
530 go/fmt/print.go \
531 go/fmt/scan.go
532
533 go_gob_files = \
534 go/gob/decode.go \
535 go/gob/decoder.go \
536 go/gob/doc.go \
537 go/gob/encode.go \
538 go/gob/encoder.go \
539 go/gob/error.go \
540 go/gob/type.go
541
542 go_hash_files = \
543 go/hash/hash.go
544
545 go_html_files = \
546 go/html/doc.go \
547 go/html/entity.go \
548 go/html/escape.go \
549 go/html/parse.go \
550 go/html/token.go
551
552 go_http_files = \
553 go/http/chunked.go \
554 go/http/client.go \
555 go/http/cookie.go \
556 go/http/dump.go \
557 go/http/fs.go \
558 go/http/header.go \
559 go/http/lex.go \
560 go/http/persist.go \
561 go/http/request.go \
562 go/http/response.go \
563 go/http/server.go \
564 go/http/status.go \
565 go/http/transfer.go \
566 go/http/transport.go \
567 go/http/url.go
568
569 go_image_files = \
570 go/image/color.go \
571 go/image/format.go \
572 go/image/geom.go \
573 go/image/image.go \
574 go/image/names.go
575
576 go_io_files = \
577 go/io/multi.go \
578 go/io/io.go \
579 go/io/pipe.go
580
581 go_json_files = \
582 go/json/decode.go \
583 go/json/encode.go \
584 go/json/indent.go \
585 go/json/scanner.go \
586 go/json/stream.go
587
588 go_log_files = \
589 go/log/log.go
590
591 go_math_files = \
592 go/math/acosh.go \
593 go/math/asin.go \
594 go/math/asinh.go \
595 go/math/atan.go \
596 go/math/atanh.go \
597 go/math/atan2.go \
598 go/math/bits.go \
599 go/math/cbrt.go \
600 go/math/const.go \
601 go/math/copysign.go \
602 go/math/erf.go \
603 go/math/exp.go \
604 go/math/exp_port.go \
605 go/math/exp2.go \
606 go/math/expm1.go \
607 go/math/fabs.go \
608 go/math/fdim.go \
609 go/math/floor.go \
610 go/math/fmod.go \
611 go/math/frexp.go \
612 go/math/gamma.go \
613 go/math/hypot.go \
614 go/math/hypot_port.go \
615 go/math/j0.go \
616 go/math/j1.go \
617 go/math/jn.go \
618 go/math/ldexp.go \
619 go/math/lgamma.go \
620 go/math/log.go \
621 go/math/log1p.go \
622 go/math/log10.go \
623 go/math/logb.go \
624 go/math/modf.go \
625 go/math/nextafter.go \
626 go/math/pow.go \
627 go/math/pow10.go \
628 go/math/remainder.go \
629 go/math/signbit.go \
630 go/math/sin.go \
631 go/math/sincos.go \
632 go/math/sinh.go \
633 go/math/sqrt.go \
634 go/math/sqrt_port.go \
635 go/math/tan.go \
636 go/math/tanh.go \
637 go/math/unsafe.go
638
639 go_mime_files = \
640 go/mime/grammar.go \
641 go/mime/mediatype.go \
642 go/mime/type.go
643
644 if LIBGO_IS_RTEMS
645 go_net_fd_os_file = go/net/fd_select.go
646 go_net_newpollserver_file = go/net/newpollserver_rtems.go
647 else # !LIBGO_IS_RTEMS
648 if LIBGO_IS_LINUX
649 go_net_fd_os_file = go/net/fd_linux.go
650 go_net_newpollserver_file = go/net/newpollserver.go
651 else # !LIBGO_IS_LINUX && !LIBGO_IS_RTEMS
652 # By default use select with pipes. Most systems should have
653 # something better.
654 go_net_fd_os_file = go/net/fd_select.go
655 go_net_newpollserver_file = go/net/newpollserver.go
656 endif # !LIBGO_IS_LINUX
657 endif # !LIBGO_IS_RTEMS
658
659 go_net_files = \
660 go/net/cgo_stub.go \
661 go/net/dial.go \
662 go/net/dnsclient.go \
663 go/net/dnsconfig.go \
664 go/net/dnsmsg.go \
665 $(go_net_newpollserver_file) \
666 go/net/fd.go \
667 $(go_net_fd_os_file) \
668 go/net/file.go \
669 go/net/hosts.go \
670 go/net/ip.go \
671 go/net/iprawsock.go \
672 go/net/ipsock.go \
673 go/net/lookup.go \
674 go/net/net.go \
675 go/net/parse.go \
676 go/net/pipe.go \
677 go/net/port.go \
678 go/net/sock.go \
679 go/net/tcpsock.go \
680 go/net/udpsock.go \
681 go/net/unixsock.go
682
683 go_netchan_files = \
684 go/netchan/common.go \
685 go/netchan/export.go \
686 go/netchan/import.go
687
688 if LIBGO_IS_SOLARIS
689 if LIBGO_IS_386
690 go_os_dir_file = go/os/dir_largefile.go
691 else
692 if LIBGO_IS_SPARC
693 go_os_dir_file = go/os/dir_largefile.go
694 else
695 go_os_dir_file = go/os/dir_regfile.go
696 endif
697 endif
698 else
699 if LIBGO_IS_LINUX
700 go_os_dir_file = go/os/dir_largefile.go
701 else
702 go_os_dir_file = go/os/dir_regfile.go
703 endif
704 endif
705
706 if LIBGO_IS_LINUX
707 go_os_sys_file = go/os/sys_linux.go
708 else
709 if LIBGO_IS_SOLARIS
710 go_os_sys_file = go/os/sys_uname.go
711 else
712 if LIBGO_IS_IRIX
713 go_os_sys_file = go/os/sys_uname.go
714 else
715 if LIBGO_IS_RTEMS
716 go_os_sys_file = go/os/sys_uname.go
717 else
718 go_os_sys_file = go/os/sys_bsd.go
719 endif
720 endif
721 endif
722 endif
723
724 go_os_files = \
725 $(go_os_dir_file) \
726 go/os/dir.go \
727 go/os/env.go \
728 go/os/env_unix.go \
729 go/os/error.go \
730 go/os/error_posix.go \
731 go/os/exec.go \
732 go/os/exec_posix.go \
733 go/os/exec_unix.go \
734 go/os/file.go \
735 go/os/file_posix.go \
736 go/os/file_unix.go \
737 go/os/getwd.go \
738 go/os/path.go \
739 go/os/proc.go \
740 go/os/stat.go \
741 $(go_os_sys_file) \
742 go/os/time.go \
743 go/os/types.go
744
745 go_patch_files = \
746 go/patch/apply.go \
747 go/patch/git.go \
748 go/patch/patch.go \
749 go/patch/textdiff.go
750
751 go_path_files = \
752 go/path/match.go \
753 go/path/path.go
754
755 go_rand_files = \
756 go/rand/exp.go \
757 go/rand/normal.go \
758 go/rand/rand.go \
759 go/rand/rng.go \
760 go/rand/zipf.go
761
762 go_reflect_files = \
763 go/reflect/deepequal.go \
764 go/reflect/type.go \
765 go/reflect/value.go
766
767 go_regexp_files = \
768 go/regexp/regexp.go
769
770 go_rpc_files = \
771 go/rpc/client.go \
772 go/rpc/debug.go \
773 go/rpc/server.go
774
775 go_runtime_files = \
776 go/runtime/debug.go \
777 go/runtime/error.go \
778 go/runtime/extern.go \
779 go/runtime/mem.go \
780 go/runtime/sig.go \
781 go/runtime/softfloat64.go \
782 go/runtime/type.go \
783 version.go
784
785 version.go: s-version; @true
786 s-version: Makefile
787 rm -f version.go.tmp
788 echo "package runtime" > version.go.tmp
789 echo 'const defaultGoroot = "$(prefix)"' >> version.go.tmp
790 echo 'const theVersion = "'`$(CC) --version | sed 1q`'"' >> version.go.tmp
791 echo 'const theGoarch = "'$(GOARCH)'"' >> version.go.tmp
792 echo 'const theGoos = "'$(GOOS)'"' >> version.go.tmp
793 $(SHELL) $(srcdir)/../move-if-change version.go.tmp version.go
794 $(STAMP) $@
795
796 go_scanner_files = \
797 go/scanner/scanner.go
798
799 go_smtp_files = \
800 go/smtp/auth.go \
801 go/smtp/smtp.go
802
803 go_sort_files = \
804 go/sort/search.go \
805 go/sort/sort.go
806
807 go_strconv_files = \
808 go/strconv/atob.go \
809 go/strconv/atof.go \
810 go/strconv/atoi.go \
811 go/strconv/decimal.go \
812 go/strconv/ftoa.go \
813 go/strconv/itoa.go \
814 go/strconv/quote.go
815
816 go_strings_files = \
817 go/strings/reader.go \
818 go/strings/strings.go
819
820 go_sync_files = \
821 go/sync/cond.go \
822 go/sync/mutex.go \
823 go/sync/once.go \
824 go/sync/rwmutex.go \
825 go/sync/waitgroup.go
826
827 if LIBGO_IS_SOLARIS
828 go_syslog_file = go/syslog/syslog_libc.go
829 else
830 if LIBGO_IS_IRIX
831 go_syslog_file = go/syslog/syslog_libc.go
832 else
833 go_syslog_file = go/syslog/syslog_unix.go
834 endif
835 endif
836
837 go_syslog_files = \
838 go/syslog/syslog.go \
839 $(go_syslog_file)
840 go_syslog_c_files = \
841 go/syslog/syslog_c.c
842
843 go_tabwriter_files = \
844 go/tabwriter/tabwriter.go
845
846 go_template_files = \
847 go/template/format.go \
848 go/template/template.go
849
850 go_testing_files = \
851 go/testing/benchmark.go \
852 go/testing/testing.go
853
854 go_time_files = \
855 go/time/format.go \
856 go/time/sleep.go \
857 go/time/sys.go \
858 go/time/tick.go \
859 go/time/time.go \
860 go/time/zoneinfo_unix.go
861
862 go_try_files = \
863 go/try/try.go
864
865 go_unicode_files = \
866 go/unicode/casetables.go \
867 go/unicode/digit.go \
868 go/unicode/letter.go \
869 go/unicode/tables.go
870
871 go_utf16_files = \
872 go/utf16/utf16.go
873
874 go_utf8_files = \
875 go/utf8/string.go \
876 go/utf8/utf8.go
877
878 go_websocket_files = \
879 go/websocket/client.go \
880 go/websocket/server.go \
881 go/websocket/websocket.go
882
883 go_xml_files = \
884 go/xml/read.go \
885 go/xml/xml.go
886
887 go_archive_tar_files = \
888 go/archive/tar/common.go \
889 go/archive/tar/reader.go \
890 go/archive/tar/writer.go
891
892 go_archive_zip_files = \
893 go/archive/zip/reader.go \
894 go/archive/zip/struct.go
895
896 go_compress_bzip2_files = \
897 go/compress/bzip2/bit_reader.go \
898 go/compress/bzip2/bzip2.go \
899 go/compress/bzip2/huffman.go \
900 go/compress/bzip2/move_to_front.go
901
902 go_compress_flate_files = \
903 go/compress/flate/deflate.go \
904 go/compress/flate/huffman_bit_writer.go \
905 go/compress/flate/huffman_code.go \
906 go/compress/flate/inflate.go \
907 go/compress/flate/reverse_bits.go \
908 go/compress/flate/token.go \
909 go/compress/flate/util.go
910
911 go_compress_gzip_files = \
912 go/compress/gzip/gzip.go \
913 go/compress/gzip/gunzip.go
914
915 go_compress_lzw_files = \
916 go/compress/lzw/reader.go \
917 go/compress/lzw/writer.go
918
919 go_compress_zlib_files = \
920 go/compress/zlib/reader.go \
921 go/compress/zlib/writer.go
922
923 go_container_heap_files = \
924 go/container/heap/heap.go
925
926 go_container_list_files = \
927 go/container/list/list.go
928
929 go_container_ring_files = \
930 go/container/ring/ring.go
931
932 go_container_vector_files = \
933 go/container/vector/defs.go \
934 go/container/vector/intvector.go \
935 go/container/vector/stringvector.go \
936 go/container/vector/vector.go
937
938 go_crypto_aes_files = \
939 go/crypto/aes/block.go \
940 go/crypto/aes/cipher.go \
941 go/crypto/aes/const.go
942 go_crypto_blowfish_files = \
943 go/crypto/blowfish/block.go \
944 go/crypto/blowfish/const.go \
945 go/crypto/blowfish/cipher.go
946 go_crypto_cast5_files = \
947 go/crypto/cast5/cast5.go
948 go_crypto_cipher_files = \
949 go/crypto/cipher/cbc.go \
950 go/crypto/cipher/cfb.go \
951 go/crypto/cipher/cipher.go \
952 go/crypto/cipher/ctr.go \
953 go/crypto/cipher/io.go \
954 go/crypto/cipher/ocfb.go \
955 go/crypto/cipher/ofb.go
956 go_crypto_des_files = \
957 go/crypto/des/block.go \
958 go/crypto/des/cipher.go \
959 go/crypto/des/const.go
960 go_crypto_dsa_files = \
961 go/crypto/dsa/dsa.go
962 go_crypto_ecdsa_files = \
963 go/crypto/ecdsa/ecdsa.go
964 go_crypto_elliptic_files = \
965 go/crypto/elliptic/elliptic.go
966 go_crypto_hmac_files = \
967 go/crypto/hmac/hmac.go
968 go_crypto_md4_files = \
969 go/crypto/md4/md4.go \
970 go/crypto/md4/md4block.go
971 go_crypto_md5_files = \
972 go/crypto/md5/md5.go \
973 go/crypto/md5/md5block.go
974 go_crypto_ocsp_files = \
975 go/crypto/ocsp/ocsp.go
976 go_crypto_openpgp_files = \
977 go/crypto/openpgp/canonical_text.go \
978 go/crypto/openpgp/keys.go \
979 go/crypto/openpgp/read.go \
980 go/crypto/openpgp/write.go
981 go_crypto_rand_files = \
982 go/crypto/rand/rand.go \
983 go/crypto/rand/rand_unix.go
984 go_crypto_rc4_files = \
985 go/crypto/rc4/rc4.go
986 go_crypto_ripemd160_files = \
987 go/crypto/ripemd160/ripemd160.go \
988 go/crypto/ripemd160/ripemd160block.go
989 go_crypto_rsa_files = \
990 go/crypto/rsa/pkcs1v15.go \
991 go/crypto/rsa/rsa.go
992 go_crypto_sha1_files = \
993 go/crypto/sha1/sha1.go \
994 go/crypto/sha1/sha1block.go
995 go_crypto_sha256_files = \
996 go/crypto/sha256/sha256.go \
997 go/crypto/sha256/sha256block.go
998 go_crypto_sha512_files = \
999 go/crypto/sha512/sha512.go \
1000 go/crypto/sha512/sha512block.go
1001 go_crypto_subtle_files = \
1002 go/crypto/subtle/constant_time.go
1003 go_crypto_tls_files = \
1004 go/crypto/tls/alert.go \
1005 go/crypto/tls/ca_set.go \
1006 go/crypto/tls/cipher_suites.go \
1007 go/crypto/tls/common.go \
1008 go/crypto/tls/conn.go \
1009 go/crypto/tls/handshake_client.go \
1010 go/crypto/tls/handshake_messages.go \
1011 go/crypto/tls/handshake_server.go \
1012 go/crypto/tls/key_agreement.go \
1013 go/crypto/tls/prf.go \
1014 go/crypto/tls/tls.go
1015 go_crypto_twofish_files = \
1016 go/crypto/twofish/twofish.go
1017 go_crypto_x509_files = \
1018 go/crypto/x509/x509.go
1019 go_crypto_xtea_files = \
1020 go/crypto/xtea/block.go \
1021 go/crypto/xtea/cipher.go
1022
1023 go_crypto_openpgp_armor_files = \
1024 go/crypto/openpgp/armor/armor.go \
1025 go/crypto/openpgp/armor/encode.go
1026 go_crypto_openpgp_error_files = \
1027 go/crypto/openpgp/error/error.go
1028 go_crypto_openpgp_packet_files = \
1029 go/crypto/openpgp/packet/compressed.go \
1030 go/crypto/openpgp/packet/encrypted_key.go \
1031 go/crypto/openpgp/packet/literal.go \
1032 go/crypto/openpgp/packet/one_pass_signature.go \
1033 go/crypto/openpgp/packet/packet.go \
1034 go/crypto/openpgp/packet/private_key.go \
1035 go/crypto/openpgp/packet/public_key.go \
1036 go/crypto/openpgp/packet/reader.go \
1037 go/crypto/openpgp/packet/signature.go \
1038 go/crypto/openpgp/packet/symmetric_key_encrypted.go \
1039 go/crypto/openpgp/packet/symmetrically_encrypted.go \
1040 go/crypto/openpgp/packet/userid.go
1041 go_crypto_openpgp_s2k_files = \
1042 go/crypto/openpgp/s2k/s2k.go
1043
1044 go_debug_dwarf_files = \
1045 go/debug/dwarf/buf.go \
1046 go/debug/dwarf/const.go \
1047 go/debug/dwarf/entry.go \
1048 go/debug/dwarf/open.go \
1049 go/debug/dwarf/type.go \
1050 go/debug/dwarf/unit.go
1051 go_debug_elf_files = \
1052 go/debug/elf/elf.go \
1053 go/debug/elf/file.go
1054 go_debug_gosym_files = \
1055 go/debug/gosym/pclntab.go \
1056 go/debug/gosym/symtab.go
1057 go_debug_macho_files = \
1058 go/debug/macho/file.go \
1059 go/debug/macho/macho.go
1060 go_debug_pe_files = \
1061 go/debug/pe/file.go \
1062 go/debug/pe/pe.go
1063
1064 go_debug_proc_files = \
1065 go/debug/proc/proc.go \
1066 go/debug/proc/proc_$(GOOS).go \
1067 $(GO_DEBUG_PROC_REGS_OS_ARCH_FILE)
1068
1069 go_encoding_ascii85_files = \
1070 go/encoding/ascii85/ascii85.go
1071 go_encoding_base32_files = \
1072 go/encoding/base32/base32.go
1073 go_encoding_base64_files = \
1074 go/encoding/base64/base64.go
1075 go_encoding_binary_files = \
1076 go/encoding/binary/binary.go
1077 go_encoding_git85_files = \
1078 go/encoding/git85/git.go
1079 go_encoding_hex_files = \
1080 go/encoding/hex/hex.go
1081 go_encoding_line_files = \
1082 go/encoding/line/line.go
1083 go_encoding_pem_files = \
1084 go/encoding/pem/pem.go
1085
1086 go_exp_datafmt_files = \
1087 go/exp/datafmt/datafmt.go \
1088 go/exp/datafmt/parser.go
1089 go_exp_draw_files = \
1090 go/exp/draw/draw.go \
1091 go/exp/draw/event.go
1092 go_exp_eval_files = \
1093 go/exp/eval/abort.go \
1094 go/exp/eval/bridge.go \
1095 go/exp/eval/compiler.go \
1096 go/exp/eval/expr.go \
1097 go/exp/eval/expr1.go \
1098 go/exp/eval/func.go \
1099 go/exp/eval/scope.go \
1100 go/exp/eval/stmt.go \
1101 go/exp/eval/type.go \
1102 go/exp/eval/typec.go \
1103 go/exp/eval/value.go \
1104 go/exp/eval/world.go
1105
1106 go_go_ast_files = \
1107 go/go/ast/ast.go \
1108 go/go/ast/filter.go \
1109 go/go/ast/print.go \
1110 go/go/ast/resolve.go \
1111 go/go/ast/scope.go \
1112 go/go/ast/walk.go
1113 go_go_doc_files = \
1114 go/go/doc/comment.go \
1115 go/go/doc/doc.go
1116 go_go_parser_files = \
1117 go/go/parser/interface.go \
1118 go/go/parser/parser.go
1119 go_go_printer_files = \
1120 go/go/printer/nodes.go \
1121 go/go/printer/printer.go
1122 go_go_scanner_files = \
1123 go/go/scanner/errors.go \
1124 go/go/scanner/scanner.go
1125 go_go_token_files = \
1126 go/go/token/position.go \
1127 go/go/token/token.go
1128 go_go_typechecker_files = \
1129 go/go/typechecker/scope.go \
1130 go/go/typechecker/type.go \
1131 go/go/typechecker/typechecker.go \
1132 go/go/typechecker/universe.go
1133
1134 go_hash_adler32_files = \
1135 go/hash/adler32/adler32.go
1136 go_hash_crc32_files = \
1137 go/hash/crc32/crc32.go
1138 go_hash_crc64_files = \
1139 go/hash/crc64/crc64.go
1140 go_hash_fnv_files = \
1141 go/hash/fnv/fnv.go
1142
1143 go_http_cgi_files = \
1144 go/http/cgi/child.go \
1145 go/http/cgi/host.go
1146 go_http_httptest_files = \
1147 go/http/httptest/recorder.go \
1148 go/http/httptest/server.go
1149 go_http_pprof_files = \
1150 go/http/pprof/pprof.go
1151
1152 go_image_jpeg_files = \
1153 go/image/jpeg/huffman.go \
1154 go/image/jpeg/idct.go \
1155 go/image/jpeg/reader.go
1156
1157 go_image_png_files = \
1158 go/image/png/reader.go \
1159 go/image/png/writer.go
1160
1161 go_index_suffixarray_files = \
1162 go/index/suffixarray/qsufsort.go \
1163 go/index/suffixarray/suffixarray.go
1164
1165 go_io_ioutil_files = \
1166 go/io/ioutil/ioutil.go \
1167 go/io/ioutil/tempfile.go
1168
1169 go_mime_multipart_files = \
1170 go/mime/multipart/multipart.go
1171
1172 go_net_dict_files = \
1173 go/net/dict/dict.go
1174
1175 go_net_textproto_files = \
1176 go/net/textproto/header.go \
1177 go/net/textproto/pipeline.go \
1178 go/net/textproto/reader.go \
1179 go/net/textproto/textproto.go \
1180 go/net/textproto/writer.go
1181
1182 go_os_inotify_files = \
1183 go/os/inotify/inotify_linux.go
1184
1185 go_os_signal_files = \
1186 go/os/signal/signal.go \
1187 unix.go
1188
1189 go_path_filepath_files = \
1190 go/path/filepath/match.go \
1191 go/path/filepath/path.go \
1192 go/path/filepath/path_unix.go
1193
1194 go_rpc_jsonrpc_files = \
1195 go/rpc/jsonrpc/client.go \
1196 go/rpc/jsonrpc/server.go
1197
1198 go_runtime_debug_files = \
1199 go/runtime/debug/stack.go
1200 go_runtime_pprof_files = \
1201 go/runtime/pprof/pprof.go
1202
1203 go_sync_atomic_files = \
1204 go/sync/atomic/doc.go
1205 go_sync_atomic_c_files = \
1206 go/sync/atomic/atomic.c
1207
1208 go_testing_iotest_files = \
1209 go/testing/iotest/logger.go \
1210 go/testing/iotest/reader.go \
1211 go/testing/iotest/writer.go
1212 go_testing_quick_files = \
1213 go/testing/quick/quick.go
1214 go_testing_script_files = \
1215 go/testing/script/script.go
1216
1217 # Define Syscall and Syscall6.
1218 if LIBGO_IS_RTEMS
1219 syscall_syscall_file = syscalls/syscall_stubs.go
1220 else
1221 syscall_syscall_file = syscalls/syscall.go
1222 endif
1223
1224 # Declare libc functions that vary for largefile systems.
1225 if LIBGO_IS_LINUX
1226 # Always use lseek64 on GNU/Linux.
1227 syscall_filesize_file = syscalls/sysfile_largefile.go
1228 syscall_stat_file = syscalls/sysfile_stat_largefile.go
1229 else # !LIBGO_IS_LINUX
1230 if LIBGO_IS_SOLARIS
1231 if LIBGO_IS_386
1232 # Use lseek64 on 32-bit Solaris/x86.
1233 syscall_filesize_file = syscalls/sysfile_largefile.go
1234 syscall_stat_file = syscalls/sysfile_stat_largefile.go
1235 else # !LIBGO_IS_386
1236 if LIBGO_IS_SPARC
1237 # Use lseek64 on 32-bit Solaris/SPARC.
1238 syscall_filesize_file = syscalls/sysfile_largefile.go
1239 syscall_stat_file = syscalls/sysfile_stat_largefile.go
1240 else # !LIBGO_IS_386 && !LIBGO_IS_SPARC
1241 # Use lseek on 64-bit Solaris.
1242 syscall_filesize_file = syscalls/sysfile_regfile.go
1243 syscall_stat_file = syscalls/sysfile_stat_regfile.go
1244 endif # !LIBGO_IS_386 && !LIBGO_IS_SPARC
1245 endif # !LIBGO_IS_SOLARIS
1246 else # !LIBGO_IS_LINUX && !LIBGO_IS_SOLARIS
1247 # Use lseek by default.
1248 syscall_filesize_file = syscalls/sysfile_regfile.go
1249 syscall_stat_file = syscalls/sysfile_stat_regfile.go
1250 endif # !LIBGO_IS_SOLARIS
1251 endif # !LIBGO_IS_LINUX
1252
1253
1254 # Define ForkExec, PtraceForkExec, and Exec.
1255 if LIBGO_IS_RTEMS
1256 syscall_exec_os_file = syscalls/exec_stubs.go
1257 else
1258 syscall_exec_os_file = syscalls/exec.go
1259 endif
1260
1261 # Define Wait4.
1262 if HAVE_WAIT4
1263 syscall_wait_file = syscalls/wait4.go
1264 else
1265 syscall_wait_file = syscalls/waitpid.go
1266 endif
1267
1268 # Define Sleep.
1269 if LIBGO_IS_RTEMS
1270 syscall_sleep_file = syscalls/sleep_rtems.go
1271 else
1272 syscall_sleep_file = syscalls/sleep_select.go
1273 endif
1274
1275 # Define Errstr.
1276 if LIBGO_IS_RTEMS
1277 syscall_errstr_file = syscalls/errstr_rtems.go
1278 else
1279 if HAVE_STRERROR_R
1280 syscall_errstr_file = syscalls/errstr.go
1281 else
1282 syscall_errstr_file = syscalls/errstr_nor.go
1283 endif
1284 endif
1285
1286 # Declare libc_strerror_r which is the Go name for strerror_r.
1287 if LIBGO_IS_RTEMS
1288 # RTEMS uses newlib in which strerror_r returns char *.
1289 syscall_errstr_decl_file = syscalls/errstr_decl_rtems.go
1290 else
1291 if LIBGO_IS_LINUX
1292 # On GNU/Linux the POSIX strerror_r is called __xpg_strerror_r.
1293 syscall_errstr_decl_file = syscalls/errstr_decl_linux.go
1294 else
1295 # On other systems we hope strerror_r is just strerror_r.
1296 syscall_errstr_decl_file = syscalls/errstr_decl.go
1297 endif
1298 endif
1299
1300 # Define socket sizes and types.
1301 if LIBGO_IS_LINUX
1302 syscall_socket_os_file = syscalls/socket_linux.go
1303 else
1304 if LIBGO_IS_SOLARIS
1305 syscall_socket_os_file = syscalls/socket_solaris.go
1306 else
1307 if LIBGO_IS_IRIX
1308 syscall_socket_os_file = syscalls/socket_irix.go
1309 else
1310 syscall_socket_os_file = syscalls/socket_bsd.go
1311 endif
1312 endif
1313 endif
1314
1315 # Support for epoll.
1316 if LIBGO_IS_LINUX
1317 syscall_socket_epoll_file = syscalls/socket_epoll.go
1318 else
1319 syscall_socket_epoll_file =
1320 endif
1321
1322 # Support for uname.
1323 if LIBGO_IS_SOLARIS
1324 if LIBGO_IS_386
1325 # 32-bit Solaris 2/x86 needs _nuname, handled in syscall_solaris_386.go.
1326 syscall_uname_file =
1327 else # !LIBGO_IS_386 && LIBGO_IS_SOLARIS
1328 syscall_uname_file = syscalls/syscall_uname.go
1329 endif
1330 else # !LIBGO_IS_SOLARIS
1331 syscall_uname_file = syscalls/syscall_uname.go
1332 endif
1333
1334 syscall_arch.go: s-syscall_arch; @true
1335 s-syscall_arch: Makefile
1336 rm -f syscall_arch.go.tmp
1337 echo "package syscall" > syscall_arch.go.tmp
1338 echo 'const ARCH = "'$(GOARCH)'"' >> syscall_arch.go.tmp
1339 echo 'const OS = "'$(GOOS)'"' >> syscall_arch.go.tmp
1340 $(SHELL) $(srcdir)/../move-if-change syscall_arch.go.tmp syscall_arch.go
1341 $(STAMP) $@
1342
1343 go_syscall_files = \
1344 $(syscall_errstr_file) \
1345 $(syscall_errstr_decl_file) \
1346 syscalls/exec_helpers.go \
1347 $(syscall_exec_os_file) \
1348 $(syscall_wait_file) \
1349 $(syscall_filesize_file) \
1350 $(syscall_stat_file) \
1351 $(syscall_sleep_file) \
1352 syscalls/socket.go \
1353 $(syscall_socket_os_file) \
1354 $(syscall_socket_epoll_file) \
1355 $(syscall_syscall_file) \
1356 $(syscall_uname_file) \
1357 syscalls/syscall_unix.go \
1358 syscalls/stringbyte.go \
1359 syscalls/syscall_$(GOOS).go \
1360 $(GO_SYSCALLS_SYSCALL_OS_ARCH_FILE) \
1361 syscalls/sysfile_posix.go \
1362 sysinfo.go \
1363 syscall_arch.go
1364 go_syscall_c_files = \
1365 syscalls/errno.c
1366
1367 if LIBGO_IS_LINUX
1368 # os_lib_inotify_lo = os/inotify.lo
1369 os_lib_inotify_lo =
1370 else
1371 os_lib_inotify_lo =
1372 endif
1373
1374 libgo_go_objs = \
1375 asn1/asn1.lo \
1376 big/big.lo \
1377 bufio/bufio.lo \
1378 bytes/bytes.lo \
1379 bytes/index.lo \
1380 cmath/cmath.lo \
1381 crypto/crypto.lo \
1382 ebnf/ebnf.lo \
1383 exec/exec.lo \
1384 expvar/expvar.lo \
1385 flag/flag.lo \
1386 fmt/fmt.lo \
1387 gob/gob.lo \
1388 hash/hash.lo \
1389 html/html.lo \
1390 http/http.lo \
1391 image/image.lo \
1392 io/io.lo \
1393 json/json.lo \
1394 log/log.lo \
1395 math/math.lo \
1396 mime/mime.lo \
1397 net/net.lo \
1398 netchan/netchan.lo \
1399 os/os.lo \
1400 patch/patch.lo \
1401 path/path.lo \
1402 rand/rand.lo \
1403 reflect/reflect.lo \
1404 regexp/regexp.lo \
1405 rpc/rpc.lo \
1406 runtime/runtime.lo \
1407 scanner/scanner.lo \
1408 smtp/smtp.lo \
1409 sort/sort.lo \
1410 strconv/strconv.lo \
1411 strings/strings.lo \
1412 sync/sync.lo \
1413 syslog/syslog.lo \
1414 syslog/syslog_c.lo \
1415 tabwriter/tabwriter.lo \
1416 template/template.lo \
1417 time/time.lo \
1418 try/try.lo \
1419 unicode/unicode.lo \
1420 utf16/utf16.lo \
1421 utf8/utf8.lo \
1422 websocket/websocket.lo \
1423 xml/xml.lo \
1424 archive/tar.lo \
1425 archive/zip.lo \
1426 compress/bzip2.lo \
1427 compress/flate.lo \
1428 compress/gzip.lo \
1429 compress/lzw.lo \
1430 compress/zlib.lo \
1431 container/heap.lo \
1432 container/list.lo \
1433 container/ring.lo \
1434 container/vector.lo \
1435 crypto/aes.lo \
1436 crypto/blowfish.lo \
1437 crypto/cast5.lo \
1438 crypto/cipher.lo \
1439 crypto/des.lo \
1440 crypto/dsa.lo \
1441 crypto/ecdsa.lo \
1442 crypto/elliptic.lo \
1443 crypto/hmac.lo \
1444 crypto/md4.lo \
1445 crypto/md5.lo \
1446 crypto/ocsp.lo \
1447 crypto/openpgp.lo \
1448 crypto/rand.lo \
1449 crypto/rc4.lo \
1450 crypto/ripemd160.lo \
1451 crypto/rsa.lo \
1452 crypto/sha1.lo \
1453 crypto/sha256.lo \
1454 crypto/sha512.lo \
1455 crypto/subtle.lo \
1456 crypto/tls.lo \
1457 crypto/twofish.lo \
1458 crypto/x509.lo \
1459 crypto/xtea.lo \
1460 crypto/openpgp/armor.lo \
1461 crypto/openpgp/error.lo \
1462 crypto/openpgp/packet.lo \
1463 crypto/openpgp/s2k.lo \
1464 debug/dwarf.lo \
1465 debug/elf.lo \
1466 debug/gosym.lo \
1467 debug/macho.lo \
1468 debug/pe.lo \
1469 debug/proc.lo \
1470 encoding/ascii85.lo \
1471 encoding/base32.lo \
1472 encoding/base64.lo \
1473 encoding/binary.lo \
1474 encoding/git85.lo \
1475 encoding/hex.lo \
1476 encoding/line.lo \
1477 encoding/pem.lo \
1478 exp/datafmt.lo \
1479 exp/draw.lo \
1480 exp/eval.lo \
1481 go/ast.lo \
1482 go/doc.lo \
1483 go/parser.lo \
1484 go/printer.lo \
1485 go/scanner.lo \
1486 go/token.lo \
1487 go/typechecker.lo \
1488 hash/adler32.lo \
1489 hash/crc32.lo \
1490 hash/crc64.lo \
1491 hash/fnv.lo \
1492 http/cgi.lo \
1493 http/httptest.lo \
1494 http/pprof.lo \
1495 image/jpeg.lo \
1496 image/png.lo \
1497 index/suffixarray.lo \
1498 io/ioutil.lo \
1499 mime/multipart.lo \
1500 net/dict.lo \
1501 net/textproto.lo \
1502 $(os_lib_inotify_lo) \
1503 os/signal.lo \
1504 path/filepath.lo \
1505 rpc/jsonrpc.lo \
1506 runtime/debug.lo \
1507 runtime/pprof.lo \
1508 sync/atomic.lo \
1509 sync/atomic_c.lo \
1510 syscalls/syscall.lo \
1511 syscalls/errno.lo \
1512 testing/testing.lo \
1513 testing/iotest.lo \
1514 testing/quick.lo \
1515 testing/script.lo
1516
1517 libgo_la_SOURCES = $(runtime_files)
1518
1519 libgo_la_LDFLAGS = $(PTHREAD_CFLAGS) $(AM_LDFLAGS)
1520
1521 libgo_la_LIBADD = \
1522 $(libgo_go_objs) $(LIBFFI) $(PTHREAD_LIBS) $(MATH_LIBS) $(NET_LIBS)
1523
1524 libgobegin_a_SOURCES = \
1525 runtime/go-main.c
1526
1527 LTLDFLAGS = $(shell $(SHELL) $(top_srcdir)/../libtool-ldflags $(LDFLAGS))
1528
1529 GOCFLAGS = $(CFLAGS)
1530 AM_GOCFLAGS = $(STRINGOPS_FLAG)
1531 GOCOMPILE = $(GOC) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_GOCFLAGS) $(GOCFLAGS)
1532
1533 LTGOCOMPILE = $(LIBTOOL) --tag GO --mode=compile $(GOC) $(INCLUDES) \
1534 $(AM_GOCFLAGS) $(GOCFLAGS)
1535
1536 GOLINK = $(LIBTOOL) --tag GO --mode-link $(GOC) \
1537 $(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_GOCFLAGS) $(LTLDFLAGS) -o $@
1538
1539 # Build the .go files for a package, generating a .lo file.
1540 BUILDPACKAGE = \
1541 $(MKDIR_P) $(@D); \
1542 files=`echo $^ | sed -e 's/[^ ]*\.gox//g'`; \
1543 $(LTGOCOMPILE) -I . -c -fgo-prefix="libgo_$(@D)" -o $@ $$files
1544
1545 if LIBGO_IS_RTEMS
1546 use_dejagnu = yes
1547 else
1548 use_dejagnu = no
1549 endif
1550
1551 GOTESTFLAGS =
1552
1553 # Check a package.
1554 CHECK = \
1555 GC="$(GOC) -L `${PWD_COMMAND}` -L `${PWD_COMMAND}`/.libs"; \
1556 export GC; \
1557 RUNTESTFLAGS="$(RUNTESTFLAGS)"; \
1558 export RUNTESTFLAGS; \
1559 MAKE="$(MAKE)"; \
1560 export MAKE; \
1561 libgccdir=`${GOC} -print-libgcc-file-name | sed -e 's|/[^/]*$$||'`; \
1562 LD_LIBRARY_PATH="`${PWD_COMMAND}`/.libs:$${libgccdir}:${LD_LIBRARY_PATH}"; \
1563 LD_LIBRARY_PATH=`echo $${LD_LIBRARY_PATH} | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; \
1564 export LD_LIBRARY_PATH; \
1565 rm -f $@-testsum $@-testlog; \
1566 prefix=`if test "$(@D)" = "regexp"; then echo regexp-test; else dirname $(@D); fi`; \
1567 test "$${prefix}" != "." || prefix="$(@D)"; \
1568 if test "$(use_dejagnu)" = "yes"; then \
1569 $(SHELL) $(srcdir)/testsuite/gotest --dejagnu=yes --basedir=$(srcdir) --srcdir=$(srcdir)/go/$(@D) --prefix="libgo_$${prefix}" --pkgfiles="$(go_$(subst /,_,$(@D))_files)" --testname="$(@D)" $(GOTESTFLAGS); \
1570 else \
1571 if $(SHELL) $(srcdir)/testsuite/gotest --basedir=$(srcdir) --srcdir=$(srcdir)/go/$(@D) --prefix="libgo_$${prefix}" --pkgfiles="$(go_$(subst /,_,$(@D))_files)" $(GOTESTFLAGS) >>$@-testlog 2>&1; then \
1572 echo "PASS: $(@D)" >> $@-testlog; \
1573 echo "PASS: $(@D)"; \
1574 echo "PASS: $(@D)" > $@-testsum; \
1575 else \
1576 echo "FAIL: $(@D)" >> $@-testlog; \
1577 cat $@-testlog; \
1578 echo "FAIL: $(@D)" > $@-testsum; \
1579 exit 1; \
1580 fi; \
1581 fi
1582
1583 # Check a package that is only tested if GCCGO_RUN_ALL_TESTS is set.
1584 CHECK_ON_REQUEST = \
1585 if test "$$GCCGO_RUN_ALL_TESTS" != ""; then \
1586 $(CHECK); \
1587 else \
1588 rm -f $@-testsum $@-testlog; \
1589 echo "Set GCCGO_RUN_ALL_TESTS in environment to run $(@D) test" > $@-testlog; \
1590 echo "UNTESTED: $(@D)" >> $@-testlog; \
1591 echo "UNTESTED: $(@D)"; \
1592 echo "UNTESTED: $(@D)" > $@-testsum; \
1593 fi
1594
1595 # Build all packages before checking any.
1596 CHECK_DEPS = libgo.la libgobegin.a \
1597 $(toolexeclibgo_DATA) \
1598 $(toolexeclibgoarchive_DATA) \
1599 $(toolexeclibgocompress_DATA) \
1600 $(toolexeclibgocontainer_DATA) \
1601 $(toolexeclibgocrypto_DATA) \
1602 $(toolexeclibgocryptoopenpgp_DATA) \
1603 $(toolexeclibgodebug_DATA) \
1604 $(toolexeclibgoencoding_DATA) \
1605 $(toolexeclibgoexp_DATA) \
1606 $(toolexeclibgogo_DATA) \
1607 $(toolexeclibgohash_DATA) \
1608 $(toolexeclibgohttp_DATA) \
1609 $(toolexeclibgoimage_DATA) \
1610 $(toolexeclibgoindex_DATA) \
1611 $(toolexeclibgoio_DATA) \
1612 $(toolexeclibgomime_DATA) \
1613 $(toolexeclibgonet_DATA) \
1614 $(toolexeclibgoos_DATA) \
1615 $(toolexeclibgopath_DATA) \
1616 $(toolexeclibgorpc_DATA) \
1617 $(toolexeclibgoruntime_DATA) \
1618 $(toolexeclibgosync_DATA) \
1619 $(toolexeclibgotesting_DATA)
1620
1621 asn1/asn1.lo: $(go_asn1_files) bytes.gox fmt.gox io.gox os.gox reflect.gox \
1622 strconv.gox strings.gox time.gox
1623 $(BUILDPACKAGE)
1624 asn1/check: $(CHECK_DEPS)
1625 @$(CHECK)
1626 .PHONY: asn1/check
1627
1628 big/big.lo: $(go_big_files) fmt.gox rand.gox strings.gox os.gox
1629 $(BUILDPACKAGE)
1630 big/check: $(CHECK_DEPS)
1631 @$(CHECK)
1632 .PHONY: big/check
1633
1634 bufio/bufio.lo: $(go_bufio_files) bytes.gox io.gox os.gox strconv.gox utf8.gox
1635 $(BUILDPACKAGE)
1636 bufio/check: $(CHECK_DEPS)
1637 @$(CHECK)
1638 .PHONY: bufio/check
1639
1640 bytes/bytes.lo: $(go_bytes_files) io.gox os.gox unicode.gox utf8.gox
1641 $(BUILDPACKAGE)
1642 bytes/index.lo: $(go_bytes_c_files) bytes/bytes.lo
1643 $(LTCOMPILE) -c -o bytes/index.lo $(srcdir)/go/bytes/indexbyte.c
1644 bytes/check: $(CHECK_DEPS)
1645 @$(CHECK)
1646 .PHONY: bytes/check
1647
1648 cmath/cmath.lo: $(go_cmath_files) math.gox
1649 $(BUILDPACKAGE)
1650 cmath/check: $(CHECK_DEPS)
1651 @$(CHECK)
1652 .PHONY: cmath/check
1653
1654 crypto/crypto.lo: $(go_crypto_files) hash.gox
1655 $(BUILDPACKAGE)
1656 crypto/check: $(CHECK_DEPS)
1657 @$(CHECK)
1658 .PHONY: crypto/check
1659
1660 ebnf/ebnf.lo: $(go_ebnf_files) container/vector.gox go/scanner.gox \
1661 go/token.gox os.gox strconv.gox unicode.gox utf8.gox
1662 $(BUILDPACKAGE)
1663 ebnf/check: $(CHECK_DEPS)
1664 @$(CHECK)
1665 .PHONY: ebnf/check
1666
1667 exec/exec.lo: $(go_exec_files) os.gox strconv.gox strings.gox
1668 $(BUILDPACKAGE)
1669 exec/check: $(CHECK_DEPS)
1670 @$(CHECK)
1671 .PHONY: exec/check
1672
1673 expvar/expvar.lo: $(go_expvar_files) bytes.gox fmt.gox http.gox json.gox \
1674 log.gox os.gox runtime.gox strconv.gox sync.gox
1675 $(BUILDPACKAGE)
1676 expvar/check: $(CHECK_DEPS)
1677 @$(CHECK)
1678 .PHONY: expvar/check
1679
1680 flag/flag.lo: $(go_flag_files) fmt.gox os.gox strconv.gox
1681 $(BUILDPACKAGE)
1682 flag/check: $(CHECK_DEPS)
1683 @$(CHECK)
1684 .PHONY: flag/check
1685
1686 fmt/fmt.lo: $(go_fmt_files) bytes.gox io.gox math.gox os.gox reflect.gox \
1687 strconv.gox strings.gox unicode.gox utf8.gox
1688 $(BUILDPACKAGE)
1689 fmt/check: $(CHECK_DEPS)
1690 @$(CHECK)
1691 .PHONY: fmt/check
1692
1693 gob/gob.lo: $(go_gob_files) bufio.gox bytes.gox fmt.gox io.gox math.gox \
1694 os.gox reflect.gox runtime.gox strings.gox sync.gox \
1695 unicode.gox utf8.gox
1696 $(BUILDPACKAGE)
1697 gob/check: $(CHECK_DEPS)
1698 @$(CHECK)
1699 .PHONY: gob/check
1700
1701 hash/hash.lo: $(go_hash_files) io.gox
1702 $(BUILDPACKAGE)
1703 hash/check: $(CHECK_DEPS)
1704 @$(CHECK)
1705 .PHONY: hash/check
1706
1707 html/html.lo: $(go_html_files) bytes.gox io.gox os.gox strconv.gox strings.gox \
1708 utf8.gox
1709 $(BUILDPACKAGE)
1710 html/check: $(CHECK_DEPS)
1711 @$(CHECK)
1712 .PHONY: html/check
1713
1714 http/http.lo: $(go_http_files) bufio.gox bytes.gox container/vector.gox \
1715 crypto/rand.gox crypto/tls.gox encoding/base64.gox fmt.gox \
1716 io.gox io/ioutil.gox log.gox mime.gox mime/multipart.gox \
1717 net.gox net/textproto.gox os.gox path.gox path/filepath.gox \
1718 sort.gox strconv.gox strings.gox sync.gox time.gox utf8.gox
1719 $(BUILDPACKAGE)
1720 http/check: $(CHECK_DEPS)
1721 @$(CHECK)
1722 .PHONY: http/check
1723
1724 image/image.lo: $(go_image_files) bufio.gox io.gox os.gox strconv.gox
1725 $(BUILDPACKAGE)
1726 image/check: $(CHECK_DEPS)
1727 @$(CHECK)
1728 .PHONY: image/check
1729
1730 io/io.lo: $(go_io_files) os.gox sync.gox
1731 $(BUILDPACKAGE)
1732 io/check: $(CHECK_DEPS)
1733 @$(CHECK)
1734 .PHONY: io/check
1735
1736 json/json.lo: $(go_json_files) bytes.gox container/vector.gox \
1737 encoding/base64.gox fmt.gox io.gox math.gox os.gox \
1738 reflect.gox runtime.gox strconv.gox strings.gox unicode.gox \
1739 utf16.gox utf8.gox
1740 $(BUILDPACKAGE)
1741 json/check: $(CHECK_DEPS)
1742 @$(CHECK)
1743 .PHONY: json/check
1744
1745 log/log.lo: $(go_log_files) bytes.gox fmt.gox io.gox runtime.gox os.gox \
1746 sync.gox time.gox
1747 $(BUILDPACKAGE)
1748 log/check: $(CHECK_DEPS)
1749 @$(CHECK)
1750 .PHONY: log/check
1751
1752 math/math.lo: $(go_math_files)
1753 $(BUILDPACKAGE)
1754 math/check: $(CHECK_DEPS)
1755 @$(CHECK)
1756 .PHONY: math/check
1757
1758 mime/mime.lo: $(go_mime_files) bufio.gox bytes.gox os.gox strings.gox \
1759 sync.gox unicode.gox
1760 $(BUILDPACKAGE)
1761 mime/check: $(CHECK_DEPS)
1762 @$(CHECK)
1763 .PHONY: mime/check
1764
1765 net/net.lo: $(go_net_files) bytes.gox fmt.gox io.gox os.gox rand.gox \
1766 reflect.gox strconv.gox strings.gox sync.gox syscall.gox \
1767 time.gox
1768 $(BUILDPACKAGE)
1769 net/check: $(CHECK_DEPS)
1770 @$(CHECK_ON_REQUEST)
1771 .PHONY: net/check
1772
1773 netchan/netchan.lo: $(go_netchan_files) gob.gox io.gox log.gox net.gox os.gox \
1774 reflect.gox strconv.gox sync.gox time.gox
1775 $(BUILDPACKAGE)
1776 netchan/check: $(CHECK_DEPS)
1777 @$(CHECK)
1778 .PHONY: netchan/check
1779
1780 os/os.lo: $(go_os_files) runtime.gox sync.gox syscall.gox
1781 $(BUILDPACKAGE)
1782 os/check: $(CHECK_DEPS)
1783 @$(CHECK)
1784 .PHONY: os/check
1785
1786 patch/patch.lo: $(go_patch_files) bytes.gox compress/zlib.gox \
1787 crypto/sha1.gox encoding/git85.gox fmt.gox io.gox os.gox \
1788 path.gox strings.gox
1789 $(BUILDPACKAGE)
1790 patch/check: $(CHECK_DEPS)
1791 @$(CHECK)
1792 .PHONY: patch/check
1793
1794 path/path.lo: $(go_path_files) os.gox strings.gox utf8.gox
1795 $(BUILDPACKAGE)
1796 path/check: $(CHECK_DEPS)
1797 @$(CHECK)
1798 .PHONY: path/check
1799
1800 rand/rand.lo: $(go_rand_files) math.gox sync.gox
1801 $(BUILDPACKAGE)
1802 rand/check: $(CHECK_DEPS)
1803 @$(CHECK)
1804 .PHONY: rand/check
1805
1806 reflect/reflect.lo: $(go_reflect_files) math.gox runtime.gox strconv.gox \
1807 sync.gox
1808 $(BUILDPACKAGE)
1809 reflect/check: $(CHECK_DEPS)
1810 @$(CHECK)
1811 .PHONY: reflect/check
1812
1813 regexp/regexp.lo: $(go_regexp_files) bytes.gox io.gox os.gox strings.gox \
1814 utf8.gox
1815 $(BUILDPACKAGE)
1816 regexp/check: $(CHECK_DEPS)
1817 @$(CHECK)
1818 .PHONY: regexp/check
1819
1820 rpc/rpc.lo: $(go_rpc_files) bufio.gox fmt.gox gob.gox http.gox io.gox log.gox \
1821 net.gox os.gox reflect.gox sort.gox strings.gox strconv.gox \
1822 sync.gox template.gox unicode.gox utf8.gox
1823 $(BUILDPACKAGE)
1824 rpc/check: $(CHECK_DEPS)
1825 @$(CHECK)
1826 .PHONY: rpc/check
1827
1828 runtime/runtime.lo: $(go_runtime_files)
1829 $(BUILDPACKAGE)
1830 runtime/check: $(CHECK_DEPS)
1831 @$(CHECK)
1832 .PHONY: runtime/check
1833
1834 scanner/scanner.lo: $(go_scanner_files) bytes.gox fmt.gox io.gox os.gox \
1835 unicode.gox utf8.gox
1836 $(BUILDPACKAGE)
1837 scanner/check: $(CHECK_DEPS)
1838 @$(CHECK)
1839 .PHONY: scanner/check
1840
1841 smtp/smtp.lo: $(go_smtp_files) crypto/tls.gox encoding/base64.gox io.gox \
1842 net.gox net/textproto.gox os.gox strings.gox
1843 $(BUILDPACKAGE)
1844 smtp/check: $(CHECK_DEPS)
1845 @$(CHECK)
1846 .PHONY: smtp/check
1847
1848 sort/sort.lo: $(go_sort_files)
1849 $(BUILDPACKAGE)
1850 sort/check: $(CHECK_DEPS)
1851 @$(CHECK)
1852 .PHONY: sort/check
1853
1854 strconv/strconv.lo: $(go_strconv_files) bytes.gox math.gox os.gox strings.gox \
1855 unicode.gox utf8.gox
1856 $(BUILDPACKAGE)
1857 strconv/check: $(CHECK_DEPS)
1858 @$(CHECK)
1859 .PHONY: strconv/check
1860
1861 strings/strings.lo: $(go_strings_files) os.gox unicode.gox utf8.gox
1862 $(BUILDPACKAGE)
1863 strings/check: $(CHECK_DEPS)
1864 @$(CHECK)
1865 .PHONY: strings/check
1866
1867 sync/sync.lo: $(go_sync_files) runtime.gox sync/atomic.gox
1868 $(BUILDPACKAGE)
1869 sync/check: $(CHECK_DEPS)
1870 @$(CHECK)
1871 .PHONY: sync/check
1872
1873 syslog/syslog.lo: $(go_syslog_files) fmt.gox log.gox net.gox os.gox syscall.gox
1874 $(BUILDPACKAGE)
1875 syslog/syslog_c.lo: $(go_syslog_c_files) syslog/syslog.lo
1876 $(LTCOMPILE) -c -o $@ $(srcdir)/go/syslog/syslog_c.c
1877 syslog/check: $(CHECK_DEPS)
1878 @$(CHECK_ON_REQUEST)
1879 .PHONY: syslog/check
1880
1881 tabwriter/tabwriter.lo: $(go_tabwriter_files) bytes.gox io.gox os.gox utf8.gox
1882 $(BUILDPACKAGE)
1883 tabwriter/check: $(CHECK_DEPS)
1884 @$(CHECK)
1885 .PHONY: tabwriter/check
1886
1887 template/template.lo: $(go_template_files) bytes.gox fmt.gox io.gox os.gox \
1888 reflect.gox runtime.gox strings.gox container/vector.gox
1889 $(BUILDPACKAGE)
1890 template/check: $(CHECK_DEPS)
1891 @$(CHECK)
1892 .PHONY: template/check
1893
1894 testing/testing.lo: $(go_testing_files) flag.gox fmt.gox os.gox regexp.gox \
1895 runtime.gox runtime/pprof.gox time.gox
1896 $(BUILDPACKAGE)
1897 testing/check: $(CHECK_DEPS)
1898 @$(CHECK)
1899 .PHONY: testing/check
1900
1901 time/time.lo: $(go_time_files) bytes.gox container/heap.gox io/ioutil.gox \
1902 os.gox strconv.gox sync.gox syscall.gox
1903 $(BUILDPACKAGE)
1904 time/check: $(CHECK_DEPS)
1905 @$(CHECK)
1906 .PHONY: time/check
1907
1908 try/try.lo: $(go_try_files) fmt.gox io.gox os.gox reflect.gox unicode.gox
1909 $(BUILDPACKAGE)
1910 try/check: $(CHECK_DEPS)
1911 @$(CHECK)
1912 .PHONY: try/check
1913
1914 unicode/unicode.lo: $(go_unicode_files)
1915 $(BUILDPACKAGE)
1916 unicode/check: $(CHECK_DEPS)
1917 @$(CHECK)
1918 .PHONY: unicode/check
1919
1920 utf16/utf16.lo: $(go_utf16_files) unicode.gox
1921 $(BUILDPACKAGE)
1922 utf16/check: $(CHECK_DEPS)
1923 @$(CHECK)
1924 .PHONY: utf16/check
1925
1926 utf8/utf8.lo: $(go_utf8_files) unicode.gox
1927 $(BUILDPACKAGE)
1928 utf8/check: $(CHECK_DEPS)
1929 @$(CHECK)
1930 .PHONY: utf8/check
1931
1932 websocket/websocket.lo: $(go_websocket_files) bufio.gox bytes.gox \
1933 container/vector.gox crypto/md5.gox crypto/tls.gox \
1934 encoding/binary.gox fmt.gox http.gox io.gox net.gox os.gox \
1935 rand.gox strings.gox
1936 $(BUILDPACKAGE)
1937 websocket/check: $(CHECK_DEPS)
1938 @$(CHECK)
1939 .PHONY: websocket/check
1940
1941 xml/xml.lo: $(go_xml_files) bufio.gox bytes.gox fmt.gox io.gox os.gox \
1942 reflect.gox strconv.gox strings.gox unicode.gox utf8.gox
1943 $(BUILDPACKAGE)
1944 xml/check: $(CHECK_DEPS)
1945 @$(CHECK)
1946 .PHONY: xml/check
1947
1948 archive/tar.lo: $(go_archive_tar_files) bytes.gox io.gox os.gox strconv.gox \
1949 strings.gox
1950 $(BUILDPACKAGE)
1951 archive/tar/check: $(CHECK_DEPS)
1952 @$(MKDIR_P) archive/tar
1953 @$(CHECK)
1954 .PHONY: archive/tar/check
1955
1956 archive/zip.lo: $(go_archive_zip_files) bufio.gox bytes.gox \
1957 compress/flate.gox hash.gox hash/crc32.gox \
1958 encoding/binary.gox io.gox io/ioutil.gox os.gox
1959 $(BUILDPACKAGE)
1960 archive/zip/check: $(CHECK_DEPS)
1961 @$(MKDIR_P) archive/zip
1962 @$(CHECK)
1963 .PHONY: archive/zip/check
1964
1965 compress/bzip2.lo: $(go_compress_bzip2_files) bufio.gox io.gox os.gox sort.gox
1966 $(BUILDPACKAGE)
1967 compress/bzip2/check: $(CHECK_DEPS)
1968 @$(MKDIR_P) compress/bzip2
1969 @$(CHECK)
1970 .PHONY: compress/bzip2/check
1971
1972 compress/flate.lo: $(go_compress_flate_files) bufio.gox io.gox math.gox \
1973 os.gox sort.gox strconv.gox
1974 $(BUILDPACKAGE)
1975 compress/flate/check: $(CHECK_DEPS)
1976 @$(MKDIR_P) compress/flate
1977 @$(CHECK)
1978 .PHONY: compress/flate/check
1979
1980 compress/gzip.lo: $(go_compress_gzip_files) bufio.gox compress/flate.gox \
1981 hash.gox hash/crc32.gox io.gox os.gox
1982 $(BUILDPACKAGE)
1983 compress/gzip/check: $(CHECK_DEPS)
1984 @$(MKDIR_P) compress/gzip
1985 @$(CHECK)
1986 .PHONY: compress/gzip/check
1987
1988 compress/lzw.lo: $(go_compress_lzw_files) bufio.gox fmt.gox io.gox os.gox
1989 $(BUILDPACKAGE)
1990 compress/lzw/check: $(CHECK_DEPS)
1991 @$(MKDIR_P) compress/lzw
1992 @$(CHECK)
1993 .PHONY: compress/lzw/check
1994
1995 compress/zlib.lo: $(go_compress_zlib_files) bufio.gox compress/flate.gox \
1996 hash.gox hash/adler32.gox io.gox os.gox
1997 $(BUILDPACKAGE)
1998 compress/zlib/check: $(CHECK_DEPS)
1999 @$(MKDIR_P) compress/zlib
2000 @$(CHECK)
2001 .PHONY: compress/zlib/check
2002
2003 container/heap.lo: $(go_container_heap_files) sort.gox
2004 $(BUILDPACKAGE)
2005 container/heap/check: $(CHECK_DEPS)
2006 @$(MKDIR_P) container/heap
2007 @$(CHECK)
2008 .PHONY: container/heap/check
2009
2010 container/list.lo: $(go_container_list_files)
2011 $(BUILDPACKAGE)
2012 container/list/check: $(CHECK_DEPS)
2013 @$(MKDIR_P) container/list
2014 @$(CHECK)
2015 .PHONY: container/list/check
2016
2017 container/ring.lo: $(go_container_ring_files)
2018 $(BUILDPACKAGE)
2019 container/ring/check: $(CHECK_DEPS)
2020 @$(MKDIR_P) container/ring
2021 @$(CHECK)
2022 .PHONY: container/ring/check
2023
2024 container/vector.lo: $(go_container_vector_files)
2025 $(BUILDPACKAGE)
2026 container/vector/check: $(CHECK_DEPS)
2027 @$(MKDIR_P) container/vector
2028 @$(CHECK)
2029 .PHONY: container/vector/check
2030
2031 crypto/aes.lo: $(go_crypto_aes_files) os.gox strconv.gox
2032 $(BUILDPACKAGE)
2033 crypto/aes/check: $(CHECK_DEPS)
2034 @$(MKDIR_P) crypto/aes
2035 @$(CHECK)
2036 .PHONY: crypto/aes/check
2037
2038 crypto/blowfish.lo: $(go_crypto_blowfish_files) os.gox strconv.gox
2039 $(BUILDPACKAGE)
2040 crypto/blowfish/check: $(CHECK_DEPS)
2041 @$(MKDIR_P) crypto/blowfish
2042 @$(CHECK)
2043 .PHONY: crypto/blowfish/check
2044
2045 crypto/cast5.lo: $(go_crypto_cast5_files) os.gox
2046 $(BUILDPACKAGE)
2047 crypto/cast5/check: $(CHECK_DEPS)
2048 @$(MKDIR_P) crypto/cast5
2049 @$(CHECK)
2050 .PHONY: crypto/cast5/check
2051
2052 crypto/cipher.lo: $(go_crypto_cipher_files) io.gox os.gox
2053 $(BUILDPACKAGE)
2054 crypto/cipher/check: $(CHECK_DEPS)
2055 @$(MKDIR_P) crypto/cipher
2056 @$(CHECK)
2057 .PHONY: crypto/cipher/check
2058
2059 crypto/des.lo: $(go_crypto_des_files) encoding/binary.gox os.gox strconv.gox
2060 $(BUILDPACKAGE)
2061 crypto/des/check: $(CHECK_DEPS)
2062 @$(MKDIR_P) crypto/des
2063 @$(CHECK)
2064 .PHONY: crypto/des/check
2065
2066 crypto/dsa.lo: $(go_crypto_dsa_files) big.gox io.gox os.gox
2067 $(BUILDPACKAGE)
2068 crypto/dsa/check: $(CHECK_DEPS)
2069 @$(MKDIR_P) crypto/dsa
2070 @$(CHECK)
2071 .PHONY: crypto/dsa/check
2072
2073 crypto/ecdsa.lo: $(go_crypto_ecdsa_files) big.gox crypto/elliptic.gox io.gox \
2074 os.gox
2075 $(BUILDPACKAGE)
2076 crypto/ecdsa/check: $(CHECK_DEPS)
2077 @$(MKDIR_P) crypto/ecdsa
2078 @$(CHECK)
2079 .PHONY: crypto/ecdsa/check
2080
2081 crypto/elliptic.lo: $(go_crypto_elliptic_files) big.gox io.gox os.gox sync.gox
2082 $(BUILDPACKAGE)
2083 crypto/elliptic/check: $(CHECK_DEPS)
2084 @$(MKDIR_P) crypto/elliptic
2085 @$(CHECK)
2086 .PHONY: crypto/elliptic/check
2087
2088 crypto/hmac.lo: $(go_crypto_hmac_files) crypto/md5.gox crypto/sha1.gox \
2089 crypto/sha256.gox hash.gox os.gox
2090 $(BUILDPACKAGE)
2091 crypto/hmac/check: $(CHECK_DEPS)
2092 @$(MKDIR_P) crypto/hmac
2093 @$(CHECK)
2094 .PHONY: crypto/hmac/check
2095
2096 crypto/md4.lo: $(go_crypto_md4_files) crypto.gox hash.gox os.gox
2097 $(BUILDPACKAGE)
2098 crypto/md4/check: $(CHECK_DEPS)
2099 @$(MKDIR_P) crypto/md4
2100 @$(CHECK)
2101 .PHONY: crypto/md4/check
2102
2103 crypto/md5.lo: $(go_crypto_md5_files) crypto.gox hash.gox os.gox
2104 $(BUILDPACKAGE)
2105 crypto/md5/check: $(CHECK_DEPS)
2106 @$(MKDIR_P) crypto/md5
2107 @$(CHECK)
2108 .PHONY: crypto/md5/check
2109
2110 crypto/ocsp.lo: $(go_crypto_ocsp_files) asn1.gox crypto.gox crypto/rsa.gox \
2111 crypto/sha1.gox crypto/x509.gox os.gox time.gox
2112 $(BUILDPACKAGE)
2113 crypto/ocsp/check: $(CHECK_DEPS)
2114 @$(MKDIR_P) crypto/ocsp
2115 @$(CHECK)
2116 .PHONY: crypto/ocsp/check
2117
2118 crypto/openpgp.lo: $(go_crypto_openpgp_files) crypto.gox crypto/dsa.gox \
2119 crypto/openpgp/armor.gox crypto/openpgp/error.gox \
2120 crypto/openpgp/packet.gox crypto/rsa.gox crypto/sha256.gox \
2121 hash.gox io.gox os.gox strconv.gox time.gox
2122 $(BUILDPACKAGE)
2123 crypto/openpgp/check: $(CHECK_DEPS)
2124 @$(MKDIR_P) crypto/openpgp
2125 @$(CHECK)
2126 .PHONY: crypto/openpgp/check
2127
2128 crypto/rand.lo: $(go_crypto_rand_files) bufio.gox crypto/aes.gox io.gox \
2129 os.gox sync.gox time.gox
2130 $(BUILDPACKAGE)
2131 crypto/rand/check: $(CHECK_DEPS)
2132 @$(MKDIR_P) crypto/rand
2133 @$(CHECK)
2134 .PHONY: crypto/rand/check
2135
2136 crypto/rc4.lo: $(go_crypto_rc4_files) os.gox strconv.gox
2137 $(BUILDPACKAGE)
2138 crypto/rc4/check: $(CHECK_DEPS)
2139 @$(MKDIR_P) crypto/rc4
2140 @$(CHECK)
2141 .PHONY: crypto/rc4/check
2142
2143 crypto/ripemd160.lo: $(go_crypto_ripemd160_files) crypto.gox hash.gox os.gox
2144 $(BUILDPACKAGE)
2145 crypto/ripemd160/check: $(CHECK_DEPS)
2146 @$(MKDIR_P) crypto/ripemd160
2147 @$(CHECK)
2148 .PHONY: crypto/ripemd160/check
2149
2150 crypto/rsa.lo: $(go_crypto_rsa_files) big.gox crypto.gox crypto/sha1.gox \
2151 crypto/subtle.gox encoding/hex.gox hash.gox io.gox os.gox \
2152 sync.gox
2153 $(BUILDPACKAGE)
2154 crypto/rsa/check: $(CHECK_DEPS)
2155 @$(MKDIR_P) crypto/rsa
2156 @$(CHECK)
2157 .PHONY: crypto/rsa/check
2158
2159 crypto/sha1.lo: $(go_crypto_sha1_files) crypto.gox hash.gox os.gox
2160 $(BUILDPACKAGE)
2161 crypto/sha1/check: $(CHECK_DEPS)
2162 @$(MKDIR_P) crypto/sha1
2163 @$(CHECK)
2164 .PHONY: crypto/sha1/check
2165
2166 crypto/sha256.lo: $(go_crypto_sha256_files) crypto.gox hash.gox os.gox
2167 $(BUILDPACKAGE)
2168 crypto/sha256/check: $(CHECK_DEPS)
2169 @$(MKDIR_P) crypto/sha256
2170 @$(CHECK)
2171 .PHONY: crypto/sha256/check
2172
2173 crypto/sha512.lo: $(go_crypto_sha512_files) crypto.gox hash.gox os.gox
2174 $(BUILDPACKAGE)
2175 crypto/sha512/check: $(CHECK_DEPS)
2176 @$(MKDIR_P) crypto/sha512
2177 @$(CHECK)
2178 .PHONY: crypto/sha512/check
2179
2180 crypto/subtle.lo: $(go_crypto_subtle_files)
2181 $(BUILDPACKAGE)
2182 crypto/subtle/check: $(CHECK_DEPS)
2183 @$(MKDIR_P) crypto/subtle
2184 @$(CHECK)
2185 .PHONY: crypto/subtle/check
2186
2187 crypto/tls.lo: $(go_crypto_tls_files) big.gox bufio.gox bytes.gox \
2188 container/list.gox crypto.gox crypto/aes.gox crypto/cipher.gox \
2189 crypto/elliptic.gox crypto/hmac.gox crypto/md5.gox \
2190 crypto/rc4.gox crypto/rand.gox crypto/rsa.gox crypto/sha1.gox \
2191 crypto/subtle.gox crypto/rsa.gox crypto/sha1.gox \
2192 crypto/x509.gox encoding/pem.gox fmt.gox hash.gox io.gox \
2193 io/ioutil.gox net.gox os.gox strings.gox sync.gox time.gox
2194 $(BUILDPACKAGE)
2195 crypto/tls/check: $(CHECK_DEPS)
2196 @$(MKDIR_P) crypto/tls
2197 @$(CHECK)
2198 .PHONY: crypto/tls/check
2199
2200 crypto/twofish.lo: $(go_crypto_twofish_files) os.gox strconv.gox
2201 $(BUILDPACKAGE)
2202 crypto/twofish/check: $(CHECK_DEPS)
2203 @$(MKDIR_P) crypto/twofish
2204 @$(CHECK)
2205 .PHONY: crypto/twofish/check
2206
2207 crypto/x509.lo: $(go_crypto_x509_files) asn1.gox big.gox container/vector.gox \
2208 crypto.gox crypto/rsa.gox crypto/sha1.gox hash.gox os.gox \
2209 strings.gox time.gox
2210 $(BUILDPACKAGE)
2211 crypto/x509/check: $(CHECK_DEPS)
2212 @$(MKDIR_P) crypto/x509
2213 @$(CHECK)
2214 .PHONY: crypto/x509/check
2215
2216 crypto/xtea.lo: $(go_crypto_xtea_files) os.gox strconv.gox
2217 $(BUILDPACKAGE)
2218 crypto/xtea/check: $(CHECK_DEPS)
2219 @$(MKDIR_P) crypto/xtea
2220 @$(CHECK)
2221 .PHONY: crypto/xtea/check
2222
2223 crypto/openpgp/armor.lo: $(go_crypto_openpgp_armor_files) bytes.gox \
2224 crypto/openpgp/error.gox encoding/base64.gox \
2225 encoding/line.gox io.gox os.gox
2226 $(BUILDPACKAGE)
2227 crypto/openpgp/armor/check: $(CHECK_DEPS)
2228 @$(MKDIR_P) crypto/openpgp/armor
2229 @$(CHECK)
2230 .PHONY: crypto/openpgp/armor/check
2231
2232 crypto/openpgp/error.lo: $(go_crypto_openpgp_error_files) strconv.gox
2233 $(BUILDPACKAGE)
2234 crypto/openpgp/error/check: $(CHECK_DEPS)
2235 @$(MKDIR_P) crypto/openpgp/error
2236 @$(CHECK)
2237 .PHONY: crypto/openpgp/error/check
2238
2239 crypto/openpgp/packet.lo: $(go_crypto_openpgp_packet_files) big.gox bytes.gox \
2240 compress/flate.gox compress/zlib.gox crypto.gox \
2241 crypto/aes.gox crypto/cast5.gox crypto/cipher.gox \
2242 crypto/dsa.gox crypto/openpgp/error.gox \
2243 crypto/openpgp/s2k.gox crypto/rand.gox crypto/rsa.gox \
2244 crypto/sha1.gox crypto/subtle.gox encoding/binary.gox fmt.gox \
2245 hash.gox io.gox io/ioutil.gox os.gox strconv.gox strings.gox
2246 $(BUILDPACKAGE)
2247 crypto/openpgp/packet/check: $(CHECK_DEPS)
2248 @$(MKDIR_P) crypto/openpgp/packet
2249 @$(CHECK)
2250 .PHONY: crypto/openpgp/packet/check
2251
2252 crypto/openpgp/s2k.lo: $(go_crypto_openpgp_s2k_files) crypto.gox \
2253 crypto/md5.gox crypto/openpgp/error.gox crypto/ripemd160.gox \
2254 crypto/sha1.gox crypto/sha256.gox crypto/sha512.gox hash.gox \
2255 io.gox os.gox
2256 $(BUILDPACKAGE)
2257 crypto/openpgp/s2k/check: $(CHECK_DEPS)
2258 @$(MKDIR_P) crypto/openpgp/s2k
2259 @$(CHECK)
2260 .PHONY: crypto/openpgp/s2k/check
2261
2262 debug/dwarf.lo: $(go_debug_dwarf_files) encoding/binary.gox os.gox strconv.gox
2263 $(BUILDPACKAGE)
2264 debug/dwarf/check: $(CHECK_DEPS)
2265 @$(MKDIR_P) debug/dwarf
2266 @$(CHECK)
2267 .PHONY: debug/dwarf/check
2268
2269 debug/elf.lo: $(go_debug_elf_files) bytes.gox debug/dwarf.gox \
2270 encoding/binary.gox fmt.gox io.gox os.gox strconv.gox
2271 $(BUILDPACKAGE)
2272 debug/elf/check: $(CHECK_DEPS)
2273 @$(MKDIR_P) debug/elf
2274 @$(CHECK)
2275 .PHONY: debug/elf/check
2276
2277 debug/gosym.lo: $(go_debug_gosym_files) encoding/binary.gox fmt.gox os.gox \
2278 strconv.gox strings.gox
2279 $(BUILDPACKAGE)
2280 debug/gosym/check: $(CHECK_DEPS)
2281 @$(MKDIR_P) debug/gosym
2282 @$(CHECK)
2283 .PHONY: debug/gosym/check
2284
2285 debug/macho.lo: $(go_debug_macho_files) bytes.gox debug/dwarf.gox \
2286 encoding/binary.gox fmt.gox io.gox os.gox strconv.gox
2287 $(BUILDPACKAGE)
2288 debug/macho/check: $(CHECK_DEPS)
2289 @$(MKDIR_P) debug/macho
2290 @$(CHECK)
2291 .PHONY: debug/macho/check
2292
2293 debug/pe.lo: $(go_debug_pe_files) debug/dwarf.gox \
2294 encoding/binary.gox fmt.gox io.gox os.gox strconv.gox
2295 $(BUILDPACKAGE)
2296 debug/pe/check: $(CHECK_DEPS)
2297 @$(MKDIR_P) debug/pe
2298 @$(CHECK)
2299 .PHONY: debug/pe/check
2300
2301 debug/proc.lo: $(go_debug_proc_files) container/vector.gox fmt.gox \
2302 io/ioutil.gox os.gox runtime.gox strconv.gox strings.gox \
2303 sync.gox syscall.gox
2304 $(BUILDPACKAGE)
2305 debug/proc/check: $(CHECK_DEPS)
2306 @$(MKDIR_P) debug/proc
2307 @$(CHECK)
2308 .PHONY: debug/proc/check
2309
2310 encoding/ascii85.lo: $(go_encoding_ascii85_files) io.gox os.gox strconv.gox
2311 $(BUILDPACKAGE)
2312 encoding/ascii85/check: $(CHECK_DEPS)
2313 @$(MKDIR_P) encoding/ascii85
2314 @$(CHECK)
2315 .PHONY: encoding/ascii85/check
2316
2317 encoding/base32.lo: $(go_encoding_base32_files) io.gox os.gox strconv.gox
2318 $(BUILDPACKAGE)
2319 encoding/base32/check: $(CHECK_DEPS)
2320 @$(MKDIR_P) encoding/base32
2321 @$(CHECK)
2322 .PHONY: encoding/base32/check
2323
2324 encoding/base64.lo: $(go_encoding_base64_files) io.gox os.gox strconv.gox
2325 $(BUILDPACKAGE)
2326 encoding/base64/check: $(CHECK_DEPS)
2327 @$(MKDIR_P) encoding/base64
2328 @$(CHECK)
2329 .PHONY: encoding/base64/check
2330
2331 encoding/binary.lo: $(go_encoding_binary_files) io.gox math.gox os.gox \
2332 reflect.gox
2333 $(BUILDPACKAGE)
2334 encoding/binary/check: $(CHECK_DEPS)
2335 @$(MKDIR_P) encoding/binary
2336 @$(CHECK)
2337 .PHONY: encoding/binary/check
2338
2339 encoding/git85.lo: $(go_encoding_git85_files) bytes.gox io.gox os.gox \
2340 strconv.gox
2341 $(BUILDPACKAGE)
2342 encoding/git85/check: $(CHECK_DEPS)
2343 @$(MKDIR_P) encoding/git85
2344 @$(CHECK)
2345 .PHONY: encoding/git85/check
2346
2347 encoding/hex.lo: $(go_encoding_hex_files) os.gox strconv.gox
2348 $(BUILDPACKAGE)
2349 encoding/hex/check: $(CHECK_DEPS)
2350 @$(MKDIR_P) encoding/hex
2351 @$(CHECK)
2352 .PHONY: encoding/hex/check
2353
2354 encoding/line.lo: $(go_encoding_line_files) io.gox os.gox
2355 $(BUILDPACKAGE)
2356 encoding/line/check: $(CHECK_DEPS)
2357 @$(MKDIR_P) encoding/line
2358 @$(CHECK)
2359 .PHONY: encoding/line/check
2360
2361 encoding/pem.lo: $(go_encoding_pem_files) bytes.gox encoding/base64.gox
2362 $(BUILDPACKAGE)
2363 encoding/pem/check: $(CHECK_DEPS)
2364 @$(MKDIR_P) encoding/pem
2365 @$(CHECK)
2366 .PHONY: encoding/pem/check
2367
2368 exp/datafmt.lo: $(go_exp_datafmt_files) bytes.gox container/vector.gox \
2369 fmt.gox go/scanner.gox go/token.gox io.gox os.gox reflect.gox \
2370 runtime.gox strconv.gox strings.gox
2371 $(BUILDPACKAGE)
2372 exp/datafmt/check: $(CHECK_DEPS)
2373 @$(MKDIR_P) exp/datafmt
2374 @$(CHECK)
2375 .PHONY: exp/datafmt/check
2376
2377 exp/draw.lo: $(go_exp_draw_files) image.gox os.gox
2378 $(BUILDPACKAGE)
2379 exp/draw/check: $(CHECK_DEPS)
2380 @$(MKDIR_P) exp/draw
2381 @$(CHECK)
2382 .PHONY: exp/draw/check
2383
2384 exp/eval.lo: $(go_exp_eval_files) big.gox go/ast.gox go/parser.gox \
2385 go/scanner.gox go/token.gox fmt.gox log.gox strconv.gox \
2386 strings.gox os.gox reflect.gox runtime.gox sort.gox template.gox
2387 $(BUILDPACKAGE)
2388 exp/eval/check: $(CHECK_DEPS)
2389 @$(MKDIR_P) exp/eval
2390 @$(CHECK)
2391 .PHONY: exp/eval/check
2392
2393 go/ast.lo: $(go_go_ast_files) bytes.gox fmt.gox go/scanner.gox go/token.gox \
2394 io.gox os.gox reflect.gox unicode.gox utf8.gox
2395 $(BUILDPACKAGE)
2396 go/ast/check: $(CHECK_DEPS)
2397 @$(MKDIR_P) go/ast
2398 @$(CHECK)
2399 .PHONY: go/ast/check
2400
2401 go/doc.lo: $(go_go_doc_files) go/ast.gox go/token.gox io.gox regexp.gox \
2402 sort.gox strings.gox template.gox
2403 $(BUILDPACKAGE)
2404 go/doc/check: $(CHECK_DEPS)
2405 @$(MKDIR_P) go/doc
2406 @$(CHECK)
2407 .PHONY: go/doc/check
2408
2409 go/parser.lo: $(go_go_parser_files) bytes.gox fmt.gox go/ast.gox \
2410 go/scanner.gox go/token.gox io.gox io/ioutil.gox os.gox \
2411 path/filepath.gox strings.gox
2412 $(BUILDPACKAGE)
2413 go/parser/check: $(CHECK_DEPS)
2414 @$(MKDIR_P) go/parser
2415 @$(CHECK)
2416 .PHONY: go/parser/check
2417
2418 go/printer.lo: $(go_go_printer_files) bytes.gox fmt.gox go/ast.gox \
2419 go/token.gox io.gox os.gox path/filepath.gox reflect.gox \
2420 runtime.gox strings.gox tabwriter.gox
2421 $(BUILDPACKAGE)
2422 go/printer/check: $(CHECK_DEPS)
2423 @$(MKDIR_P) go/printer
2424 @$(CHECK)
2425 .PHONY: go/printer/check
2426
2427 go/scanner.lo: $(go_go_scanner_files) bytes.gox container/vector.gox fmt.gox \
2428 go/token.gox io.gox os.gox path/filepath.gox sort.gox \
2429 strconv.gox unicode.gox utf8.gox
2430 $(BUILDPACKAGE)
2431 go/scanner/check: $(CHECK_DEPS)
2432 @$(MKDIR_P) go/scanner
2433 @$(CHECK)
2434 .PHONY: go/scanner/check
2435
2436 go/token.lo: $(go_go_token_files) fmt.gox strconv.gox
2437 $(BUILDPACKAGE)
2438 go/token/check: $(CHECK_DEPS)
2439 @$(MKDIR_P) go/token
2440 @$(CHECK)
2441 .PHONY: go/token/check
2442
2443 go/typechecker.lo: $(go_go_typechecker_files) fmt.gox go/ast.gox go/token.gox \
2444 go/scanner.gox os.gox
2445 $(BUILDPACKAGE)
2446 go/typechecker/check: $(CHECK_DEPS)
2447 @$(MKDIR_P) go/typechecker
2448 @$(CHECK)
2449 .PHONY: go/typechecker/check
2450
2451 hash/adler32.lo: $(go_hash_adler32_files) hash.gox os.gox
2452 $(BUILDPACKAGE)
2453 hash/adler32/check: $(CHECK_DEPS)
2454 @$(MKDIR_P) hash/adler32
2455 @$(CHECK)
2456 .PHONY: hash/adler32/check
2457
2458 hash/crc32.lo: $(go_hash_crc32_files) hash.gox os.gox
2459 $(BUILDPACKAGE)
2460 hash/crc32/check: $(CHECK_DEPS)
2461 @$(MKDIR_P) hash/crc32
2462 @$(CHECK)
2463 .PHONY: hash/crc32/check
2464
2465 hash/crc64.lo: $(go_hash_crc64_files) hash.gox os.gox
2466 $(BUILDPACKAGE)
2467 hash/crc64/check: $(CHECK_DEPS)
2468 @$(MKDIR_P) hash/crc64
2469 @$(CHECK)
2470 .PHONY: hash/crc64/check
2471
2472 hash/fnv.lo: $(go_hash_fnv_files) encoding/binary.gox hash.gox os.gox
2473 $(BUILDPACKAGE)
2474 hash/fnv/check: $(CHECK_DEPS)
2475 @$(MKDIR_P) hash/fnv
2476 @$(CHECK)
2477 .PHONY: hash/fnv/check
2478
2479 http/cgi.lo: $(go_http_cgi_files) bufio.gox bytes.gox encoding/line.gox \
2480 exec.gox fmt.gox http.gox io.gox io/ioutil.gox log.gox \
2481 os.gox path/filepath.gox regexp.gox strconv.gox strings.gox
2482 $(BUILDPACKAGE)
2483 http/cgi/check: $(CHECK_DEPS)
2484 @$(MKDIR_P) http/cgi
2485 @$(CHECK)
2486 .PHONY: http/cgi/check
2487
2488 http/httptest.lo: $(go_http_httptest_files) bytes.gox crypto/rand.gox \
2489 crypto/tls.gox fmt.gox http.gox net.gox os.gox time.gox
2490 $(BUILDPACKAGE)
2491 http/httptest/check: $(CHECK_DEPS)
2492 @$(MKDIR_P) http/httptest
2493 @$(CHECK)
2494 .PHONY: http/httptest/check
2495
2496 http/pprof.lo: $(go_http_pprof_files) bufio.gox fmt.gox http.gox os.gox \
2497 runtime.gox runtime/pprof.gox strconv.gox strings.gox
2498 $(BUILDPACKAGE)
2499 http/pprof/check: $(CHECK_DEPS)
2500 @$(MKDIR_P) http/pprof
2501 @$(CHECK)
2502 .PHONY: http/pprof/check
2503
2504 image/jpeg.lo: $(go_image_jpeg_files) bufio.gox image.gox io.gox os.gox
2505 $(BUILDPACKAGE)
2506 image/jpeg/check: $(CHECK_DEPS)
2507 @$(MKDIR_P) image/jpeg
2508 @$(CHECK)
2509 .PHONY: image/jpeg/check
2510
2511 image/png.lo: $(go_image_png_files) bufio.gox compress/zlib.gox fmt.gox \
2512 hash.gox hash/crc32.gox image.gox io.gox os.gox strconv.gox
2513 $(BUILDPACKAGE)
2514 image/png/check: $(CHECK_DEPS)
2515 @$(MKDIR_P) image/png
2516 @$(CHECK)
2517 .PHONY: image/png/check
2518
2519 index/suffixarray.lo: $(go_index_suffixarray_files) bytes.gox regexp.gox \
2520 sort.gox
2521 $(BUILDPACKAGE)
2522 index/suffixarray/check: $(CHECK_DEPS)
2523 @$(MKDIR_P) index/suffixarray
2524 @$(CHECK)
2525 .PHONY: index/suffixarray/check
2526
2527 io/ioutil.lo: $(go_io_ioutil_files) bytes.gox io.gox os.gox path/filepath.gox \
2528 sort.gox strconv.gox
2529 $(BUILDPACKAGE)
2530 io/ioutil/check: $(CHECK_DEPS)
2531 @$(MKDIR_P) io/ioutil
2532 @$(CHECK)
2533 .PHONY: io/ioutil/check
2534
2535 mime/multipart.lo: $(go_mime_multipart_files) bufio.gox bytes.gox io.gox \
2536 mime.gox net/textproto.gox os.gox regexp.gox strings.gox
2537 $(BUILDPACKAGE)
2538 mime/multipart/check: $(CHECK_DEPS)
2539 @$(MKDIR_P) mime/multipart
2540 @$(CHECK)
2541 .PHONY: mime/multipart/check
2542
2543 net/dict.lo: $(go_net_dict_files) container/vector.gox net/textproto.gox \
2544 os.gox strconv.gox strings.gox
2545 $(BUILDPACKAGE)
2546
2547 net/textproto.lo: $(go_net_textproto_files) bufio.gox bytes.gox \
2548 container/vector.gox fmt.gox io.gox io/ioutil.gox net.gox \
2549 os.gox strconv.gox sync.gox
2550 $(BUILDPACKAGE)
2551 net/textproto/check: $(CHECK_DEPS)
2552 @$(MKDIR_P) net/textproto
2553 @$(CHECK)
2554 .PHONY: net/textproto/check
2555
2556 os/inotify.lo: $(go_os_inotify_files) fmt.gox os.gox strings.gox syscall.gox
2557 $(BUILDPACKAGE)
2558 os/inotify/check: $(CHECK_DEPS)
2559 @$(MKDIR_P) os/inotify
2560 @$(CHECK)
2561 .PHONY: os/inotify/check
2562
2563 os/signal.lo: $(go_os_signal_files) runtime.gox strconv.gox
2564 $(BUILDPACKAGE)
2565 os/signal/check: $(CHECK_DEPS)
2566 @$(MKDIR_P) os/signal
2567 @$(CHECK)
2568 .PHONY: os/signal/check
2569
2570 unix.go: $(srcdir)/go/os/signal/mkunix.sh sysinfo.go
2571 $(SHELL) $(srcdir)/go/os/signal/mkunix.sh sysinfo.go > $@.tmp
2572 mv -f $@.tmp $@
2573
2574 path/filepath.lo: $(go_path_filepath_files) bytes.gox os.gox sort.gox \
2575 strings.gox utf8.gox
2576 $(BUILDPACKAGE)
2577 path/filepath/check: $(CHECK_DEPS)
2578 @$(MKDIR_P) path/filepath
2579 @$(CHECK)
2580 .PHONY: path/filepath/check
2581
2582 rpc/jsonrpc.lo: $(go_rpc_jsonrpc_files) fmt.gox io.gox json.gox net.gox \
2583 os.gox rpc.gox sync.gox
2584 $(BUILDPACKAGE)
2585 rpc/jsonrpc/check: $(CHECK_DEPS)
2586 @$(MKDIR_P) rpc/jsonrpc
2587 @$(CHECK)
2588 .PHONY: rpc/jsonrpc/check
2589
2590 runtime/debug.lo: $(go_runtime_debug_files) bytes.gox fmt.gox io/ioutil.gox \
2591 os.gox runtime.gox
2592 $(BUILDPACKAGE)
2593 runtime/debug/check: $(CHECK_DEPS)
2594 @$(MKDIR_P) runtime/debug
2595 @$(CHECK)
2596 .PHONY: runtime/debug/check
2597
2598 runtime/pprof.lo: $(go_runtime_pprof_files) bufio.gox fmt.gox io.gox os.gox \
2599 runtime.gox sync.gox
2600 $(BUILDPACKAGE)
2601 runtime/pprof/check: $(CHECK_DEPS)
2602 @$(MKDIR_P) runtime/pprof
2603 @$(CHECK)
2604 .PHONY: runtime/pprof/check
2605
2606 sync/atomic.lo: $(go_sync_atomic_files)
2607 $(BUILDPACKAGE)
2608 sync/atomic_c.lo: $(go_sync_atomic_c_files) sync/atomic.lo
2609 $(LTCOMPILE) -c -o $@ $(srcdir)/go/sync/atomic/atomic.c
2610 sync/atomic/check: $(CHECK_DEPS)
2611 @$(MKDIR_P) sync/atomic
2612 @$(CHECK)
2613 .PHONY: sync/atomic/check
2614
2615 testing/iotest.lo: $(go_testing_iotest_files) io.gox log.gox os.gox
2616 $(BUILDPACKAGE)
2617 testing/iotest/check: $(CHECK_DEPS)
2618 @$(MKDIR_P) testing/iotest
2619 @$(CHECK)
2620 .PHONY: testing/iotest/check
2621
2622 testing/quick.lo: $(go_testing_quick_files) flag.gox fmt.gox math.gox os.gox \
2623 rand.gox reflect.gox strings.gox
2624 $(BUILDPACKAGE)
2625 testing/quick/check: $(CHECK_DEPS)
2626 @$(MKDIR_P) testing/quick
2627 @$(CHECK)
2628 .PHONY: testing/quick/check
2629
2630 testing/script.lo: $(go_testing_script_files) fmt.gox os.gox rand.gox \
2631 reflect.gox strings.gox
2632 $(BUILDPACKAGE)
2633 testing/script/check: $(CHECK_DEPS)
2634 @$(MKDIR_P) testing/script
2635 @$(CHECK)
2636 .PHONY: testing/script/check
2637
2638 sysinfo.go: s-sysinfo; @true
2639 s-sysinfo: $(srcdir)/mksysinfo.sh config.h
2640 CC="$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(OSCFLAGS)" $(SHELL) $(srcdir)/mksysinfo.sh
2641 $(SHELL) $(srcdir)/../move-if-change tmp-sysinfo.go sysinfo.go
2642 $(STAMP) $@
2643
2644 syscalls/syscall.lo: $(go_syscall_files) sync.gox
2645 $(BUILDPACKAGE)
2646 syscalls/errno.lo: $(go_syscall_c_files) syscalls/syscall.lo
2647 $(LTCOMPILE) -c -o $@ $(srcdir)/syscalls/errno.c
2648
2649 # How to build a .gox file from a .lo file.
2650 BUILDGOX = \
2651 f=`echo $< | sed -e 's/.lo$$/.o/'`; \
2652 $(OBJCOPY) -j .go_export $$f $@.tmp && mv -f $@.tmp $@
2653
2654 asn1.gox: asn1/asn1.lo
2655 $(BUILDGOX)
2656 big.gox: big/big.lo
2657 $(BUILDGOX)
2658 bufio.gox: bufio/bufio.lo
2659 $(BUILDGOX)
2660 bytes.gox: bytes/bytes.lo
2661 $(BUILDGOX)
2662 cmath.gox: cmath/cmath.lo
2663 $(BUILDGOX)
2664 crypto.gox: crypto/crypto.lo
2665 $(BUILDGOX)
2666 ebnf.gox: ebnf/ebnf.lo
2667 $(BUILDGOX)
2668 exec.gox: exec/exec.lo
2669 $(BUILDGOX)
2670 expvar.gox: expvar/expvar.lo
2671 $(BUILDGOX)
2672 flag.gox: flag/flag.lo
2673 $(BUILDGOX)
2674 fmt.gox: fmt/fmt.lo
2675 $(BUILDGOX)
2676 gob.gox: gob/gob.lo
2677 $(BUILDGOX)
2678 hash.gox: hash/hash.lo
2679 $(BUILDGOX)
2680 html.gox: html/html.lo
2681 $(BUILDGOX)
2682 http.gox: http/http.lo
2683 $(BUILDGOX)
2684 image.gox: image/image.lo
2685 $(BUILDGOX)
2686 io.gox: io/io.lo
2687 $(BUILDGOX)
2688 json.gox: json/json.lo
2689 $(BUILDGOX)
2690 log.gox: log/log.lo
2691 $(BUILDGOX)
2692 math.gox: math/math.lo
2693 $(BUILDGOX)
2694 mime.gox: mime/mime.lo
2695 $(BUILDGOX)
2696 net.gox: net/net.lo
2697 $(BUILDGOX)
2698 netchan.gox: netchan/netchan.lo
2699 $(BUILDGOX)
2700 os.gox: os/os.lo
2701 $(BUILDGOX)
2702 patch.gox: patch/patch.lo
2703 $(BUILDGOX)
2704 path.gox: path/path.lo
2705 $(BUILDGOX)
2706 rand.gox: rand/rand.lo
2707 $(BUILDGOX)
2708 reflect.gox: reflect/reflect.lo
2709 $(BUILDGOX)
2710 regexp.gox: regexp/regexp.lo
2711 $(BUILDGOX)
2712 rpc.gox: rpc/rpc.lo
2713 $(BUILDGOX)
2714 runtime.gox: runtime/runtime.lo
2715 $(BUILDGOX)
2716 scanner.gox: scanner/scanner.lo
2717 $(BUILDGOX)
2718 smtp.gox: smtp/smtp.lo
2719 $(BUILDGOX)
2720 sort.gox: sort/sort.lo
2721 $(BUILDGOX)
2722 strconv.gox: strconv/strconv.lo
2723 $(BUILDGOX)
2724 strings.gox: strings/strings.lo
2725 $(BUILDGOX)
2726 sync.gox: sync/sync.lo
2727 $(BUILDGOX)
2728 syslog.gox: syslog/syslog.lo
2729 $(BUILDGOX)
2730 syscall.gox: syscalls/syscall.lo
2731 $(BUILDGOX)
2732 tabwriter.gox: tabwriter/tabwriter.lo
2733 $(BUILDGOX)
2734 template.gox: template/template.lo
2735 $(BUILDGOX)
2736 testing.gox: testing/testing.lo
2737 $(BUILDGOX)
2738 time.gox: time/time.lo
2739 $(BUILDGOX)
2740 try.gox: try/try.lo
2741 $(BUILDGOX)
2742 unicode.gox: unicode/unicode.lo
2743 $(BUILDGOX)
2744 utf16.gox: utf16/utf16.lo
2745 $(BUILDGOX)
2746 utf8.gox: utf8/utf8.lo
2747 $(BUILDGOX)
2748 websocket.gox: websocket/websocket.lo
2749 $(BUILDGOX)
2750 xml.gox: xml/xml.lo
2751 $(BUILDGOX)
2752
2753 archive/tar.gox: archive/tar.lo
2754 $(BUILDGOX)
2755 archive/zip.gox: archive/zip.lo
2756 $(BUILDGOX)
2757
2758 compress/bzip2.gox: compress/bzip2.lo
2759 $(BUILDGOX)
2760 compress/flate.gox: compress/flate.lo
2761 $(BUILDGOX)
2762 compress/gzip.gox: compress/gzip.lo
2763 $(BUILDGOX)
2764 compress/lzw.gox: compress/lzw.lo
2765 $(BUILDGOX)
2766 compress/zlib.gox: compress/zlib.lo
2767 $(BUILDGOX)
2768
2769 container/heap.gox: container/heap.lo
2770 $(BUILDGOX)
2771 container/list.gox: container/list.lo
2772 $(BUILDGOX)
2773 container/ring.gox: container/ring.lo
2774 $(BUILDGOX)
2775 container/vector.gox: container/vector.lo
2776 $(BUILDGOX)
2777
2778 crypto/aes.gox: crypto/aes.lo
2779 $(BUILDGOX)
2780 crypto/blowfish.gox: crypto/blowfish.lo
2781 $(BUILDGOX)
2782 crypto/cast5.gox: crypto/cast5.lo
2783 $(BUILDGOX)
2784 crypto/cipher.gox: crypto/cipher.lo
2785 $(BUILDGOX)
2786 crypto/des.gox: crypto/des.lo
2787 $(BUILDGOX)
2788 crypto/dsa.gox: crypto/dsa.lo
2789 $(BUILDGOX)
2790 crypto/ecdsa.gox: crypto/ecdsa.lo
2791 $(BUILDGOX)
2792 crypto/elliptic.gox: crypto/elliptic.lo
2793 $(BUILDGOX)
2794 crypto/hmac.gox: crypto/hmac.lo
2795 $(BUILDGOX)
2796 crypto/md4.gox: crypto/md4.lo
2797 $(BUILDGOX)
2798 crypto/md5.gox: crypto/md5.lo
2799 $(BUILDGOX)
2800 crypto/ocsp.gox: crypto/ocsp.lo
2801 $(BUILDGOX)
2802 crypto/openpgp.gox: crypto/openpgp.lo
2803 $(BUILDGOX)
2804 crypto/rand.gox: crypto/rand.lo
2805 $(BUILDGOX)
2806 crypto/rc4.gox: crypto/rc4.lo
2807 $(BUILDGOX)
2808 crypto/ripemd160.gox: crypto/ripemd160.lo
2809 $(BUILDGOX)
2810 crypto/rsa.gox: crypto/rsa.lo
2811 $(BUILDGOX)
2812 crypto/sha1.gox: crypto/sha1.lo
2813 $(BUILDGOX)
2814 crypto/sha256.gox: crypto/sha256.lo
2815 $(BUILDGOX)
2816 crypto/sha512.gox: crypto/sha512.lo
2817 $(BUILDGOX)
2818 crypto/subtle.gox: crypto/subtle.lo
2819 $(BUILDGOX)
2820 crypto/tls.gox: crypto/tls.lo
2821 $(BUILDGOX)
2822 crypto/twofish.gox: crypto/twofish.lo
2823 $(BUILDGOX)
2824 crypto/x509.gox: crypto/x509.lo
2825 $(BUILDGOX)
2826 crypto/xtea.gox: crypto/xtea.lo
2827 $(BUILDGOX)
2828
2829 crypto/openpgp/armor.gox: crypto/openpgp/armor.lo
2830 $(BUILDGOX)
2831 crypto/openpgp/error.gox: crypto/openpgp/error.lo
2832 $(BUILDGOX)
2833 crypto/openpgp/packet.gox: crypto/openpgp/packet.lo
2834 $(BUILDGOX)
2835 crypto/openpgp/s2k.gox: crypto/openpgp/s2k.lo
2836 $(BUILDGOX)
2837
2838 debug/dwarf.gox: debug/dwarf.lo
2839 $(BUILDGOX)
2840 debug/elf.gox: debug/elf.lo
2841 $(BUILDGOX)
2842 debug/gosym.gox: debug/gosym.lo
2843 $(BUILDGOX)
2844 debug/macho.gox: debug/macho.lo
2845 $(BUILDGOX)
2846 debug/pe.gox: debug/pe.lo
2847 $(BUILDGOX)
2848 debug/proc.gox: debug/proc.lo
2849 $(BUILDGOX)
2850
2851 encoding/ascii85.gox: encoding/ascii85.lo
2852 $(BUILDGOX)
2853 encoding/base32.gox: encoding/base32.lo
2854 $(BUILDGOX)
2855 encoding/base64.gox: encoding/base64.lo
2856 $(BUILDGOX)
2857 encoding/binary.gox: encoding/binary.lo
2858 $(BUILDGOX)
2859 encoding/git85.gox: encoding/git85.lo
2860 $(BUILDGOX)
2861 encoding/hex.gox: encoding/hex.lo
2862 $(BUILDGOX)
2863 encoding/line.gox: encoding/line.lo
2864 $(BUILDGOX)
2865 encoding/pem.gox: encoding/pem.lo
2866 $(BUILDGOX)
2867
2868 exp/datafmt.gox: exp/datafmt.lo
2869 $(BUILDGOX)
2870 exp/draw.gox: exp/draw.lo
2871 $(BUILDGOX)
2872 exp/eval.gox: exp/eval.lo
2873 $(BUILDGOX)
2874
2875 go/ast.gox: go/ast.lo
2876 $(BUILDGOX)
2877 go/doc.gox: go/doc.lo
2878 $(BUILDGOX)
2879 go/parser.gox: go/parser.lo
2880 $(BUILDGOX)
2881 go/printer.gox: go/printer.lo
2882 $(BUILDGOX)
2883 go/scanner.gox: go/scanner.lo
2884 $(BUILDGOX)
2885 go/token.gox: go/token.lo
2886 $(BUILDGOX)
2887 go/typechecker.gox: go/typechecker.lo
2888 $(BUILDGOX)
2889
2890 hash/adler32.gox: hash/adler32.lo
2891 $(BUILDGOX)
2892 hash/crc32.gox: hash/crc32.lo
2893 $(BUILDGOX)
2894 hash/crc64.gox: hash/crc64.lo
2895 $(BUILDGOX)
2896 hash/fnv.gox: hash/fnv.lo
2897 $(BUILDGOX)
2898
2899 http/cgi.gox: http/cgi.lo
2900 $(BUILDGOX)
2901 http/httptest.gox: http/httptest.lo
2902 $(BUILDGOX)
2903 http/pprof.gox: http/pprof.lo
2904 $(BUILDGOX)
2905
2906 image/jpeg.gox: image/jpeg.lo
2907 $(BUILDGOX)
2908 image/png.gox: image/png.lo
2909 $(BUILDGOX)
2910
2911 index/suffixarray.gox: index/suffixarray.lo
2912 $(BUILDGOX)
2913
2914 io/ioutil.gox: io/ioutil.lo
2915 $(BUILDGOX)
2916
2917 mime/multipart.gox: mime/multipart.lo
2918 $(BUILDGOX)
2919
2920 net/dict.gox: net/dict.lo
2921 $(BUILDGOX)
2922 net/textproto.gox: net/textproto.lo
2923 $(BUILDGOX)
2924
2925 os/inotify.gox: os/inotify.lo
2926 $(BUILDGOX)
2927 os/signal.gox: os/signal.lo
2928 $(BUILDGOX)
2929
2930 path/filepath.gox: path/filepath.lo
2931 $(BUILDGOX)
2932
2933 rpc/jsonrpc.gox: rpc/jsonrpc.lo
2934 $(BUILDGOX)
2935
2936 runtime/debug.gox: runtime/debug.lo
2937 $(BUILDGOX)
2938 runtime/pprof.gox: runtime/pprof.lo
2939 $(BUILDGOX)
2940
2941 sync/atomic.gox: sync/atomic.lo
2942 $(BUILDGOX)
2943
2944 testing/iotest.gox: testing/iotest.lo
2945 $(BUILDGOX)
2946 testing/quick.gox: testing/quick.lo
2947 $(BUILDGOX)
2948 testing/script.gox: testing/script.lo
2949 $(BUILDGOX)
2950
2951 if LIBGO_IS_LINUX
2952 # os_inotify_check = os/inotify/check
2953 os_inotify_check =
2954 else
2955 os_inotify_check =
2956 endif
2957
2958 TEST_PACKAGES = \
2959 asn1/check \
2960 big/check \
2961 bufio/check \
2962 bytes/check \
2963 cmath/check \
2964 ebnf/check \
2965 exec/check \
2966 expvar/check \
2967 flag/check \
2968 fmt/check \
2969 gob/check \
2970 html/check \
2971 http/check \
2972 io/check \
2973 json/check \
2974 log/check \
2975 math/check \
2976 mime/check \
2977 net/check \
2978 netchan/check \
2979 os/check \
2980 patch/check \
2981 path/check \
2982 rand/check \
2983 reflect/check \
2984 regexp/check \
2985 rpc/check \
2986 runtime/check \
2987 scanner/check \
2988 smtp/check \
2989 sort/check \
2990 strconv/check \
2991 strings/check \
2992 sync/check \
2993 syslog/check \
2994 tabwriter/check \
2995 template/check \
2996 time/check \
2997 try/check \
2998 unicode/check \
2999 utf16/check \
3000 utf8/check \
3001 websocket/check \
3002 xml/check \
3003 archive/tar/check \
3004 archive/zip/check \
3005 compress/bzip2/check \
3006 compress/flate/check \
3007 compress/gzip/check \
3008 compress/lzw/check \
3009 compress/zlib/check \
3010 container/heap/check \
3011 container/list/check \
3012 container/ring/check \
3013 container/vector/check \
3014 crypto/aes/check \
3015 crypto/blowfish/check \
3016 crypto/cast5/check \
3017 crypto/cipher/check \
3018 crypto/des/check \
3019 crypto/dsa/check \
3020 crypto/ecdsa/check \
3021 crypto/elliptic/check \
3022 crypto/hmac/check \
3023 crypto/md4/check \
3024 crypto/md5/check \
3025 crypto/ocsp/check \
3026 crypto/openpgp/check \
3027 crypto/rand/check \
3028 crypto/rc4/check \
3029 crypto/ripemd160/check \
3030 crypto/rsa/check \
3031 crypto/sha1/check \
3032 crypto/sha256/check \
3033 crypto/sha512/check \
3034 crypto/subtle/check \
3035 crypto/tls/check \
3036 crypto/twofish/check \
3037 crypto/x509/check \
3038 crypto/xtea/check \
3039 crypto/openpgp/armor/check \
3040 crypto/openpgp/packet/check \
3041 crypto/openpgp/s2k/check \
3042 debug/dwarf/check \
3043 debug/elf/check \
3044 debug/macho/check \
3045 debug/pe/check \
3046 encoding/ascii85/check \
3047 encoding/base32/check \
3048 encoding/base64/check \
3049 encoding/binary/check \
3050 encoding/git85/check \
3051 encoding/hex/check \
3052 encoding/line/check \
3053 encoding/pem/check \
3054 exp/datafmt/check \
3055 exp/draw/check \
3056 exp/eval/check \
3057 go/parser/check \
3058 go/printer/check \
3059 go/scanner/check \
3060 go/token/check \
3061 go/typechecker/check \
3062 hash/adler32/check \
3063 hash/crc32/check \
3064 hash/crc64/check \
3065 hash/fnv/check \
3066 http/cgi/check \
3067 image/png/check \
3068 index/suffixarray/check \
3069 io/ioutil/check \
3070 mime/multipart/check \
3071 net/textproto/check \
3072 $(os_inotify_check) \
3073 os/signal/check \
3074 path/filepath/check \
3075 rpc/jsonrpc/check \
3076 sync/atomic/check \
3077 testing/quick/check \
3078 testing/script/check
3079
3080 check: check-tail
3081 check-recursive: check-head
3082
3083 check-head:
3084 @echo "Test Run By $${USER} on `date`" > libgo.head
3085 @echo "Native configuration is $(host_triplet)" >> libgo.head
3086 @echo >> libgo.head
3087 @echo " === libgo tests ===" >> libgo.head
3088 @echo >> libgo.head
3089
3090 check-tail: check-recursive check-multi
3091 @lib=`${PWD_COMMAND} | sed -e 's,^.*/\([^/][^/]*\)$$,\1,'`; \
3092 for dir in . $(MULTIDIRS); do \
3093 mv ../$${dir}/$${lib}/libgo.sum ../$${dir}/$${lib}/libgo.sum.sep; \
3094 mv ../$${dir}/$${lib}/libgo.log ../$${dir}/$${lib}/libgo.log.sep; \
3095 done; \
3096 mv libgo.head libgo.sum; \
3097 cp libgo.sum libgo.log; \
3098 echo "Schedule of variations:" >> libgo.sum; \
3099 for dir in . $(MULTIDIRS); do \
3100 multidir=../$${dir}/$${lib}; \
3101 multivar=`cat $${multidir}/libgo.var`; \
3102 echo " $${multivar}" >> libgo.sum; \
3103 done; \
3104 echo >> libgo.sum; \
3105 pass=0; fail=0; untested=0; \
3106 for dir in . $(MULTIDIRS); do \
3107 multidir=../$${dir}/$${lib}; \
3108 multivar=`cat $${multidir}/libgo.var`; \
3109 echo "Running target $${multivar}" >> libgo.sum; \
3110 echo "Running $(srcdir)/libgo.exp ..." >> libgo.sum; \
3111 cat $${multidir}/libgo.sum.sep >> libgo.sum; \
3112 cat $${multidir}/libgo.log.sep >> libgo.log; \
3113 if test -n "${MULTIDIRS}"; then \
3114 echo " === libgo Summary for $${multivar} ===" >> libgo.sum; \
3115 echo >> libgo.sum; \
3116 fi; \
3117 p=`grep -c PASS $${multidir}/libgo.sum.sep`; \
3118 pass=`expr $$pass + $$p`; \
3119 if test "$$p" -ne "0" && test -n "${MULTIDIRS}"; then \
3120 echo "# of expected passes $$p" >> libgo.sum; \
3121 fi; \
3122 p=`grep -c FAIL $${multidir}/libgo.sum.sep`; \
3123 fail=`expr $$fail + $$p`; \
3124 if test "$$p" -ne "0" && test -n "${MULTIDIRS}"; then \
3125 echo "# of unexpected failures $$p" >> libgo.sum; \
3126 fi; \
3127 p=`grep -c UNTESTED $${multidir}/libgo.sum.sep`; \
3128 untested=`expr $$untested + $$p`; \
3129 if test "$$p" -ne "0" && test -n "${MULTIDIRS}"; then \
3130 echo "# of untested testcases $$p" >> libgo.sum; \
3131 fi; \
3132 done; \
3133 echo >> libgo.sum; \
3134 echo " === libgo Summary ===" >> libgo.sum; \
3135 echo >> libgo.sum; \
3136 if test "$$pass" -ne "0"; then \
3137 echo "# of expected passes $$pass" >> libgo.sum; \
3138 fi; \
3139 if test "$$fail" -ne "0"; then \
3140 echo "# of unexpected failures $$fail" >> libgo.sum; \
3141 fi; \
3142 if test "$$untested" -ne "0"; then \
3143 echo "# of untested testcases $$untested" >> libgo.sum; \
3144 fi; \
3145 echo `echo $(GOC) | sed -e 's/ .*//'` `$(GOC) -v 2>&1 | grep " version" | sed -n -e 's/.* \(version.*$$\)/\1/p'` >> libgo.sum; \
3146 echo >> libgo.log; \
3147 echo "runtest completed at `date`" >> libgo.log; \
3148 if test "$$fail" -ne "0"; then \
3149 status=1; \
3150 else \
3151 status=0; \
3152 fi; \
3153 exit $$status
3154
3155 check-am:
3156 @rm -f libgo.sum libgo.log libgo.tail
3157 @multivar="unix"; \
3158 [ -z "$(MULTIFLAGS)" ] || multivar="$${multivar}/$(MULTIFLAGS)"; \
3159 echo "$${multivar}" > libgo.var
3160 @for f in $(TEST_PACKAGES); do \
3161 rm -f $$f-testsum $$f-testlog; \
3162 done
3163 -@$(MAKE) -k $(TEST_PACKAGES)
3164 @for f in $(TEST_PACKAGES); do \
3165 if test -f $$f-testsum; then \
3166 cat $$f-testsum >> libgo.sum; \
3167 fi; \
3168 if test -f $$f-testlog; then \
3169 cat $$f-testlog >> libgo.log; \
3170 fi; \
3171 done
3172
3173 check-multi:
3174 $(MULTIDO) $(AM_MAKEFLAGS) DO=check-am multi-do # $(MAKE)
3175
3176 MOSTLYCLEAN_FILES = libgo.head libgo.sum.sep libgo.log.sep
3177
3178 mostlyclean-local:
3179 find . -name '*.lo' -print | xargs $(LIBTOOL) --mode=clean rm -f
3180 find . -name '*.$(OBJEXT)' -print | xargs rm -f
3181 find . -name '*-testsum' -print | xargs rm -f
3182 find . -name '*-testlog' -print | xargs rm -f
3183
3184 CLEANFILES = *.go *.gox goc2c *.c s-version libgo.sum libgo.log
3185
3186 clean-local:
3187 find . -name '*.la' -print | xargs $(LIBTOOL) --mode=clean rm -f
3188 find . -name '*.a' -print | xargs rm -f