OSDN Git Service

69244a8fdbac15051da3a993c8419dd88c35c268
[pf3gnuchains/gcc-fork.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 toolexeclibgodir = $(nover_glibgo_toolexeclibdir)/go/$(gcc_version)/$(target_alias)
29
30 LIBFFI = @LIBFFI@
31 LIBFFIINCS = @LIBFFIINCS@
32
33 WARN_CFLAGS = $(WARN_FLAGS) $(WERROR)
34
35 # -I/-D flags to pass when compiling.
36 AM_CPPFLAGS = -I $(srcdir)/runtime $(LIBFFIINCS) $(PTHREAD_CFLAGS)
37
38 ACLOCAL_AMFLAGS = -I ./config -I ../config
39
40 AM_CFLAGS = -fexceptions -fplan9-extensions $(SPLIT_STACK) $(WARN_CFLAGS) \
41         $(STRINGOPS_FLAG) $(OSCFLAGS) \
42         -I $(srcdir)/../libgcc -I $(MULTIBUILDTOP)../../gcc/include
43
44 if USING_SPLIT_STACK
45 AM_LDFLAGS = -XCClinker $(SPLIT_STACK)
46 endif
47
48 # Multilib support.
49 MAKEOVERRIDES=
50
51 # Work around what appears to be a GNU make  handling MAKEFLAGS
52 # values defined in terms of make variables, as is the case for CC and
53 # friends when we are called from the top level Makefile.
54 AM_MAKEFLAGS = \
55         "AR_FLAGS=$(AR_FLAGS)" \
56         "CC_FOR_BUILD=$(CC_FOR_BUILD)" \
57         "CC_FOR_TARGET=$(CC_FOR_TARGET)" \
58         "CFLAGS=$(CFLAGS)" \
59         "CXXFLAGS=$(CXXFLAGS)" \
60         "CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \
61         "CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" \
62         "GOC_FOR_TARGET=$(GOC_FOR_TARGET)" \
63         "GOC=$(GOC)" \
64         "GOCFLAGS=$(GOCFLAGS)" \
65         "INSTALL=$(INSTALL)" \
66         "INSTALL_DATA=$(INSTALL_DATA)" \
67         "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \
68         "INSTALL_SCRIPT=$(INSTALL_SCRIPT)" \
69         "LDFLAGS=$(LDFLAGS)" \
70         "LIBCFLAGS=$(LIBCFLAGS)" \
71         "LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" \
72         "MAKE=$(MAKE)" \
73         "MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" \
74         "PICFLAG=$(PICFLAG)" \
75         "PICFLAG_FOR_TARGET=$(PICFLAG_FOR_TARGET)" \
76         "SHELL=$(SHELL)" \
77         "RUNTESTFLAGS=$(RUNTESTFLAGS)" \
78         "exec_prefix=$(exec_prefix)" \
79         "infodir=$(infodir)" \
80         "libdir=$(libdir)" \
81         "includedir=$(includedir)" \
82         "prefix=$(prefix)" \
83         "tooldir=$(tooldir)" \
84         "gxx_include_dir=$(gxx_include_dir)" \
85         "AR=$(AR)" \
86         "AS=$(AS)" \
87         "LD=$(LD)" \
88         "RANLIB=$(RANLIB)" \
89         "NM=$(NM)" \
90         "NM_FOR_BUILD=$(NM_FOR_BUILD)" \
91         "NM_FOR_TARGET=$(NM_FOR_TARGET)" \
92         "DESTDIR=$(DESTDIR)" \
93         "WERROR=$(WERROR)"
94
95 # Subdir rules rely on $(FLAGS_TO_PASS)
96 FLAGS_TO_PASS = $(AM_MAKEFLAGS)
97
98 toolexeclib_LTLIBRARIES = libgo.la
99 toolexeclib_LIBRARIES = libgobegin.a
100
101 toolexeclibgo_DATA = \
102         bufio.gox \
103         bytes.gox \
104         crypto.gox \
105         errors.gox \
106         expvar.gox \
107         flag.gox \
108         fmt.gox \
109         hash.gox \
110         html.gox \
111         image.gox \
112         io.gox \
113         log.gox \
114         math.gox \
115         mime.gox \
116         net.gox \
117         os.gox \
118         path.gox \
119         reflect.gox \
120         regexp.gox \
121         runtime.gox \
122         sort.gox \
123         strconv.gox \
124         strings.gox \
125         sync.gox \
126         syscall.gox \
127         testing.gox \
128         time.gox \
129         unicode.gox
130
131 toolexeclibgoarchivedir = $(toolexeclibgodir)/archive
132
133 toolexeclibgoarchive_DATA = \
134         archive/tar.gox \
135         archive/zip.gox
136
137 toolexeclibgocompressdir = $(toolexeclibgodir)/compress
138
139 toolexeclibgocompress_DATA = \
140         compress/bzip2.gox \
141         compress/flate.gox \
142         compress/gzip.gox \
143         compress/lzw.gox \
144         compress/zlib.gox
145
146 toolexeclibgocontainerdir = $(toolexeclibgodir)/container
147
148 toolexeclibgocontainer_DATA = \
149         container/heap.gox \
150         container/list.gox \
151         container/ring.gox
152
153 toolexeclibgocryptodir = $(toolexeclibgodir)/crypto
154
155 toolexeclibgocrypto_DATA = \
156         crypto/aes.gox \
157         crypto/cipher.gox \
158         crypto/des.gox \
159         crypto/dsa.gox \
160         crypto/ecdsa.gox \
161         crypto/elliptic.gox \
162         crypto/hmac.gox \
163         crypto/md5.gox \
164         crypto/rand.gox \
165         crypto/rc4.gox \
166         crypto/rsa.gox \
167         crypto/sha1.gox \
168         crypto/sha256.gox \
169         crypto/sha512.gox \
170         crypto/subtle.gox \
171         crypto/tls.gox \
172         crypto/x509.gox
173
174 toolexeclibgocryptox509dir = $(toolexeclibgocryptodir)/x509
175
176 toolexeclibgocryptox509_DATA = \
177         crypto/x509/pkix.gox
178
179 toolexeclibgodatabasedir = $(toolexeclibgodir)/database
180
181 toolexeclibgodatabase_DATA = \
182         database/sql.gox
183
184 toolexeclibgodatabasesqldir = $(toolexeclibgodatabasedir)/sql
185
186 toolexeclibgodatabasesql_DATA = \
187         database/sql/driver.gox
188
189 toolexeclibgodebugdir = $(toolexeclibgodir)/debug
190
191 toolexeclibgodebug_DATA = \
192         debug/dwarf.gox \
193         debug/elf.gox \
194         debug/gosym.gox \
195         debug/macho.gox \
196         debug/pe.gox
197
198 toolexeclibgoencodingdir = $(toolexeclibgodir)/encoding
199
200 toolexeclibgoencoding_DATA = \
201         encoding/ascii85.gox \
202         encoding/asn1.gox \
203         encoding/base32.gox \
204         encoding/base64.gox \
205         encoding/binary.gox \
206         encoding/csv.gox \
207         encoding/gob.gox \
208         encoding/hex.gox \
209         encoding/json.gox \
210         encoding/pem.gox \
211         encoding/xml.gox
212
213 if LIBGO_IS_LINUX
214 # exp_inotify_gox = exp/inotify.gox
215 exp_inotify_gox =
216 else
217 exp_inotify_gox =
218 endif
219
220 toolexeclibgoexpdir = $(toolexeclibgodir)/exp
221
222 toolexeclibgoexp_DATA = \
223         exp/ebnf.gox \
224         exp/html.gox \
225         $(exp_inotify_gox) \
226         exp/norm.gox \
227         exp/proxy.gox \
228         exp/signal.gox \
229         exp/terminal.gox \
230         exp/types.gox \
231         exp/utf8string.gox
232
233 toolexeclibgogodir = $(toolexeclibgodir)/go
234
235 toolexeclibgogo_DATA = \
236         go/ast.gox \
237         go/build.gox \
238         go/doc.gox \
239         go/parser.gox \
240         go/printer.gox \
241         go/scanner.gox \
242         go/token.gox
243
244 toolexeclibgohashdir = $(toolexeclibgodir)/hash
245
246 toolexeclibgohash_DATA = \
247         hash/adler32.gox \
248         hash/crc32.gox \
249         hash/crc64.gox \
250         hash/fnv.gox
251
252 toolexeclibgohtmldir = $(toolexeclibgodir)/html
253
254 toolexeclibgohtml_DATA = \
255         html/template.gox
256
257 toolexeclibgoimagedir = $(toolexeclibgodir)/image
258
259 toolexeclibgoimage_DATA = \
260         image/color.gox \
261         image/draw.gox \
262         image/gif.gox \
263         image/jpeg.gox \
264         image/png.gox
265
266 toolexeclibgoindexdir = $(toolexeclibgodir)/index
267
268 toolexeclibgoindex_DATA = \
269         index/suffixarray.gox
270
271 toolexeclibgoiodir = $(toolexeclibgodir)/io
272
273 toolexeclibgoio_DATA = \
274         io/ioutil.gox
275
276 toolexeclibgologdir = $(toolexeclibgodir)/log
277
278 toolexeclibgolog_DATA = \
279         log/syslog.gox
280
281 toolexeclibgomathdir = $(toolexeclibgodir)/math
282
283 toolexeclibgomath_DATA = \
284         math/big.gox \
285         math/cmplx.gox \
286         math/rand.gox
287
288 toolexeclibgomimedir = $(toolexeclibgodir)/mime
289
290 toolexeclibgomime_DATA = \
291         mime/multipart.gox
292
293 toolexeclibgonetdir = $(toolexeclibgodir)/net
294
295 toolexeclibgonet_DATA = \
296         net/http.gox \
297         net/mail.gox \
298         net/rpc.gox \
299         net/smtp.gox \
300         net/textproto.gox \
301         net/url.gox
302
303 toolexeclibgonethttpdir = $(toolexeclibgonetdir)/http
304
305 toolexeclibgonethttp_DATA = \
306         net/http/cgi.gox \
307         net/http/fcgi.gox \
308         net/http/httptest.gox \
309         net/http/httputil.gox \
310         net/http/pprof.gox
311
312 toolexeclibgonetrpcdir = $(toolexeclibgonetdir)/rpc
313
314 toolexeclibgonetrpc_DATA = \
315         net/rpc/jsonrpc.gox
316
317 toolexeclibgoolddir = $(toolexeclibgodir)/old
318
319 toolexeclibgoold_DATA = \
320         old/netchan.gox \
321         old/regexp.gox \
322         old/template.gox
323
324 toolexeclibgoosdir = $(toolexeclibgodir)/os
325
326 toolexeclibgoos_DATA = \
327         os/exec.gox \
328         os/user.gox
329
330 toolexeclibgopathdir = $(toolexeclibgodir)/path
331
332 toolexeclibgopath_DATA = \
333         path/filepath.gox
334
335 toolexeclibgoregexpdir = $(toolexeclibgodir)/regexp
336
337 toolexeclibgoregexp_DATA = \
338         regexp/syntax.gox
339
340 toolexeclibgoruntimedir = $(toolexeclibgodir)/runtime
341
342 toolexeclibgoruntime_DATA = \
343         runtime/debug.gox \
344         runtime/pprof.gox
345
346 toolexeclibgosyncdir = $(toolexeclibgodir)/sync
347
348 toolexeclibgosync_DATA = \
349         sync/atomic.gox
350
351 toolexeclibgotestingdir = $(toolexeclibgodir)/testing
352
353 toolexeclibgotesting_DATA = \
354         testing/iotest.gox \
355         testing/quick.gox \
356         testing/script.gox
357
358 toolexeclibgotextdir = $(toolexeclibgodir)/text
359
360 toolexeclibgotext_DATA = \
361         text/scanner.gox \
362         text/tabwriter.gox \
363         text/template.gox
364
365 toolexeclibgotexttemplatedir = $(toolexeclibgotextdir)/template
366
367 toolexeclibgotexttemplate_DATA = \
368         text/template/parse.gox
369
370 toolexeclibgounicodedir = $(toolexeclibgodir)/unicode
371
372 toolexeclibgounicode_DATA = \
373         unicode/utf16.gox \
374         unicode/utf8.gox
375
376 if HAVE_SYS_MMAN_H
377 runtime_mem_file = runtime/mem.c
378 else
379 runtime_mem_file = runtime/mem_posix_memalign.c
380 endif
381
382 if LIBGO_IS_RTEMS
383 rtems_task_variable_add_file = runtime/rtems-task-variable-add.c
384 else
385 rtems_task_variable_add_file =
386 endif
387
388 if LIBGO_IS_LINUX
389 runtime_lock_files = runtime/lock_futex.c runtime/thread-linux.c
390 else
391 runtime_lock_files = runtime/lock_sema.c runtime/thread-sema.c
392 endif
393
394 runtime_files = \
395         runtime/go-append.c \
396         runtime/go-assert.c \
397         runtime/go-assert-interface.c \
398         runtime/go-byte-array-to-string.c \
399         runtime/go-breakpoint.c \
400         runtime/go-caller.c \
401         runtime/go-can-convert-interface.c \
402         runtime/go-cgo.c \
403         runtime/go-check-interface.c \
404         runtime/go-construct-map.c \
405         runtime/go-convert-interface.c \
406         runtime/go-copy.c \
407         runtime/go-defer.c \
408         runtime/go-deferred-recover.c \
409         runtime/go-eface-compare.c \
410         runtime/go-eface-val-compare.c \
411         runtime/go-getgoroot.c \
412         runtime/go-int-array-to-string.c \
413         runtime/go-int-to-string.c \
414         runtime/go-interface-compare.c \
415         runtime/go-interface-eface-compare.c \
416         runtime/go-interface-val-compare.c \
417         runtime/go-make-slice.c \
418         runtime/go-map-delete.c \
419         runtime/go-map-index.c \
420         runtime/go-map-len.c \
421         runtime/go-map-range.c \
422         runtime/go-matherr.c \
423         runtime/go-nanotime.c \
424         runtime/go-now.c \
425         runtime/go-new-map.c \
426         runtime/go-new.c \
427         runtime/go-nosys.c \
428         runtime/go-panic.c \
429         runtime/go-print.c \
430         runtime/go-recover.c \
431         runtime/go-reflect.c \
432         runtime/go-reflect-call.c \
433         runtime/go-reflect-map.c \
434         runtime/go-rune.c \
435         runtime/go-runtime-error.c \
436         runtime/go-setenv.c \
437         runtime/go-signal.c \
438         runtime/go-strcmp.c \
439         runtime/go-string-to-byte-array.c \
440         runtime/go-string-to-int-array.c \
441         runtime/go-strplus.c \
442         runtime/go-strslice.c \
443         runtime/go-trampoline.c \
444         runtime/go-type-complex.c \
445         runtime/go-type-eface.c \
446         runtime/go-type-error.c \
447         runtime/go-type-float.c \
448         runtime/go-type-identity.c \
449         runtime/go-type-interface.c \
450         runtime/go-type-string.c \
451         runtime/go-typedesc-equal.c \
452         runtime/go-typestring.c \
453         runtime/go-unreflect.c \
454         runtime/go-unsafe-new.c \
455         runtime/go-unsafe-newarray.c \
456         runtime/go-unsafe-pointer.c \
457         runtime/go-unwind.c \
458         runtime/chan.c \
459         runtime/cpuprof.c \
460         $(runtime_lock_files) \
461         runtime/mcache.c \
462         runtime/mcentral.c \
463         $(runtime_mem_file) \
464         runtime/mfinal.c \
465         runtime/mfixalloc.c \
466         runtime/mgc0.c \
467         runtime/mheap.c \
468         runtime/msize.c \
469         runtime/proc.c \
470         runtime/runtime.c \
471         runtime/thread.c \
472         runtime/yield.c \
473         $(rtems_task_variable_add_file) \
474         iface.c \
475         malloc.c \
476         map.c \
477         mprof.c \
478         reflect.c \
479         runtime1.c \
480         sema.c \
481         sigqueue.c \
482         string.c \
483         time.c
484
485 goc2c.$(OBJEXT): runtime/goc2c.c
486         $(CC_FOR_BUILD) -c $(CFLAGS_FOR_BUILD) $<
487
488 goc2c: goc2c.$(OBJEXT)
489         $(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) -o $@ $<
490
491 malloc.c: $(srcdir)/runtime/malloc.goc goc2c
492         ./goc2c --gcc --go-prefix libgo_runtime $< > $@.tmp
493         mv -f $@.tmp $@
494
495 mprof.c: $(srcdir)/runtime/mprof.goc goc2c
496         ./goc2c --gcc --go-prefix libgo_runtime $< > $@.tmp
497         mv -f $@.tmp $@
498
499 reflect.c: $(srcdir)/runtime/reflect.goc goc2c
500         ./goc2c --gcc --go-prefix libgo_reflect $< > $@.tmp
501         mv -f $@.tmp $@
502
503 runtime1.c: $(srcdir)/runtime/runtime1.goc goc2c
504         ./goc2c --gcc --go-prefix libgo_runtime $< > $@.tmp
505         mv -f $@.tmp $@
506
507 sema.c: $(srcdir)/runtime/sema.goc goc2c
508         ./goc2c --gcc --go-prefix libgo_runtime $< > $@.tmp
509         mv -f $@.tmp $@
510
511 sigqueue.c: $(srcdir)/runtime/sigqueue.goc goc2c
512         ./goc2c --gcc --go-prefix libgo_runtime $< > $@.tmp
513         mv -f $@.tmp $@
514
515 time.c: $(srcdir)/runtime/time.goc goc2c
516         ./goc2c --gcc --go-prefix libgo_time $< > $@.tmp
517         mv -f $@.tmp $@
518
519 %.c: $(srcdir)/runtime/%.goc goc2c
520         ./goc2c --gcc $< > $@.tmp
521         mv -f $@.tmp $@
522
523 go_bufio_files = \
524         go/bufio/bufio.go
525
526 go_bytes_files = \
527         go/bytes/buffer.go \
528         go/bytes/bytes.go \
529         go/bytes/bytes_decl.go
530 go_bytes_c_files = \
531         go/bytes/indexbyte.c
532
533 go_crypto_files = \
534         go/crypto/crypto.go
535
536 go_errors_files = \
537         go/errors/errors.go
538
539 go_expvar_files = \
540         go/expvar/expvar.go
541
542 go_flag_files = \
543         go/flag/flag.go
544
545 go_fmt_files = \
546         go/fmt/doc.go \
547         go/fmt/format.go \
548         go/fmt/print.go \
549         go/fmt/scan.go
550
551 go_hash_files = \
552         go/hash/hash.go
553
554 go_html_files = \
555         go/html/entity.go \
556         go/html/escape.go
557
558 go_image_files = \
559         go/image/format.go \
560         go/image/geom.go \
561         go/image/image.go \
562         go/image/names.go \
563         go/image/ycbcr.go
564
565 go_io_files = \
566         go/io/multi.go \
567         go/io/io.go \
568         go/io/pipe.go
569
570 go_log_files = \
571         go/log/log.go
572
573 go_math_files = \
574         go/math/abs.go \
575         go/math/acosh.go \
576         go/math/asin.go \
577         go/math/asinh.go \
578         go/math/atan.go \
579         go/math/atanh.go \
580         go/math/atan2.go \
581         go/math/bits.go \
582         go/math/cbrt.go \
583         go/math/const.go \
584         go/math/copysign.go \
585         go/math/dim.go \
586         go/math/erf.go \
587         go/math/exp.go \
588         go/math/expm1.go \
589         go/math/floor.go \
590         go/math/frexp.go \
591         go/math/gamma.go \
592         go/math/hypot.go \
593         go/math/j0.go \
594         go/math/j1.go \
595         go/math/jn.go \
596         go/math/ldexp.go \
597         go/math/lgamma.go \
598         go/math/log.go \
599         go/math/log1p.go \
600         go/math/log10.go \
601         go/math/logb.go \
602         go/math/mod.go \
603         go/math/modf.go \
604         go/math/nextafter.go \
605         go/math/pow.go \
606         go/math/pow10.go \
607         go/math/remainder.go \
608         go/math/signbit.go \
609         go/math/sin.go \
610         go/math/sincos.go \
611         go/math/sinh.go \
612         go/math/sqrt.go \
613         go/math/tan.go \
614         go/math/tanh.go \
615         go/math/unsafe.go
616
617 go_mime_files = \
618         go/mime/grammar.go \
619         go/mime/mediatype.go \
620         go/mime/type.go \
621         go/mime/type_unix.go
622
623 if LIBGO_IS_RTEMS
624 go_net_fd_os_file = go/net/fd_select.go
625 go_net_newpollserver_file = go/net/newpollserver_rtems.go
626 else # !LIBGO_IS_RTEMS
627 if LIBGO_IS_LINUX
628 go_net_fd_os_file = go/net/fd_linux.go
629 go_net_newpollserver_file = go/net/newpollserver.go
630 else # !LIBGO_IS_LINUX && !LIBGO_IS_RTEMS
631 if LIBGO_IS_NETBSD
632 go_net_fd_os_file = go/net/fd_netbsd.go
633 go_net_newpollserver_file = go/net/newpollserver.go
634 else # !LIBGO_IS_NETBSD && !LIBGO_IS_LINUX && !LIBGO_IS_RTEMS
635 # By default use select with pipes.  Most systems should have
636 # something better.
637 go_net_fd_os_file = go/net/fd_select.go
638 go_net_newpollserver_file = go/net/newpollserver.go
639 endif # !LIBGO_IS_NETBSD
640 endif # !LIBGO_IS_LINUX
641 endif # !LIBGO_IS_RTEMS
642
643 if LIBGO_IS_LINUX
644 go_net_cgo_file = go/net/cgo_linux.go
645 go_net_sock_file = go/net/sock_linux.go
646 go_net_sockopt_file = go/net/sockopt_linux.go
647 go_net_sockoptip_file = go/net/sockoptip_linux.go
648 else
649 if LIBGO_IS_IRIX
650 go_net_cgo_file = go/net/cgo_linux.go
651 go_net_sock_file = go/net/sock_linux.go
652 go_net_sockopt_file = go/net/sockopt_linux.go
653 go_net_sockoptip_file = go/net/sockoptip_linux.go
654 else
655 if LIBGO_IS_SOLARIS
656 go_net_cgo_file = go/net/cgo_linux.go
657 go_net_sock_file = go/net/sock_linux.go
658 go_net_sockopt_file = go/net/sockopt_linux.go
659 go_net_sockoptip_file = go/net/sockoptip_linux.go
660 else
661 go_net_cgo_file = go/net/cgo_bsd.go
662 go_net_sock_file = go/net/sock_bsd.go
663 go_net_sockopt_file = go/net/sockopt_bsd.go
664 go_net_sockoptip_file = go/net/sockoptip_bsd.go
665 endif
666 endif
667 endif
668
669 if LIBGO_IS_LINUX
670 go_net_sendfile_file = go/net/sendfile_linux.go
671 else
672 go_net_sendfile_file = go/net/sendfile_stub.go
673 endif
674
675 if LIBGO_IS_LINUX
676 go_net_interface_file = go/net/interface_linux.go
677 else
678 if LIBGO_IS_NETBSD
679 go_net_interface_file = go/net/interface_netbsd.go
680 else
681 go_net_interface_file = go/net/interface_stub.go
682 endif
683 endif
684
685 go_net_files = \
686         go/net/cgo_unix.go \
687         $(go_net_cgo_file) \
688         go/net/dial.go \
689         go/net/dnsclient.go \
690         go/net/dnsclient_unix.go \
691         go/net/dnsconfig.go \
692         go/net/dnsmsg.go \
693         go/net/doc.go \
694         $(go_net_newpollserver_file) \
695         go/net/fd.go \
696         $(go_net_fd_os_file) \
697         go/net/file.go \
698         go/net/hosts.go \
699         go/net/interface.go \
700         $(go_net_interface_file) \
701         go/net/ip.go \
702         go/net/iprawsock.go \
703         go/net/iprawsock_posix.go \
704         go/net/ipsock.go \
705         go/net/ipsock_posix.go \
706         go/net/lookup_unix.go \
707         go/net/net.go \
708         go/net/parse.go \
709         go/net/pipe.go \
710         go/net/port.go \
711         $(go_net_sendfile_file) \
712         go/net/sock.go \
713         $(go_net_sock_file) \
714         go/net/sockopt.go \
715         $(go_net_sockopt_file) \
716         go/net/sockoptip.go \
717         $(go_net_sockoptip_file) \
718         go/net/tcpsock.go \
719         go/net/tcpsock_posix.go \
720         go/net/udpsock.go \
721         go/net/udpsock_posix.go \
722         go/net/unixsock.go \
723         go/net/unixsock_posix.go
724
725 if LIBGO_IS_SOLARIS
726 if LIBGO_IS_386
727 go_os_dir_file = go/os/dir_largefile.go
728 else
729 if LIBGO_IS_SPARC
730 go_os_dir_file = go/os/dir_largefile.go
731 else
732 go_os_dir_file = go/os/dir_regfile.go
733 endif
734 endif
735 else
736 if LIBGO_IS_LINUX
737 go_os_dir_file = go/os/dir_largefile.go
738 else
739 go_os_dir_file = go/os/dir_regfile.go
740 endif
741 endif
742
743 if LIBGO_IS_LINUX
744 go_os_sys_file = go/os/sys_linux.go
745 else
746 if LIBGO_IS_SOLARIS
747 go_os_sys_file = go/os/sys_uname.go
748 else
749 if LIBGO_IS_IRIX
750 go_os_sys_file = go/os/sys_uname.go
751 else
752 if LIBGO_IS_RTEMS
753 go_os_sys_file = go/os/sys_uname.go
754 else
755 go_os_sys_file = go/os/sys_bsd.go
756 endif
757 endif
758 endif
759 endif
760
761 if LIBGO_IS_SOLARIS
762 go_os_stat_file = go/os/stat_solaris.go
763 else
764 go_os_stat_file = go/os/stat.go
765 endif
766
767 go_os_files = \
768         $(go_os_dir_file) \
769         go/os/dir.go \
770         go/os/doc.go \
771         go/os/env.go \
772         go/os/error.go \
773         go/os/error_posix.go \
774         go/os/exec.go \
775         go/os/exec_posix.go \
776         go/os/exec_unix.go \
777         go/os/file.go \
778         go/os/file_posix.go \
779         go/os/file_unix.go \
780         go/os/getwd.go \
781         go/os/path.go \
782         go/os/path_unix.go \
783         go/os/proc.go \
784         $(go_os_stat_file) \
785         go/os/str.go \
786         $(go_os_sys_file) \
787         go/os/time.go \
788         go/os/types.go \
789         signal_unix.go
790
791 go_path_files = \
792         go/path/match.go \
793         go/path/path.go
794
795 go_reflect_files = \
796         go/reflect/deepequal.go \
797         go/reflect/type.go \
798         go/reflect/value.go
799
800 go_regexp_files = \
801         go/regexp/exec.go \
802         go/regexp/regexp.go
803
804 go_net_rpc_files = \
805         go/net/rpc/client.go \
806         go/net/rpc/debug.go \
807         go/net/rpc/server.go
808
809 go_runtime_files = \
810         go/runtime/debug.go \
811         go/runtime/error.go \
812         go/runtime/extern.go \
813         go/runtime/mem.go \
814         go/runtime/sig.go \
815         go/runtime/softfloat64.go \
816         go/runtime/type.go \
817         version.go
818
819 version.go: s-version; @true
820 s-version: Makefile
821         rm -f version.go.tmp
822         echo "package runtime" > version.go.tmp
823         echo 'const defaultGoroot = "$(prefix)"' >> version.go.tmp
824         echo 'const theVersion = "'`$(CC) --version | sed 1q`'"' >> version.go.tmp
825         echo 'const theGoarch = "'$(GOARCH)'"' >> version.go.tmp
826         echo 'const theGoos = "'$(GOOS)'"' >> version.go.tmp
827         $(SHELL) $(srcdir)/../move-if-change version.go.tmp version.go
828         $(STAMP) $@
829
830 go_sort_files = \
831         go/sort/search.go \
832         go/sort/sort.go
833
834 go_strconv_files = \
835         go/strconv/atob.go \
836         go/strconv/atof.go \
837         go/strconv/atoi.go \
838         go/strconv/decimal.go \
839         go/strconv/extfloat.go \
840         go/strconv/ftoa.go \
841         go/strconv/itoa.go \
842         go/strconv/quote.go
843
844 go_strings_files = \
845         go/strings/reader.go \
846         go/strings/replace.go \
847         go/strings/strings.go
848
849 go_sync_files = \
850         go/sync/cond.go \
851         go/sync/mutex.go \
852         go/sync/once.go \
853         go/sync/rwmutex.go \
854         go/sync/waitgroup.go
855
856 if LIBGO_IS_SOLARIS
857 go_syslog_file = go/log/syslog/syslog_libc.go
858 else
859 if LIBGO_IS_IRIX
860 go_syslog_file = go/log/syslog/syslog_libc.go
861 else
862 go_syslog_file = go/log/syslog/syslog_unix.go
863 endif
864 endif
865
866 go_log_syslog_files = \
867         go/log/syslog/syslog.go \
868         $(go_syslog_file)
869 go_syslog_c_files = \
870         go/log/syslog/syslog_c.c
871
872 go_testing_files = \
873         go/testing/benchmark.go \
874         go/testing/example.go \
875         go/testing/testing.go
876
877 go_time_files = \
878         go/time/format.go \
879         go/time/sleep.go \
880         go/time/sys_unix.go \
881         go/time/tick.go \
882         go/time/time.go \
883         go/time/zoneinfo.go \
884         go/time/zoneinfo_unix.go
885
886 go_unicode_files = \
887         go/unicode/casetables.go \
888         go/unicode/digit.go \
889         go/unicode/graphic.go \
890         go/unicode/letter.go \
891         go/unicode/tables.go
892
893
894 go_archive_tar_files = \
895         go/archive/tar/common.go \
896         go/archive/tar/reader.go \
897         go/archive/tar/writer.go
898
899 go_archive_zip_files = \
900         go/archive/zip/reader.go \
901         go/archive/zip/struct.go \
902         go/archive/zip/writer.go
903
904 go_compress_bzip2_files = \
905         go/compress/bzip2/bit_reader.go \
906         go/compress/bzip2/bzip2.go \
907         go/compress/bzip2/huffman.go \
908         go/compress/bzip2/move_to_front.go
909
910 go_compress_flate_files = \
911         go/compress/flate/deflate.go \
912         go/compress/flate/huffman_bit_writer.go \
913         go/compress/flate/huffman_code.go \
914         go/compress/flate/inflate.go \
915         go/compress/flate/reverse_bits.go \
916         go/compress/flate/token.go
917
918 go_compress_gzip_files = \
919         go/compress/gzip/gzip.go \
920         go/compress/gzip/gunzip.go
921
922 go_compress_lzw_files = \
923         go/compress/lzw/reader.go \
924         go/compress/lzw/writer.go
925
926 go_compress_zlib_files = \
927         go/compress/zlib/reader.go \
928         go/compress/zlib/writer.go
929
930 go_container_heap_files = \
931         go/container/heap/heap.go
932
933 go_container_list_files = \
934         go/container/list/list.go
935
936 go_container_ring_files = \
937         go/container/ring/ring.go
938
939 go_crypto_aes_files = \
940         go/crypto/aes/block.go \
941         go/crypto/aes/cipher.go \
942         go/crypto/aes/const.go
943 go_crypto_cipher_files = \
944         go/crypto/cipher/cbc.go \
945         go/crypto/cipher/cfb.go \
946         go/crypto/cipher/cipher.go \
947         go/crypto/cipher/ctr.go \
948         go/crypto/cipher/io.go \
949         go/crypto/cipher/ofb.go
950 go_crypto_des_files = \
951         go/crypto/des/block.go \
952         go/crypto/des/cipher.go \
953         go/crypto/des/const.go
954 go_crypto_dsa_files = \
955         go/crypto/dsa/dsa.go
956 go_crypto_ecdsa_files = \
957         go/crypto/ecdsa/ecdsa.go
958 go_crypto_elliptic_files = \
959         go/crypto/elliptic/elliptic.go \
960         go/crypto/elliptic/p224.go
961 go_crypto_hmac_files = \
962         go/crypto/hmac/hmac.go
963 go_crypto_md5_files = \
964         go/crypto/md5/md5.go \
965         go/crypto/md5/md5block.go
966 go_crypto_rand_files = \
967         go/crypto/rand/rand.go \
968         go/crypto/rand/rand_unix.go \
969         go/crypto/rand/util.go
970 go_crypto_rc4_files = \
971         go/crypto/rc4/rc4.go
972 go_crypto_rsa_files = \
973         go/crypto/rsa/pkcs1v15.go \
974         go/crypto/rsa/rsa.go
975 go_crypto_sha1_files = \
976         go/crypto/sha1/sha1.go \
977         go/crypto/sha1/sha1block.go
978 go_crypto_sha256_files = \
979         go/crypto/sha256/sha256.go \
980         go/crypto/sha256/sha256block.go
981 go_crypto_sha512_files = \
982         go/crypto/sha512/sha512.go \
983         go/crypto/sha512/sha512block.go
984 go_crypto_subtle_files = \
985         go/crypto/subtle/constant_time.go
986 go_crypto_tls_files = \
987         go/crypto/tls/alert.go \
988         go/crypto/tls/cipher_suites.go \
989         go/crypto/tls/common.go \
990         go/crypto/tls/conn.go \
991         go/crypto/tls/handshake_client.go \
992         go/crypto/tls/handshake_messages.go \
993         go/crypto/tls/handshake_server.go \
994         go/crypto/tls/key_agreement.go \
995         go/crypto/tls/prf.go \
996         go/crypto/tls/root_unix.go \
997         go/crypto/tls/tls.go
998 go_crypto_x509_files = \
999         go/crypto/x509/cert_pool.go \
1000         go/crypto/x509/pkcs1.go \
1001         go/crypto/x509/pkcs8.go \
1002         go/crypto/x509/verify.go \
1003         go/crypto/x509/x509.go
1004
1005 go_crypto_x509_pkix_files = \
1006         go/crypto/x509/pkix/pkix.go
1007
1008 go_database_sql_files = \
1009         go/database/sql/convert.go \
1010         go/database/sql/sql.go
1011
1012 go_database_sql_driver_files = \
1013         go/database/sql/driver/driver.go \
1014         go/database/sql/driver/types.go
1015
1016 go_debug_dwarf_files = \
1017         go/debug/dwarf/buf.go \
1018         go/debug/dwarf/const.go \
1019         go/debug/dwarf/entry.go \
1020         go/debug/dwarf/open.go \
1021         go/debug/dwarf/type.go \
1022         go/debug/dwarf/unit.go
1023 go_debug_elf_files = \
1024         go/debug/elf/elf.go \
1025         go/debug/elf/file.go
1026 go_debug_gosym_files = \
1027         go/debug/gosym/pclntab.go \
1028         go/debug/gosym/symtab.go
1029 go_debug_macho_files = \
1030         go/debug/macho/file.go \
1031         go/debug/macho/macho.go
1032 go_debug_pe_files = \
1033         go/debug/pe/file.go \
1034         go/debug/pe/pe.go
1035
1036 go_encoding_ascii85_files = \
1037         go/encoding/ascii85/ascii85.go
1038 go_encoding_asn1_files = \
1039         go/encoding/asn1/asn1.go \
1040         go/encoding/asn1/common.go \
1041         go/encoding/asn1/marshal.go
1042 go_encoding_base32_files = \
1043         go/encoding/base32/base32.go
1044 go_encoding_base64_files = \
1045         go/encoding/base64/base64.go
1046 go_encoding_binary_files = \
1047         go/encoding/binary/binary.go \
1048         go/encoding/binary/varint.go
1049 go_encoding_csv_files = \
1050         go/encoding/csv/reader.go \
1051         go/encoding/csv/writer.go
1052 go_encoding_gob_files = \
1053         go/encoding/gob/decode.go \
1054         go/encoding/gob/decoder.go \
1055         go/encoding/gob/doc.go \
1056         go/encoding/gob/encode.go \
1057         go/encoding/gob/encoder.go \
1058         go/encoding/gob/error.go \
1059         go/encoding/gob/type.go
1060 go_encoding_hex_files = \
1061         go/encoding/hex/hex.go
1062 go_encoding_json_files = \
1063         go/encoding/json/decode.go \
1064         go/encoding/json/encode.go \
1065         go/encoding/json/indent.go \
1066         go/encoding/json/scanner.go \
1067         go/encoding/json/stream.go \
1068         go/encoding/json/tags.go
1069 go_encoding_pem_files = \
1070         go/encoding/pem/pem.go
1071 go_encoding_xml_files = \
1072         go/encoding/xml/marshal.go \
1073         go/encoding/xml/read.go \
1074         go/encoding/xml/typeinfo.go \
1075         go/encoding/xml/xml.go
1076
1077 go_exp_ebnf_files = \
1078         go/exp/ebnf/ebnf.go \
1079         go/exp/ebnf/parser.go
1080 go_exp_html_files = \
1081         go/exp/html/const.go \
1082         go/exp/html/doc.go \
1083         go/exp/html/doctype.go \
1084         go/exp/html/entity.go \
1085         go/exp/html/escape.go \
1086         go/exp/html/foreign.go \
1087         go/exp/html/node.go \
1088         go/exp/html/parse.go \
1089         go/exp/html/render.go \
1090         go/exp/html/token.go
1091 go_exp_inotify_files = \
1092         go/exp/inotify/inotify_linux.go
1093 go_exp_norm_files = \
1094         go/exp/norm/composition.go \
1095         go/exp/norm/forminfo.go \
1096         go/exp/norm/input.go \
1097         go/exp/norm/normalize.go \
1098         go/exp/norm/readwriter.go \
1099         go/exp/norm/tables.go \
1100         go/exp/norm/trie.go
1101 go_exp_proxy_files = \
1102         go/exp/proxy/direct.go \
1103         go/exp/proxy/per_host.go \
1104         go/exp/proxy/proxy.go \
1105         go/exp/proxy/socks5.go
1106 go_exp_signal_files = \
1107         go/exp/signal/signal.go
1108 go_exp_terminal_files = \
1109         go/exp/terminal/terminal.go \
1110         go/exp/terminal/util.go
1111 go_exp_types_files = \
1112         go/exp/types/check.go \
1113         go/exp/types/const.go \
1114         go/exp/types/exportdata.go \
1115         go/exp/types/gcimporter.go \
1116         go/exp/types/types.go \
1117         go/exp/types/universe.go
1118 go_exp_utf8string_files = \
1119         go/exp/utf8string/string.go
1120
1121 go_go_ast_files = \
1122         go/go/ast/ast.go \
1123         go/go/ast/filter.go \
1124         go/go/ast/import.go \
1125         go/go/ast/print.go \
1126         go/go/ast/resolve.go \
1127         go/go/ast/scope.go \
1128         go/go/ast/walk.go
1129 go_go_build_files = \
1130         go/go/build/build.go \
1131         go/go/build/dir.go \
1132         go/go/build/path.go \
1133         syslist.go
1134 go_go_doc_files = \
1135         go/go/doc/comment.go \
1136         go/go/doc/doc.go \
1137         go/go/doc/example.go \
1138         go/go/doc/exports.go \
1139         go/go/doc/filter.go \
1140         go/go/doc/reader.go
1141 go_go_parser_files = \
1142         go/go/parser/interface.go \
1143         go/go/parser/parser.go
1144 go_go_printer_files = \
1145         go/go/printer/nodes.go \
1146         go/go/printer/printer.go
1147 go_go_scanner_files = \
1148         go/go/scanner/errors.go \
1149         go/go/scanner/scanner.go
1150 go_go_token_files = \
1151         go/go/token/position.go \
1152         go/go/token/serialize.go \
1153         go/go/token/token.go
1154
1155 go_hash_adler32_files = \
1156         go/hash/adler32/adler32.go
1157 go_hash_crc32_files = \
1158         go/hash/crc32/crc32.go \
1159         go/hash/crc32/crc32_generic.go
1160 go_hash_crc64_files = \
1161         go/hash/crc64/crc64.go
1162 go_hash_fnv_files = \
1163         go/hash/fnv/fnv.go
1164
1165 go_html_template_files = \
1166         go/html/template/attr.go \
1167         go/html/template/clone.go \
1168         go/html/template/content.go \
1169         go/html/template/context.go \
1170         go/html/template/css.go \
1171         go/html/template/doc.go \
1172         go/html/template/error.go \
1173         go/html/template/escape.go \
1174         go/html/template/html.go \
1175         go/html/template/js.go \
1176         go/html/template/template.go \
1177         go/html/template/transition.go \
1178         go/html/template/url.go
1179
1180 go_image_color_files = \
1181         go/image/color/color.go \
1182         go/image/color/ycbcr.go
1183
1184 go_image_draw_files = \
1185         go/image/draw/draw.go
1186
1187 go_image_gif_files = \
1188         go/image/gif/reader.go
1189
1190 go_image_jpeg_files = \
1191         go/image/jpeg/fdct.go \
1192         go/image/jpeg/huffman.go \
1193         go/image/jpeg/idct.go \
1194         go/image/jpeg/reader.go \
1195         go/image/jpeg/writer.go
1196
1197 go_image_png_files = \
1198         go/image/png/reader.go \
1199         go/image/png/writer.go
1200
1201 go_index_suffixarray_files = \
1202         go/index/suffixarray/qsufsort.go \
1203         go/index/suffixarray/suffixarray.go
1204
1205 go_io_ioutil_files = \
1206         go/io/ioutil/ioutil.go \
1207         go/io/ioutil/tempfile.go
1208
1209 go_math_big_files = \
1210         go/math/big/arith.go \
1211         go/math/big/int.go \
1212         go/math/big/nat.go \
1213         go/math/big/rat.go
1214 go_math_cmplx_files = \
1215         go/math/cmplx/abs.go \
1216         go/math/cmplx/asin.go \
1217         go/math/cmplx/conj.go \
1218         go/math/cmplx/exp.go \
1219         go/math/cmplx/isinf.go \
1220         go/math/cmplx/isnan.go \
1221         go/math/cmplx/log.go \
1222         go/math/cmplx/phase.go \
1223         go/math/cmplx/polar.go \
1224         go/math/cmplx/pow.go \
1225         go/math/cmplx/rect.go \
1226         go/math/cmplx/sin.go \
1227         go/math/cmplx/sqrt.go \
1228         go/math/cmplx/tan.go
1229 go_math_rand_files = \
1230         go/math/rand/exp.go \
1231         go/math/rand/normal.go \
1232         go/math/rand/rand.go \
1233         go/math/rand/rng.go \
1234         go/math/rand/zipf.go
1235
1236 go_mime_multipart_files = \
1237         go/mime/multipart/formdata.go \
1238         go/mime/multipart/multipart.go \
1239         go/mime/multipart/writer.go
1240
1241 go_net_http_files = \
1242         go/net/http/chunked.go \
1243         go/net/http/client.go \
1244         go/net/http/cookie.go \
1245         go/net/http/filetransport.go \
1246         go/net/http/fs.go \
1247         go/net/http/header.go \
1248         go/net/http/jar.go \
1249         go/net/http/lex.go \
1250         go/net/http/request.go \
1251         go/net/http/response.go \
1252         go/net/http/server.go \
1253         go/net/http/sniff.go \
1254         go/net/http/status.go \
1255         go/net/http/transfer.go \
1256         go/net/http/transport.go
1257 go_net_mail_files = \
1258         go/net/mail/message.go
1259 go_net_smtp_files = \
1260         go/net/smtp/auth.go \
1261         go/net/smtp/smtp.go
1262 go_net_textproto_files = \
1263         go/net/textproto/header.go \
1264         go/net/textproto/pipeline.go \
1265         go/net/textproto/reader.go \
1266         go/net/textproto/textproto.go \
1267         go/net/textproto/writer.go
1268 go_net_url_files = \
1269         go/net/url/url.go
1270
1271 go_net_http_cgi_files = \
1272         go/net/http/cgi/child.go \
1273         go/net/http/cgi/host.go
1274 go_net_http_fcgi_files = \
1275         go/net/http/fcgi/child.go \
1276         go/net/http/fcgi/fcgi.go
1277 go_net_http_httptest_files = \
1278         go/net/http/httptest/recorder.go \
1279         go/net/http/httptest/server.go
1280 go_net_http_pprof_files = \
1281         go/net/http/pprof/pprof.go
1282 go_net_http_httputil_files = \
1283         go/net/http/httputil/chunked.go \
1284         go/net/http/httputil/dump.go \
1285         go/net/http/httputil/persist.go \
1286         go/net/http/httputil/reverseproxy.go
1287
1288
1289 go_old_netchan_files = \
1290         go/old/netchan/common.go \
1291         go/old/netchan/export.go \
1292         go/old/netchan/import.go
1293 go_old_regexp_files = \
1294         go/old/regexp/regexp.go
1295 go_old_template_files = \
1296         go/old/template/doc.go \
1297         go/old/template/execute.go \
1298         go/old/template/format.go \
1299         go/old/template/parse.go
1300
1301 go_os_exec_files = \
1302         go/os/exec/exec.go \
1303         go/os/exec/lp_unix.go
1304
1305 go_os_user_files = \
1306         go/os/user/user.go \
1307         go/os/user/lookup_unix.go
1308
1309 go_path_filepath_files = \
1310         go/path/filepath/match.go \
1311         go/path/filepath/path.go \
1312         go/path/filepath/path_unix.go
1313
1314 go_regexp_syntax_files = \
1315         go/regexp/syntax/compile.go \
1316         go/regexp/syntax/parse.go \
1317         go/regexp/syntax/perl_groups.go \
1318         go/regexp/syntax/prog.go \
1319         go/regexp/syntax/regexp.go \
1320         go/regexp/syntax/simplify.go
1321
1322 go_net_rpc_jsonrpc_files = \
1323         go/net/rpc/jsonrpc/client.go \
1324         go/net/rpc/jsonrpc/server.go
1325
1326 go_runtime_debug_files = \
1327         go/runtime/debug/stack.go
1328 go_runtime_pprof_files = \
1329         go/runtime/pprof/pprof.go
1330
1331 go_text_tabwriter_files = \
1332         go/text/tabwriter/tabwriter.go
1333 go_text_template_files = \
1334         go/text/template/doc.go \
1335         go/text/template/exec.go \
1336         go/text/template/funcs.go \
1337         go/text/template/helper.go \
1338         go/text/template/template.go
1339 go_text_template_parse_files = \
1340         go/text/template/parse/lex.go \
1341         go/text/template/parse/node.go \
1342         go/text/template/parse/parse.go
1343
1344 go_sync_atomic_files = \
1345         go/sync/atomic/doc.go
1346 go_sync_atomic_c_files = \
1347         go/sync/atomic/atomic.c
1348
1349 go_testing_iotest_files = \
1350         go/testing/iotest/logger.go \
1351         go/testing/iotest/reader.go \
1352         go/testing/iotest/writer.go
1353 go_testing_quick_files = \
1354         go/testing/quick/quick.go
1355 go_testing_script_files = \
1356         go/testing/script/script.go
1357
1358 go_text_scanner_files = \
1359         go/text/scanner/scanner.go
1360
1361 go_unicode_utf16_files = \
1362         go/unicode/utf16/utf16.go
1363 go_unicode_utf8_files = \
1364         go/unicode/utf8/utf8.go
1365
1366 # Define Syscall and Syscall6.
1367 if LIBGO_IS_RTEMS
1368 syscall_syscall_file = go/syscall/syscall_stubs.go
1369 else
1370 syscall_syscall_file = go/syscall/syscall_unix.go
1371 endif
1372
1373 # Define ForkExec and Exec.
1374 if LIBGO_IS_RTEMS
1375 syscall_exec_file = go/syscall/exec_stubs.go
1376 syscall_exec_os_file =
1377 else
1378 if LIBGO_IS_LINUX
1379 syscall_exec_file = go/syscall/exec_unix.go
1380 syscall_exec_os_file = go/syscall/exec_linux.go
1381 else
1382 syscall_exec_file = go/syscall/exec_unix.go
1383 syscall_exec_os_file = go/syscall/exec_bsd.go
1384 endif
1385 endif
1386
1387 # Define Wait4.
1388 if LIBGO_IS_RTEMS
1389 syscall_wait_file =
1390 else
1391 if HAVE_WAIT4
1392 syscall_wait_file = go/syscall/libcall_wait4.go
1393 else
1394 syscall_wait_file = go/syscall/libcall_waitpid.go
1395 endif
1396 endif
1397
1398 # Support for pulling apart wait status.
1399 if LIBGO_IS_RTEMS
1400 syscall_wait_c_file =
1401 else
1402 syscall_wait_c_file = go/syscall/wait.c
1403 endif
1404
1405 # Define Sleep.
1406 if LIBGO_IS_RTEMS
1407 syscall_sleep_file = go/syscall/sleep_rtems.go
1408 else
1409 syscall_sleep_file = go/syscall/sleep_select.go
1410 endif
1411
1412 # Define Errstr.
1413 if LIBGO_IS_LINUX
1414 syscall_errstr_file = go/syscall/errstr_linux.go
1415 else
1416 if LIBGO_IS_RTEMS
1417 syscall_errstr_file = go/syscall/errstr_linux.go
1418 else
1419 if HAVE_STRERROR_R
1420 syscall_errstr_file = go/syscall/errstr.go
1421 else
1422 syscall_errstr_file = go/syscall/errstr_nor.go
1423 endif
1424 endif
1425 endif
1426
1427 # Declare libc functions that vary for largefile systems.
1428 if LIBGO_IS_LINUX
1429 # Always use lseek64 on GNU/Linux.
1430 syscall_size_file = go/syscall/libcall_posix_largefile.go
1431 else # !LIBGO_IS_LINUX
1432 if LIBGO_IS_SOLARIS
1433 if LIBGO_IS_386
1434 # Use lseek64 on 32-bit Solaris/x86.
1435 syscall_size_file = go/syscall/libcall_posix_largefile.go
1436 else # !LIBGO_IS_386
1437 if LIBGO_IS_SPARC
1438 # Use lseek64 on 32-bit Solaris/SPARC.
1439 syscall_size_file = go/syscall/libcall_posix_largefile.go
1440 else # !LIBGO_IS_386 && !LIBGO_IS_SPARC
1441 # Use lseek on 64-bit Solaris.
1442 syscall_size_file = go/syscall/libcall_posix_regfile.go
1443 endif # !LIBGO_IS_386 && !LIBGO_IS_SPARC
1444 endif # !LIBGO_IS_SOLARIS
1445 else # !LIBGO_IS_LINUX && !LIBGO_IS_SOLARIS
1446 # Use lseek by default.
1447 syscall_size_file = go/syscall/libcall_posix_regfile.go
1448 endif # !LIBGO_IS_SOLARIS
1449 endif # !LIBGO_IS_LINUX
1450
1451 # Define socket sizes and types.
1452 if LIBGO_IS_LINUX
1453 syscall_socket_file = go/syscall/socket_linux.go epoll.go
1454 else
1455 if LIBGO_IS_SOLARIS
1456 syscall_socket_file = go/syscall/socket_solaris.go
1457 else
1458 if LIBGO_IS_IRIX
1459 syscall_socket_file = go/syscall/socket_irix.go
1460 else
1461 syscall_socket_file = go/syscall/socket_bsd.go
1462 endif
1463 endif
1464 endif
1465
1466 # Support for uname.
1467 if LIBGO_IS_SOLARIS
1468 if LIBGO_IS_386
1469 # 32-bit Solaris 2/x86 needs _nuname, handled in libcall_solaris_386.go.
1470 syscall_uname_file =
1471 else # !LIBGO_IS_386 && LIBGO_IS_SOLARIS
1472 syscall_uname_file = go/syscall/libcall_uname.go
1473 endif
1474 else # !LIBGO_IS_SOLARIS
1475 syscall_uname_file = go/syscall/libcall_uname.go
1476 endif
1477
1478 # GNU/Linux specific socket control messages.
1479 if LIBGO_IS_LINUX
1480 syscall_sockcmsg_file = go/syscall/sockcmsg_linux.go
1481 else
1482 syscall_sockcmsg_file =
1483 endif
1484
1485 # Support for netlink sockets and messages.
1486 if LIBGO_IS_LINUX
1487 syscall_netlink_file = go/syscall/netlink_linux.go
1488 else
1489 syscall_netlink_file =
1490 endif
1491
1492 # GNU/Linux specific socket filters.
1493 if LIBGO_IS_LINUX
1494 syscall_lsf_file = go/syscall/lsf_linux.go
1495 else
1496 syscall_lsf_file =
1497 endif
1498
1499 go_base_syscall_files = \
1500         go/syscall/env_unix.go \
1501         go/syscall/syscall_errno.go \
1502         go/syscall/libcall_support.go \
1503         go/syscall/libcall_posix.go \
1504         go/syscall/socket.go \
1505         go/syscall/sockcmsg_unix.go \
1506         go/syscall/str.go \
1507         go/syscall/syscall.go \
1508         $(syscall_sockcmsg_file) \
1509         $(syscall_syscall_file) \
1510         $(syscall_exec_file) \
1511         $(syscall_exec_os_file) \
1512         $(syscall_wait_file) \
1513         $(syscall_sleep_file) \
1514         $(syscall_errstr_file) \
1515         $(syscall_size_file) \
1516         $(syscall_socket_file) \
1517         $(syscall_uname_file) \
1518         $(syscall_netlink_file) \
1519         $(syscall_lsf_file) \
1520         $(GO_LIBCALL_OS_FILE) \
1521         $(GO_LIBCALL_OS_ARCH_FILE) \
1522         $(GO_SYSCALL_OS_FILE) \
1523         $(GO_SYSCALL_OS_ARCH_FILE)
1524
1525 go_syscall_files = \
1526         $(go_base_syscall_files) \
1527         libcalls.go \
1528         sysinfo.go \
1529         syscall_arch.go
1530 go_syscall_c_files = \
1531         go/syscall/errno.c \
1532         $(syscall_wait_c_file)
1533
1534 libcalls.go: s-libcalls; @true
1535 s-libcalls: Makefile go/syscall/mksyscall.awk $(go_base_syscall_files)
1536         rm -f libcalls.go.tmp
1537         files=`echo $^ | sed -e 's/Makefile//' -e 's|[^ ]*go/syscall/mksyscall.awk||'`; \
1538         $(AWK) -f $(srcdir)/go/syscall/mksyscall.awk $${files} > libcalls.go.tmp
1539         $(SHELL) $(srcdir)/../move-if-change libcalls.go.tmp libcalls.go
1540         $(STAMP) $@
1541
1542 syscall_arch.go: s-syscall_arch; @true
1543 s-syscall_arch: Makefile
1544         rm -f syscall_arch.go.tmp
1545         echo "package syscall" > syscall_arch.go.tmp
1546         echo 'const ARCH = "'$(GOARCH)'"' >> syscall_arch.go.tmp
1547         echo 'const OS = "'$(GOOS)'"' >> syscall_arch.go.tmp
1548         $(SHELL) $(srcdir)/../move-if-change syscall_arch.go.tmp syscall_arch.go
1549         $(STAMP) $@
1550
1551 sysinfo.go: s-sysinfo; @true
1552 s-sysinfo: $(srcdir)/mksysinfo.sh config.h
1553         CC="$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(OSCFLAGS)" $(SHELL) $(srcdir)/mksysinfo.sh
1554         $(SHELL) $(srcdir)/../move-if-change tmp-sysinfo.go sysinfo.go
1555         $(STAMP) $@
1556
1557 # The epoll struct has an embedded union and is packed on x86_64,
1558 # which is too complicated for mksysinfo.sh.  We find the offset of
1559 # the only field we care about in configure.ac, and generate the
1560 # struct here.
1561 epoll.go: s-epoll; @true
1562 s-epoll: Makefile
1563         rm -f epoll.go.tmp
1564         echo 'package syscall' > epoll.go.tmp
1565         echo 'type EpollEvent struct {' >> epoll.go.tmp
1566         echo '  Events uint32' >> epoll.go.tmp
1567         case "$(SIZEOF_STRUCT_EPOLL_EVENT),$(STRUCT_EPOLL_EVENT_FD_OFFSET)" in \
1568         0,0) echo 1>&2 "*** struct epoll_event data.fd offset unknown"; \
1569            exit 1; ;; \
1570         8,4) echo '     Fd int32' >> epoll.go.tmp; ;; \
1571         12,4) echo '    Fd int32' >> epoll.go.tmp; \
1572            echo '       Pad [4]byte' >> epoll.go.tmp; ;; \
1573         12,8) echo '    Pad [4]byte' >> epoll.go.tmp; \
1574            echo '       Fd int32' >> epoll.go.tmp; ;; \
1575         16,8) echo '    Pad [4]byte' >> epoll.go.tmp; \
1576            echo '       Fd int32' >> epoll.go.tmp; \
1577            echo '       Pad2 [4]byte' >> epoll.go.tmp; ;; \
1578         *) echo 1>&2 "*** struct epoll_event unsupported"; \
1579            exit 1; ;; \
1580         esac
1581         echo '}' >> epoll.go.tmp
1582         $(SHELL) $(srcdir)/../move-if-change epoll.go.tmp epoll.go
1583         $(STAMP) $@
1584
1585 if LIBGO_IS_LINUX
1586 # os_lib_inotify_lo = os/inotify.lo
1587 os_lib_inotify_lo =
1588 else
1589 os_lib_inotify_lo =
1590 endif
1591
1592 libgo_go_objs = \
1593         bufio/bufio.lo \
1594         bytes/bytes.lo \
1595         bytes/index.lo \
1596         crypto/crypto.lo \
1597         errors/errors.lo \
1598         expvar/expvar.lo \
1599         flag/flag.lo \
1600         fmt/fmt.lo \
1601         hash/hash.lo \
1602         html/html.lo \
1603         image/image.lo \
1604         io/io.lo \
1605         log/log.lo \
1606         math/math.lo \
1607         net/net.lo \
1608         os/exec.lo \
1609         os/os.lo \
1610         path/path.lo \
1611         reflect/reflect.lo \
1612         regexp/regexp.lo \
1613         runtime/runtime.lo \
1614         sort/sort.lo \
1615         strconv/strconv.lo \
1616         strings/strings.lo \
1617         sync/sync.lo \
1618         time/time.lo \
1619         unicode/unicode.lo \
1620         archive/tar.lo \
1621         archive/zip.lo \
1622         compress/bzip2.lo \
1623         compress/flate.lo \
1624         compress/gzip.lo \
1625         compress/lzw.lo \
1626         compress/zlib.lo \
1627         container/heap.lo \
1628         container/list.lo \
1629         container/ring.lo \
1630         crypto/aes.lo \
1631         crypto/cipher.lo \
1632         crypto/des.lo \
1633         crypto/dsa.lo \
1634         crypto/ecdsa.lo \
1635         crypto/elliptic.lo \
1636         crypto/hmac.lo \
1637         crypto/md5.lo \
1638         crypto/rand.lo \
1639         crypto/rc4.lo \
1640         crypto/rsa.lo \
1641         crypto/sha1.lo \
1642         crypto/sha256.lo \
1643         crypto/sha512.lo \
1644         crypto/subtle.lo \
1645         crypto/tls.lo \
1646         crypto/x509.lo \
1647         crypto/x509/pkix.lo \
1648         database/sql.lo \
1649         database/sql/driver.lo \
1650         debug/dwarf.lo \
1651         debug/elf.lo \
1652         debug/gosym.lo \
1653         debug/macho.lo \
1654         debug/pe.lo \
1655         encoding/ascii85.lo \
1656         encoding/asn1.lo \
1657         encoding/base32.lo \
1658         encoding/base64.lo \
1659         encoding/binary.lo \
1660         encoding/csv.lo \
1661         encoding/gob.lo \
1662         encoding/hex.lo \
1663         encoding/json.lo \
1664         encoding/pem.lo \
1665         encoding/xml.lo \
1666         exp/ebnf.lo \
1667         exp/html.lo \
1668         exp/norm.lo \
1669         exp/proxy.lo \
1670         exp/signal.lo \
1671         exp/terminal.lo \
1672         exp/types.lo \
1673         exp/utf8string.lo \
1674         html/template.lo \
1675         go/ast.lo \
1676         go/build.lo \
1677         go/doc.lo \
1678         go/parser.lo \
1679         go/printer.lo \
1680         go/scanner.lo \
1681         go/token.lo \
1682         hash/adler32.lo \
1683         hash/crc32.lo \
1684         hash/crc64.lo \
1685         hash/fnv.lo \
1686         net/http/cgi.lo \
1687         net/http/fcgi.lo \
1688         net/http/httptest.lo \
1689         net/http/httputil.lo \
1690         net/http/pprof.lo \
1691         image/color.lo \
1692         image/draw.lo \
1693         image/gif.lo \
1694         image/jpeg.lo \
1695         image/png.lo \
1696         index/suffixarray.lo \
1697         io/ioutil.lo \
1698         log/syslog.lo \
1699         log/syslog/syslog_c.lo \
1700         math/big.lo \
1701         math/cmplx.lo \
1702         math/rand.lo \
1703         mime/mime.lo \
1704         mime/multipart.lo \
1705         net/http.lo \
1706         net/mail.lo \
1707         net/rpc.lo \
1708         net/smtp.lo \
1709         net/textproto.lo \
1710         net/url.lo \
1711         old/netchan.lo \
1712         old/regexp.lo \
1713         old/template.lo \
1714         $(os_lib_inotify_lo) \
1715         os/user.lo \
1716         path/filepath.lo \
1717         regexp/syntax.lo \
1718         net/rpc/jsonrpc.lo \
1719         runtime/debug.lo \
1720         runtime/pprof.lo \
1721         sync/atomic.lo \
1722         sync/atomic_c.lo \
1723         syscall/syscall.lo \
1724         syscall/errno.lo \
1725         syscall/wait.lo \
1726         text/scanner.lo \
1727         text/tabwriter.lo \
1728         text/template.lo \
1729         text/template/parse.lo \
1730         testing/testing.lo \
1731         testing/iotest.lo \
1732         testing/quick.lo \
1733         testing/script.lo \
1734         unicode/utf16.lo \
1735         unicode/utf8.lo
1736
1737 libgo_la_SOURCES = $(runtime_files)
1738
1739 libgo_la_LDFLAGS = $(PTHREAD_CFLAGS) $(AM_LDFLAGS)
1740
1741 libgo_la_LIBADD = \
1742         $(libgo_go_objs) $(LIBFFI) $(PTHREAD_LIBS) $(MATH_LIBS) $(NET_LIBS)
1743
1744 libgobegin_a_SOURCES = \
1745         runtime/go-main.c
1746
1747 LTLDFLAGS = $(shell $(SHELL) $(top_srcdir)/../libtool-ldflags $(LDFLAGS))
1748
1749 GOCFLAGS = $(CFLAGS)
1750 AM_GOCFLAGS = $(STRINGOPS_FLAG)
1751 GOCOMPILE = $(GOC) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_GOCFLAGS) $(GOCFLAGS)
1752
1753 LTGOCOMPILE = $(LIBTOOL) --tag GO --mode=compile $(GOC) $(INCLUDES) \
1754         $(AM_GOCFLAGS) $(GOCFLAGS)
1755
1756 GOLINK = $(LIBTOOL) --tag GO --mode-link $(GOC) \
1757         $(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_GOCFLAGS) $(LTLDFLAGS) -o $@
1758
1759 # Build the dependencies for a Go package.
1760 BUILDDEPS = \
1761         $(MKDIR_P) $(@D); \
1762         $(SHELL) $(srcdir)/godeps.sh `echo $@ | sed -e 's/.dep$$//'` $^ > $@.tmp; \
1763         mv -f $@.tmp $@
1764
1765 # Build the .go files for a package, generating a .lo file.
1766 BUILDPACKAGE = \
1767         $(MKDIR_P) $(@D); \
1768         files=`echo $^ | sed -e 's/[^ ]*\.gox//g'`; \
1769         $(LTGOCOMPILE) -I . -c -fgo-prefix="libgo_$(@D)" -o $@ $$files
1770
1771 if LIBGO_IS_RTEMS
1772 use_dejagnu = yes
1773 else
1774 use_dejagnu = no
1775 endif
1776
1777 GOTESTFLAGS =
1778
1779 # Check a package.
1780 CHECK = \
1781         GC="$(GOC) $(GOCFLAGS) -L `${PWD_COMMAND}` -L `${PWD_COMMAND}`/.libs"; \
1782         export GC; \
1783         GOLIBS="$(MATH_LIBS) $(NET_LIBS)"; \
1784         export GOLIBS; \
1785         RUNTESTFLAGS="$(RUNTESTFLAGS)"; \
1786         export RUNTESTFLAGS; \
1787         MAKE="$(MAKE)"; \
1788         export MAKE; \
1789         libgccdir=`${GOC} -print-libgcc-file-name | sed -e 's|/[^/]*$$||'`; \
1790         LD_LIBRARY_PATH="`${PWD_COMMAND}`/.libs:$${libgccdir}:${LD_LIBRARY_PATH}"; \
1791         LD_LIBRARY_PATH=`echo $${LD_LIBRARY_PATH} | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; \
1792         export LD_LIBRARY_PATH; \
1793         rm -f $@-testsum $@-testlog; \
1794         prefix=`if test "$(@D)" = "regexp"; then echo regexp-test; else dirname $(@D); fi`; \
1795         test "$${prefix}" != "." || prefix="$(@D)"; \
1796         if test "$(use_dejagnu)" = "yes"; then \
1797           $(SHELL) $(srcdir)/testsuite/gotest --dejagnu=yes --basedir=$(srcdir) --srcdir=$(srcdir)/go/$(@D) --prefix="libgo_$${prefix}" --pkgfiles="$(go_$(subst /,_,$(@D))_files)" --testname="$(@D)" $(GOTESTFLAGS); \
1798         else \
1799           if $(SHELL) $(srcdir)/testsuite/gotest --basedir=$(srcdir) --srcdir=$(srcdir)/go/$(@D) --prefix="libgo_$${prefix}" --pkgfiles="$(go_$(subst /,_,$(@D))_files)" $(GOTESTFLAGS) >>$@-testlog 2>&1; then \
1800             echo "PASS: $(@D)" >> $@-testlog; \
1801             echo "PASS: $(@D)"; \
1802             echo "PASS: $(@D)" > $@-testsum; \
1803           else \
1804             echo "FAIL: $(@D)" >> $@-testlog; \
1805             cat $@-testlog; \
1806             echo "FAIL: $(@D)" > $@-testsum; \
1807             exit 1; \
1808           fi; \
1809         fi
1810
1811 # Build all packages before checking any.
1812 CHECK_DEPS = libgo.la libgobegin.a \
1813         $(toolexeclibgo_DATA) \
1814         $(toolexeclibgoarchive_DATA) \
1815         $(toolexeclibgocompress_DATA) \
1816         $(toolexeclibgocontainer_DATA) \
1817         $(toolexeclibgocrypto_DATA) \
1818         $(toolexeclibgodebug_DATA) \
1819         $(toolexeclibgoencoding_DATA) \
1820         $(toolexeclibgoexp_DATA) \
1821         $(toolexeclibgogo_DATA) \
1822         $(toolexeclibgohash_DATA) \
1823         $(toolexeclibgoimage_DATA) \
1824         $(toolexeclibgoindex_DATA) \
1825         $(toolexeclibgoio_DATA) \
1826         $(toolexeclibgolog_DATA) \
1827         $(toolexeclibgomath_DATA) \
1828         $(toolexeclibgomime_DATA) \
1829         $(toolexeclibgonet_DATA) \
1830         $(toolexeclibgonethttp_DATA) \
1831         $(toolexeclibgoos_DATA) \
1832         $(toolexeclibgopath_DATA) \
1833         $(toolexeclibgorpc_DATA) \
1834         $(toolexeclibgoruntime_DATA) \
1835         $(toolexeclibgosync_DATA) \
1836         $(toolexeclibgotesting_DATA) \
1837         $(toolexeclibgotext_DATA) \
1838         $(toolexeclibgotexttemplate_DATA) \
1839         $(toolexeclibgounicode_DATA)
1840
1841 @go_include@ bufio/bufio.lo.dep
1842 bufio/bufio.lo.dep: $(go_bufio_files)
1843         $(BUILDDEPS)
1844 bufio/bufio.lo: $(go_bufio_files)
1845         $(BUILDPACKAGE)
1846 bufio/check: $(CHECK_DEPS)
1847         @$(CHECK)
1848 .PHONY: bufio/check
1849
1850 @go_include@ bytes/bytes.lo.dep
1851 bytes/bytes.lo.dep: $(go_bytes_files)
1852         $(BUILDDEPS)
1853 bytes/bytes.lo: $(go_bytes_files)
1854         $(BUILDPACKAGE)
1855 bytes/index.lo: $(go_bytes_c_files) bytes/bytes.lo
1856         $(LTCOMPILE) -c -o bytes/index.lo $(srcdir)/go/bytes/indexbyte.c
1857 bytes/check: $(CHECK_DEPS)
1858         @$(CHECK)
1859 .PHONY: bytes/check
1860
1861 @go_include@ crypto/crypto.lo.dep
1862 crypto/crypto.lo.dep: $(go_crypto_files)
1863         $(BUILDDEPS)
1864 crypto/crypto.lo: $(go_crypto_files)
1865         $(BUILDPACKAGE)
1866 crypto/check: $(CHECK_DEPS)
1867         @$(CHECK)
1868 .PHONY: crypto/check
1869
1870 @go_include@ errors/errors.lo.dep
1871 errors/errors.lo.dep: $(go_errors_files)
1872         $(BUILDDEPS)
1873 errors/errors.lo: $(go_errors_files)
1874         $(BUILDPACKAGE)
1875 errors/check: $(CHECK_DEPS)
1876         @$(CHECK)
1877 .PHONY: errors/check
1878
1879 @go_include@ expvar/expvar.lo.dep
1880 expvar/expvar.lo.dep: $(go_expvar_files)
1881         $(BUILDDEPS)
1882 expvar/expvar.lo: $(go_expvar_files)
1883         $(BUILDPACKAGE)
1884 expvar/check: $(CHECK_DEPS)
1885         @$(CHECK)
1886 .PHONY: expvar/check
1887
1888 @go_include@ flag/flag.lo.dep
1889 flag/flag.lo.dep: $(go_flag_files)
1890         $(BUILDDEPS)
1891 flag/flag.lo: $(go_flag_files)
1892         $(BUILDPACKAGE)
1893 flag/check: $(CHECK_DEPS)
1894         @$(CHECK)
1895 .PHONY: flag/check
1896
1897 @go_include@ fmt/fmt.lo.dep
1898 fmt/fmt.lo.dep: $(go_fmt_files)
1899         $(BUILDDEPS)
1900 fmt/fmt.lo: $(go_fmt_files)
1901         $(BUILDPACKAGE)
1902 fmt/check: $(CHECK_DEPS)
1903         @$(CHECK)
1904 .PHONY: fmt/check
1905
1906 @go_include@ hash/hash.lo.dep
1907 hash/hash.lo.dep: $(go_hash_files)
1908         $(BUILDDEPS)
1909 hash/hash.lo: $(go_hash_files)
1910         $(BUILDPACKAGE)
1911 hash/check: $(CHECK_DEPS)
1912         @$(CHECK)
1913 .PHONY: hash/check
1914
1915 @go_include@ html/html.lo.dep
1916 html/html.lo.dep: $(go_html_files)
1917         $(BUILDDEPS)
1918 html/html.lo: $(go_html_files)
1919         $(BUILDPACKAGE)
1920 html/check: $(CHECK_DEPS)
1921         @$(CHECK)
1922 .PHONY: html/check
1923
1924 @go_include@ image/image.lo.dep
1925 image/image.lo.dep: $(go_image_files)
1926         $(BUILDDEPS)
1927 image/image.lo: $(go_image_files)
1928         $(BUILDPACKAGE)
1929 image/check: $(CHECK_DEPS)
1930         @$(CHECK)
1931 .PHONY: image/check
1932
1933 @go_include@ io/io.lo.dep
1934 io/io.lo.dep: $(go_io_files)
1935         $(BUILDDEPS)
1936 io/io.lo: $(go_io_files)
1937         $(BUILDPACKAGE)
1938 io/check: $(CHECK_DEPS)
1939         @$(CHECK)
1940 .PHONY: io/check
1941
1942 @go_include@ log/log.lo.dep
1943 log/log.lo.dep: $(go_log_files)
1944         $(BUILDDEPS)
1945 log/log.lo: $(go_log_files)
1946         $(BUILDPACKAGE)
1947 log/check: $(CHECK_DEPS)
1948         @$(CHECK)
1949 .PHONY: log/check
1950
1951 @go_include@ math/math.lo.dep
1952 math/math.lo.dep: $(go_math_files)
1953         $(BUILDDEPS)
1954 math/math.lo: $(go_math_files)
1955         $(MKDIR_P) $(@D)
1956         files=`echo $^ | sed -e 's/[^ ]*\.gox//g'`; \
1957         $(LTGOCOMPILE) $(MATH_FLAG) -I . -c -fgo-prefix="libgo_$(@D)" -o $@ $$files
1958 math/check: $(CHECK_DEPS)
1959         @$(CHECK)
1960 .PHONY: math/check
1961
1962 @go_include@ mime/mime.lo.dep
1963 mime/mime.lo.dep: $(go_mime_files)
1964         $(BUILDDEPS)
1965 mime/mime.lo: $(go_mime_files)
1966         $(BUILDPACKAGE)
1967 mime/check: $(CHECK_DEPS)
1968         @$(CHECK)
1969 .PHONY: mime/check
1970
1971 @go_include@ net/net.lo.dep
1972 net/net.lo.dep: $(go_net_files)
1973         $(BUILDDEPS)
1974 net/net.lo: $(go_net_files)
1975         $(BUILDPACKAGE)
1976 net/check: $(CHECK_DEPS)
1977         @$(CHECK)
1978 .PHONY: net/check
1979
1980 @go_include@ os/os.lo.dep
1981 os/os.lo.dep: $(go_os_files)
1982         $(BUILDDEPS)
1983 os/os.lo: $(go_os_files)
1984         $(BUILDPACKAGE)
1985 os/check: $(CHECK_DEPS)
1986         @$(CHECK)
1987 .PHONY: os/check
1988
1989 signal_unix.go: $(srcdir)/go/os/mkunixsignals.sh sysinfo.go
1990         $(SHELL) $(srcdir)/go/os/mkunixsignals.sh sysinfo.go > $@.tmp
1991         mv -f $@.tmp $@
1992
1993 @go_include@ path/path.lo.dep
1994 path/path.lo.dep: $(go_path_files)
1995         $(BUILDDEPS)
1996 path/path.lo: $(go_path_files)
1997         $(BUILDPACKAGE)
1998 path/check: $(CHECK_DEPS)
1999         @$(CHECK)
2000 .PHONY: path/check
2001
2002 @go_include@ reflect/reflect.lo.dep
2003 reflect/reflect.lo.dep: $(go_reflect_files)
2004         $(BUILDDEPS)
2005 reflect/reflect.lo: $(go_reflect_files)
2006         $(BUILDPACKAGE)
2007 reflect/check: $(CHECK_DEPS)
2008         @$(CHECK)
2009 .PHONY: reflect/check
2010
2011 @go_include@ regexp/regexp.lo.dep
2012 regexp/regexp.lo.dep: $(go_regexp_files)
2013         $(BUILDDEPS)
2014 regexp/regexp.lo: $(go_regexp_files)
2015         $(BUILDPACKAGE)
2016 regexp/check: $(CHECK_DEPS)
2017         @$(CHECK)
2018 .PHONY: regexp/check
2019
2020 @go_include@ runtime/runtime.lo.dep
2021 runtime/runtime.lo.dep: $(go_runtime_files)
2022         $(BUILDDEPS)
2023 runtime/runtime.lo: $(go_runtime_files)
2024         $(BUILDPACKAGE)
2025 runtime/check: $(CHECK_DEPS)
2026         @$(CHECK)
2027 .PHONY: runtime/check
2028
2029 @go_include@ text/scanner.lo.dep
2030 text/scanner.lo.dep: $(go_text_scanner_files)
2031         $(BUILDDEPS)
2032 text/scanner.lo: $(go_text_scanner_files)
2033         $(BUILDPACKAGE)
2034 text/scanner/check: $(CHECK_DEPS)
2035         @$(MKDIR_P) text/scanner
2036         @$(CHECK)
2037 .PHONY: text/scanner/check
2038
2039 @go_include@ sort/sort.lo.dep
2040 sort/sort.lo.dep: $(go_sort_files)
2041         $(BUILDDEPS)
2042 sort/sort.lo: $(go_sort_files)
2043         $(BUILDPACKAGE)
2044 sort/check: $(CHECK_DEPS)
2045         @$(CHECK)
2046 .PHONY: sort/check
2047
2048 @go_include@ strconv/strconv.lo.dep
2049 strconv/strconv.lo.dep: $(go_strconv_files)
2050         $(BUILDDEPS)
2051 strconv/strconv.lo: $(go_strconv_files)
2052         $(BUILDPACKAGE)
2053 strconv/check: $(CHECK_DEPS)
2054         @$(CHECK)
2055 .PHONY: strconv/check
2056
2057 @go_include@ strings/strings.lo.dep
2058 strings/strings.lo.dep: $(go_strings_files)
2059         $(BUILDDEPS)
2060 strings/strings.lo: $(go_strings_files)
2061         $(BUILDPACKAGE)
2062 strings/check: $(CHECK_DEPS)
2063         @$(CHECK)
2064 .PHONY: strings/check
2065
2066 @go_include@ sync/sync.lo.dep
2067 sync/sync.lo.dep: $(go_sync_files)
2068         $(BUILDDEPS)
2069 sync/sync.lo: $(go_sync_files)
2070         $(BUILDPACKAGE)
2071 sync/check: $(CHECK_DEPS)
2072         @$(CHECK)
2073 .PHONY: sync/check
2074
2075 @go_include@ testing/testing.lo.dep
2076 testing/testing.lo.dep: $(go_testing_files)
2077         $(BUILDDEPS)
2078 testing/testing.lo: $(go_testing_files)
2079         $(BUILDPACKAGE)
2080 testing/check: $(CHECK_DEPS)
2081         @$(CHECK)
2082 .PHONY: testing/check
2083
2084 @go_include@ time/time.lo.dep
2085 time/time.lo.dep: $(go_time_files)
2086         $(BUILDDEPS)
2087 time/time.lo: $(go_time_files)
2088         $(BUILDPACKAGE)
2089 time/check: $(CHECK_DEPS)
2090         @$(CHECK)
2091 .PHONY: time/check
2092
2093 @go_include@ unicode/unicode.lo.dep
2094 unicode/unicode.lo.dep: $(go_unicode_files)
2095         $(BUILDDEPS)
2096 unicode/unicode.lo: $(go_unicode_files)
2097         $(BUILDPACKAGE)
2098 unicode/check: $(CHECK_DEPS)
2099         @$(CHECK)
2100 .PHONY: unicode/check
2101
2102 @go_include@ archive/tar.lo.dep
2103 archive/tar.lo.dep: $(go_archive_tar_files)
2104         $(BUILDDEPS)
2105 archive/tar.lo: $(go_archive_tar_files)
2106         $(BUILDPACKAGE)
2107 archive/tar/check: $(CHECK_DEPS)
2108         @$(MKDIR_P) archive/tar
2109         @$(CHECK)
2110 .PHONY: archive/tar/check
2111
2112 @go_include@ archive/zip.lo.dep
2113 archive/zip.lo.dep: $(go_archive_zip_files)
2114         $(BUILDDEPS)
2115 archive/zip.lo: $(go_archive_zip_files)
2116         $(BUILDPACKAGE)
2117 archive/zip/check: $(CHECK_DEPS)
2118         @$(MKDIR_P) archive/zip
2119         @$(CHECK)
2120 .PHONY: archive/zip/check
2121
2122 @go_include@ compress/bzip2.lo.dep
2123 compress/bzip2.lo.dep: $(go_compress_bzip2_files)
2124         $(BUILDDEPS)
2125 compress/bzip2.lo: $(go_compress_bzip2_files)
2126         $(BUILDPACKAGE)
2127 compress/bzip2/check: $(CHECK_DEPS)
2128         @$(MKDIR_P) compress/bzip2
2129         @$(CHECK)
2130 .PHONY: compress/bzip2/check
2131
2132 @go_include@ compress/flate.lo.dep
2133 compress/flate.lo.dep: $(go_compress_flate_files)
2134         $(BUILDDEPS)
2135 compress/flate.lo: $(go_compress_flate_files)
2136         $(BUILDPACKAGE)
2137 compress/flate/check: $(CHECK_DEPS)
2138         @$(MKDIR_P) compress/flate
2139         @$(CHECK)
2140 .PHONY: compress/flate/check
2141
2142 @go_include@ compress/gzip.lo.dep
2143 compress/gzip.lo.dep: $(go_compress_gzip_files)
2144         $(BUILDDEPS)
2145 compress/gzip.lo: $(go_compress_gzip_files)
2146         $(BUILDPACKAGE)
2147 compress/gzip/check: $(CHECK_DEPS)
2148         @$(MKDIR_P) compress/gzip
2149         @$(CHECK)
2150 .PHONY: compress/gzip/check
2151
2152 @go_include@ compress/lzw.lo.dep
2153 compress/lzw.lo.dep: $(go_compress_lzw_files)
2154         $(BUILDDEPS)
2155 compress/lzw.lo: $(go_compress_lzw_files)
2156         $(BUILDPACKAGE)
2157 compress/lzw/check: $(CHECK_DEPS)
2158         @$(MKDIR_P) compress/lzw
2159         @$(CHECK)
2160 .PHONY: compress/lzw/check
2161
2162 @go_include@ compress/zlib.lo.dep
2163 compress/zlib.lo.dep: $(go_compress_zlib_files)
2164         $(BUILDDEPS)
2165 compress/zlib.lo: $(go_compress_zlib_files)
2166         $(BUILDPACKAGE)
2167 compress/zlib/check: $(CHECK_DEPS)
2168         @$(MKDIR_P) compress/zlib
2169         @$(CHECK)
2170 .PHONY: compress/zlib/check
2171
2172 @go_include@ container/heap.lo.dep
2173 container/heap.lo.dep: $(go_container_heap_files)
2174         $(BUILDDEPS)
2175 container/heap.lo: $(go_container_heap_files)
2176         $(BUILDPACKAGE)
2177 container/heap/check: $(CHECK_DEPS)
2178         @$(MKDIR_P) container/heap
2179         @$(CHECK)
2180 .PHONY: container/heap/check
2181
2182 @go_include@ container/list.lo.dep
2183 container/list.lo.dep: $(go_container_list_files)
2184         $(BUILDDEPS)
2185 container/list.lo: $(go_container_list_files)
2186         $(BUILDPACKAGE)
2187 container/list/check: $(CHECK_DEPS)
2188         @$(MKDIR_P) container/list
2189         @$(CHECK)
2190 .PHONY: container/list/check
2191
2192 @go_include@ container/ring.lo.dep
2193 container/ring.lo.dep: $(go_container_ring_files)
2194         $(BUILDDEPS)
2195 container/ring.lo: $(go_container_ring_files)
2196         $(BUILDPACKAGE)
2197 container/ring/check: $(CHECK_DEPS)
2198         @$(MKDIR_P) container/ring
2199         @$(CHECK)
2200 .PHONY: container/ring/check
2201
2202 @go_include@ crypto/aes.lo.dep
2203 crypto/aes.lo.dep: $(go_crypto_aes_files)
2204         $(BUILDDEPS)
2205 crypto/aes.lo: $(go_crypto_aes_files)
2206         $(BUILDPACKAGE)
2207 crypto/aes/check: $(CHECK_DEPS)
2208         @$(MKDIR_P) crypto/aes
2209         @$(CHECK)
2210 .PHONY: crypto/aes/check
2211
2212 @go_include@ crypto/cipher.lo.dep
2213 crypto/cipher.lo.dep: $(go_crypto_cipher_files)
2214         $(BUILDDEPS)
2215 crypto/cipher.lo: $(go_crypto_cipher_files)
2216         $(BUILDPACKAGE)
2217 crypto/cipher/check: $(CHECK_DEPS)
2218         @$(MKDIR_P) crypto/cipher
2219         @$(CHECK)
2220 .PHONY: crypto/cipher/check
2221
2222 @go_include@ crypto/des.lo.dep
2223 crypto/des.lo.dep: $(go_crypto_des_files)
2224         $(BUILDDEPS)
2225 crypto/des.lo: $(go_crypto_des_files)
2226         $(BUILDPACKAGE)
2227 crypto/des/check: $(CHECK_DEPS)
2228         @$(MKDIR_P) crypto/des
2229         @$(CHECK)
2230 .PHONY: crypto/des/check
2231
2232 @go_include@ crypto/dsa.lo.dep
2233 crypto/dsa.lo.dep: $(go_crypto_dsa_files)
2234         $(BUILDDEPS)
2235 crypto/dsa.lo: $(go_crypto_dsa_files)
2236         $(BUILDPACKAGE)
2237 crypto/dsa/check: $(CHECK_DEPS)
2238         @$(MKDIR_P) crypto/dsa
2239         @$(CHECK)
2240 .PHONY: crypto/dsa/check
2241
2242 @go_include@ crypto/ecdsa.lo.dep
2243 crypto/ecdsa.lo.dep: $(go_crypto_ecdsa_files)
2244         $(BUILDDEPS)
2245 crypto/ecdsa.lo: $(go_crypto_ecdsa_files)
2246         $(BUILDPACKAGE)
2247 crypto/ecdsa/check: $(CHECK_DEPS)
2248         @$(MKDIR_P) crypto/ecdsa
2249         @$(CHECK)
2250 .PHONY: crypto/ecdsa/check
2251
2252 @go_include@ crypto/elliptic.lo.dep
2253 crypto/elliptic.lo.dep: $(go_crypto_elliptic_files)
2254         $(BUILDDEPS)
2255 crypto/elliptic.lo: $(go_crypto_elliptic_files)
2256         $(BUILDPACKAGE)
2257 crypto/elliptic/check: $(CHECK_DEPS)
2258         @$(MKDIR_P) crypto/elliptic
2259         @$(CHECK)
2260 .PHONY: crypto/elliptic/check
2261
2262 @go_include@ crypto/hmac.lo.dep
2263 crypto/hmac.lo.dep: $(go_crypto_hmac_files)
2264         $(BUILDDEPS)
2265 crypto/hmac.lo: $(go_crypto_hmac_files)
2266         $(BUILDPACKAGE)
2267 crypto/hmac/check: $(CHECK_DEPS)
2268         @$(MKDIR_P) crypto/hmac
2269         @$(CHECK)
2270 .PHONY: crypto/hmac/check
2271
2272 @go_include@ crypto/md5.lo.dep
2273 crypto/md5.lo.dep: $(go_crypto_md5_files)
2274         $(BUILDDEPS)
2275 crypto/md5.lo: $(go_crypto_md5_files)
2276         $(BUILDPACKAGE)
2277 crypto/md5/check: $(CHECK_DEPS)
2278         @$(MKDIR_P) crypto/md5
2279         @$(CHECK)
2280 .PHONY: crypto/md5/check
2281
2282 @go_include@ crypto/rand.lo.dep
2283 crypto/rand.lo.dep: $(go_crypto_rand_files)
2284         $(BUILDDEPS)
2285 crypto/rand.lo: $(go_crypto_rand_files)
2286         $(BUILDPACKAGE)
2287 crypto/rand/check: $(CHECK_DEPS)
2288         @$(MKDIR_P) crypto/rand
2289         @$(CHECK)
2290 .PHONY: crypto/rand/check
2291
2292 @go_include@ crypto/rc4.lo.dep
2293 crypto/rc4.lo.dep: $(go_crypto_rc4_files)
2294         $(BUILDDEPS)
2295 crypto/rc4.lo: $(go_crypto_rc4_files)
2296         $(BUILDPACKAGE)
2297 crypto/rc4/check: $(CHECK_DEPS)
2298         @$(MKDIR_P) crypto/rc4
2299         @$(CHECK)
2300 .PHONY: crypto/rc4/check
2301
2302 @go_include@ crypto/rsa.lo.dep
2303 crypto/rsa.lo.dep: $(go_crypto_rsa_files)
2304         $(BUILDDEPS)
2305 crypto/rsa.lo: $(go_crypto_rsa_files)
2306         $(BUILDPACKAGE)
2307 crypto/rsa/check: $(CHECK_DEPS)
2308         @$(MKDIR_P) crypto/rsa
2309         @$(CHECK)
2310 .PHONY: crypto/rsa/check
2311
2312 @go_include@ crypto/sha1.lo.dep
2313 crypto/sha1.lo.dep: $(go_crypto_sha1_files)
2314         $(BUILDDEPS)
2315 crypto/sha1.lo: $(go_crypto_sha1_files)
2316         $(BUILDPACKAGE)
2317 crypto/sha1/check: $(CHECK_DEPS)
2318         @$(MKDIR_P) crypto/sha1
2319         @$(CHECK)
2320 .PHONY: crypto/sha1/check
2321
2322 @go_include@ crypto/sha256.lo.dep
2323 crypto/sha256.lo.dep: $(go_crypto_sha256_files)
2324         $(BUILDDEPS)
2325 crypto/sha256.lo: $(go_crypto_sha256_files)
2326         $(BUILDPACKAGE)
2327 crypto/sha256/check: $(CHECK_DEPS)
2328         @$(MKDIR_P) crypto/sha256
2329         @$(CHECK)
2330 .PHONY: crypto/sha256/check
2331
2332 @go_include@ crypto/sha512.lo.dep
2333 crypto/sha512.lo.dep: $(go_crypto_sha512_files)
2334         $(BUILDDEPS)
2335 crypto/sha512.lo: $(go_crypto_sha512_files)
2336         $(BUILDPACKAGE)
2337 crypto/sha512/check: $(CHECK_DEPS)
2338         @$(MKDIR_P) crypto/sha512
2339         @$(CHECK)
2340 .PHONY: crypto/sha512/check
2341
2342 @go_include@ crypto/subtle.lo.dep
2343 crypto/subtle.lo.dep: $(go_crypto_subtle_files)
2344         $(BUILDDEPS)
2345 crypto/subtle.lo: $(go_crypto_subtle_files)
2346         $(BUILDPACKAGE)
2347 crypto/subtle/check: $(CHECK_DEPS)
2348         @$(MKDIR_P) crypto/subtle
2349         @$(CHECK)
2350 .PHONY: crypto/subtle/check
2351
2352 @go_include@ crypto/tls.lo.dep
2353 crypto/tls.lo.dep: $(go_crypto_tls_files)
2354         $(BUILDDEPS)
2355 crypto/tls.lo: $(go_crypto_tls_files)
2356         $(BUILDPACKAGE)
2357 crypto/tls/check: $(CHECK_DEPS)
2358         @$(MKDIR_P) crypto/tls
2359         @$(CHECK)
2360 .PHONY: crypto/tls/check
2361
2362 @go_include@ crypto/x509.lo.dep
2363 crypto/x509.lo.dep: $(go_crypto_x509_files)
2364         $(BUILDDEPS)
2365 crypto/x509.lo: $(go_crypto_x509_files)
2366         $(BUILDPACKAGE)
2367 crypto/x509/check: $(CHECK_DEPS)
2368         @$(MKDIR_P) crypto/x509
2369         @$(CHECK)
2370 .PHONY: crypto/x509/check
2371
2372 @go_include@ crypto/x509/pkix.lo.dep
2373 crypto/x509/pkix.lo.dep: $(go_crypto_x509_pkix_files)
2374         $(BUILDDEPS)
2375 crypto/x509/pkix.lo: $(go_crypto_x509_pkix_files)
2376         $(BUILDPACKAGE)
2377 crypto/x509/pkix/check: $(CHECK_DEPS)
2378         @$(MKDIR_P) crypto/x509/pkix
2379         @$(CHECK)
2380 .PHONY: crypto/x509/pkix/check
2381
2382 @go_include@ database/sql.lo.dep
2383 database/sql.lo.dep: $(go_database_sql_files)
2384         $(BUILDDEPS)
2385 database/sql.lo: $(go_database_sql_files)
2386         $(BUILDPACKAGE)
2387 database/sql/check: $(CHECK_DEPS)
2388         @$(MKDIR_P) database/sql
2389         @$(CHECK)
2390 .PHONY: database/sql/check
2391
2392 @go_include@ database/sql/driver.lo.dep
2393 database/sql/driver.lo.dep: $(go_database_sql_driver_files)
2394         $(BUILDDEPS)
2395 database/sql/driver.lo: $(go_database_sql_driver_files)
2396         $(BUILDPACKAGE)
2397 database/sql/driver/check: $(CHECK_DEPS)
2398         @$(MKDIR_P) database/sql/driver
2399         @$(CHECK)
2400 .PHONY: database/sql/driver/check
2401
2402 @go_include@ debug/dwarf.lo.dep
2403 debug/dwarf.lo.dep: $(go_debug_dwarf_files)
2404         $(BUILDDEPS)
2405 debug/dwarf.lo: $(go_debug_dwarf_files)
2406         $(BUILDPACKAGE)
2407 debug/dwarf/check: $(CHECK_DEPS)
2408         @$(MKDIR_P) debug/dwarf
2409         @$(CHECK)
2410 .PHONY: debug/dwarf/check
2411
2412 @go_include@ debug/elf.lo.dep
2413 debug/elf.lo.dep: $(go_debug_elf_files)
2414         $(BUILDDEPS)
2415 debug/elf.lo: $(go_debug_elf_files)
2416         $(BUILDPACKAGE)
2417 debug/elf/check: $(CHECK_DEPS)
2418         @$(MKDIR_P) debug/elf
2419         @$(CHECK)
2420 .PHONY: debug/elf/check
2421
2422 @go_include@ debug/gosym.lo.dep
2423 debug/gosym.lo.dep: $(go_debug_gosym_files)
2424         $(BUILDDEPS)
2425 debug/gosym.lo: $(go_debug_gosym_files)
2426         $(BUILDPACKAGE)
2427 debug/gosym/check: $(CHECK_DEPS)
2428         @$(MKDIR_P) debug/gosym
2429         @$(CHECK)
2430 .PHONY: debug/gosym/check
2431
2432 @go_include@ debug/macho.lo.dep
2433 debug/macho.lo.dep: $(go_debug_macho_files)
2434         $(BUILDDEPS)
2435 debug/macho.lo: $(go_debug_macho_files)
2436         $(BUILDPACKAGE)
2437 debug/macho/check: $(CHECK_DEPS)
2438         @$(MKDIR_P) debug/macho
2439         @$(CHECK)
2440 .PHONY: debug/macho/check
2441
2442 @go_include@ debug/pe.lo.dep
2443 debug/pe.lo.dep: $(go_debug_pe_files)
2444         $(BUILDDEPS)
2445 debug/pe.lo: $(go_debug_pe_files)
2446         $(BUILDPACKAGE)
2447 debug/pe/check: $(CHECK_DEPS)
2448         @$(MKDIR_P) debug/pe
2449         @$(CHECK)
2450 .PHONY: debug/pe/check
2451
2452 @go_include@ encoding/asn1.lo.dep
2453 encoding/asn1.lo.dep: $(go_encoding_asn1_files)
2454         $(BUILDDEPS)
2455 encoding/asn1.lo: $(go_encoding_asn1_files)
2456         $(BUILDPACKAGE)
2457 encoding/asn1/check: $(CHECK_DEPS)
2458         @$(MKDIR_P) encoding/asn1
2459         @$(CHECK)
2460 .PHONY: encoding/asn1/check
2461
2462 @go_include@ encoding/ascii85.lo.dep
2463 encoding/ascii85.lo.dep: $(go_encoding_ascii85_files)
2464         $(BUILDDEPS)
2465 encoding/ascii85.lo: $(go_encoding_ascii85_files)
2466         $(BUILDPACKAGE)
2467 encoding/ascii85/check: $(CHECK_DEPS)
2468         @$(MKDIR_P) encoding/ascii85
2469         @$(CHECK)
2470 .PHONY: encoding/ascii85/check
2471
2472 @go_include@ encoding/base32.lo.dep
2473 encoding/base32.lo.dep: $(go_encoding_base32_files)
2474         $(BUILDDEPS)
2475 encoding/base32.lo: $(go_encoding_base32_files)
2476         $(BUILDPACKAGE)
2477 encoding/base32/check: $(CHECK_DEPS)
2478         @$(MKDIR_P) encoding/base32
2479         @$(CHECK)
2480 .PHONY: encoding/base32/check
2481
2482 @go_include@ encoding/base64.lo.dep
2483 encoding/base64.lo.dep: $(go_encoding_base64_files)
2484         $(BUILDDEPS)
2485 encoding/base64.lo: $(go_encoding_base64_files)
2486         $(BUILDPACKAGE)
2487 encoding/base64/check: $(CHECK_DEPS)
2488         @$(MKDIR_P) encoding/base64
2489         @$(CHECK)
2490 .PHONY: encoding/base64/check
2491
2492 @go_include@ encoding/binary.lo.dep
2493 encoding/binary.lo.dep: $(go_encoding_binary_files)
2494         $(BUILDDEPS)
2495 encoding/binary.lo: $(go_encoding_binary_files)
2496         $(BUILDPACKAGE)
2497 encoding/binary/check: $(CHECK_DEPS)
2498         @$(MKDIR_P) encoding/binary
2499         @$(CHECK)
2500 .PHONY: encoding/binary/check
2501
2502 @go_include@ encoding/csv.lo.dep
2503 encoding/csv.lo.dep: $(go_encoding_csv_files)
2504         $(BUILDDEPS)
2505 encoding/csv.lo: $(go_encoding_csv_files)
2506         $(BUILDPACKAGE)
2507 encoding/csv/check: $(CHECK_DEPS)
2508         @$(MKDIR_P) encoding/csv
2509         @$(CHECK)
2510 .PHONY: encoding/csv/check
2511
2512 @go_include@ encoding/gob.lo.dep
2513 encoding/gob.lo.dep: $(go_encoding_gob_files)
2514         $(BUILDDEPS)
2515 encoding/gob.lo: $(go_encoding_gob_files)
2516         $(BUILDPACKAGE)
2517 encoding/gob/check: $(CHECK_DEPS)
2518         @$(MKDIR_P) encoding/gob
2519         @$(CHECK)
2520 .PHONY: encoding/gob/check
2521
2522 @go_include@ encoding/hex.lo.dep
2523 encoding/hex.lo.dep: $(go_encoding_hex_files)
2524         $(BUILDDEPS)
2525 encoding/hex.lo: $(go_encoding_hex_files)
2526         $(BUILDPACKAGE)
2527 encoding/hex/check: $(CHECK_DEPS)
2528         @$(MKDIR_P) encoding/hex
2529         @$(CHECK)
2530 .PHONY: encoding/hex/check
2531
2532 @go_include@ encoding/json.lo.dep
2533 encoding/json.lo.dep: $(go_encoding_json_files)
2534         $(BUILDDEPS)
2535 encoding/json.lo: $(go_encoding_json_files)
2536         $(BUILDPACKAGE)
2537 encoding/json/check: $(CHECK_DEPS)
2538         @$(MKDIR_P) encoding/json
2539         @$(CHECK)
2540 .PHONY: encoding/json/check
2541
2542 @go_include@ encoding/pem.lo.dep
2543 encoding/pem.lo.dep: $(go_encoding_pem_files)
2544         $(BUILDDEPS)
2545 encoding/pem.lo: $(go_encoding_pem_files)
2546         $(BUILDPACKAGE)
2547 encoding/pem/check: $(CHECK_DEPS)
2548         @$(MKDIR_P) encoding/pem
2549         @$(CHECK)
2550 .PHONY: encoding/pem/check
2551
2552 @go_include@ encoding/xml.lo.dep
2553 encoding/xml.lo.dep: $(go_encoding_xml_files)
2554         $(BUILDDEPS)
2555 encoding/xml.lo: $(go_encoding_xml_files)
2556         $(BUILDPACKAGE)
2557 encoding/xml/check: $(CHECK_DEPS)
2558         @$(MKDIR_P) encoding/xml
2559         @$(CHECK)
2560 .PHONY: encoding/xml/check
2561
2562 @go_include@ exp/ebnf.lo.dep
2563 exp/ebnf.lo.dep: $(go_exp_ebnf_files)
2564         $(BUILDDEPS)
2565 exp/ebnf.lo: $(go_exp_ebnf_files)
2566         $(BUILDPACKAGE)
2567 exp/ebnf/check: $(CHECK_DEPS)
2568         @$(MKDIR_P) exp/ebnf
2569         @$(CHECK)
2570 .PHONY: exp/ebnf/check
2571
2572 @go_include@ exp/html.lo.dep
2573 exp/html.lo.dep: $(go_exp_html_files)
2574         $(BUILDDEPS)
2575 exp/html.lo: $(go_exp_html_files)
2576         $(BUILDPACKAGE)
2577 exp/html/check: $(CHECK_DEPS)
2578         @$(MKDIR_P) exp/html
2579         @$(CHECK)
2580 .PHONY: exp/html/check
2581
2582 @go_include@ exp/norm.lo.dep
2583 exp/norm.lo.dep: $(go_exp_norm_files)
2584         $(BUILDDEPS)
2585 exp/norm.lo: $(go_exp_norm_files)
2586         $(BUILDPACKAGE)
2587 exp/norm/check: $(CHECK_DEPS)
2588         @$(MKDIR_P) exp/norm
2589         @$(CHECK)
2590 .PHONY: exp/norm/check
2591
2592 @go_include@ exp/proxy.lo.dep
2593 exp/proxy.lo.dep: $(go_exp_proxy_files)
2594         $(BUILDDEPS)
2595 exp/proxy.lo: $(go_exp_proxy_files)
2596         $(BUILDPACKAGE)
2597 exp/proxy/check: $(CHECK_DEPS)
2598         @$(MKDIR_P) exp/proxy
2599         @$(CHECK)
2600 .PHONY: exp/proxy/check
2601
2602 @go_include@ exp/signal.lo.dep
2603 exp/signal.lo.dep: $(go_exp_signal_files)
2604         $(BUILDDEPS)
2605 exp/signal.lo: $(go_exp_signal_files)
2606         $(BUILDPACKAGE)
2607 exp/signal/check: $(CHECK_DEPS)
2608         @$(MKDIR_P) exp/signal
2609         @$(CHECK)
2610 .PHONY: exp/signal/check
2611
2612 @go_include@ exp/terminal.lo.dep
2613 exp/terminal.lo.dep: $(go_exp_terminal_files)
2614         $(BUILDDEPS)
2615 exp/terminal.lo: $(go_exp_terminal_files)
2616         $(BUILDPACKAGE)
2617 exp/terminal/check: $(CHECK_DEPS)
2618         @$(MKDIR_P) exp/terminal
2619         @$(CHECK)
2620 .PHONY: exp/terminal/check
2621
2622 @go_include@ exp/types.lo.dep
2623 exp/types.lo.dep: $(go_exp_types_files)
2624         $(BUILDDEPS)
2625 exp/types.lo: $(go_exp_types_files)
2626         $(BUILDPACKAGE)
2627 exp/types/check: $(CHECK_DEPS)
2628         @$(MKDIR_P) exp/types
2629         @$(CHECK)
2630 .PHONY: exp/types/check
2631
2632 @go_include@ exp/utf8string.lo.dep
2633 exp/utf8string.lo.dep: $(go_exp_utf8string_files)
2634         $(BUILDDEPS)
2635 exp/utf8string.lo: $(go_exp_utf8string_files)
2636         $(BUILDPACKAGE)
2637 exp/utf8string/check: $(CHECK_DEPS)
2638         @$(MKDIR_P) exp/utf8string
2639         @$(CHECK)
2640 .PHONY: exp/utf8string/check
2641
2642 @go_include@ exp/inotify.lo.dep
2643 exp/inotify.lo.dep: $(go_exp_inotify_files)
2644         $(BUILDDEPS)
2645 exp/inotify.lo: $(go_exp_inotify_files)
2646         $(BUILDPACKAGE)
2647 exp/inotify/check: $(CHECK_DEPS)
2648         @$(MKDIR_P) exp/inotify
2649         @$(CHECK)
2650 .PHONY: exp/inotify/check
2651
2652 @go_include@ html/template.lo.dep
2653 html/template.lo.dep: $(go_html_template_files)
2654         $(BUILDDEPS)
2655 html/template.lo: $(go_html_template_files)
2656         $(BUILDPACKAGE)
2657 html/template/check: $(CHECK_DEPS)
2658         @$(MKDIR_P) html/template
2659         @$(CHECK)
2660 .PHONY: html/template/check
2661
2662 @go_include@ go/ast.lo.dep
2663 go/ast.lo.dep: $(go_go_ast_files)
2664         $(BUILDDEPS)
2665 go/ast.lo: $(go_go_ast_files)
2666         $(BUILDPACKAGE)
2667 go/ast/check: $(CHECK_DEPS)
2668         @$(MKDIR_P) go/ast
2669         @$(CHECK)
2670 .PHONY: go/ast/check
2671
2672 @go_include@ go/build.lo.dep
2673 go/build.lo.dep: $(go_go_build_files)
2674         $(BUILDDEPS)
2675 go/build.lo: $(go_go_build_files)
2676         $(BUILDPACKAGE)
2677 go/build/check: $(CHECK_DEPS)
2678         @$(MKDIR_P) go/build
2679         @$(CHECK)
2680 .PHONY: go/build/check
2681
2682 syslist.go: s-syslist; @true
2683 s-syslist: Makefile
2684         echo '// Generated automatically by make.' >syslist.go.tmp
2685         echo 'package build' >>syslist.go.tmp
2686         echo 'const goosList = "$(GOOS)"' >>syslist.go.tmp
2687         echo 'const goarchList = "$(GOARCH)"' >>syslist.go.tmp
2688         $(SHELL) $(srcdir)/../move-if-change syslist.go.tmp syslist.go
2689         $(STAMP) $@
2690
2691 @go_include@ go/doc.lo.dep
2692 go/doc.lo.dep: $(go_go_doc_files)
2693         $(BUILDDEPS)
2694 go/doc.lo: $(go_go_doc_files)
2695         $(BUILDPACKAGE)
2696 go/doc/check: $(CHECK_DEPS)
2697         @$(MKDIR_P) go/doc
2698         @$(CHECK)
2699 .PHONY: go/doc/check
2700
2701 @go_include@ go/parser.lo.dep
2702 go/parser.lo.dep: $(go_go_parser_files)
2703         $(BUILDDEPS)
2704 go/parser.lo: $(go_go_parser_files)
2705         $(BUILDPACKAGE)
2706 go/parser/check: $(CHECK_DEPS)
2707         @$(MKDIR_P) go/parser
2708         @$(CHECK)
2709 .PHONY: go/parser/check
2710
2711 @go_include@ go/printer.lo.dep
2712 go/printer.lo.dep: $(go_go_printer_files)
2713         $(BUILDDEPS)
2714 go/printer.lo: $(go_go_printer_files)
2715         $(BUILDPACKAGE)
2716 go/printer/check: $(CHECK_DEPS)
2717         @$(MKDIR_P) go/printer
2718         @$(CHECK)
2719 .PHONY: go/printer/check
2720
2721 @go_include@ go/scanner.lo.dep
2722 go/scanner.lo.dep: $(go_go_scanner_files)
2723         $(BUILDDEPS)
2724 go/scanner.lo: $(go_go_scanner_files)
2725         $(BUILDPACKAGE)
2726 go/scanner/check: $(CHECK_DEPS)
2727         @$(MKDIR_P) go/scanner
2728         @$(CHECK)
2729 .PHONY: go/scanner/check
2730
2731 @go_include@ go/token.lo.dep
2732 go/token.lo.dep: $(go_go_token_files)
2733         $(BUILDDEPS)
2734 go/token.lo: $(go_go_token_files)
2735         $(BUILDPACKAGE)
2736 go/token/check: $(CHECK_DEPS)
2737         @$(MKDIR_P) go/token
2738         @$(CHECK)
2739 .PHONY: go/token/check
2740
2741 @go_include@ hash/adler32.lo.dep
2742 hash/adler32.lo.dep: $(go_hash_adler32_files)
2743         $(BUILDDEPS)
2744 hash/adler32.lo: $(go_hash_adler32_files)
2745         $(BUILDPACKAGE)
2746 hash/adler32/check: $(CHECK_DEPS)
2747         @$(MKDIR_P) hash/adler32
2748         @$(CHECK)
2749 .PHONY: hash/adler32/check
2750
2751 @go_include@ hash/crc32.lo.dep
2752 hash/crc32.lo.dep: $(go_hash_crc32_files)
2753         $(BUILDDEPS)
2754 hash/crc32.lo: $(go_hash_crc32_files)
2755         $(BUILDPACKAGE)
2756 hash/crc32/check: $(CHECK_DEPS)
2757         @$(MKDIR_P) hash/crc32
2758         @$(CHECK)
2759 .PHONY: hash/crc32/check
2760
2761 @go_include@ hash/crc64.lo.dep
2762 hash/crc64.lo.dep: $(go_hash_crc64_files)
2763         $(BUILDDEPS)
2764 hash/crc64.lo: $(go_hash_crc64_files)
2765         $(BUILDPACKAGE)
2766 hash/crc64/check: $(CHECK_DEPS)
2767         @$(MKDIR_P) hash/crc64
2768         @$(CHECK)
2769 .PHONY: hash/crc64/check
2770
2771 @go_include@ hash/fnv.lo.dep
2772 hash/fnv.lo.dep: $(go_hash_fnv_files)
2773         $(BUILDDEPS)
2774 hash/fnv.lo: $(go_hash_fnv_files)
2775         $(BUILDPACKAGE)
2776 hash/fnv/check: $(CHECK_DEPS)
2777         @$(MKDIR_P) hash/fnv
2778         @$(CHECK)
2779 .PHONY: hash/fnv/check
2780
2781 @go_include@ image/color.lo.dep
2782 image/color.lo.dep: $(go_image_color_files)
2783         $(BUILDDEPS)
2784 image/color.lo: $(go_image_color_files)
2785         $(BUILDPACKAGE)
2786 image/color/check: $(CHECK_DEPS)
2787         @$(MKDIR_P) image/color
2788         @$(CHECK)
2789 .PHONY: image/color/check
2790
2791 @go_include@ image/draw.lo.dep
2792 image/draw.lo.dep: $(go_image_draw_files)
2793         $(BUILDDEPS)
2794 image/draw.lo: $(go_image_draw_files)
2795         $(BUILDPACKAGE)
2796 image/draw/check: $(CHECK_DEPS)
2797         @$(MKDIR_P) image/draw
2798         @$(CHECK)
2799 .PHONY: image/draw/check
2800
2801 @go_include@ image/gif.lo.dep
2802 image/gif.lo.dep: $(go_image_gif_files)
2803         $(BUILDDEPS)
2804 image/gif.lo: $(go_image_gif_files)
2805         $(BUILDPACKAGE)
2806 image/gif/check: $(CHECK_DEPS)
2807         @$(MKDIR_P) image/gif
2808         @$(CHECK)
2809 .PHONY: image/gif/check
2810
2811 @go_include@ image/jpeg.lo.dep
2812 image/jpeg.lo.dep: $(go_image_jpeg_files)
2813         $(BUILDDEPS)
2814 image/jpeg.lo: $(go_image_jpeg_files)
2815         $(BUILDPACKAGE)
2816 image/jpeg/check: $(CHECK_DEPS)
2817         @$(MKDIR_P) image/jpeg
2818         @$(CHECK)
2819 .PHONY: image/jpeg/check
2820
2821 @go_include@ image/png.lo.dep
2822 image/png.lo.dep: $(go_image_png_files)
2823         $(BUILDDEPS)
2824 image/png.lo: $(go_image_png_files)
2825         $(BUILDPACKAGE)
2826 image/png/check: $(CHECK_DEPS)
2827         @$(MKDIR_P) image/png
2828         @$(CHECK)
2829 .PHONY: image/png/check
2830
2831 @go_include@ index/suffixarray.lo.dep
2832 index/suffixarray.lo.dep: $(go_index_suffixarray_files)
2833         $(BUILDDEPS)
2834 index/suffixarray.lo: $(go_index_suffixarray_files)
2835         $(BUILDPACKAGE)
2836 index/suffixarray/check: $(CHECK_DEPS)
2837         @$(MKDIR_P) index/suffixarray
2838         @$(CHECK)
2839 .PHONY: index/suffixarray/check
2840
2841 @go_include@ io/ioutil.lo.dep
2842 io/ioutil.lo.dep: $(go_io_ioutil_files)
2843         $(BUILDDEPS)
2844 io/ioutil.lo: $(go_io_ioutil_files)
2845         $(BUILDPACKAGE)
2846 io/ioutil/check: $(CHECK_DEPS)
2847         @$(MKDIR_P) io/ioutil
2848         @$(CHECK)
2849 .PHONY: io/ioutil/check
2850
2851 @go_include@ log/syslog.lo.dep
2852 log/syslog.lo.dep: $(go_log_syslog_files)
2853         $(BUILDDEPS)
2854 log/syslog.lo: $(go_log_syslog_files)
2855         $(BUILDPACKAGE)
2856 log/syslog/syslog_c.lo: $(go_syslog_c_files) log/syslog.lo
2857         $(LTCOMPILE) -c -o $@ $(srcdir)/go/log/syslog/syslog_c.c
2858 log/syslog/check: $(CHECK_DEPS)
2859         @$(MKDIR_P) log/syslog
2860         @$(CHECK)
2861 .PHONY: log/syslog/check
2862
2863 @go_include@ math/big.lo.dep
2864 math/big.lo.dep: $(go_math_big_files)
2865         $(BUILDDEPS)
2866 math/big.lo: $(go_math_big_files)
2867         $(BUILDPACKAGE)
2868 math/big/check: $(CHECK_DEPS)
2869         @$(MKDIR_P) math/big
2870         @$(CHECK)
2871 .PHONY: math/big/check
2872
2873 @go_include@ math/cmplx.lo.dep
2874 math/cmplx.lo.dep: $(go_math_cmplx_files)
2875         $(BUILDDEPS)
2876 math/cmplx.lo: $(go_math_cmplx_files)
2877         $(BUILDPACKAGE)
2878 math/cmplx/check: $(CHECK_DEPS)
2879         @$(MKDIR_P) math/cmplx
2880         @$(CHECK)
2881 .PHONY: math/cmplx/check
2882
2883 @go_include@ math/rand.lo.dep
2884 math/rand.lo.dep: $(go_math_rand_files)
2885         $(BUILDDEPS)
2886 math/rand.lo: $(go_math_rand_files)
2887         $(BUILDPACKAGE)
2888 math/rand/check: $(CHECK_DEPS)
2889         @$(MKDIR_P) math/rand
2890         @$(CHECK)
2891 .PHONY: math/rand/check
2892
2893 @go_include@ mime/multipart.lo.dep
2894 mime/multipart.lo.dep: $(go_mime_multipart_files)
2895         $(BUILDDEPS)
2896 mime/multipart.lo: $(go_mime_multipart_files)
2897         $(BUILDPACKAGE)
2898 mime/multipart/check: $(CHECK_DEPS)
2899         @$(MKDIR_P) mime/multipart
2900         @$(CHECK)
2901 .PHONY: mime/multipart/check
2902
2903 @go_include@ net/http.lo.dep
2904 net/http.lo.dep: $(go_net_http_files)
2905         $(BUILDDEPS)
2906 net/http.lo: $(go_net_http_files)
2907         $(BUILDPACKAGE)
2908 net/http/check: $(CHECK_DEPS)
2909         @$(MKDIR_P) net/http
2910         @$(CHECK)
2911 .PHONY: net/http/check
2912
2913 @go_include@ net/mail.lo.dep
2914 net/mail.lo.dep: $(go_net_mail_files)
2915         $(BUILDDEPS)
2916 net/mail.lo: $(go_net_mail_files)
2917         $(BUILDPACKAGE)
2918 net/mail/check: $(CHECK_DEPS)
2919         @$(MKDIR_P) net/mail
2920         @$(CHECK)
2921 .PHONY: net/mail/check
2922
2923 @go_include@ net/rpc.lo.dep
2924 net/rpc.lo.dep: $(go_net_rpc_files)
2925         $(BUILDDEPS)
2926 net/rpc.lo: $(go_net_rpc_files)
2927         $(BUILDPACKAGE)
2928 net/rpc/check: $(CHECK_DEPS)
2929         @$(MKDIR_P) net/rpc
2930         @$(CHECK)
2931 .PHONY: net/rpc/check
2932
2933 @go_include@ net/smtp.lo.dep
2934 net/smtp.lo.dep: $(go_net_smtp_files)
2935         $(BUILDDEPS)
2936 net/smtp.lo: $(go_net_smtp_files)
2937         $(BUILDPACKAGE)
2938 net/smtp/check: $(CHECK_DEPS)
2939         @$(MKDIR_P) net/smtp
2940         @$(CHECK)
2941 .PHONY: net/smtp/check
2942
2943 @go_include@ net/url.lo.dep
2944 net/url.lo.dep: $(go_net_url_files)
2945         $(BUILDDEPS)
2946 net/url.lo: $(go_net_url_files)
2947         $(BUILDPACKAGE)
2948 net/url/check: $(CHECK_DEPS)
2949         @$(MKDIR_P) net/url
2950         @$(CHECK)
2951 .PHONY: net/url/check
2952
2953 @go_include@ net/textproto.lo.dep
2954 net/textproto.lo.dep: $(go_net_textproto_files)
2955         $(BUILDDEPS)
2956 net/textproto.lo: $(go_net_textproto_files)
2957         $(BUILDPACKAGE)
2958 net/textproto/check: $(CHECK_DEPS)
2959         @$(MKDIR_P) net/textproto
2960         @$(CHECK)
2961 .PHONY: net/textproto/check
2962
2963 @go_include@ net/http/cgi.lo.dep
2964 net/http/cgi.lo.dep: $(go_net_http_cgi_files)
2965         $(BUILDDEPS)
2966 net/http/cgi.lo: $(go_net_http_cgi_files)
2967         $(BUILDPACKAGE)
2968 net/http/cgi/check: $(CHECK_DEPS)
2969         @$(MKDIR_P) net/http/cgi
2970         @$(CHECK)
2971 .PHONY: net/http/cgi/check
2972
2973 @go_include@ net/http/fcgi.lo.dep
2974 net/http/fcgi.lo.dep: $(go_net_http_fcgi_files)
2975         $(BUILDDEPS)
2976 net/http/fcgi.lo: $(go_net_http_fcgi_files)
2977         $(BUILDPACKAGE)
2978 net/http/fcgi/check: $(CHECK_DEPS)
2979         @$(MKDIR_P) net/http/fcgi
2980         @$(CHECK)
2981 .PHONY: net/http/fcgi/check
2982
2983 @go_include@ net/http/httptest.lo.dep
2984 net/http/httptest.lo.dep: $(go_net_http_httptest_files)
2985         $(BUILDDEPS)
2986 net/http/httptest.lo: $(go_net_http_httptest_files)
2987         $(BUILDPACKAGE)
2988 net/http/httptest/check: $(check_deps)
2989         @$(MKDIR_P) net/http/httptest
2990         @$(CHECK)
2991 .PHONY: net/http/httptest/check
2992
2993 @go_include@ net/http/httputil.lo.dep
2994 net/http/httputil.lo.dep: $(go_net_http_httputil_files)
2995         $(BUILDDEPS)
2996 net/http/httputil.lo: $(go_net_http_httputil_files)
2997         $(BUILDPACKAGE)
2998 net/http/httputil/check: $(check_deps)
2999         @$(MKDIR_P) net/http/httputil
3000         @$(CHECK)
3001 .PHONY: net/http/httputil/check
3002
3003 @go_include@ net/http/pprof.lo.dep
3004 net/http/pprof.lo.dep: $(go_net_http_pprof_files)
3005         $(BUILDDEPS)
3006 net/http/pprof.lo: $(go_net_http_pprof_files)
3007         $(BUILDPACKAGE)
3008 net/http/pprof/check: $(CHECK_DEPS)
3009         @$(MKDIR_P) net/http/pprof
3010         @$(CHECK)
3011 .PHONY: net/http/pprof/check
3012
3013 @go_include@ net/rpc/jsonrpc.lo.dep
3014 net/rpc/jsonrpc.lo.dep: $(go_net_rpc_jsonrpc_files)
3015         $(BUILDDEPS)
3016 net/rpc/jsonrpc.lo: $(go_net_rpc_jsonrpc_files)
3017         $(BUILDPACKAGE)
3018 net/rpc/jsonrpc/check: $(CHECK_DEPS)
3019         @$(MKDIR_P) net/rpc/jsonrpc
3020         @$(CHECK)
3021 .PHONY: net/rpc/jsonrpc/check
3022
3023 @go_include@ old/netchan.lo.dep
3024 old/netchan.lo.dep: $(go_old_netchan_files)
3025         $(BUILDDEPS)
3026 old/netchan.lo: $(go_old_netchan_files)
3027         $(BUILDPACKAGE)
3028 old/netchan/check: $(CHECK_DEPS)
3029         @$(MKDIR_P) old/netchan
3030         @$(CHECK)
3031 .PHONY: old/netchan/check
3032
3033 @go_include@ old/regexp.lo.dep
3034 old/regexp.lo.dep: $(go_old_regexp_files)
3035         $(BUILDDEPS)
3036 old/regexp.lo: $(go_old_regexp_files)
3037         $(BUILDPACKAGE)
3038 old/regexp/check: $(CHECK_DEPS)
3039         @$(MKDIR_P) old/regexp
3040         @$(CHECK)
3041 .PHONY: old/regexp/check
3042
3043 @go_include@ old/template.lo.dep
3044 old/template.lo.dep: $(go_old_template_files)
3045         $(BUILDDEPS)
3046 old/template.lo: $(go_old_template_files)
3047         $(BUILDPACKAGE)
3048 old/template/check: $(CHECK_DEPS)
3049         @$(MKDIR_P) old/template
3050         @$(CHECK)
3051 .PHONY: old/template/check
3052
3053 @go_include@ os/exec.lo.dep
3054 os/exec.lo.dep: $(go_os_exec_files)
3055         $(BUILDDEPS)
3056 os/exec.lo: $(go_os_exec_files)
3057         $(BUILDPACKAGE)
3058 os/exec/check: $(CHECK_DEPS)
3059         @$(MKDIR_P) os/exec
3060         @$(CHECK)
3061 .PHONY: os/exec/check
3062
3063 @go_include@ os/user.lo.dep
3064 os/user.lo.dep: $(go_os_user_files)
3065         $(BUILDDEPS)
3066 os/user.lo: $(go_os_user_files)
3067         $(BUILDPACKAGE)
3068 os/user/check: $(CHECK_DEPS)
3069         @$(MKDIR_P) os/user
3070         @$(CHECK)
3071 .PHONY: os/user/check
3072
3073 @go_include@ path/filepath.lo.dep
3074 path/filepath.lo.dep: $(go_path_filepath_files)
3075         $(BUILDDEPS)
3076 path/filepath.lo: $(go_path_filepath_files)
3077         $(BUILDPACKAGE)
3078 path/filepath/check: $(CHECK_DEPS)
3079         @$(MKDIR_P) path/filepath
3080         @$(CHECK)
3081 .PHONY: path/filepath/check
3082
3083 @go_include@ regexp/syntax.lo.dep
3084 regexp/syntax.lo.dep: $(go_regexp_syntax_files)
3085         $(BUILDDEPS)
3086 regexp/syntax.lo: $(go_regexp_syntax_files)
3087         $(BUILDPACKAGE)
3088 regexp/syntax/check: $(CHECK_DEPS)
3089         @$(MKDIR_P) regexp/syntax
3090         @$(CHECK)
3091 .PHONY: regexp/syntax/check
3092
3093 @go_include@ runtime/debug.lo.dep
3094 runtime/debug.lo.dep: $(go_runtime_debug_files)
3095         $(BUILDDEPS)
3096 runtime/debug.lo: $(go_runtime_debug_files)
3097         $(BUILDPACKAGE)
3098 runtime/debug/check: $(CHECK_DEPS)
3099         @$(MKDIR_P) runtime/debug
3100         @$(CHECK)
3101 .PHONY: runtime/debug/check
3102
3103 @go_include@ runtime/pprof.lo.dep
3104 runtime/pprof.lo.dep: $(go_runtime_pprof_files)
3105         $(BUILDDEPS)
3106 runtime/pprof.lo: $(go_runtime_pprof_files)
3107         $(BUILDPACKAGE)
3108 runtime/pprof/check: $(CHECK_DEPS)
3109         @$(MKDIR_P) runtime/pprof
3110         @$(CHECK)
3111 .PHONY: runtime/pprof/check
3112
3113 @go_include@ sync/atomic.lo.dep
3114 sync/atomic.lo.dep: $(go_sync_atomic_files)
3115         $(BUILDDEPS)
3116 sync/atomic.lo: $(go_sync_atomic_files)
3117         $(BUILDPACKAGE)
3118 sync/atomic_c.lo: $(go_sync_atomic_c_files) sync/atomic.lo
3119         $(LTCOMPILE) -c -o $@ $(srcdir)/go/sync/atomic/atomic.c
3120 sync/atomic/check: $(CHECK_DEPS)
3121         @$(MKDIR_P) sync/atomic
3122         @$(CHECK)
3123 .PHONY: sync/atomic/check
3124
3125 @go_include@ text/tabwriter.lo.dep
3126 text/tabwriter.lo.dep: $(go_text_tabwriter_files)
3127         $(BUILDDEPS)
3128 text/tabwriter.lo: $(go_text_tabwriter_files)
3129         $(BUILDPACKAGE)
3130 text/tabwriter/check: $(CHECK_DEPS)
3131         @$(MKDIR_P) text/tabwriter
3132         @$(CHECK)
3133 .PHONY: text/tabwriter/check
3134
3135 @go_include@ text/template.lo.dep
3136 text/template.lo.dep: $(go_text_template_files)
3137         $(BUILDDEPS)
3138 text/template.lo: $(go_text_template_files)
3139         $(BUILDPACKAGE)
3140 text/template/check: $(CHECK_DEPS)
3141         @$(CHECK)
3142 .PHONY: text/template/check
3143
3144 @go_include@ text/template/parse.lo.dep
3145 text/template/parse.lo.dep: $(go_text_template_parse_files)
3146         $(BUILDDEPS)
3147 text/template/parse.lo: $(go_text_template_parse_files)
3148         $(BUILDPACKAGE)
3149 text/template/parse/check: $(CHECK_DEPS)
3150         @$(MKDIR_P) text/template/parse
3151         @$(CHECK)
3152 .PHONY: text/template/parse/check
3153
3154 @go_include@ testing/iotest.lo.dep
3155 testing/iotest.lo.dep: $(go_testing_iotest_files)
3156         $(BUILDDEPS)
3157 testing/iotest.lo: $(go_testing_iotest_files)
3158         $(BUILDPACKAGE)
3159 testing/iotest/check: $(CHECK_DEPS)
3160         @$(MKDIR_P) testing/iotest
3161         @$(CHECK)
3162 .PHONY: testing/iotest/check
3163
3164 @go_include@ testing/quick.lo.dep
3165 testing/quick.lo.dep: $(go_testing_quick_files)
3166         $(BUILDDEPS)
3167 testing/quick.lo: $(go_testing_quick_files)
3168         $(BUILDPACKAGE)
3169 testing/quick/check: $(CHECK_DEPS)
3170         @$(MKDIR_P) testing/quick
3171         @$(CHECK)
3172 .PHONY: testing/quick/check
3173
3174 @go_include@ testing/script.lo.dep
3175 testing/script.lo.dep: $(go_testing_script_files)
3176         $(BUILDDEPS)
3177 testing/script.lo: $(go_testing_script_files)
3178         $(BUILDPACKAGE)
3179 testing/script/check: $(CHECK_DEPS)
3180         @$(MKDIR_P) testing/script
3181         @$(CHECK)
3182 .PHONY: testing/script/check
3183
3184 @go_include@ unicode/utf16.lo.dep
3185 unicode/utf16.lo.dep: $(go_unicode_utf16_files)
3186         $(BUILDDEPS)
3187 unicode/utf16.lo: $(go_unicode_utf16_files)
3188         $(BUILDPACKAGE)
3189 unicode/utf16/check: $(CHECK_DEPS)
3190         @$(MKDIR_P) unicode/utf16
3191         @$(CHECK)
3192 .PHONY: unicode/utf16/check
3193
3194 @go_include@ unicode/utf8.lo.dep
3195 unicode/utf8.lo.dep: $(go_unicode_utf8_files)
3196         $(BUILDDEPS)
3197 unicode/utf8.lo: $(go_unicode_utf8_files)
3198         $(BUILDPACKAGE)
3199 unicode/utf8/check: $(CHECK_DEPS)
3200         @$(MKDIR_P) unicode/utf8
3201         @$(CHECK)
3202 .PHONY: unicode/utf8/check
3203
3204 @go_include@ syscall/syscall.lo.dep
3205 syscall/syscall.lo.dep: $(go_syscall_files)
3206         $(BUILDDEPS)
3207 syscall/syscall.lo: $(go_syscall_files)
3208         $(BUILDPACKAGE)
3209 syscall/errno.lo: go/syscall/errno.c
3210         $(LTCOMPILE) -c -o $@ $<
3211 syscall/wait.lo: go/syscall/wait.c
3212         $(LTCOMPILE) -c -o $@ $<
3213
3214 # How to build a .gox file from a .lo file.
3215 BUILDGOX = \
3216         f=`echo $< | sed -e 's/.lo$$/.o/'`; \
3217         $(OBJCOPY) -j .go_export $$f $@.tmp && mv -f $@.tmp $@
3218
3219 bufio.gox: bufio/bufio.lo
3220         $(BUILDGOX)
3221 bytes.gox: bytes/bytes.lo
3222         $(BUILDGOX)
3223 crypto.gox: crypto/crypto.lo
3224         $(BUILDGOX)
3225 errors.gox: errors/errors.lo
3226         $(BUILDGOX)
3227 expvar.gox: expvar/expvar.lo
3228         $(BUILDGOX)
3229 flag.gox: flag/flag.lo
3230         $(BUILDGOX)
3231 fmt.gox: fmt/fmt.lo
3232         $(BUILDGOX)
3233 hash.gox: hash/hash.lo
3234         $(BUILDGOX)
3235 html.gox: html/html.lo
3236         $(BUILDGOX)
3237 image.gox: image/image.lo
3238         $(BUILDGOX)
3239 io.gox: io/io.lo
3240         $(BUILDGOX)
3241 log.gox: log/log.lo
3242         $(BUILDGOX)
3243 math.gox: math/math.lo
3244         $(BUILDGOX)
3245 mime.gox: mime/mime.lo
3246         $(BUILDGOX)
3247 net.gox: net/net.lo
3248         $(BUILDGOX)
3249 os.gox: os/os.lo
3250         $(BUILDGOX)
3251 path.gox: path/path.lo
3252         $(BUILDGOX)
3253 reflect.gox: reflect/reflect.lo
3254         $(BUILDGOX)
3255 regexp.gox: regexp/regexp.lo
3256         $(BUILDGOX)
3257 runtime.gox: runtime/runtime.lo
3258         $(BUILDGOX)
3259 sort.gox: sort/sort.lo
3260         $(BUILDGOX)
3261 strconv.gox: strconv/strconv.lo
3262         $(BUILDGOX)
3263 strings.gox: strings/strings.lo
3264         $(BUILDGOX)
3265 sync.gox: sync/sync.lo
3266         $(BUILDGOX)
3267 syscall.gox: syscall/syscall.lo
3268         $(BUILDGOX)
3269 testing.gox: testing/testing.lo
3270         $(BUILDGOX)
3271 time.gox: time/time.lo
3272         $(BUILDGOX)
3273 unicode.gox: unicode/unicode.lo
3274         $(BUILDGOX)
3275
3276 archive/tar.gox: archive/tar.lo
3277         $(BUILDGOX)
3278 archive/zip.gox: archive/zip.lo
3279         $(BUILDGOX)
3280
3281 compress/bzip2.gox: compress/bzip2.lo
3282         $(BUILDGOX)
3283 compress/flate.gox: compress/flate.lo
3284         $(BUILDGOX)
3285 compress/gzip.gox: compress/gzip.lo
3286         $(BUILDGOX)
3287 compress/lzw.gox: compress/lzw.lo
3288         $(BUILDGOX)
3289 compress/zlib.gox: compress/zlib.lo
3290         $(BUILDGOX)
3291
3292 container/heap.gox: container/heap.lo
3293         $(BUILDGOX)
3294 container/list.gox: container/list.lo
3295         $(BUILDGOX)
3296 container/ring.gox: container/ring.lo
3297         $(BUILDGOX)
3298
3299 crypto/aes.gox: crypto/aes.lo
3300         $(BUILDGOX)
3301 crypto/cipher.gox: crypto/cipher.lo
3302         $(BUILDGOX)
3303 crypto/des.gox: crypto/des.lo
3304         $(BUILDGOX)
3305 crypto/dsa.gox: crypto/dsa.lo
3306         $(BUILDGOX)
3307 crypto/ecdsa.gox: crypto/ecdsa.lo       
3308         $(BUILDGOX)
3309 crypto/elliptic.gox: crypto/elliptic.lo
3310         $(BUILDGOX)
3311 crypto/hmac.gox: crypto/hmac.lo
3312         $(BUILDGOX)
3313 crypto/md5.gox: crypto/md5.lo
3314         $(BUILDGOX)
3315 crypto/rand.gox: crypto/rand.lo
3316         $(BUILDGOX)
3317 crypto/rc4.gox: crypto/rc4.lo
3318         $(BUILDGOX)
3319 crypto/rsa.gox: crypto/rsa.lo
3320         $(BUILDGOX)
3321 crypto/sha1.gox: crypto/sha1.lo
3322         $(BUILDGOX)
3323 crypto/sha256.gox: crypto/sha256.lo
3324         $(BUILDGOX)
3325 crypto/sha512.gox: crypto/sha512.lo
3326         $(BUILDGOX)
3327 crypto/subtle.gox: crypto/subtle.lo
3328         $(BUILDGOX)
3329 crypto/tls.gox: crypto/tls.lo
3330         $(BUILDGOX)
3331 crypto/x509.gox: crypto/x509.lo
3332         $(BUILDGOX)
3333
3334 crypto/x509/pkix.gox: crypto/x509/pkix.lo
3335         $(BUILDGOX)
3336
3337 database/sql.gox: database/sql.lo
3338         $(BUILDGOX)
3339
3340 database/sql/driver.gox: database/sql/driver.lo
3341         $(BUILDGOX)
3342
3343 debug/dwarf.gox: debug/dwarf.lo
3344         $(BUILDGOX)
3345 debug/elf.gox: debug/elf.lo
3346         $(BUILDGOX)
3347 debug/gosym.gox: debug/gosym.lo
3348         $(BUILDGOX)
3349 debug/macho.gox: debug/macho.lo
3350         $(BUILDGOX)
3351 debug/pe.gox: debug/pe.lo
3352         $(BUILDGOX)
3353
3354 encoding/ascii85.gox: encoding/ascii85.lo
3355         $(BUILDGOX)
3356 encoding/asn1.gox: encoding/asn1.lo
3357         $(BUILDGOX)
3358 encoding/base32.gox: encoding/base32.lo
3359         $(BUILDGOX)
3360 encoding/base64.gox: encoding/base64.lo
3361         $(BUILDGOX)
3362 encoding/binary.gox: encoding/binary.lo
3363         $(BUILDGOX)
3364 encoding/csv.gox: encoding/csv.lo
3365         $(BUILDGOX)
3366 encoding/gob.gox: encoding/gob.lo
3367         $(BUILDGOX)
3368 encoding/hex.gox: encoding/hex.lo
3369         $(BUILDGOX)
3370 encoding/json.gox: encoding/json.lo
3371         $(BUILDGOX)
3372 encoding/pem.gox: encoding/pem.lo
3373         $(BUILDGOX)
3374 encoding/xml.gox: encoding/xml.lo
3375         $(BUILDGOX)
3376
3377 exp/ebnf.gox: exp/ebnf.lo
3378         $(BUILDGOX)
3379 exp/html.gox: exp/html.lo
3380         $(BUILDGOX)
3381 exp/inotify.gox: exp/inotify.lo
3382         $(BUILDGOX)
3383 exp/norm.gox: exp/norm.lo
3384         $(BUILDGOX)
3385 exp/proxy.gox: exp/proxy.lo
3386         $(BUILDGOX)
3387 exp/signal.gox: exp/signal.lo
3388         $(BUILDGOX)
3389 exp/terminal.gox: exp/terminal.lo
3390         $(BUILDGOX)
3391 exp/types.gox: exp/types.lo
3392         $(BUILDGOX)
3393 exp/utf8string.gox: exp/utf8string.lo   
3394         $(BUILDGOX)
3395
3396 html/template.gox: html/template.lo
3397         $(BUILDGOX)
3398
3399 go/ast.gox: go/ast.lo
3400         $(BUILDGOX)
3401 go/build.gox: go/build.lo
3402         $(BUILDGOX)
3403 go/doc.gox: go/doc.lo
3404         $(BUILDGOX)
3405 go/parser.gox: go/parser.lo
3406         $(BUILDGOX)
3407 go/printer.gox: go/printer.lo
3408         $(BUILDGOX)
3409 go/scanner.gox: go/scanner.lo
3410         $(BUILDGOX)
3411 go/token.gox: go/token.lo
3412         $(BUILDGOX)
3413
3414 hash/adler32.gox: hash/adler32.lo
3415         $(BUILDGOX)
3416 hash/crc32.gox: hash/crc32.lo
3417         $(BUILDGOX)
3418 hash/crc64.gox: hash/crc64.lo
3419         $(BUILDGOX)
3420 hash/fnv.gox: hash/fnv.lo
3421         $(BUILDGOX)
3422
3423 image/color.gox: image/color.lo
3424         $(BUILDGOX)
3425 image/draw.gox: image/draw.lo
3426         $(BUILDGOX)
3427 image/gif.gox: image/gif.lo
3428         $(BUILDGOX)
3429 image/jpeg.gox: image/jpeg.lo
3430         $(BUILDGOX)
3431 image/png.gox: image/png.lo
3432         $(BUILDGOX)
3433
3434 index/suffixarray.gox: index/suffixarray.lo
3435         $(BUILDGOX)
3436
3437 io/ioutil.gox: io/ioutil.lo
3438         $(BUILDGOX)
3439
3440 log/syslog.gox: log/syslog.lo
3441         $(BUILDGOX)
3442
3443 math/big.gox: math/big.lo
3444         $(BUILDGOX)
3445 math/cmplx.gox: math/cmplx.lo
3446         $(BUILDGOX)
3447 math/rand.gox: math/rand.lo
3448         $(BUILDGOX)
3449
3450 mime/multipart.gox: mime/multipart.lo
3451         $(BUILDGOX)
3452
3453 net/http.gox: net/http.lo
3454         $(BUILDGOX)
3455 net/mail.gox: net/mail.lo
3456         $(BUILDGOX)
3457 net/rpc.gox: net/rpc.lo
3458         $(BUILDGOX)
3459 net/smtp.gox: net/smtp.lo
3460         $(BUILDGOX)
3461 net/textproto.gox: net/textproto.lo
3462         $(BUILDGOX)
3463 net/url.gox: net/url.lo
3464         $(BUILDGOX)
3465
3466 net/http/cgi.gox: net/http/cgi.lo
3467         $(BUILDGOX)
3468 net/http/fcgi.gox: net/http/fcgi.lo
3469         $(BUILDGOX)
3470 net/http/httptest.gox: net/http/httptest.lo
3471         $(BUILDGOX)
3472 net/http/httputil.gox: net/http/httputil.lo
3473         $(BUILDGOX)
3474 net/http/pprof.gox: net/http/pprof.lo
3475         $(BUILDGOX)
3476
3477 net/rpc/jsonrpc.gox: net/rpc/jsonrpc.lo
3478         $(BUILDGOX)
3479
3480 old/netchan.gox: old/netchan.lo
3481         $(BUILDGOX)
3482 old/regexp.gox: old/regexp.lo
3483         $(BUILDGOX)
3484 old/template.gox: old/template.lo
3485         $(BUILDGOX)
3486
3487 os/exec.gox: os/exec.lo
3488         $(BUILDGOX)
3489 os/user.gox: os/user.lo
3490         $(BUILDGOX)
3491
3492 path/filepath.gox: path/filepath.lo
3493         $(BUILDGOX)
3494
3495 regexp/syntax.gox: regexp/syntax.lo
3496         $(BUILDGOX)
3497
3498 runtime/debug.gox: runtime/debug.lo
3499         $(BUILDGOX)
3500 runtime/pprof.gox: runtime/pprof.lo
3501         $(BUILDGOX)
3502
3503 sync/atomic.gox: sync/atomic.lo
3504         $(BUILDGOX)
3505
3506 text/scanner.gox: text/scanner.lo
3507         $(BUILDGOX)
3508 text/tabwriter.gox: text/tabwriter.lo
3509         $(BUILDGOX)
3510 text/template.gox: text/template.lo
3511         $(BUILDGOX)
3512 text/template/parse.gox: text/template/parse.lo
3513         $(BUILDGOX)
3514
3515 testing/iotest.gox: testing/iotest.lo
3516         $(BUILDGOX)
3517 testing/quick.gox: testing/quick.lo
3518         $(BUILDGOX)
3519 testing/script.gox: testing/script.lo
3520         $(BUILDGOX)
3521
3522 unicode/utf16.gox: unicode/utf16.lo
3523         $(BUILDGOX)
3524 unicode/utf8.gox: unicode/utf8.lo
3525         $(BUILDGOX)
3526
3527 if LIBGO_IS_LINUX
3528 # exp_inotify_check = exp/inotify/check
3529 exp_inotify_check =
3530 else
3531 exp_inotify_check =
3532 endif
3533
3534 TEST_PACKAGES = \
3535         bufio/check \
3536         bytes/check \
3537         errors/check \
3538         expvar/check \
3539         flag/check \
3540         fmt/check \
3541         html/check \
3542         image/check \
3543         io/check \
3544         log/check \
3545         math/check \
3546         mime/check \
3547         net/check \
3548         os/check \
3549         path/check \
3550         reflect/check \
3551         regexp/check \
3552         runtime/check \
3553         sort/check \
3554         strconv/check \
3555         strings/check \
3556         sync/check \
3557         time/check \
3558         unicode/check \
3559         archive/tar/check \
3560         archive/zip/check \
3561         compress/bzip2/check \
3562         compress/flate/check \
3563         compress/gzip/check \
3564         compress/lzw/check \
3565         compress/zlib/check \
3566         container/heap/check \
3567         container/list/check \
3568         container/ring/check \
3569         crypto/aes/check \
3570         crypto/cipher/check \
3571         crypto/des/check \
3572         crypto/dsa/check \
3573         crypto/ecdsa/check \
3574         crypto/elliptic/check \
3575         crypto/hmac/check \
3576         crypto/md5/check \
3577         crypto/rand/check \
3578         crypto/rc4/check \
3579         crypto/rsa/check \
3580         crypto/sha1/check \
3581         crypto/sha256/check \
3582         crypto/sha512/check \
3583         crypto/subtle/check \
3584         crypto/tls/check \
3585         crypto/x509/check \
3586         database/sql/check \
3587         database/sql/driver/check \
3588         debug/dwarf/check \
3589         debug/elf/check \
3590         debug/macho/check \
3591         debug/pe/check \
3592         encoding/ascii85/check \
3593         encoding/asn1/check \
3594         encoding/base32/check \
3595         encoding/base64/check \
3596         encoding/binary/check \
3597         encoding/csv/check \
3598         encoding/gob/check \
3599         encoding/hex/check \
3600         encoding/json/check \
3601         encoding/pem/check \
3602         encoding/xml/check \
3603         exp/ebnf/check \
3604         exp/html/check \
3605         $(exp_inotify_check) \
3606         exp/norm/check \
3607         exp/proxy/check \
3608         exp/signal/check \
3609         exp/terminal/check \
3610         exp/utf8string/check \
3611         html/template/check \
3612         go/ast/check \
3613         $(go_build_check_omitted_since_it_calls_6g) \
3614         go/doc/check \
3615         go/parser/check \
3616         go/printer/check \
3617         go/scanner/check \
3618         go/token/check \
3619         $(go_types_check_omitted_since_it_calls_6g) \
3620         hash/adler32/check \
3621         hash/crc32/check \
3622         hash/crc64/check \
3623         hash/fnv/check \
3624         image/color/check \
3625         image/draw/check \
3626         image/jpeg/check \
3627         image/png/check \
3628         index/suffixarray/check \
3629         io/ioutil/check \
3630         log/syslog/check \
3631         math/big/check \
3632         math/cmplx/check \
3633         math/rand/check \
3634         mime/multipart/check \
3635         net/http/check \
3636         net/http/cgi/check \
3637         net/http/fcgi/check \
3638         net/http/httputil/check \
3639         net/mail/check \
3640         net/rpc/check \
3641         net/smtp/check \
3642         net/textproto/check \
3643         net/url/check \
3644         net/rpc/jsonrpc/check \
3645         old/netchan/check \
3646         old/regexp/check \
3647         old/template/check \
3648         os/exec/check \
3649         os/user/check \
3650         path/filepath/check \
3651         regexp/syntax/check \
3652         sync/atomic/check \
3653         text/scanner/check \
3654         text/tabwriter/check \
3655         text/template/check \
3656         text/template/parse/check \
3657         testing/quick/check \
3658         testing/script/check \
3659         unicode/utf16/check \
3660         unicode/utf8/check
3661
3662 check: check-tail
3663 check-recursive: check-head
3664
3665 check-head:
3666         @echo "Test Run By $${USER} on `date`" > libgo.head
3667         @echo "Native configuration is $(host_triplet)" >> libgo.head
3668         @echo >> libgo.head
3669         @echo "         === libgo tests ===" >> libgo.head
3670         @echo >> libgo.head
3671
3672 check-tail: check-recursive check-multi
3673         @lib=`${PWD_COMMAND} | sed -e 's,^.*/\([^/][^/]*\)$$,\1,'`; \
3674         for dir in . $(MULTIDIRS); do \
3675           mv ../$${dir}/$${lib}/libgo.sum ../$${dir}/$${lib}/libgo.sum.sep; \
3676           mv ../$${dir}/$${lib}/libgo.log ../$${dir}/$${lib}/libgo.log.sep; \
3677         done; \
3678         mv libgo.head libgo.sum; \
3679         cp libgo.sum libgo.log; \
3680         echo "Schedule of variations:" >> libgo.sum; \
3681         for dir in . $(MULTIDIRS); do \
3682           multidir=../$${dir}/$${lib}; \
3683           multivar=`cat $${multidir}/libgo.var`; \
3684           echo "    $${multivar}" >> libgo.sum; \
3685         done; \
3686         echo >> libgo.sum; \
3687         pass=0; fail=0; untested=0; \
3688         for dir in . $(MULTIDIRS); do \
3689           multidir=../$${dir}/$${lib}; \
3690           multivar=`cat $${multidir}/libgo.var`; \
3691           echo "Running target $${multivar}" >> libgo.sum; \
3692           echo "Running $(srcdir)/libgo.exp ..." >> libgo.sum; \
3693           cat $${multidir}/libgo.sum.sep >> libgo.sum; \
3694           cat $${multidir}/libgo.log.sep >> libgo.log; \
3695           if test -n "${MULTIDIRS}"; then \
3696             echo "              === libgo Summary for $${multivar} ===" >> libgo.sum; \
3697             echo >> libgo.sum; \
3698           fi; \
3699           p=`grep -c PASS $${multidir}/libgo.sum.sep`; \
3700           pass=`expr $$pass + $$p`; \
3701           if test "$$p" -ne "0" && test -n "${MULTIDIRS}"; then \
3702             echo "# of expected passes          $$p" >> libgo.sum; \
3703           fi; \
3704           p=`grep -c FAIL $${multidir}/libgo.sum.sep`; \
3705           fail=`expr $$fail + $$p`; \
3706           if test "$$p" -ne "0" && test -n "${MULTIDIRS}"; then \
3707             echo "# of unexpected failures      $$p" >> libgo.sum; \
3708           fi; \
3709           p=`grep -c UNTESTED $${multidir}/libgo.sum.sep`; \
3710           untested=`expr $$untested + $$p`; \
3711           if test "$$p" -ne "0" && test -n "${MULTIDIRS}"; then \
3712             echo "# of untested testcases               $$p" >> libgo.sum; \
3713           fi; \
3714         done; \
3715         echo >> libgo.sum; \
3716         echo "          === libgo Summary ===" >> libgo.sum; \
3717         echo >> libgo.sum; \
3718         if test "$$pass" -ne "0"; then \
3719           echo "# of expected passes            $$pass" >> libgo.sum; \
3720         fi; \
3721         if test "$$fail" -ne "0"; then \
3722           echo "# of unexpected failures        $$fail" >> libgo.sum; \
3723         fi; \
3724         if test "$$untested" -ne "0"; then \
3725           echo "# of untested testcases         $$untested" >> libgo.sum; \
3726         fi; \
3727         echo `echo $(GOC) | sed -e 's/ .*//'`  `$(GOC) -v 2>&1 | grep " version" | sed -n -e 's/.* \(version.*$$\)/\1/p'` >> libgo.sum; \
3728         echo >> libgo.log; \
3729         echo "runtest completed at `date`" >> libgo.log; \
3730         if test "$$fail" -ne "0"; then \
3731           status=1; \
3732         else \
3733           status=0; \
3734         fi; \
3735         exit $$status
3736
3737 check-am:
3738         @rm -f libgo.sum libgo.log libgo.tail
3739         @multivar="unix"; \
3740         [ -z "$(MULTIFLAGS)" ] || multivar="$${multivar}/$(MULTIFLAGS)"; \
3741         echo "$${multivar}" > libgo.var
3742         @for f in $(TEST_PACKAGES); do \
3743            rm -f $$f-testsum $$f-testlog; \
3744          done
3745         -@$(MAKE) -k $(TEST_PACKAGES)
3746         @for f in $(TEST_PACKAGES); do \
3747           if test -f $$f-testsum; then \
3748             cat $$f-testsum >> libgo.sum; \
3749           fi; \
3750           if test -f $$f-testlog; then \
3751             cat $$f-testlog >> libgo.log; \
3752           fi; \
3753         done
3754
3755 check-multi:
3756         $(MULTIDO) $(AM_MAKEFLAGS) DO=check-am multi-do # $(MAKE)
3757
3758 MOSTLYCLEAN_FILES = libgo.head libgo.sum.sep libgo.log.sep
3759
3760 mostlyclean-local:
3761         find . -name '*.lo' -print | xargs $(LIBTOOL) --mode=clean rm -f
3762         find . -name '*.$(OBJEXT)' -print | xargs rm -f
3763         find . -name '*-testsum' -print | xargs rm -f
3764         find . -name '*-testlog' -print | xargs rm -f
3765
3766 CLEANFILES = *.go *.gox goc2c *.c s-version libgo.sum libgo.log
3767
3768 clean-local:
3769         find . -name '*.la' -print | xargs $(LIBTOOL) --mode=clean rm -f
3770         find . -name '*.a' -print | xargs rm -f