OSDN Git Service

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