OSDN Git Service

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