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