OSDN Git Service

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