PR go/65616
[official-gcc.git] / libgo / Makefile.am
blob15af3dc1bec98c8fa803052b6fb2630d61cb6f31
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 libnetgo.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_common_files = \
778         $(go_net_cloexec_file) \
779         go/net/dial.go \
780         go/net/dnsclient.go \
781         go/net/dnsclient_unix.go \
782         go/net/dnsconfig_unix.go \
783         go/net/dnsmsg.go \
784         go/net/fd_mutex.go \
785         go/net/fd_unix.go \
786         go/net/file_unix.go \
787         go/net/hosts.go \
788         go/net/interface.go \
789         $(go_net_interface_file) \
790         go/net/ip.go \
791         go/net/iprawsock.go \
792         go/net/iprawsock_posix.go \
793         go/net/ipsock.go \
794         go/net/ipsock_posix.go \
795         go/net/lookup.go \
796         go/net/lookup_unix.go \
797         go/net/mac.go \
798         go/net/net.go \
799         go/net/parse.go \
800         go/net/pipe.go \
801         go/net/fd_poll_runtime.go \
802         go/net/port.go \
803         go/net/port_unix.go \
804         go/net/race0.go \
805         $(go_net_sendfile_file) \
806         go/net/singleflight.go \
807         go/net/sock_posix.go \
808         $(go_net_sock_file) \
809         go/net/sockopt_posix.go \
810         $(go_net_sockopt_file) \
811         $(go_net_sockoptip_file) \
812         go/net/tcpsock.go \
813         go/net/tcpsock_posix.go \
814         go/net/tcpsockopt_posix.go \
815         $(go_net_tcpsockopt_file) \
816         go/net/udpsock.go \
817         go/net/udpsock_posix.go \
818         go/net/unixsock.go \
819         go/net/unixsock_posix.go
821 go_net_files = \
822         go/net/cgo_unix.go \
823         $(go_net_cgo_file) \
824         $(go_net_common_files)
826 go_netgo_files = \
827         go/net/cgo_stub.go \
828         $(go_net_common_files)
830 if LIBGO_IS_SOLARIS
831 if LIBGO_IS_386
832 go_os_dir_file = go/os/dir_largefile.go
833 else
834 if LIBGO_IS_SPARC
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
840 else
841 if LIBGO_IS_LINUX
842 go_os_dir_file = go/os/dir_largefile.go
843 else
844 go_os_dir_file = go/os/dir_regfile.go
845 endif
846 endif
848 if LIBGO_IS_DARWIN
849 go_os_getwd_file = go/os/getwd_darwin.go
850 else
851 go_os_getwd_file =
852 endif
854 if LIBGO_IS_LINUX
855 go_os_sys_file = go/os/sys_linux.go
856 else
857 if LIBGO_IS_SOLARIS
858 go_os_sys_file = go/os/sys_uname.go
859 else
860 if LIBGO_IS_IRIX
861 go_os_sys_file = go/os/sys_uname.go
862 else
863 if LIBGO_IS_RTEMS
864 go_os_sys_file = go/os/sys_uname.go
865 else
866 go_os_sys_file = go/os/sys_bsd.go
867 endif
868 endif
869 endif
870 endif
872 if LIBGO_IS_FREEBSD
873 go_os_cloexec_file = go/os/sys_freebsd.go
874 else
875 if LIBGO_IS_DARWIN
876 go_os_cloexec_file = go/os/sys_darwin.go
877 else
878 go_os_cloexec_file = go/os/sys_unix.go
879 endif
880 endif
882 if LIBGO_IS_SOLARIS
883 go_os_stat_file = go/os/stat_solaris.go
884 else
885 if LIBGO_IS_LINUX
886 go_os_stat_file = go/os/stat_atim.go
887 else
888 if LIBGO_IS_OPENBSD
889 go_os_stat_file = go/os/stat_atim.go
890 else
891 if LIBGO_IS_DARWIN
892 go_os_stat_file = go/os/stat_atimespec.go
893 else
894 if LIBGO_IS_FREEBSD
895 go_os_stat_file = go/os/stat_atimespec.go
896 else
897 if LIBGO_IS_NETBSD
898 go_os_stat_file = go/os/stat_atimespec.go
899 else
900 if LIBGO_IS_DRAGONFLY
901 go_os_stat_file = go/os/stat_dragonfly.go
902 else
903 go_os_stat_file = go/os/stat.go
904 endif
905 endif
906 endif
907 endif
908 endif
909 endif
910 endif
912 if LIBGO_IS_LINUX
913 go_os_pipe_file = go/os/pipe_linux.go
914 else
915 go_os_pipe_file = go/os/pipe_bsd.go
916 endif
918 go_os_files = \
919         $(go_os_dir_file) \
920         go/os/dir.go \
921         go/os/doc.go \
922         go/os/env.go \
923         go/os/error.go \
924         go/os/error_unix.go \
925         go/os/exec.go \
926         go/os/exec_posix.go \
927         go/os/exec_unix.go \
928         go/os/file.go \
929         go/os/file_posix.go \
930         go/os/file_unix.go \
931         go/os/getwd.go \
932         $(go_os_getwd_file) \
933         go/os/path.go \
934         go/os/path_unix.go \
935         $(go_os_pipe_file) \
936         go/os/proc.go \
937         $(go_os_stat_file) \
938         go/os/str.go \
939         $(go_os_sys_file) \
940         $(go_os_cloexec_file) \
941         go/os/types.go \
942         go/os/types_notwin.go
944 go_path_files = \
945         go/path/match.go \
946         go/path/path.go
948 go_reflect_files = \
949         go/reflect/deepequal.go \
950         go/reflect/makefunc.go \
951         go/reflect/makefunc_ffi.go \
952         go/reflect/type.go \
953         go/reflect/value.go
954 go_reflect_makefunc_c_file = \
955         go/reflect/makefunc_ffi_c.c
957 go_regexp_files = \
958         go/regexp/exec.go \
959         go/regexp/onepass.go \
960         go/regexp/regexp.go
962 go_net_rpc_files = \
963         go/net/rpc/client.go \
964         go/net/rpc/debug.go \
965         go/net/rpc/server.go
967 go_runtime_files = \
968         go/runtime/compiler.go \
969         go/runtime/debug.go \
970         go/runtime/error.go \
971         go/runtime/extern.go \
972         go/runtime/mem.go \
973         go/runtime/softfloat64.go \
974         version.go
976 version.go: s-version; @true
977 s-version: Makefile
978         rm -f version.go.tmp
979         echo "package runtime" > version.go.tmp
980         echo 'const defaultGoroot = "$(prefix)"' >> version.go.tmp
981         echo 'const theVersion = "'`cat $(srcdir)/VERSION | sed 1q`' '`$(GOC) --version | sed 1q`'"' >> version.go.tmp
982         echo 'const theGoarch = "'$(GOARCH)'"' >> version.go.tmp
983         echo 'const theGoos = "'$(GOOS)'"' >> version.go.tmp
984         echo 'const theGccgoToolDir = "$(libexecsubdir)"' >> version.go.tmp
985         $(SHELL) $(srcdir)/mvifdiff.sh version.go.tmp version.go
986         $(STAMP) $@
988 noinst_DATA = zstdpkglist.go
990 # Generate the list of go std packages that were included in libgo
991 zstdpkglist.go: s-zstdpkglist; @true
992 s-zstdpkglist: Makefile
993         rm -f zstdpkglist.go.tmp
994         echo 'package main' > zstdpkglist.go.tmp
995         echo "" >> zstdpkglist.go.tmp
996         echo 'var stdpkg = map[string]bool{' >> zstdpkglist.go.tmp
997         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
998         echo '}' >> zstdpkglist.go.tmp
999         $(SHELL) $(srcdir)/mvifdiff.sh zstdpkglist.go.tmp zstdpkglist.go
1000         $(STAMP) $@
1002 go_sort_files = \
1003         go/sort/search.go \
1004         go/sort/sort.go
1006 go_strconv_files = \
1007         go/strconv/atob.go \
1008         go/strconv/atof.go \
1009         go/strconv/atoi.go \
1010         go/strconv/decimal.go \
1011         go/strconv/extfloat.go \
1012         go/strconv/ftoa.go \
1013         go/strconv/isprint.go \
1014         go/strconv/itoa.go \
1015         go/strconv/quote.go
1017 go_strings_files = \
1018         go/strings/reader.go \
1019         go/strings/replace.go \
1020         go/strings/search.go \
1021         go/strings/strings.go \
1022         go/strings/strings_decl.go
1023 go_strings_c_files = \
1024         go/strings/indexbyte.c
1026 go_sync_files = \
1027         go/sync/cond.go \
1028         go/sync/mutex.go \
1029         go/sync/once.go \
1030         go/sync/pool.go \
1031         go/sync/race0.go \
1032         go/sync/runtime.go \
1033         go/sync/rwmutex.go \
1034         go/sync/waitgroup.go
1036 if LIBGO_IS_SOLARIS
1037 go_syslog_file = go/log/syslog/syslog_libc.go
1038 else
1039 if LIBGO_IS_IRIX
1040 go_syslog_file = go/log/syslog/syslog_libc.go
1041 else
1042 go_syslog_file = go/log/syslog/syslog_unix.go
1043 endif
1044 endif
1046 go_log_syslog_files = \
1047         go/log/syslog/syslog.go \
1048         $(go_syslog_file)
1049 go_syslog_c_files = \
1050         go/log/syslog/syslog_c.c
1052 go_testing_files = \
1053         go/testing/allocs.go \
1054         go/testing/benchmark.go \
1055         go/testing/cover.go \
1056         go/testing/example.go \
1057         go/testing/testing.go
1059 go_time_files = \
1060         go/time/format.go \
1061         go/time/sleep.go \
1062         go/time/sys_unix.go \
1063         go/time/tick.go \
1064         go/time/time.go \
1065         go/time/zoneinfo.go \
1066         go/time/zoneinfo_read.go \
1067         go/time/zoneinfo_unix.go
1069 go_unicode_files = \
1070         go/unicode/casetables.go \
1071         go/unicode/digit.go \
1072         go/unicode/graphic.go \
1073         go/unicode/letter.go \
1074         go/unicode/tables.go
1076 if LIBGO_IS_LINUX
1077 archive_tar_atim_file = go/archive/tar/stat_atim.go
1078 endif
1079 if LIBGO_IS_OPENBSD
1080 archive_tar_atim_file = go/archive/tar/stat_atim.go
1081 endif
1082 if LIBGO_IS_SOLARIS
1083 archive_tar_atim_file = go/archive/tar/stat_atim.go
1084 endif
1085 if LIBGO_IS_DARWIN
1086 archive_tar_atim_file = go/archive/tar/stat_atimespec.go
1087 endif
1088 if LIBGO_IS_FREEBSD
1089 archive_tar_atim_file = go/archive/tar/stat_atimespec.go
1090 endif
1091 if LIBGO_IS_NETBSD
1092 archive_tar_atim_file = go/archive/tar/stat_atimespec.go
1093 endif
1095 go_archive_tar_files = \
1096         go/archive/tar/common.go \
1097         go/archive/tar/reader.go \
1098         go/archive/tar/stat_unix.go \
1099         go/archive/tar/writer.go \
1100         $(archive_tar_atim_file)
1102 go_archive_zip_files = \
1103         go/archive/zip/reader.go \
1104         go/archive/zip/register.go \
1105         go/archive/zip/struct.go \
1106         go/archive/zip/writer.go
1108 go_compress_bzip2_files = \
1109         go/compress/bzip2/bit_reader.go \
1110         go/compress/bzip2/bzip2.go \
1111         go/compress/bzip2/huffman.go \
1112         go/compress/bzip2/move_to_front.go
1114 go_compress_flate_files = \
1115         go/compress/flate/copy.go \
1116         go/compress/flate/deflate.go \
1117         go/compress/flate/fixedhuff.go \
1118         go/compress/flate/huffman_bit_writer.go \
1119         go/compress/flate/huffman_code.go \
1120         go/compress/flate/inflate.go \
1121         go/compress/flate/reverse_bits.go \
1122         go/compress/flate/token.go
1124 go_compress_gzip_files = \
1125         go/compress/gzip/gzip.go \
1126         go/compress/gzip/gunzip.go
1128 go_compress_lzw_files = \
1129         go/compress/lzw/reader.go \
1130         go/compress/lzw/writer.go
1132 go_compress_zlib_files = \
1133         go/compress/zlib/reader.go \
1134         go/compress/zlib/writer.go
1136 go_container_heap_files = \
1137         go/container/heap/heap.go
1139 go_container_list_files = \
1140         go/container/list/list.go
1142 go_container_ring_files = \
1143         go/container/ring/ring.go
1145 go_crypto_aes_files = \
1146         go/crypto/aes/block.go \
1147         go/crypto/aes/cipher.go \
1148         go/crypto/aes/cipher_generic.go \
1149         go/crypto/aes/const.go
1150 go_crypto_cipher_files = \
1151         go/crypto/cipher/cbc.go \
1152         go/crypto/cipher/cfb.go \
1153         go/crypto/cipher/cipher.go \
1154         go/crypto/cipher/ctr.go \
1155         go/crypto/cipher/gcm.go \
1156         go/crypto/cipher/io.go \
1157         go/crypto/cipher/ofb.go \
1158         go/crypto/cipher/xor.go
1159 go_crypto_des_files = \
1160         go/crypto/des/block.go \
1161         go/crypto/des/cipher.go \
1162         go/crypto/des/const.go
1163 go_crypto_dsa_files = \
1164         go/crypto/dsa/dsa.go
1165 go_crypto_ecdsa_files = \
1166         go/crypto/ecdsa/ecdsa.go
1167 go_crypto_elliptic_files = \
1168         go/crypto/elliptic/elliptic.go \
1169         go/crypto/elliptic/p224.go \
1170         go/crypto/elliptic/p256.go
1171 go_crypto_hmac_files = \
1172         go/crypto/hmac/hmac.go
1173 go_crypto_md5_files = \
1174         go/crypto/md5/md5.go \
1175         go/crypto/md5/md5block.go \
1176         go/crypto/md5/md5block_generic.go
1178 if LIBGO_IS_LINUX
1179 crypto_rand_file = go/crypto/rand/rand_linux.go
1180 else
1181 crypto_rand_file =
1182 endif
1184 go_crypto_rand_files = \
1185         go/crypto/rand/rand.go \
1186         go/crypto/rand/rand_unix.go \
1187         $(crypto_rand_file) \
1188         go/crypto/rand/util.go
1190 go_crypto_rc4_files = \
1191         go/crypto/rc4/rc4.go \
1192         go/crypto/rc4/rc4_ref.go
1193 go_crypto_rsa_files = \
1194         go/crypto/rsa/pkcs1v15.go \
1195         go/crypto/rsa/pss.go \
1196         go/crypto/rsa/rsa.go
1197 go_crypto_sha1_files = \
1198         go/crypto/sha1/sha1.go \
1199         go/crypto/sha1/sha1block.go \
1200         go/crypto/sha1/sha1block_generic.go
1201 go_crypto_sha256_files = \
1202         go/crypto/sha256/sha256.go \
1203         go/crypto/sha256/sha256block.go
1204 go_crypto_sha512_files = \
1205         go/crypto/sha512/sha512.go \
1206         go/crypto/sha512/sha512block.go
1207 go_crypto_subtle_files = \
1208         go/crypto/subtle/constant_time.go
1209 go_crypto_tls_files = \
1210         go/crypto/tls/alert.go \
1211         go/crypto/tls/cipher_suites.go \
1212         go/crypto/tls/common.go \
1213         go/crypto/tls/conn.go \
1214         go/crypto/tls/handshake_client.go \
1215         go/crypto/tls/handshake_messages.go \
1216         go/crypto/tls/handshake_server.go \
1217         go/crypto/tls/key_agreement.go \
1218         go/crypto/tls/prf.go \
1219         go/crypto/tls/ticket.go \
1220         go/crypto/tls/tls.go
1221 go_crypto_x509_files = \
1222         go/crypto/x509/cert_pool.go \
1223         go/crypto/x509/pem_decrypt.go \
1224         go/crypto/x509/pkcs1.go \
1225         go/crypto/x509/pkcs8.go \
1226         go/crypto/x509/root.go \
1227         go/crypto/x509/root_unix.go \
1228         go/crypto/x509/sec1.go \
1229         go/crypto/x509/verify.go \
1230         go/crypto/x509/x509.go
1232 go_crypto_x509_pkix_files = \
1233         go/crypto/x509/pkix/pkix.go
1235 go_database_sql_files = \
1236         go/database/sql/convert.go \
1237         go/database/sql/sql.go
1239 go_database_sql_driver_files = \
1240         go/database/sql/driver/driver.go \
1241         go/database/sql/driver/types.go
1243 go_debug_dwarf_files = \
1244         go/debug/dwarf/buf.go \
1245         go/debug/dwarf/const.go \
1246         go/debug/dwarf/entry.go \
1247         go/debug/dwarf/line.go \
1248         go/debug/dwarf/open.go \
1249         go/debug/dwarf/type.go \
1250         go/debug/dwarf/typeunit.go \
1251         go/debug/dwarf/unit.go
1252 go_debug_elf_files = \
1253         go/debug/elf/elf.go \
1254         go/debug/elf/file.go
1255 go_debug_gosym_files = \
1256         go/debug/gosym/pclntab.go \
1257         go/debug/gosym/symtab.go
1258 go_debug_macho_files = \
1259         go/debug/macho/fat.go \
1260         go/debug/macho/file.go \
1261         go/debug/macho/macho.go
1262 go_debug_pe_files = \
1263         go/debug/pe/file.go \
1264         go/debug/pe/pe.go
1265 go_debug_plan9obj_files = \
1266         go/debug/plan9obj/file.go \
1267         go/debug/plan9obj/plan9obj.go
1269 go_encoding_ascii85_files = \
1270         go/encoding/ascii85/ascii85.go
1271 go_encoding_asn1_files = \
1272         go/encoding/asn1/asn1.go \
1273         go/encoding/asn1/common.go \
1274         go/encoding/asn1/marshal.go
1275 go_encoding_base32_files = \
1276         go/encoding/base32/base32.go
1277 go_encoding_base64_files = \
1278         go/encoding/base64/base64.go
1279 go_encoding_binary_files = \
1280         go/encoding/binary/binary.go \
1281         go/encoding/binary/varint.go
1282 go_encoding_csv_files = \
1283         go/encoding/csv/reader.go \
1284         go/encoding/csv/writer.go
1285 go_encoding_gob_files = \
1286         go/encoding/gob/decode.go \
1287         go/encoding/gob/decoder.go \
1288         go/encoding/gob/dec_helpers.go \
1289         go/encoding/gob/doc.go \
1290         go/encoding/gob/encode.go \
1291         go/encoding/gob/encoder.go \
1292         go/encoding/gob/enc_helpers.go \
1293         go/encoding/gob/error.go \
1294         go/encoding/gob/type.go
1295 go_encoding_hex_files = \
1296         go/encoding/hex/hex.go
1297 go_encoding_json_files = \
1298         go/encoding/json/decode.go \
1299         go/encoding/json/encode.go \
1300         go/encoding/json/fold.go \
1301         go/encoding/json/indent.go \
1302         go/encoding/json/scanner.go \
1303         go/encoding/json/stream.go \
1304         go/encoding/json/tags.go
1305 go_encoding_pem_files = \
1306         go/encoding/pem/pem.go
1307 go_encoding_xml_files = \
1308         go/encoding/xml/marshal.go \
1309         go/encoding/xml/read.go \
1310         go/encoding/xml/typeinfo.go \
1311         go/encoding/xml/xml.go
1313 go_exp_proxy_files = \
1314         go/exp/proxy/direct.go \
1315         go/exp/proxy/per_host.go \
1316         go/exp/proxy/proxy.go \
1317         go/exp/proxy/socks5.go
1318 go_exp_terminal_files = \
1319         go/exp/terminal/terminal.go \
1320         go/exp/terminal/util.go
1322 go_go_ast_files = \
1323         go/go/ast/ast.go \
1324         go/go/ast/commentmap.go \
1325         go/go/ast/filter.go \
1326         go/go/ast/import.go \
1327         go/go/ast/print.go \
1328         go/go/ast/resolve.go \
1329         go/go/ast/scope.go \
1330         go/go/ast/walk.go
1331 go_go_build_files = \
1332         go/go/build/build.go \
1333         go/go/build/doc.go \
1334         go/go/build/read.go \
1335         go/go/build/syslist.go
1336 go_go_doc_files = \
1337         go/go/doc/comment.go \
1338         go/go/doc/doc.go \
1339         go/go/doc/example.go \
1340         go/go/doc/exports.go \
1341         go/go/doc/filter.go \
1342         go/go/doc/reader.go \
1343         go/go/doc/synopsis.go
1344 go_go_format_files = \
1345         go/go/format/format.go
1346 go_go_parser_files = \
1347         go/go/parser/interface.go \
1348         go/go/parser/parser.go
1349 go_go_printer_files = \
1350         go/go/printer/nodes.go \
1351         go/go/printer/printer.go
1352 go_go_scanner_files = \
1353         go/go/scanner/errors.go \
1354         go/go/scanner/scanner.go
1355 go_go_token_files = \
1356         go/go/token/position.go \
1357         go/go/token/serialize.go \
1358         go/go/token/token.go
1360 go_hash_adler32_files = \
1361         go/hash/adler32/adler32.go
1362 go_hash_crc32_files = \
1363         go/hash/crc32/crc32.go \
1364         go/hash/crc32/crc32_generic.go
1365 go_hash_crc64_files = \
1366         go/hash/crc64/crc64.go
1367 go_hash_fnv_files = \
1368         go/hash/fnv/fnv.go
1370 go_html_template_files = \
1371         go/html/template/attr.go \
1372         go/html/template/content.go \
1373         go/html/template/context.go \
1374         go/html/template/css.go \
1375         go/html/template/doc.go \
1376         go/html/template/error.go \
1377         go/html/template/escape.go \
1378         go/html/template/html.go \
1379         go/html/template/js.go \
1380         go/html/template/template.go \
1381         go/html/template/transition.go \
1382         go/html/template/url.go
1384 go_image_color_files = \
1385         go/image/color/color.go \
1386         go/image/color/ycbcr.go
1388 go_image_color_palette_files = \
1389         go/image/color/palette/palette.go
1391 go_image_draw_files = \
1392         go/image/draw/draw.go
1394 go_image_gif_files = \
1395         go/image/gif/reader.go \
1396         go/image/gif/writer.go
1398 go_image_jpeg_files = \
1399         go/image/jpeg/fdct.go \
1400         go/image/jpeg/huffman.go \
1401         go/image/jpeg/idct.go \
1402         go/image/jpeg/reader.go \
1403         go/image/jpeg/scan.go \
1404         go/image/jpeg/writer.go
1406 go_image_png_files = \
1407         go/image/png/paeth.go \
1408         go/image/png/reader.go \
1409         go/image/png/writer.go
1411 go_index_suffixarray_files = \
1412         go/index/suffixarray/qsufsort.go \
1413         go/index/suffixarray/suffixarray.go
1415 go_io_ioutil_files = \
1416         go/io/ioutil/ioutil.go \
1417         go/io/ioutil/tempfile.go
1419 go_math_big_files = \
1420         go/math/big/arith.go \
1421         go/math/big/int.go \
1422         go/math/big/nat.go \
1423         go/math/big/rat.go
1424 go_math_cmplx_files = \
1425         go/math/cmplx/abs.go \
1426         go/math/cmplx/asin.go \
1427         go/math/cmplx/conj.go \
1428         go/math/cmplx/exp.go \
1429         go/math/cmplx/isinf.go \
1430         go/math/cmplx/isnan.go \
1431         go/math/cmplx/log.go \
1432         go/math/cmplx/phase.go \
1433         go/math/cmplx/polar.go \
1434         go/math/cmplx/pow.go \
1435         go/math/cmplx/rect.go \
1436         go/math/cmplx/sin.go \
1437         go/math/cmplx/sqrt.go \
1438         go/math/cmplx/tan.go
1439 go_math_rand_files = \
1440         go/math/rand/exp.go \
1441         go/math/rand/normal.go \
1442         go/math/rand/rand.go \
1443         go/math/rand/rng.go \
1444         go/math/rand/zipf.go
1446 go_mime_multipart_files = \
1447         go/mime/multipart/formdata.go \
1448         go/mime/multipart/multipart.go \
1449         go/mime/multipart/quotedprintable.go \
1450         go/mime/multipart/writer.go
1452 go_net_http_files = \
1453         go/net/http/client.go \
1454         go/net/http/cookie.go \
1455         go/net/http/filetransport.go \
1456         go/net/http/fs.go \
1457         go/net/http/header.go \
1458         go/net/http/jar.go \
1459         go/net/http/lex.go \
1460         go/net/http/request.go \
1461         go/net/http/response.go \
1462         go/net/http/server.go \
1463         go/net/http/sniff.go \
1464         go/net/http/status.go \
1465         go/net/http/transfer.go \
1466         go/net/http/transport.go
1467 go_net_mail_files = \
1468         go/net/mail/message.go
1469 go_net_smtp_files = \
1470         go/net/smtp/auth.go \
1471         go/net/smtp/smtp.go
1472 go_net_textproto_files = \
1473         go/net/textproto/header.go \
1474         go/net/textproto/pipeline.go \
1475         go/net/textproto/reader.go \
1476         go/net/textproto/textproto.go \
1477         go/net/textproto/writer.go
1478 go_net_url_files = \
1479         go/net/url/url.go
1481 go_net_http_cgi_files = \
1482         go/net/http/cgi/child.go \
1483         go/net/http/cgi/host.go
1484 go_net_http_cookiejar_files = \
1485         go/net/http/cookiejar/jar.go \
1486         go/net/http/cookiejar/punycode.go
1487 go_net_http_fcgi_files = \
1488         go/net/http/fcgi/child.go \
1489         go/net/http/fcgi/fcgi.go
1490 go_net_http_httptest_files = \
1491         go/net/http/httptest/recorder.go \
1492         go/net/http/httptest/server.go
1493 go_net_http_pprof_files = \
1494         go/net/http/pprof/pprof.go
1495 go_net_http_httputil_files = \
1496         go/net/http/httputil/dump.go \
1497         go/net/http/httputil/httputil.go \
1498         go/net/http/httputil/persist.go \
1499         go/net/http/httputil/reverseproxy.go
1500 go_net_http_internal_files = \
1501         go/net/http/internal/chunked.go
1503 go_old_regexp_files = \
1504         go/old/regexp/regexp.go
1505 go_old_template_files = \
1506         go/old/template/doc.go \
1507         go/old/template/execute.go \
1508         go/old/template/format.go \
1509         go/old/template/parse.go
1511 go_os_exec_files = \
1512         go/os/exec/exec.go \
1513         go/os/exec/lp_unix.go
1515 go_os_signal_files = \
1516         go/os/signal/signal.go \
1517         go/os/signal/signal_unix.go
1519 if LIBGO_IS_SOLARIS
1520 os_user_decls_file = go/os/user/decls_solaris.go
1521 else
1522 os_user_decls_file = go/os/user/decls_unix.go
1523 endif
1525 go_os_user_files = \
1526         go/os/user/lookup.go \
1527         go/os/user/lookup_unix.go \
1528         go/os/user/user.go \
1529         $(os_user_decls_file)
1531 go_path_filepath_files = \
1532         go/path/filepath/match.go \
1533         go/path/filepath/path.go \
1534         go/path/filepath/path_unix.go \
1535         go/path/filepath/symlink.go \
1536         go/path/filepath/symlink_unix.go
1538 go_regexp_syntax_files = \
1539         go/regexp/syntax/compile.go \
1540         go/regexp/syntax/doc.go \
1541         go/regexp/syntax/parse.go \
1542         go/regexp/syntax/perl_groups.go \
1543         go/regexp/syntax/prog.go \
1544         go/regexp/syntax/regexp.go \
1545         go/regexp/syntax/simplify.go
1547 go_net_rpc_jsonrpc_files = \
1548         go/net/rpc/jsonrpc/client.go \
1549         go/net/rpc/jsonrpc/server.go
1551 go_runtime_debug_files = \
1552         go/runtime/debug/garbage.go \
1553         go/runtime/debug/stack.go
1554 go_runtime_pprof_files = \
1555         go/runtime/pprof/pprof.go
1557 go_text_tabwriter_files = \
1558         go/text/tabwriter/tabwriter.go
1559 go_text_template_files = \
1560         go/text/template/doc.go \
1561         go/text/template/exec.go \
1562         go/text/template/funcs.go \
1563         go/text/template/helper.go \
1564         go/text/template/template.go
1565 go_text_template_parse_files = \
1566         go/text/template/parse/lex.go \
1567         go/text/template/parse/node.go \
1568         go/text/template/parse/parse.go
1570 go_sync_atomic_files = \
1571         go/sync/atomic/doc.go \
1572         go/sync/atomic/value.go
1573 go_sync_atomic_c_files = \
1574         go/sync/atomic/atomic.c
1576 go_testing_iotest_files = \
1577         go/testing/iotest/logger.go \
1578         go/testing/iotest/reader.go \
1579         go/testing/iotest/writer.go
1580 go_testing_quick_files = \
1581         go/testing/quick/quick.go
1583 go_text_scanner_files = \
1584         go/text/scanner/scanner.go
1586 go_unicode_utf16_files = \
1587         go/unicode/utf16/utf16.go
1588 go_unicode_utf8_files = \
1589         go/unicode/utf8/utf8.go
1591 # Define Syscall and Syscall6.
1592 if LIBGO_IS_RTEMS
1593 syscall_syscall_file = go/syscall/syscall_stubs.go
1594 else
1595 syscall_syscall_file = go/syscall/syscall_unix.go
1596 endif
1598 # Define ForkExec and Exec.
1599 if LIBGO_IS_RTEMS
1600 syscall_exec_file = go/syscall/exec_stubs.go
1601 syscall_exec_os_file =
1602 else
1603 if LIBGO_IS_LINUX
1604 syscall_exec_file = go/syscall/exec_unix.go
1605 syscall_exec_os_file = go/syscall/exec_linux.go
1606 else
1607 syscall_exec_file = go/syscall/exec_unix.go
1608 syscall_exec_os_file = go/syscall/exec_bsd.go
1609 endif
1610 endif
1612 # Define Wait4.
1613 if LIBGO_IS_RTEMS
1614 syscall_wait_file =
1615 else
1616 if HAVE_WAIT4
1617 syscall_wait_file = go/syscall/libcall_wait4.go
1618 else
1619 syscall_wait_file = go/syscall/libcall_waitpid.go
1620 endif
1621 endif
1623 # Support for pulling apart wait status.
1624 if LIBGO_IS_RTEMS
1625 syscall_wait_c_file =
1626 else
1627 syscall_wait_c_file = go/syscall/wait.c
1628 endif
1630 # Define Sleep.
1631 if LIBGO_IS_RTEMS
1632 syscall_sleep_file = go/syscall/sleep_rtems.go
1633 else
1634 syscall_sleep_file = go/syscall/sleep_select.go
1635 endif
1637 # Define Errstr.
1638 if LIBGO_IS_LINUX
1639 syscall_errstr_file = go/syscall/errstr_linux.go
1640 else
1641 if LIBGO_IS_RTEMS
1642 syscall_errstr_file = go/syscall/errstr_linux.go
1643 else
1644 if HAVE_STRERROR_R
1645 syscall_errstr_file = go/syscall/errstr.go
1646 else
1647 syscall_errstr_file = go/syscall/errstr_nor.go
1648 endif
1649 endif
1650 endif
1652 # Declare libc functions that vary for largefile systems.
1653 if LIBGO_IS_LINUX
1654 # Always use lseek64 on GNU/Linux.
1655 syscall_size_file = go/syscall/libcall_posix_largefile.go
1656 else # !LIBGO_IS_LINUX
1657 if LIBGO_IS_SOLARIS
1658 if LIBGO_IS_386
1659 # Use lseek64 on 32-bit Solaris/x86.
1660 syscall_size_file = go/syscall/libcall_posix_largefile.go
1661 else # !LIBGO_IS_386
1662 if LIBGO_IS_SPARC
1663 # Use lseek64 on 32-bit Solaris/SPARC.
1664 syscall_size_file = go/syscall/libcall_posix_largefile.go
1665 else # !LIBGO_IS_386 && !LIBGO_IS_SPARC
1666 # Use lseek on 64-bit Solaris.
1667 syscall_size_file = go/syscall/libcall_posix_regfile.go
1668 endif # !LIBGO_IS_386 && !LIBGO_IS_SPARC
1669 endif # !LIBGO_IS_SOLARIS
1670 else # !LIBGO_IS_LINUX && !LIBGO_IS_SOLARIS
1671 # Use lseek by default.
1672 syscall_size_file = go/syscall/libcall_posix_regfile.go
1673 endif # !LIBGO_IS_SOLARIS
1674 endif # !LIBGO_IS_LINUX
1676 # Define socket sizes and types.
1677 if LIBGO_IS_LINUX
1678 syscall_socket_file = go/syscall/socket_linux.go epoll.go
1679 else
1680 if LIBGO_IS_SOLARIS
1681 syscall_socket_file = go/syscall/socket_solaris.go
1682 else
1683 if LIBGO_IS_IRIX
1684 syscall_socket_file = go/syscall/socket_irix.go
1685 else
1686 syscall_socket_file = go/syscall/socket_bsd.go
1687 endif
1688 endif
1689 endif
1691 # Define socket functions.
1692 if LIBGO_IS_SOLARIS
1693 syscall_socket_os_file = go/syscall/socket_xnet.go
1694 else
1695 syscall_socket_os_file = go/syscall/socket_posix.go
1696 endif
1698 # Support for uname.
1699 if LIBGO_IS_SOLARIS
1700 if LIBGO_IS_386
1701 # 32-bit Solaris 2/x86 needs _nuname, handled in libcall_solaris_386.go.
1702 syscall_uname_file =
1703 else # !LIBGO_IS_386 && LIBGO_IS_SOLARIS
1704 syscall_uname_file = go/syscall/libcall_uname.go
1705 endif
1706 else # !LIBGO_IS_SOLARIS
1707 syscall_uname_file = go/syscall/libcall_uname.go
1708 endif
1710 # GNU/Linux specific socket control messages.
1711 if LIBGO_IS_LINUX
1712 syscall_sockcmsg_file = go/syscall/sockcmsg_linux.go
1713 else
1714 syscall_sockcmsg_file =
1715 endif
1717 # Support for netlink sockets and messages.
1718 if LIBGO_IS_LINUX
1719 syscall_netlink_file = go/syscall/netlink_linux.go
1720 else
1721 syscall_netlink_file =
1722 endif
1724 # GNU/Linux specific socket filters.
1725 if LIBGO_IS_LINUX
1726 syscall_lsf_file = go/syscall/lsf_linux.go
1727 else
1728 syscall_lsf_file =
1729 endif
1731 # GNU/Linux specific utimesnano support.
1732 if LIBGO_IS_LINUX
1733 syscall_utimesnano_file = go/syscall/libcall_linux_utimesnano.go
1734 else
1735 syscall_utimesnano_file = go/syscall/libcall_posix_utimesnano.go
1736 endif
1738 # Test files.
1739 if LIBGO_IS_LINUX
1740 syscall_creds_test_file = go/syscall/creds_test.go
1741 else
1742 syscall_creds_test_file =
1743 endif
1745 go_base_syscall_files = \
1746         go/syscall/env_unix.go \
1747         go/syscall/syscall_errno.go \
1748         go/syscall/libcall_support.go \
1749         go/syscall/libcall_posix.go \
1750         go/syscall/race0.go \
1751         go/syscall/socket.go \
1752         go/syscall/sockcmsg_unix.go \
1753         go/syscall/str.go \
1754         go/syscall/syscall.go \
1755         $(syscall_sockcmsg_file) \
1756         $(syscall_syscall_file) \
1757         $(syscall_exec_file) \
1758         $(syscall_exec_os_file) \
1759         $(syscall_wait_file) \
1760         $(syscall_sleep_file) \
1761         $(syscall_errstr_file) \
1762         $(syscall_size_file) \
1763         $(syscall_socket_file) \
1764         $(syscall_socket_os_file) \
1765         $(syscall_uname_file) \
1766         $(syscall_netlink_file) \
1767         $(syscall_lsf_file) \
1768         $(syscall_utimesnano_file) \
1769         $(GO_LIBCALL_OS_FILE) \
1770         $(GO_LIBCALL_OS_ARCH_FILE) \
1771         $(GO_SYSCALL_OS_FILE) \
1772         $(GO_SYSCALL_OS_ARCH_FILE)
1774 go_syscall_files = \
1775         $(go_base_syscall_files) \
1776         libcalls.go \
1777         sysinfo.go \
1778         syscall_arch.go
1779 go_syscall_c_files = \
1780         go/syscall/errno.c \
1781         go/syscall/signame.c \
1782         $(syscall_wait_c_file)
1784 go_syscall_test_files = \
1785         $(syscall_creds_test_file) \
1786         go/syscall/export_test.go \
1787         go/syscall/mmap_unix_test.go \
1788         go/syscall/syscall_test.go \
1789         go/syscall/syscall_unix_test.go
1791 if LIBGO_IS_LINUX
1792 internal_syscall_getrandom_file = go/internal/syscall/getrandom_linux.go
1793 else
1794 internal_syscall_getrandom_file =
1795 endif
1797 go_internal_syscall_files = \
1798         go/internal/syscall/dummy.go \
1799         $(internal_syscall_getrandom_file)
1801 libcalls.go: s-libcalls; @true
1802 s-libcalls: libcalls-list go/syscall/mksyscall.awk $(go_base_syscall_files)
1803         rm -f libcalls.go.tmp
1804         files=`echo $^ | sed -e 's/libcalls-list//' -e 's|[^ ]*go/syscall/mksyscall.awk||'`; \
1805         $(AWK) -f $(srcdir)/go/syscall/mksyscall.awk $${files} > libcalls.go.tmp
1806         $(SHELL) $(srcdir)/mvifdiff.sh libcalls.go.tmp libcalls.go
1807         $(STAMP) $@
1809 libcalls-list: s-libcalls-list; @true
1810 s-libcalls-list: Makefile
1811         rm -f libcalls-list.tmp
1812         echo $(go_base_syscall_files) > libcalls-list.tmp
1813         $(SHELL) $(srcdir)/mvifdiff.sh libcalls-list.tmp libcalls-list
1814         $(STAMP) $@
1816 syscall_arch.go: s-syscall_arch; @true
1817 s-syscall_arch: Makefile
1818         rm -f syscall_arch.go.tmp
1819         echo "package syscall" > syscall_arch.go.tmp
1820         echo 'const ARCH = "'$(GOARCH)'"' >> syscall_arch.go.tmp
1821         echo 'const OS = "'$(GOOS)'"' >> syscall_arch.go.tmp
1822         $(SHELL) $(srcdir)/mvifdiff.sh syscall_arch.go.tmp syscall_arch.go
1823         $(STAMP) $@
1825 sysinfo.go: s-sysinfo; @true
1826 s-sysinfo: $(srcdir)/mksysinfo.sh config.h
1827         CC="$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(OSCFLAGS) -O" $(SHELL) $(srcdir)/mksysinfo.sh
1828         $(SHELL) $(srcdir)/mvifdiff.sh tmp-sysinfo.go sysinfo.go
1829         $(STAMP) $@
1831 # The epoll struct has an embedded union and is packed on x86_64,
1832 # which is too complicated for mksysinfo.sh.  We find the offset of
1833 # the only field we care about in configure.ac, and generate the
1834 # struct here.
1835 epoll.go: s-epoll; @true
1836 s-epoll: Makefile
1837         rm -f epoll.go.tmp
1838         echo 'package syscall' > epoll.go.tmp
1839         echo 'type EpollEvent struct {' >> epoll.go.tmp
1840         echo '  Events uint32' >> epoll.go.tmp
1841         case "$(SIZEOF_STRUCT_EPOLL_EVENT),$(STRUCT_EPOLL_EVENT_FD_OFFSET)" in \
1842         0,0) echo 1>&2 "*** struct epoll_event data.fd offset unknown"; \
1843            exit 1; ;; \
1844         8,4) echo '     Fd int32' >> epoll.go.tmp; ;; \
1845         12,4) echo '    Fd int32' >> epoll.go.tmp; \
1846            echo '       Pad [4]byte' >> epoll.go.tmp; ;; \
1847         12,8) echo '    Pad [4]byte' >> epoll.go.tmp; \
1848            echo '       Fd int32' >> epoll.go.tmp; ;; \
1849         16,8) echo '    Pad [4]byte' >> epoll.go.tmp; \
1850            echo '       Fd int32' >> epoll.go.tmp; \
1851            echo '       Pad2 [4]byte' >> epoll.go.tmp; ;; \
1852         *) echo 1>&2 "*** struct epoll_event unsupported"; \
1853            exit 1; ;; \
1854         esac
1855         echo '}' >> epoll.go.tmp
1856         $(SHELL) $(srcdir)/mvifdiff.sh epoll.go.tmp epoll.go
1857         $(STAMP) $@
1859 if LIBGO_IS_LINUX
1860 # os_lib_inotify_lo = os/inotify.lo
1861 os_lib_inotify_lo =
1862 else
1863 os_lib_inotify_lo =
1864 endif
1866 libgo_go_objs = \
1867         bufio.lo \
1868         bytes.lo \
1869         bytes/index.lo \
1870         crypto.lo \
1871         encoding.lo \
1872         errors.lo \
1873         expvar.lo \
1874         flag.lo \
1875         fmt.lo \
1876         hash.lo \
1877         html.lo \
1878         image.lo \
1879         io.lo \
1880         log.lo \
1881         math.lo \
1882         mime.lo \
1883         net.lo \
1884         os.lo \
1885         path.lo \
1886         reflect-go.lo \
1887         reflect/makefunc_ffi_c.lo \
1888         regexp.lo \
1889         runtime-go.lo \
1890         sort.lo \
1891         strconv.lo \
1892         strings.lo \
1893         strings/index.lo \
1894         sync.lo \
1895         syscall.lo \
1896         syscall/errno.lo \
1897         syscall/signame.lo \
1898         syscall/wait.lo \
1899         testing.lo \
1900         time-go.lo \
1901         unicode.lo \
1902         archive/tar.lo \
1903         archive/zip.lo \
1904         compress/bzip2.lo \
1905         compress/flate.lo \
1906         compress/gzip.lo \
1907         compress/lzw.lo \
1908         compress/zlib.lo \
1909         container/heap.lo \
1910         container/list.lo \
1911         container/ring.lo \
1912         crypto/aes.lo \
1913         crypto/cipher.lo \
1914         crypto/des.lo \
1915         crypto/dsa.lo \
1916         crypto/ecdsa.lo \
1917         crypto/elliptic.lo \
1918         crypto/hmac.lo \
1919         crypto/md5.lo \
1920         crypto/rand.lo \
1921         crypto/rc4.lo \
1922         crypto/rsa.lo \
1923         crypto/sha1.lo \
1924         crypto/sha256.lo \
1925         crypto/sha512.lo \
1926         crypto/subtle.lo \
1927         crypto/tls.lo \
1928         crypto/x509.lo \
1929         crypto/x509/pkix.lo \
1930         database/sql.lo \
1931         database/sql/driver.lo \
1932         debug/dwarf.lo \
1933         debug/elf.lo \
1934         debug/gosym.lo \
1935         debug/macho.lo \
1936         debug/pe.lo \
1937         debug/plan9obj.lo \
1938         encoding/ascii85.lo \
1939         encoding/asn1.lo \
1940         encoding/base32.lo \
1941         encoding/base64.lo \
1942         encoding/binary.lo \
1943         encoding/csv.lo \
1944         encoding/gob.lo \
1945         encoding/hex.lo \
1946         encoding/json.lo \
1947         encoding/pem.lo \
1948         encoding/xml.lo \
1949         exp/proxy.lo \
1950         exp/terminal.lo \
1951         html/template.lo \
1952         go/ast.lo \
1953         go/build.lo \
1954         go/doc.lo \
1955         go/format.lo \
1956         go/parser.lo \
1957         go/printer.lo \
1958         go/scanner.lo \
1959         go/token.lo \
1960         hash/adler32.lo \
1961         hash/crc32.lo \
1962         hash/crc64.lo \
1963         hash/fnv.lo \
1964         net/http/cgi.lo \
1965         net/http/cookiejar.lo \
1966         net/http/fcgi.lo \
1967         net/http/httptest.lo \
1968         net/http/httputil.lo \
1969         net/http/internal.lo \
1970         net/http/pprof.lo \
1971         image/color.lo \
1972         image/color/palette.lo \
1973         image/draw.lo \
1974         image/gif.lo \
1975         image/jpeg.lo \
1976         image/png.lo \
1977         index/suffixarray.lo \
1978         internal/syscall.lo \
1979         io/ioutil.lo \
1980         log/syslog.lo \
1981         log/syslog/syslog_c.lo \
1982         math/big.lo \
1983         math/cmplx.lo \
1984         math/rand.lo \
1985         mime/multipart.lo \
1986         net/http.lo \
1987         net/mail.lo \
1988         net/rpc.lo \
1989         net/smtp.lo \
1990         net/textproto.lo \
1991         net/url.lo \
1992         old/regexp.lo \
1993         old/template.lo \
1994         os/exec.lo \
1995         $(os_lib_inotify_lo) \
1996         os/signal.lo \
1997         os/user.lo \
1998         path/filepath.lo \
1999         regexp/syntax.lo \
2000         net/rpc/jsonrpc.lo \
2001         runtime/debug.lo \
2002         runtime/pprof.lo \
2003         sync/atomic.lo \
2004         sync/atomic_c.lo \
2005         text/scanner.lo \
2006         text/tabwriter.lo \
2007         text/template.lo \
2008         text/template/parse.lo \
2009         testing/iotest.lo \
2010         testing/quick.lo \
2011         unicode/utf16.lo \
2012         unicode/utf8.lo
2014 libgo_ldflags = \
2015         -version-info $(libtool_VERSION) $(PTHREAD_CFLAGS) $(AM_LDFLAGS)
2017 libgo_libadd = \
2018         $(libgo_go_objs) ../libbacktrace/libbacktrace.la \
2019         $(LIBATOMIC) $(LIBFFI) $(PTHREAD_LIBS) $(MATH_LIBS) $(NET_LIBS)
2021 libgo_la_SOURCES = $(runtime_files)
2022 libgo_la_LDFLAGS = $(libgo_ldflags)
2023 libgo_la_LIBADD = $(libgo_libadd)
2025 libgo_llgo_la_SOURCES = $(runtime_files)
2026 libgo_llgo_la_LDFLAGS = $(libgo_ldflags)
2027 libgo_llgo_la_LIBADD = $(libgo_libadd)
2029 libgobegin_a_SOURCES = \
2030         runtime/go-main.c
2032 libgobegin_llgo_a_SOURCES = \
2033         runtime/go-main.c
2035 # Use -fPIC for libgobegin so that it can be put in a PIE.
2036 libgobegin_a_CFLAGS = $(AM_CFLAGS) -fPIC
2037 libgobegin_llgo_a_CFLAGS = $(AM_CFLAGS) -fPIC
2039 libnetgo_a_SOURCES = $(go_netgo_files)
2040 libnetgo_a_LIBADD = netgo.o
2042 LTLDFLAGS = $(shell $(SHELL) $(top_srcdir)/../libtool-ldflags $(LDFLAGS))
2044 GOCFLAGS = $(CFLAGS)
2045 AM_GOCFLAGS = $(STRINGOPS_FLAG)
2046 GOCOMPILE = $(GOC) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_GOCFLAGS) $(GOCFLAGS)
2048 LTGOCOMPILE = $(LIBTOOL) --tag GO --mode=compile $(GOC) $(INCLUDES) \
2049         $(AM_GOCFLAGS) $(GOCFLAGS)
2051 GOLINK = $(LIBTOOL) --tag GO --mode-link $(GOC) \
2052         $(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_GOCFLAGS) $(LTLDFLAGS) -o $@
2054 # Build the dependencies for a Go package.
2055 BUILDDEPS = \
2056         $(MKDIR_P) $(@D); \
2057         $(SHELL) $(srcdir)/godeps.sh `echo $@ | sed -e 's/.dep$$//'` $^ > $@.tmp; \
2058         mv -f $@.tmp $@
2060 # Build the .go files for a package, generating a .lo file.
2061 BUILDPACKAGE = \
2062         $(MKDIR_P) $(@D); \
2063         files=`echo $^ | sed -e 's/[^ ]*\.gox//g'`; \
2064         $(LTGOCOMPILE) -I . -c -fgo-pkgpath=`echo $@ | sed -e 's/.lo$$//' -e 's/-go$$//'` -o $@ $$files
2066 # Build netgo.o.
2067 BUILDNETGO = \
2068         $(MKDIR_P) $(@D); \
2069         files=`echo $^ | sed -e 's/[^ ]*\.gox//g'`; \
2070         $(GOCOMPILE) -I . -c -fgo-pkgpath=net -o $@ $$files
2072 GOTESTFLAGS =
2073 GOBENCH = 
2075 # Check a package.
2076 CHECK = \
2077         GC="$(GOC) $(GOCFLAGS) $($(subst /,_,$@)_GOCFLAGS) -L `${PWD_COMMAND}` -L `${PWD_COMMAND}`/.libs"; \
2078         export GC; \
2079         GOLIBS="$(MATH_LIBS) $(NET_LIBS) $(LIBS)"; \
2080         export GOLIBS; \
2081         RUNTESTFLAGS="$(RUNTESTFLAGS)"; \
2082         export RUNTESTFLAGS; \
2083         MAKE="$(MAKE)"; \
2084         export MAKE; \
2085         libgccdir=`${GOC} -print-libgcc-file-name | sed -e 's|/[^/]*$$||'`; \
2086         LD_LIBRARY_PATH="`${PWD_COMMAND}`/.libs:$${libgccdir}:${LD_LIBRARY_PATH}"; \
2087         LD_LIBRARY_PATH=`echo $${LD_LIBRARY_PATH} | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; \
2088         export LD_LIBRARY_PATH; \
2089         $(MKDIR_P) $(@D); \
2090         rm -f $@-testsum $@-testlog; \
2091         if test "$(USE_DEJAGNU)" = "yes"; then \
2092           $(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); \
2093         elif test "$(GOBENCH)" != ""; then \
2094           $(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); \
2095         else \
2096           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 \
2097             echo "PASS: $(@D)" >> $@-testlog; \
2098             echo "PASS: $(@D)"; \
2099             echo "PASS: $(@D)" > $@-testsum; \
2100           else \
2101             echo "FAIL: $(@D)" >> $@-testlog; \
2102             cat $@-testlog; \
2103             echo "FAIL: $(@D)" > $@-testsum; \
2104             exit 1; \
2105           fi; \
2106         fi
2108 # Build all packages before checking any.
2109 CHECK_DEPS = \
2110         $(toolexeclibgo_DATA) \
2111         $(toolexeclibgoarchive_DATA) \
2112         $(toolexeclibgocompress_DATA) \
2113         $(toolexeclibgocontainer_DATA) \
2114         $(toolexeclibgocrypto_DATA) \
2115         $(toolexeclibgodebug_DATA) \
2116         $(toolexeclibgoencoding_DATA) \
2117         $(toolexeclibgoexp_DATA) \
2118         $(toolexeclibgogo_DATA) \
2119         $(toolexeclibgohash_DATA) \
2120         $(toolexeclibgoimage_DATA) \
2121         $(toolexeclibgoindex_DATA) \
2122         $(toolexeclibgoio_DATA) \
2123         $(toolexeclibgolog_DATA) \
2124         $(toolexeclibgomath_DATA) \
2125         $(toolexeclibgomime_DATA) \
2126         $(toolexeclibgonet_DATA) \
2127         $(toolexeclibgonethttp_DATA) \
2128         $(toolexeclibgoos_DATA) \
2129         $(toolexeclibgopath_DATA) \
2130         $(toolexeclibgorpc_DATA) \
2131         $(toolexeclibgoruntime_DATA) \
2132         $(toolexeclibgosync_DATA) \
2133         $(toolexeclibgotesting_DATA) \
2134         $(toolexeclibgotext_DATA) \
2135         $(toolexeclibgotexttemplate_DATA) \
2136         $(toolexeclibgounicode_DATA)
2138 if GOC_IS_LLGO
2139 CHECK_DEPS += libgo-llgo.la libgobegin-llgo.a
2140 else
2141 CHECK_DEPS += libgo.la libgobegin.a
2142 endif
2144 @go_include@ bufio.lo.dep
2145 bufio.lo.dep: $(go_bufio_files)
2146         $(BUILDDEPS)
2147 bufio.lo: $(go_bufio_files)
2148         $(BUILDPACKAGE)
2149 bufio/check: $(CHECK_DEPS)
2150         @$(CHECK)
2151 .PHONY: bufio/check
2153 @go_include@ bytes.lo.dep
2154 bytes.lo.dep: $(go_bytes_files)
2155         $(BUILDDEPS)
2156 bytes.lo: $(go_bytes_files)
2157         $(BUILDPACKAGE)
2158 bytes/index.lo: $(go_bytes_c_files)
2159         @$(MKDIR_P) bytes
2160         $(LTCOMPILE) -c -o bytes/index.lo $(srcdir)/go/bytes/indexbyte.c
2161 bytes/check: $(CHECK_DEPS)
2162         @$(CHECK)
2163 .PHONY: bytes/check
2165 @go_include@ crypto.lo.dep
2166 crypto.lo.dep: $(go_crypto_files)
2167         $(BUILDDEPS)
2168 crypto.lo: $(go_crypto_files)
2169         $(BUILDPACKAGE)
2170 crypto/check: $(CHECK_DEPS)
2171         @$(CHECK)
2172 .PHONY: crypto/check
2174 @go_include@ encoding.lo.dep
2175 encoding.lo.dep: $(go_encoding_files)
2176         $(BUILDDEPS)
2177 encoding.lo: $(go_encoding_files)
2178         $(BUILDPACKAGE)
2179 encoding/check: $(CHECK_DEPS)
2180         @$(CHECK)
2181 .PHONY: encoding/check
2183 @go_include@ errors.lo.dep
2184 errors.lo.dep: $(go_errors_files)
2185         $(BUILDDEPS)
2186 errors.lo: $(go_errors_files)
2187         $(BUILDPACKAGE)
2188 errors/check: $(CHECK_DEPS)
2189         @$(CHECK)
2190 .PHONY: errors/check
2192 @go_include@ expvar.lo.dep
2193 expvar.lo.dep: $(go_expvar_files)
2194         $(BUILDDEPS)
2195 expvar.lo: $(go_expvar_files)
2196         $(BUILDPACKAGE)
2197 expvar/check: $(CHECK_DEPS)
2198         @$(CHECK)
2199 .PHONY: expvar/check
2201 @go_include@ flag.lo.dep
2202 flag.lo.dep: $(go_flag_files)
2203         $(BUILDDEPS)
2204 flag.lo: $(go_flag_files)
2205         $(BUILDPACKAGE)
2206 flag/check: $(CHECK_DEPS)
2207         @$(CHECK)
2208 .PHONY: flag/check
2210 @go_include@ fmt.lo.dep
2211 fmt.lo.dep: $(go_fmt_files)
2212         $(BUILDDEPS)
2213 fmt.lo: $(go_fmt_files)
2214         $(BUILDPACKAGE)
2215 fmt/check: $(CHECK_DEPS)
2216         @$(CHECK)
2217 .PHONY: fmt/check
2219 @go_include@ hash.lo.dep
2220 hash.lo.dep: $(go_hash_files)
2221         $(BUILDDEPS)
2222 hash.lo: $(go_hash_files)
2223         $(BUILDPACKAGE)
2224 hash/check: $(CHECK_DEPS)
2225         @$(CHECK)
2226 .PHONY: hash/check
2228 @go_include@ html.lo.dep
2229 html.lo.dep: $(go_html_files)
2230         $(BUILDDEPS)
2231 html.lo: $(go_html_files)
2232         $(BUILDPACKAGE)
2233 html/check: $(CHECK_DEPS)
2234         @$(CHECK)
2235 .PHONY: html/check
2237 @go_include@ image.lo.dep
2238 image.lo.dep: $(go_image_files)
2239         $(BUILDDEPS)
2240 image.lo: $(go_image_files)
2241         $(BUILDPACKAGE)
2242 image/check: $(CHECK_DEPS)
2243         @$(CHECK)
2244 .PHONY: image/check
2246 @go_include@ io.lo.dep
2247 io.lo.dep: $(go_io_files)
2248         $(BUILDDEPS)
2249 io.lo: $(go_io_files)
2250         $(BUILDPACKAGE)
2251 io/check: $(CHECK_DEPS)
2252         @$(CHECK)
2253 .PHONY: io/check
2255 @go_include@ log.lo.dep
2256 log.lo.dep: $(go_log_files)
2257         $(BUILDDEPS)
2258 log.lo: $(go_log_files)
2259         $(BUILDPACKAGE)
2260 log/check: $(CHECK_DEPS)
2261         @$(CHECK)
2262 .PHONY: log/check
2264 @go_include@ math.lo.dep
2265 math.lo.dep: $(go_math_files)
2266         $(BUILDDEPS)
2267 math.lo: $(go_math_files)
2268         $(MKDIR_P) $(@D)
2269         files=`echo $^ | sed -e 's/[^ ]*\.gox//g'`; \
2270         $(LTGOCOMPILE) $(MATH_FLAG) -I . -c -fgo-pkgpath=math -o $@ $$files
2271 math/check: $(CHECK_DEPS)
2272         @$(CHECK)
2273 .PHONY: math/check
2275 @go_include@ mime.lo.dep
2276 mime.lo.dep: $(go_mime_files)
2277         $(BUILDDEPS)
2278 mime.lo: $(go_mime_files)
2279         $(BUILDPACKAGE)
2280 mime/check: $(CHECK_DEPS)
2281         @$(CHECK)
2282 .PHONY: mime/check
2284 @go_include@ net.lo.dep
2285 net.lo.dep: $(go_net_files)
2286         $(BUILDDEPS)
2287 net.lo: $(go_net_files)
2288         $(BUILDPACKAGE)
2289 net/check: $(CHECK_DEPS)
2290         @$(CHECK)
2291 .PHONY: net/check
2293 @go_include@ netgo.o.dep
2294 netgo.o.dep: $(go_netgo_files)
2295         $(BUILDDEPS)
2296 netgo.o: $(go_netgo_files)
2297         $(BUILDNETGO)
2299 @go_include@ os.lo.dep
2300 os.lo.dep: $(go_os_files)
2301         $(BUILDDEPS)
2302 os.lo: $(go_os_files)
2303         $(BUILDPACKAGE)
2304 os/check: $(CHECK_DEPS)
2305         @$(CHECK)
2306 .PHONY: os/check
2308 @go_include@ path.lo.dep
2309 path.lo.dep: $(go_path_files)
2310         $(BUILDDEPS)
2311 path.lo: $(go_path_files)
2312         $(BUILDPACKAGE)
2313 path/check: $(CHECK_DEPS)
2314         @$(CHECK)
2315 .PHONY: path/check
2317 @go_include@ reflect-go.lo.dep
2318 reflect-go.lo.dep: $(go_reflect_files)
2319         $(BUILDDEPS)
2320 reflect-go.lo: $(go_reflect_files)
2321         $(BUILDPACKAGE)
2322 reflect/check: $(CHECK_DEPS)
2323         @$(CHECK)
2324 reflect/makefunc_ffi_c.lo: $(go_reflect_makefunc_c_file)
2325         @$(MKDIR_P) reflect
2326         $(LTCOMPILE) -c -o $@ $<
2327 .PHONY: reflect/check
2329 @go_include@ regexp.lo.dep
2330 regexp.lo.dep: $(go_regexp_files)
2331         $(BUILDDEPS)
2332 regexp.lo: $(go_regexp_files)
2333         $(BUILDPACKAGE)
2334 regexp/check: $(CHECK_DEPS)
2335         @$(CHECK)
2336 .PHONY: regexp/check
2338 @go_include@ runtime-go.lo.dep
2339 runtime-go.lo.dep: $(go_runtime_files)
2340         $(BUILDDEPS)
2341 runtime-go.lo: $(go_runtime_files)
2342         $(BUILDPACKAGE)
2343 runtime/check: $(CHECK_DEPS)
2344         @$(CHECK)
2345 .PHONY: runtime/check
2347 @go_include@ sort.lo.dep
2348 sort.lo.dep: $(go_sort_files)
2349         $(BUILDDEPS)
2350 sort.lo: $(go_sort_files)
2351         $(BUILDPACKAGE)
2352 sort/check: $(CHECK_DEPS)
2353         @$(CHECK)
2354 .PHONY: sort/check
2356 @go_include@ strconv.lo.dep
2357 strconv.lo.dep: $(go_strconv_files)
2358         $(BUILDDEPS)
2359 strconv.lo: $(go_strconv_files)
2360         $(BUILDPACKAGE)
2361 strconv/check: $(CHECK_DEPS)
2362         @$(CHECK)
2363 .PHONY: strconv/check
2365 @go_include@ strings.lo.dep
2366 strings.lo.dep: $(go_strings_files)
2367         $(BUILDDEPS)
2368 strings.lo: $(go_strings_files)
2369         $(BUILDPACKAGE)
2370 strings/index.lo: $(go_strings_c_files)
2371         @$(MKDIR_P) strings
2372         $(LTCOMPILE) -c -o strings/index.lo $(srcdir)/go/strings/indexbyte.c
2373 strings/check: $(CHECK_DEPS)
2374         @$(CHECK)
2375 .PHONY: strings/check
2377 @go_include@ sync.lo.dep
2378 sync.lo.dep: $(go_sync_files)
2379         $(BUILDDEPS)
2380 sync.lo: $(go_sync_files)
2381         $(BUILDPACKAGE)
2382 sync/check: $(CHECK_DEPS)
2383         @$(CHECK)
2384 .PHONY: sync/check
2386 @go_include@ testing.lo.dep
2387 testing.lo.dep: $(go_testing_files)
2388         $(BUILDDEPS)
2389 testing.lo: $(go_testing_files)
2390         $(BUILDPACKAGE)
2391 testing/check: $(CHECK_DEPS)
2392         @$(CHECK)
2393 .PHONY: testing/check
2395 @go_include@ time-go.lo.dep
2396 time-go.lo.dep: $(go_time_files)
2397         $(BUILDDEPS)
2398 time-go.lo: $(go_time_files)
2399         $(BUILDPACKAGE)
2400 time/check: $(CHECK_DEPS)
2401         @$(CHECK)
2402 .PHONY: time/check
2404 @go_include@ unicode.lo.dep
2405 unicode.lo.dep: $(go_unicode_files)
2406         $(BUILDDEPS)
2407 unicode.lo: $(go_unicode_files)
2408         $(BUILDPACKAGE)
2409 unicode/check: $(CHECK_DEPS)
2410         @$(CHECK)
2411 .PHONY: unicode/check
2413 @go_include@ archive/tar.lo.dep
2414 archive/tar.lo.dep: $(go_archive_tar_files)
2415         $(BUILDDEPS)
2416 archive/tar.lo: $(go_archive_tar_files)
2417         $(BUILDPACKAGE)
2418 archive/tar/check: $(CHECK_DEPS)
2419         @$(CHECK)
2420 .PHONY: archive/tar/check
2422 @go_include@ archive/zip.lo.dep
2423 archive/zip.lo.dep: $(go_archive_zip_files)
2424         $(BUILDDEPS)
2425 archive/zip.lo: $(go_archive_zip_files)
2426         $(BUILDPACKAGE)
2427 archive/zip/check: $(CHECK_DEPS)
2428         @$(CHECK)
2429 .PHONY: archive/zip/check
2431 @go_include@ compress/bzip2.lo.dep
2432 compress/bzip2.lo.dep: $(go_compress_bzip2_files)
2433         $(BUILDDEPS)
2434 compress/bzip2.lo: $(go_compress_bzip2_files)
2435         $(BUILDPACKAGE)
2436 compress/bzip2/check: $(CHECK_DEPS)
2437         @$(CHECK)
2438 .PHONY: compress/bzip2/check
2440 @go_include@ compress/flate.lo.dep
2441 compress/flate.lo.dep: $(go_compress_flate_files)
2442         $(BUILDDEPS)
2443 compress/flate.lo: $(go_compress_flate_files)
2444         $(BUILDPACKAGE)
2445 compress/flate/check: $(CHECK_DEPS)
2446         @$(CHECK)
2447 .PHONY: compress/flate/check
2449 @go_include@ compress/gzip.lo.dep
2450 compress/gzip.lo.dep: $(go_compress_gzip_files)
2451         $(BUILDDEPS)
2452 compress/gzip.lo: $(go_compress_gzip_files)
2453         $(BUILDPACKAGE)
2454 compress/gzip/check: $(CHECK_DEPS)
2455         @$(CHECK)
2456 .PHONY: compress/gzip/check
2458 @go_include@ compress/lzw.lo.dep
2459 compress/lzw.lo.dep: $(go_compress_lzw_files)
2460         $(BUILDDEPS)
2461 compress/lzw.lo: $(go_compress_lzw_files)
2462         $(BUILDPACKAGE)
2463 compress/lzw/check: $(CHECK_DEPS)
2464         @$(CHECK)
2465 .PHONY: compress/lzw/check
2467 @go_include@ compress/zlib.lo.dep
2468 compress/zlib.lo.dep: $(go_compress_zlib_files)
2469         $(BUILDDEPS)
2470 compress/zlib.lo: $(go_compress_zlib_files)
2471         $(BUILDPACKAGE)
2472 compress/zlib/check: $(CHECK_DEPS)
2473         @$(CHECK)
2474 .PHONY: compress/zlib/check
2476 @go_include@ container/heap.lo.dep
2477 container/heap.lo.dep: $(go_container_heap_files)
2478         $(BUILDDEPS)
2479 container/heap.lo: $(go_container_heap_files)
2480         $(BUILDPACKAGE)
2481 container/heap/check: $(CHECK_DEPS)
2482         @$(CHECK)
2483 .PHONY: container/heap/check
2485 @go_include@ container/list.lo.dep
2486 container/list.lo.dep: $(go_container_list_files)
2487         $(BUILDDEPS)
2488 container/list.lo: $(go_container_list_files)
2489         $(BUILDPACKAGE)
2490 container/list/check: $(CHECK_DEPS)
2491         @$(CHECK)
2492 .PHONY: container/list/check
2494 @go_include@ container/ring.lo.dep
2495 container/ring.lo.dep: $(go_container_ring_files)
2496         $(BUILDDEPS)
2497 container/ring.lo: $(go_container_ring_files)
2498         $(BUILDPACKAGE)
2499 container/ring/check: $(CHECK_DEPS)
2500         @$(CHECK)
2501 .PHONY: container/ring/check
2503 @go_include@ crypto/aes.lo.dep
2504 crypto/aes.lo.dep: $(go_crypto_aes_files)
2505         $(BUILDDEPS)
2506 crypto/aes.lo: $(go_crypto_aes_files)
2507         $(BUILDPACKAGE)
2508 crypto/aes/check: $(CHECK_DEPS)
2509         @$(CHECK)
2510 .PHONY: crypto/aes/check
2512 @go_include@ crypto/cipher.lo.dep
2513 crypto/cipher.lo.dep: $(go_crypto_cipher_files)
2514         $(BUILDDEPS)
2515 crypto/cipher.lo: $(go_crypto_cipher_files)
2516         $(BUILDPACKAGE)
2517 crypto/cipher/check: $(CHECK_DEPS)
2518         @$(CHECK)
2519 .PHONY: crypto/cipher/check
2521 @go_include@ crypto/des.lo.dep
2522 crypto/des.lo.dep: $(go_crypto_des_files)
2523         $(BUILDDEPS)
2524 crypto/des.lo: $(go_crypto_des_files)
2525         $(BUILDPACKAGE)
2526 crypto/des/check: $(CHECK_DEPS)
2527         @$(CHECK)
2528 .PHONY: crypto/des/check
2530 @go_include@ crypto/dsa.lo.dep
2531 crypto/dsa.lo.dep: $(go_crypto_dsa_files)
2532         $(BUILDDEPS)
2533 crypto/dsa.lo: $(go_crypto_dsa_files)
2534         $(BUILDPACKAGE)
2535 crypto/dsa/check: $(CHECK_DEPS)
2536         @$(CHECK)
2537 .PHONY: crypto/dsa/check
2539 @go_include@ crypto/ecdsa.lo.dep
2540 crypto/ecdsa.lo.dep: $(go_crypto_ecdsa_files)
2541         $(BUILDDEPS)
2542 crypto/ecdsa.lo: $(go_crypto_ecdsa_files)
2543         $(BUILDPACKAGE)
2544 crypto/ecdsa/check: $(CHECK_DEPS)
2545         @$(CHECK)
2546 .PHONY: crypto/ecdsa/check
2548 @go_include@ crypto/elliptic.lo.dep
2549 crypto/elliptic.lo.dep: $(go_crypto_elliptic_files)
2550         $(BUILDDEPS)
2551 crypto/elliptic.lo: $(go_crypto_elliptic_files)
2552         $(BUILDPACKAGE)
2553 crypto/elliptic/check: $(CHECK_DEPS)
2554         @$(CHECK)
2555 .PHONY: crypto/elliptic/check
2557 @go_include@ crypto/hmac.lo.dep
2558 crypto/hmac.lo.dep: $(go_crypto_hmac_files)
2559         $(BUILDDEPS)
2560 crypto/hmac.lo: $(go_crypto_hmac_files)
2561         $(BUILDPACKAGE)
2562 crypto/hmac/check: $(CHECK_DEPS)
2563         @$(CHECK)
2564 .PHONY: crypto/hmac/check
2566 @go_include@ crypto/md5.lo.dep
2567 crypto/md5.lo.dep: $(go_crypto_md5_files)
2568         $(BUILDDEPS)
2569 crypto/md5.lo: $(go_crypto_md5_files)
2570         $(BUILDPACKAGE)
2571 crypto/md5/check: $(CHECK_DEPS)
2572         @$(CHECK)
2573 .PHONY: crypto/md5/check
2575 @go_include@ crypto/rand.lo.dep
2576 crypto/rand.lo.dep: $(go_crypto_rand_files)
2577         $(BUILDDEPS)
2578 crypto/rand.lo: $(go_crypto_rand_files)
2579         $(BUILDPACKAGE)
2580 crypto/rand/check: $(CHECK_DEPS)
2581         @$(CHECK)
2582 .PHONY: crypto/rand/check
2584 @go_include@ crypto/rc4.lo.dep
2585 crypto/rc4.lo.dep: $(go_crypto_rc4_files)
2586         $(BUILDDEPS)
2587 crypto/rc4.lo: $(go_crypto_rc4_files)
2588         $(BUILDPACKAGE)
2589 crypto/rc4/check: $(CHECK_DEPS)
2590         @$(CHECK)
2591 .PHONY: crypto/rc4/check
2593 @go_include@ crypto/rsa.lo.dep
2594 crypto/rsa.lo.dep: $(go_crypto_rsa_files)
2595         $(BUILDDEPS)
2596 crypto/rsa.lo: $(go_crypto_rsa_files)
2597         $(BUILDPACKAGE)
2598 crypto/rsa/check: $(CHECK_DEPS)
2599         @$(CHECK)
2600 .PHONY: crypto/rsa/check
2602 @go_include@ crypto/sha1.lo.dep
2603 crypto/sha1.lo.dep: $(go_crypto_sha1_files)
2604         $(BUILDDEPS)
2605 crypto/sha1.lo: $(go_crypto_sha1_files)
2606         $(BUILDPACKAGE)
2607 crypto/sha1/check: $(CHECK_DEPS)
2608         @$(CHECK)
2609 .PHONY: crypto/sha1/check
2611 @go_include@ crypto/sha256.lo.dep
2612 crypto/sha256.lo.dep: $(go_crypto_sha256_files)
2613         $(BUILDDEPS)
2614 crypto/sha256.lo: $(go_crypto_sha256_files)
2615         $(BUILDPACKAGE)
2616 crypto/sha256/check: $(CHECK_DEPS)
2617         @$(CHECK)
2618 .PHONY: crypto/sha256/check
2620 @go_include@ crypto/sha512.lo.dep
2621 crypto/sha512.lo.dep: $(go_crypto_sha512_files)
2622         $(BUILDDEPS)
2623 crypto/sha512.lo: $(go_crypto_sha512_files)
2624         $(BUILDPACKAGE)
2625 crypto/sha512/check: $(CHECK_DEPS)
2626         @$(CHECK)
2627 .PHONY: crypto/sha512/check
2629 @go_include@ crypto/subtle.lo.dep
2630 crypto/subtle.lo.dep: $(go_crypto_subtle_files)
2631         $(BUILDDEPS)
2632 crypto/subtle.lo: $(go_crypto_subtle_files)
2633         $(BUILDPACKAGE)
2634 crypto/subtle/check: $(CHECK_DEPS)
2635         @$(CHECK)
2636 .PHONY: crypto/subtle/check
2638 @go_include@ crypto/tls.lo.dep
2639 crypto/tls.lo.dep: $(go_crypto_tls_files)
2640         $(BUILDDEPS)
2641 crypto/tls.lo: $(go_crypto_tls_files)
2642         $(BUILDPACKAGE)
2643 crypto/tls/check: $(CHECK_DEPS)
2644         @$(CHECK)
2645 .PHONY: crypto/tls/check
2647 @go_include@ crypto/x509.lo.dep
2648 crypto/x509.lo.dep: $(go_crypto_x509_files)
2649         $(BUILDDEPS)
2650 crypto/x509.lo: $(go_crypto_x509_files)
2651         $(BUILDPACKAGE)
2652 crypto/x509/check: $(CHECK_DEPS)
2653         @$(CHECK)
2654 .PHONY: crypto/x509/check
2656 @go_include@ crypto/x509/pkix.lo.dep
2657 crypto/x509/pkix.lo.dep: $(go_crypto_x509_pkix_files)
2658         $(BUILDDEPS)
2659 crypto/x509/pkix.lo: $(go_crypto_x509_pkix_files)
2660         $(BUILDPACKAGE)
2661 crypto/x509/pkix/check: $(CHECK_DEPS)
2662         @$(CHECK)
2663 .PHONY: crypto/x509/pkix/check
2665 @go_include@ database/sql.lo.dep
2666 database/sql.lo.dep: $(go_database_sql_files)
2667         $(BUILDDEPS)
2668 database/sql.lo: $(go_database_sql_files)
2669         $(BUILDPACKAGE)
2670 database/sql/check: $(CHECK_DEPS)
2671         @$(CHECK)
2672 .PHONY: database/sql/check
2674 @go_include@ database/sql/driver.lo.dep
2675 database/sql/driver.lo.dep: $(go_database_sql_driver_files)
2676         $(BUILDDEPS)
2677 database/sql/driver.lo: $(go_database_sql_driver_files)
2678         $(BUILDPACKAGE)
2679 database/sql/driver/check: $(CHECK_DEPS)
2680         @$(CHECK)
2681 .PHONY: database/sql/driver/check
2683 @go_include@ debug/dwarf.lo.dep
2684 debug/dwarf.lo.dep: $(go_debug_dwarf_files)
2685         $(BUILDDEPS)
2686 debug/dwarf.lo: $(go_debug_dwarf_files)
2687         $(BUILDPACKAGE)
2688 debug/dwarf/check: $(CHECK_DEPS)
2689         @$(CHECK)
2690 .PHONY: debug/dwarf/check
2692 @go_include@ debug/elf.lo.dep
2693 debug/elf.lo.dep: $(go_debug_elf_files)
2694         $(BUILDDEPS)
2695 debug/elf.lo: $(go_debug_elf_files)
2696         $(BUILDPACKAGE)
2697 debug/elf/check: $(CHECK_DEPS)
2698         @$(CHECK)
2699 .PHONY: debug/elf/check
2701 @go_include@ debug/gosym.lo.dep
2702 debug/gosym.lo.dep: $(go_debug_gosym_files)
2703         $(BUILDDEPS)
2704 debug/gosym.lo: $(go_debug_gosym_files)
2705         $(BUILDPACKAGE)
2706 debug/gosym/check: $(CHECK_DEPS)
2707         @$(CHECK)
2708 .PHONY: debug/gosym/check
2710 @go_include@ debug/macho.lo.dep
2711 debug/macho.lo.dep: $(go_debug_macho_files)
2712         $(BUILDDEPS)
2713 debug/macho.lo: $(go_debug_macho_files)
2714         $(BUILDPACKAGE)
2715 debug/macho/check: $(CHECK_DEPS)
2716         @$(CHECK)
2717 .PHONY: debug/macho/check
2719 @go_include@ debug/pe.lo.dep
2720 debug/pe.lo.dep: $(go_debug_pe_files)
2721         $(BUILDDEPS)
2722 debug/pe.lo: $(go_debug_pe_files)
2723         $(BUILDPACKAGE)
2724 debug/pe/check: $(CHECK_DEPS)
2725         @$(CHECK)
2726 .PHONY: debug/pe/check
2728 @go_include@ debug/plan9obj.lo.dep
2729 debug/plan9obj.lo.dep: $(go_debug_plan9obj_files)
2730         $(BUILDDEPS)
2731 debug/plan9obj.lo: $(go_debug_plan9obj_files)
2732         $(BUILDPACKAGE)
2733 debug/plan9obj/check: $(CHECK_DEPS)
2734         @$(CHECK)
2735 .PHONY: debug/plan9obj/check
2737 @go_include@ encoding/asn1.lo.dep
2738 encoding/asn1.lo.dep: $(go_encoding_asn1_files)
2739         $(BUILDDEPS)
2740 encoding/asn1.lo: $(go_encoding_asn1_files)
2741         $(BUILDPACKAGE)
2742 encoding/asn1/check: $(CHECK_DEPS)
2743         @$(CHECK)
2744 .PHONY: encoding/asn1/check
2746 @go_include@ encoding/ascii85.lo.dep
2747 encoding/ascii85.lo.dep: $(go_encoding_ascii85_files)
2748         $(BUILDDEPS)
2749 encoding/ascii85.lo: $(go_encoding_ascii85_files)
2750         $(BUILDPACKAGE)
2751 encoding/ascii85/check: $(CHECK_DEPS)
2752         @$(CHECK)
2753 .PHONY: encoding/ascii85/check
2755 @go_include@ encoding/base32.lo.dep
2756 encoding/base32.lo.dep: $(go_encoding_base32_files)
2757         $(BUILDDEPS)
2758 encoding/base32.lo: $(go_encoding_base32_files)
2759         $(BUILDPACKAGE)
2760 encoding/base32/check: $(CHECK_DEPS)
2761         @$(CHECK)
2762 .PHONY: encoding/base32/check
2764 @go_include@ encoding/base64.lo.dep
2765 encoding/base64.lo.dep: $(go_encoding_base64_files)
2766         $(BUILDDEPS)
2767 encoding/base64.lo: $(go_encoding_base64_files)
2768         $(BUILDPACKAGE)
2769 encoding/base64/check: $(CHECK_DEPS)
2770         @$(CHECK)
2771 .PHONY: encoding/base64/check
2773 @go_include@ encoding/binary.lo.dep
2774 encoding/binary.lo.dep: $(go_encoding_binary_files)
2775         $(BUILDDEPS)
2776 encoding/binary.lo: $(go_encoding_binary_files)
2777         $(BUILDPACKAGE)
2778 encoding/binary/check: $(CHECK_DEPS)
2779         @$(CHECK)
2780 .PHONY: encoding/binary/check
2782 @go_include@ encoding/csv.lo.dep
2783 encoding/csv.lo.dep: $(go_encoding_csv_files)
2784         $(BUILDDEPS)
2785 encoding/csv.lo: $(go_encoding_csv_files)
2786         $(BUILDPACKAGE)
2787 encoding/csv/check: $(CHECK_DEPS)
2788         @$(CHECK)
2789 .PHONY: encoding/csv/check
2791 @go_include@ encoding/gob.lo.dep
2792 encoding/gob.lo.dep: $(go_encoding_gob_files)
2793         $(BUILDDEPS)
2794 encoding/gob.lo: $(go_encoding_gob_files)
2795         $(BUILDPACKAGE)
2796 encoding/gob/check: $(CHECK_DEPS)
2797         @$(CHECK)
2798 .PHONY: encoding/gob/check
2800 @go_include@ encoding/hex.lo.dep
2801 encoding/hex.lo.dep: $(go_encoding_hex_files)
2802         $(BUILDDEPS)
2803 encoding/hex.lo: $(go_encoding_hex_files)
2804         $(BUILDPACKAGE)
2805 encoding/hex/check: $(CHECK_DEPS)
2806         @$(CHECK)
2807 .PHONY: encoding/hex/check
2809 @go_include@ encoding/json.lo.dep
2810 encoding/json.lo.dep: $(go_encoding_json_files)
2811         $(BUILDDEPS)
2812 encoding/json.lo: $(go_encoding_json_files)
2813         $(BUILDPACKAGE)
2814 encoding/json/check: $(CHECK_DEPS)
2815         @$(CHECK)
2816 .PHONY: encoding/json/check
2818 @go_include@ encoding/pem.lo.dep
2819 encoding/pem.lo.dep: $(go_encoding_pem_files)
2820         $(BUILDDEPS)
2821 encoding/pem.lo: $(go_encoding_pem_files)
2822         $(BUILDPACKAGE)
2823 encoding/pem/check: $(CHECK_DEPS)
2824         @$(CHECK)
2825 .PHONY: encoding/pem/check
2827 @go_include@ encoding/xml.lo.dep
2828 encoding/xml.lo.dep: $(go_encoding_xml_files)
2829         $(BUILDDEPS)
2830 encoding/xml.lo: $(go_encoding_xml_files)
2831         $(BUILDPACKAGE)
2832 encoding/xml/check: $(CHECK_DEPS)
2833         @$(CHECK)
2834 .PHONY: encoding/xml/check
2836 @go_include@ exp/proxy.lo.dep
2837 exp/proxy.lo.dep: $(go_exp_proxy_files)
2838         $(BUILDDEPS)
2839 exp/proxy.lo: $(go_exp_proxy_files)
2840         $(BUILDPACKAGE)
2841 exp/proxy/check: $(CHECK_DEPS)
2842         @$(CHECK)
2843 .PHONY: exp/proxy/check
2845 @go_include@ exp/terminal.lo.dep
2846 exp/terminal.lo.dep: $(go_exp_terminal_files)
2847         $(BUILDDEPS)
2848 exp/terminal.lo: $(go_exp_terminal_files)
2849         $(BUILDPACKAGE)
2850 exp/terminal/check: $(CHECK_DEPS)
2851         @$(CHECK)
2852 .PHONY: exp/terminal/check
2854 @go_include@ html/template.lo.dep
2855 html/template.lo.dep: $(go_html_template_files)
2856         $(BUILDDEPS)
2857 html/template.lo: $(go_html_template_files)
2858         $(BUILDPACKAGE)
2859 html/template/check: $(CHECK_DEPS)
2860         @$(CHECK)
2861 .PHONY: html/template/check
2863 @go_include@ go/ast.lo.dep
2864 go/ast.lo.dep: $(go_go_ast_files)
2865         $(BUILDDEPS)
2866 go/ast.lo: $(go_go_ast_files)
2867         $(BUILDPACKAGE)
2868 go/ast/check: $(CHECK_DEPS)
2869         @$(CHECK)
2870 .PHONY: go/ast/check
2872 @go_include@ go/build.lo.dep
2873 go/build.lo.dep: $(go_go_build_files)
2874         $(BUILDDEPS)
2875 go/build.lo: $(go_go_build_files)
2876         $(BUILDPACKAGE)
2877 go/build/check: $(CHECK_DEPS)
2878         @$(CHECK)
2879 .PHONY: go/build/check
2881 @go_include@ go/doc.lo.dep
2882 go/doc.lo.dep: $(go_go_doc_files)
2883         $(BUILDDEPS)
2884 go/doc.lo: $(go_go_doc_files)
2885         $(BUILDPACKAGE)
2886 go/doc/check: $(CHECK_DEPS)
2887         @$(CHECK)
2888 .PHONY: go/doc/check
2890 @go_include@ go/format.lo.dep
2891 go/format.lo.dep: $(go_go_format_files)
2892         $(BUILDDEPS)
2893 go/format.lo: $(go_go_format_files)
2894         $(BUILDPACKAGE)
2895 go/format/check: $(CHECK_DEPS)
2896         @$(CHECK)
2897 .PHONY: go/format/check
2899 @go_include@ go/parser.lo.dep
2900 go/parser.lo.dep: $(go_go_parser_files)
2901         $(BUILDDEPS)
2902 go/parser.lo: $(go_go_parser_files)
2903         $(BUILDPACKAGE)
2904 go/parser/check: $(CHECK_DEPS)
2905         @$(CHECK)
2906 .PHONY: go/parser/check
2908 @go_include@ go/printer.lo.dep
2909 go/printer.lo.dep: $(go_go_printer_files)
2910         $(BUILDDEPS)
2911 go/printer.lo: $(go_go_printer_files)
2912         $(BUILDPACKAGE)
2913 go/printer/check: $(CHECK_DEPS)
2914         @$(CHECK)
2915 .PHONY: go/printer/check
2917 @go_include@ go/scanner.lo.dep
2918 go/scanner.lo.dep: $(go_go_scanner_files)
2919         $(BUILDDEPS)
2920 go/scanner.lo: $(go_go_scanner_files)
2921         $(BUILDPACKAGE)
2922 go/scanner/check: $(CHECK_DEPS)
2923         @$(CHECK)
2924 .PHONY: go/scanner/check
2926 @go_include@ go/token.lo.dep
2927 go/token.lo.dep: $(go_go_token_files)
2928         $(BUILDDEPS)
2929 go/token.lo: $(go_go_token_files)
2930         $(BUILDPACKAGE)
2931 go/token/check: $(CHECK_DEPS)
2932         @$(CHECK)
2933 .PHONY: go/token/check
2935 @go_include@ hash/adler32.lo.dep
2936 hash/adler32.lo.dep: $(go_hash_adler32_files)
2937         $(BUILDDEPS)
2938 hash/adler32.lo: $(go_hash_adler32_files)
2939         $(BUILDPACKAGE)
2940 hash/adler32/check: $(CHECK_DEPS)
2941         @$(CHECK)
2942 .PHONY: hash/adler32/check
2944 @go_include@ hash/crc32.lo.dep
2945 hash/crc32.lo.dep: $(go_hash_crc32_files)
2946         $(BUILDDEPS)
2947 hash/crc32.lo: $(go_hash_crc32_files)
2948         $(BUILDPACKAGE)
2949 hash/crc32/check: $(CHECK_DEPS)
2950         @$(CHECK)
2951 .PHONY: hash/crc32/check
2953 @go_include@ hash/crc64.lo.dep
2954 hash/crc64.lo.dep: $(go_hash_crc64_files)
2955         $(BUILDDEPS)
2956 hash/crc64.lo: $(go_hash_crc64_files)
2957         $(BUILDPACKAGE)
2958 hash/crc64/check: $(CHECK_DEPS)
2959         @$(CHECK)
2960 .PHONY: hash/crc64/check
2962 @go_include@ hash/fnv.lo.dep
2963 hash/fnv.lo.dep: $(go_hash_fnv_files)
2964         $(BUILDDEPS)
2965 hash/fnv.lo: $(go_hash_fnv_files)
2966         $(BUILDPACKAGE)
2967 hash/fnv/check: $(CHECK_DEPS)
2968         @$(CHECK)
2969 .PHONY: hash/fnv/check
2971 @go_include@ image/color.lo.dep
2972 image/color.lo.dep: $(go_image_color_files)
2973         $(BUILDDEPS)
2974 image/color.lo: $(go_image_color_files)
2975         $(BUILDPACKAGE)
2976 image/color/check: $(CHECK_DEPS)
2977         @$(CHECK)
2978 .PHONY: image/color/check
2980 @go_include@ image/color/palette.lo.dep
2981 image/color/palette.lo.dep: $(go_image_color_palette_files)
2982         $(BUILDDEPS)
2983 image/color/palette.lo: $(go_image_color_palette_files)
2984         $(BUILDPACKAGE)
2985 image/color/palette/check: $(CHECK_DEPS)
2986         @$(CHECK)
2987 .PHONY: image/color/palette/check
2989 @go_include@ image/draw.lo.dep
2990 image/draw.lo.dep: $(go_image_draw_files)
2991         $(BUILDDEPS)
2992 image/draw.lo: $(go_image_draw_files)
2993         $(BUILDPACKAGE)
2994 image/draw/check: $(CHECK_DEPS)
2995         @$(CHECK)
2996 .PHONY: image/draw/check
2998 @go_include@ image/gif.lo.dep
2999 image/gif.lo.dep: $(go_image_gif_files)
3000         $(BUILDDEPS)
3001 image/gif.lo: $(go_image_gif_files)
3002         $(BUILDPACKAGE)
3003 image/gif/check: $(CHECK_DEPS)
3004         @$(CHECK)
3005 .PHONY: image/gif/check
3007 @go_include@ image/jpeg.lo.dep
3008 image/jpeg.lo.dep: $(go_image_jpeg_files)
3009         $(BUILDDEPS)
3010 image/jpeg.lo: $(go_image_jpeg_files)
3011         $(BUILDPACKAGE)
3012 image/jpeg/check: $(CHECK_DEPS)
3013         @$(CHECK)
3014 .PHONY: image/jpeg/check
3016 @go_include@ image/png.lo.dep
3017 image/png.lo.dep: $(go_image_png_files)
3018         $(BUILDDEPS)
3019 image/png.lo: $(go_image_png_files)
3020         $(BUILDPACKAGE)
3021 image/png/check: $(CHECK_DEPS)
3022         @$(CHECK)
3023 .PHONY: image/png/check
3025 @go_include@ index/suffixarray.lo.dep
3026 index/suffixarray.lo.dep: $(go_index_suffixarray_files)
3027         $(BUILDDEPS)
3028 index/suffixarray.lo: $(go_index_suffixarray_files)
3029         $(BUILDPACKAGE)
3030 index/suffixarray/check: $(CHECK_DEPS)
3031         @$(CHECK)
3032 .PHONY: index/suffixarray/check
3034 @go_include@ io/ioutil.lo.dep
3035 io/ioutil.lo.dep: $(go_io_ioutil_files)
3036         $(BUILDDEPS)
3037 io/ioutil.lo: $(go_io_ioutil_files)
3038         $(BUILDPACKAGE)
3039 io/ioutil/check: $(CHECK_DEPS)
3040         @$(CHECK)
3041 .PHONY: io/ioutil/check
3043 @go_include@ log/syslog.lo.dep
3044 log/syslog.lo.dep: $(go_log_syslog_files)
3045         $(BUILDDEPS)
3046 log/syslog.lo: $(go_log_syslog_files)
3047         $(BUILDPACKAGE)
3048 log/syslog/syslog_c.lo: $(go_syslog_c_files) log/syslog.lo
3049         @$(MKDIR_P) log/syslog
3050         $(LTCOMPILE) -c -o $@ $(srcdir)/go/log/syslog/syslog_c.c
3051 log/syslog/check: $(CHECK_DEPS)
3052         @$(CHECK)
3053 .PHONY: log/syslog/check
3055 @go_include@ math/big.lo.dep
3056 math/big.lo.dep: $(go_math_big_files)
3057         $(BUILDDEPS)
3058 math/big.lo: $(go_math_big_files)
3059         $(BUILDPACKAGE)
3060 math/big/check: $(CHECK_DEPS)
3061         @$(CHECK)
3062 .PHONY: math/big/check
3064 @go_include@ math/cmplx.lo.dep
3065 math/cmplx.lo.dep: $(go_math_cmplx_files)
3066         $(BUILDDEPS)
3067 math/cmplx.lo: $(go_math_cmplx_files)
3068         $(BUILDPACKAGE)
3069 math/cmplx/check: $(CHECK_DEPS)
3070         @$(CHECK)
3071 .PHONY: math/cmplx/check
3073 @go_include@ math/rand.lo.dep
3074 math/rand.lo.dep: $(go_math_rand_files)
3075         $(BUILDDEPS)
3076 math/rand.lo: $(go_math_rand_files)
3077         $(BUILDPACKAGE)
3078 math/rand/check: $(CHECK_DEPS)
3079         @$(CHECK)
3080 .PHONY: math/rand/check
3082 @go_include@ mime/multipart.lo.dep
3083 mime/multipart.lo.dep: $(go_mime_multipart_files)
3084         $(BUILDDEPS)
3085 mime/multipart.lo: $(go_mime_multipart_files)
3086         $(BUILDPACKAGE)
3087 mime/multipart/check: $(CHECK_DEPS)
3088         @$(CHECK)
3089 .PHONY: mime/multipart/check
3091 @go_include@ net/http.lo.dep
3092 net/http.lo.dep: $(go_net_http_files)
3093         $(BUILDDEPS)
3094 net/http.lo: $(go_net_http_files)
3095         $(BUILDPACKAGE)
3096 net/http/check: $(CHECK_DEPS)
3097         @$(CHECK)
3098 .PHONY: net/http/check
3100 @go_include@ net/mail.lo.dep
3101 net/mail.lo.dep: $(go_net_mail_files)
3102         $(BUILDDEPS)
3103 net/mail.lo: $(go_net_mail_files)
3104         $(BUILDPACKAGE)
3105 net/mail/check: $(CHECK_DEPS)
3106         @$(CHECK)
3107 .PHONY: net/mail/check
3109 @go_include@ net/rpc.lo.dep
3110 net/rpc.lo.dep: $(go_net_rpc_files)
3111         $(BUILDDEPS)
3112 net/rpc.lo: $(go_net_rpc_files)
3113         $(BUILDPACKAGE)
3114 net/rpc/check: $(CHECK_DEPS)
3115         @$(CHECK)
3116 .PHONY: net/rpc/check
3118 @go_include@ net/smtp.lo.dep
3119 net/smtp.lo.dep: $(go_net_smtp_files)
3120         $(BUILDDEPS)
3121 net/smtp.lo: $(go_net_smtp_files)
3122         $(BUILDPACKAGE)
3123 net/smtp/check: $(CHECK_DEPS)
3124         @$(CHECK)
3125 .PHONY: net/smtp/check
3127 @go_include@ net/url.lo.dep
3128 net/url.lo.dep: $(go_net_url_files)
3129         $(BUILDDEPS)
3130 net/url.lo: $(go_net_url_files)
3131         $(BUILDPACKAGE)
3132 net/url/check: $(CHECK_DEPS)
3133         @$(CHECK)
3134 .PHONY: net/url/check
3136 @go_include@ net/textproto.lo.dep
3137 net/textproto.lo.dep: $(go_net_textproto_files)
3138         $(BUILDDEPS)
3139 net/textproto.lo: $(go_net_textproto_files)
3140         $(BUILDPACKAGE)
3141 net/textproto/check: $(CHECK_DEPS)
3142         @$(CHECK)
3143 .PHONY: net/textproto/check
3145 @go_include@ net/http/cgi.lo.dep
3146 net/http/cgi.lo.dep: $(go_net_http_cgi_files)
3147         $(BUILDDEPS)
3148 net/http/cgi.lo: $(go_net_http_cgi_files)
3149         $(BUILDPACKAGE)
3150 net/http/cgi/check: $(CHECK_DEPS)
3151         @$(CHECK)
3152 .PHONY: net/http/cgi/check
3154 @go_include@ net/http/cookiejar.lo.dep
3155 net/http/cookiejar.lo.dep: $(go_net_http_cookiejar_files)
3156         $(BUILDDEPS)
3157 net/http/cookiejar.lo: $(go_net_http_cookiejar_files)
3158         $(BUILDPACKAGE)
3159 net/http/cookiejar/check: $(CHECK_DEPS)
3160         @$(CHECK)
3161 .PHONY: net/http/cookiejar/check
3163 @go_include@ net/http/fcgi.lo.dep
3164 net/http/fcgi.lo.dep: $(go_net_http_fcgi_files)
3165         $(BUILDDEPS)
3166 net/http/fcgi.lo: $(go_net_http_fcgi_files)
3167         $(BUILDPACKAGE)
3168 net/http/fcgi/check: $(CHECK_DEPS)
3169         @$(CHECK)
3170 .PHONY: net/http/fcgi/check
3172 @go_include@ net/http/httptest.lo.dep
3173 net/http/httptest.lo.dep: $(go_net_http_httptest_files)
3174         $(BUILDDEPS)
3175 net/http/httptest.lo: $(go_net_http_httptest_files)
3176         $(BUILDPACKAGE)
3177 net/http/httptest/check: $(check_deps)
3178         @$(CHECK)
3179 .PHONY: net/http/httptest/check
3181 @go_include@ net/http/httputil.lo.dep
3182 net/http/httputil.lo.dep: $(go_net_http_httputil_files)
3183         $(BUILDDEPS)
3184 net/http/httputil.lo: $(go_net_http_httputil_files)
3185         $(BUILDPACKAGE)
3186 net/http/httputil/check: $(check_deps)
3187         @$(CHECK)
3188 .PHONY: net/http/httputil/check
3190 @go_include@ net/http/internal.lo.dep
3191 net/http/internal.lo.dep: $(go_net_http_internal_files)
3192         $(BUILDDEPS)
3193 net/http/internal.lo: $(go_net_http_internal_files)
3194         $(BUILDPACKAGE)
3195 net/http/internal/check: $(CHECK_DEPS)
3196         @$(CHECK)
3197 .PHONY: net/http/internal/check
3199 @go_include@ net/http/pprof.lo.dep
3200 net/http/pprof.lo.dep: $(go_net_http_pprof_files)
3201         $(BUILDDEPS)
3202 net/http/pprof.lo: $(go_net_http_pprof_files)
3203         $(BUILDPACKAGE)
3204 net/http/pprof/check: $(CHECK_DEPS)
3205         @$(CHECK)
3206 .PHONY: net/http/pprof/check
3208 @go_include@ net/rpc/jsonrpc.lo.dep
3209 net/rpc/jsonrpc.lo.dep: $(go_net_rpc_jsonrpc_files)
3210         $(BUILDDEPS)
3211 net/rpc/jsonrpc.lo: $(go_net_rpc_jsonrpc_files)
3212         $(BUILDPACKAGE)
3213 net/rpc/jsonrpc/check: $(CHECK_DEPS)
3214         @$(CHECK)
3215 .PHONY: net/rpc/jsonrpc/check
3217 @go_include@ old/regexp.lo.dep
3218 old/regexp.lo.dep: $(go_old_regexp_files)
3219         $(BUILDDEPS)
3220 old/regexp.lo: $(go_old_regexp_files)
3221         $(BUILDPACKAGE)
3222 old/regexp/check: $(CHECK_DEPS)
3223         @$(CHECK)
3224 .PHONY: old/regexp/check
3226 @go_include@ old/template.lo.dep
3227 old/template.lo.dep: $(go_old_template_files)
3228         $(BUILDDEPS)
3229 old/template.lo: $(go_old_template_files)
3230         $(BUILDPACKAGE)
3231 old/template/check: $(CHECK_DEPS)
3232         @$(CHECK)
3233 .PHONY: old/template/check
3235 @go_include@ os/exec.lo.dep
3236 os/exec.lo.dep: $(go_os_exec_files)
3237         $(BUILDDEPS)
3238 os/exec.lo: $(go_os_exec_files)
3239         $(BUILDPACKAGE)
3240 os/exec/check: $(CHECK_DEPS)
3241         @$(CHECK)
3242 .PHONY: os/exec/check
3244 @go_include@ os/signal.lo.dep
3245 os/signal.lo.dep: $(go_os_signal_files)
3246         $(BUILDDEPS)
3247 os/signal.lo: $(go_os_signal_files)
3248         $(BUILDPACKAGE)
3249 os/signal/check: $(CHECK_DEPS)
3250         @$(CHECK)
3251 .PHONY: os/signal/check
3253 @go_include@ os/user.lo.dep
3254 os/user.lo.dep: $(go_os_user_files)
3255         $(BUILDDEPS)
3256 os/user.lo: $(go_os_user_files)
3257         $(BUILDPACKAGE)
3258 os/user/check: $(CHECK_DEPS)
3259         @$(CHECK)
3260 .PHONY: os/user/check
3262 @go_include@ path/filepath.lo.dep
3263 path/filepath.lo.dep: $(go_path_filepath_files)
3264         $(BUILDDEPS)
3265 path/filepath.lo: $(go_path_filepath_files)
3266         $(BUILDPACKAGE)
3267 path/filepath/check: $(CHECK_DEPS)
3268         @$(CHECK)
3269 .PHONY: path/filepath/check
3271 @go_include@ regexp/syntax.lo.dep
3272 regexp/syntax.lo.dep: $(go_regexp_syntax_files)
3273         $(BUILDDEPS)
3274 regexp/syntax.lo: $(go_regexp_syntax_files)
3275         $(BUILDPACKAGE)
3276 regexp/syntax/check: $(CHECK_DEPS)
3277         @$(CHECK)
3278 .PHONY: regexp/syntax/check
3280 @go_include@ runtime/debug.lo.dep
3281 runtime/debug.lo.dep: $(go_runtime_debug_files)
3282         $(BUILDDEPS)
3283 runtime/debug.lo: $(go_runtime_debug_files)
3284         $(BUILDPACKAGE)
3285 runtime/debug/check: $(CHECK_DEPS)
3286         @$(CHECK)
3287 .PHONY: runtime/debug/check
3289 @go_include@ runtime/pprof.lo.dep
3290 runtime/pprof.lo.dep: $(go_runtime_pprof_files)
3291         $(BUILDDEPS)
3292 runtime/pprof.lo: $(go_runtime_pprof_files)
3293         $(BUILDPACKAGE)
3294 runtime/pprof/check: $(CHECK_DEPS)
3295         @$(CHECK)
3296 .PHONY: runtime/pprof/check
3297 # At least for now, we need -static-libgo for this test, because
3298 # otherwise we can't get the line numbers.
3299 # Also use -fno-inline to get better results from the memory profiler.
3300 runtime_pprof_check_GOCFLAGS = -static-libgo -fno-inline
3302 @go_include@ sync/atomic.lo.dep
3303 sync/atomic.lo.dep: $(go_sync_atomic_files)
3304         $(BUILDDEPS)
3305 sync/atomic.lo: $(go_sync_atomic_files)
3306         $(BUILDPACKAGE)
3307 sync/atomic_c.lo: $(go_sync_atomic_c_files) sync/atomic.lo
3308         $(LTCOMPILE) -c -o $@ $(srcdir)/go/sync/atomic/atomic.c
3309 sync/atomic/check: $(CHECK_DEPS)
3310         @$(CHECK)
3311 .PHONY: sync/atomic/check
3313 @go_include@ text/scanner.lo.dep
3314 text/scanner.lo.dep: $(go_text_scanner_files)
3315         $(BUILDDEPS)
3316 text/scanner.lo: $(go_text_scanner_files)
3317         $(BUILDPACKAGE)
3318 text/scanner/check: $(CHECK_DEPS)
3319         @$(CHECK)
3320 .PHONY: text/scanner/check
3322 @go_include@ text/tabwriter.lo.dep
3323 text/tabwriter.lo.dep: $(go_text_tabwriter_files)
3324         $(BUILDDEPS)
3325 text/tabwriter.lo: $(go_text_tabwriter_files)
3326         $(BUILDPACKAGE)
3327 text/tabwriter/check: $(CHECK_DEPS)
3328         @$(CHECK)
3329 .PHONY: text/tabwriter/check
3331 @go_include@ text/template.lo.dep
3332 text/template.lo.dep: $(go_text_template_files)
3333         $(BUILDDEPS)
3334 text/template.lo: $(go_text_template_files)
3335         $(BUILDPACKAGE)
3336 text/template/check: $(CHECK_DEPS)
3337         @$(CHECK)
3338 .PHONY: text/template/check
3340 @go_include@ text/template/parse.lo.dep
3341 text/template/parse.lo.dep: $(go_text_template_parse_files)
3342         $(BUILDDEPS)
3343 text/template/parse.lo: $(go_text_template_parse_files)
3344         $(BUILDPACKAGE)
3345 text/template/parse/check: $(CHECK_DEPS)
3346         @$(CHECK)
3347 .PHONY: text/template/parse/check
3349 @go_include@ testing/iotest.lo.dep
3350 testing/iotest.lo.dep: $(go_testing_iotest_files)
3351         $(BUILDDEPS)
3352 testing/iotest.lo: $(go_testing_iotest_files)
3353         $(BUILDPACKAGE)
3354 testing/iotest/check: $(CHECK_DEPS)
3355         @$(CHECK)
3356 .PHONY: testing/iotest/check
3358 @go_include@ testing/quick.lo.dep
3359 testing/quick.lo.dep: $(go_testing_quick_files)
3360         $(BUILDDEPS)
3361 testing/quick.lo: $(go_testing_quick_files)
3362         $(BUILDPACKAGE)
3363 testing/quick/check: $(CHECK_DEPS)
3364         @$(CHECK)
3365 .PHONY: testing/quick/check
3367 @go_include@ unicode/utf16.lo.dep
3368 unicode/utf16.lo.dep: $(go_unicode_utf16_files)
3369         $(BUILDDEPS)
3370 unicode/utf16.lo: $(go_unicode_utf16_files)
3371         $(BUILDPACKAGE)
3372 unicode/utf16/check: $(CHECK_DEPS)
3373         @$(CHECK)
3374 .PHONY: unicode/utf16/check
3376 @go_include@ unicode/utf8.lo.dep
3377 unicode/utf8.lo.dep: $(go_unicode_utf8_files)
3378         $(BUILDDEPS)
3379 unicode/utf8.lo: $(go_unicode_utf8_files)
3380         $(BUILDPACKAGE)
3381 unicode/utf8/check: $(CHECK_DEPS)
3382         @$(CHECK)
3383 .PHONY: unicode/utf8/check
3385 @go_include@ syscall.lo.dep
3386 syscall.lo.dep: $(go_syscall_files)
3387         $(BUILDDEPS)
3388 syscall.lo: $(go_syscall_files)
3389         $(BUILDPACKAGE)
3390 syscall/errno.lo: go/syscall/errno.c
3391         @$(MKDIR_P) syscall
3392         $(LTCOMPILE) -c -o $@ $<
3393 syscall/signame.lo: go/syscall/signame.c
3394         @$(MKDIR_P) syscall
3395         $(LTCOMPILE) -c -o $@ $<
3396 syscall/wait.lo: go/syscall/wait.c
3397         @$(MKDIR_P) syscall
3398         $(LTCOMPILE) -c -o $@ $<
3399 syscall/check: $(CHECK_DEPS)
3400         @$(CHECK)
3401 .PHONY: syscall/check
3403 @go_include@ internal/syscall.lo.dep
3404 internal/syscall.lo.dep: $(go_internal_syscall_files)
3405         $(BUILDDEPS)
3406 internal/syscall.lo: $(go_internal_syscall_files)
3407         $(BUILDPACKAGE)
3408 internal/syscall/check: $(CHECK_DEPS)
3409         @$(CHECK)
3410 .PHONY: internal/syscall/check
3412 # How to build a .gox file from a .lo file.
3413 BUILDGOX = \
3414         f=`echo $< | sed -e 's/.lo$$/.o/'`; \
3415         $(OBJCOPY) -j .go_export $$f $@.tmp && mv -f $@.tmp $@
3417 bufio.gox: bufio.lo
3418         $(BUILDGOX)
3419 bytes.gox: bytes.lo
3420         $(BUILDGOX)
3421 crypto.gox: crypto.lo
3422         $(BUILDGOX)
3423 encoding.gox: encoding.lo
3424         $(BUILDGOX)
3425 errors.gox: errors.lo
3426         $(BUILDGOX)
3427 expvar.gox: expvar.lo
3428         $(BUILDGOX)
3429 flag.gox: flag.lo
3430         $(BUILDGOX)
3431 fmt.gox: fmt.lo
3432         $(BUILDGOX)
3433 hash.gox: hash.lo
3434         $(BUILDGOX)
3435 html.gox: html.lo
3436         $(BUILDGOX)
3437 image.gox: image.lo
3438         $(BUILDGOX)
3439 io.gox: io.lo
3440         $(BUILDGOX)
3441 log.gox: log.lo
3442         $(BUILDGOX)
3443 math.gox: math.lo
3444         $(BUILDGOX)
3445 mime.gox: mime.lo
3446         $(BUILDGOX)
3447 net.gox: net.lo
3448         $(BUILDGOX)
3449 os.gox: os.lo
3450         $(BUILDGOX)
3451 path.gox: path.lo
3452         $(BUILDGOX)
3453 reflect.gox: reflect-go.lo
3454         $(BUILDGOX)
3455 regexp.gox: regexp.lo
3456         $(BUILDGOX)
3457 runtime.gox: runtime-go.lo
3458         $(BUILDGOX)
3459 sort.gox: sort.lo
3460         $(BUILDGOX)
3461 strconv.gox: strconv.lo
3462         $(BUILDGOX)
3463 strings.gox: strings.lo
3464         $(BUILDGOX)
3465 sync.gox: sync.lo
3466         $(BUILDGOX)
3467 syscall.gox: syscall.lo
3468         $(BUILDGOX)
3469 testing.gox: testing.lo
3470         $(BUILDGOX)
3471 time.gox: time-go.lo
3472         $(BUILDGOX)
3473 unicode.gox: unicode.lo
3474         $(BUILDGOX)
3476 archive/tar.gox: archive/tar.lo
3477         $(BUILDGOX)
3478 archive/zip.gox: archive/zip.lo
3479         $(BUILDGOX)
3481 compress/bzip2.gox: compress/bzip2.lo
3482         $(BUILDGOX)
3483 compress/flate.gox: compress/flate.lo
3484         $(BUILDGOX)
3485 compress/gzip.gox: compress/gzip.lo
3486         $(BUILDGOX)
3487 compress/lzw.gox: compress/lzw.lo
3488         $(BUILDGOX)
3489 compress/zlib.gox: compress/zlib.lo
3490         $(BUILDGOX)
3492 container/heap.gox: container/heap.lo
3493         $(BUILDGOX)
3494 container/list.gox: container/list.lo
3495         $(BUILDGOX)
3496 container/ring.gox: container/ring.lo
3497         $(BUILDGOX)
3499 crypto/aes.gox: crypto/aes.lo
3500         $(BUILDGOX)
3501 crypto/cipher.gox: crypto/cipher.lo
3502         $(BUILDGOX)
3503 crypto/des.gox: crypto/des.lo
3504         $(BUILDGOX)
3505 crypto/dsa.gox: crypto/dsa.lo
3506         $(BUILDGOX)
3507 crypto/ecdsa.gox: crypto/ecdsa.lo       
3508         $(BUILDGOX)
3509 crypto/elliptic.gox: crypto/elliptic.lo
3510         $(BUILDGOX)
3511 crypto/hmac.gox: crypto/hmac.lo
3512         $(BUILDGOX)
3513 crypto/md5.gox: crypto/md5.lo
3514         $(BUILDGOX)
3515 crypto/rand.gox: crypto/rand.lo
3516         $(BUILDGOX)
3517 crypto/rc4.gox: crypto/rc4.lo
3518         $(BUILDGOX)
3519 crypto/rsa.gox: crypto/rsa.lo
3520         $(BUILDGOX)
3521 crypto/sha1.gox: crypto/sha1.lo
3522         $(BUILDGOX)
3523 crypto/sha256.gox: crypto/sha256.lo
3524         $(BUILDGOX)
3525 crypto/sha512.gox: crypto/sha512.lo
3526         $(BUILDGOX)
3527 crypto/subtle.gox: crypto/subtle.lo
3528         $(BUILDGOX)
3529 crypto/tls.gox: crypto/tls.lo
3530         $(BUILDGOX)
3531 crypto/x509.gox: crypto/x509.lo
3532         $(BUILDGOX)
3534 crypto/x509/pkix.gox: crypto/x509/pkix.lo
3535         $(BUILDGOX)
3537 database/sql.gox: database/sql.lo
3538         $(BUILDGOX)
3540 database/sql/driver.gox: database/sql/driver.lo
3541         $(BUILDGOX)
3543 debug/dwarf.gox: debug/dwarf.lo
3544         $(BUILDGOX)
3545 debug/elf.gox: debug/elf.lo
3546         $(BUILDGOX)
3547 debug/gosym.gox: debug/gosym.lo
3548         $(BUILDGOX)
3549 debug/macho.gox: debug/macho.lo
3550         $(BUILDGOX)
3551 debug/pe.gox: debug/pe.lo
3552         $(BUILDGOX)
3553 debug/plan9obj.gox: debug/plan9obj.lo
3554         $(BUILDGOX)
3556 encoding/ascii85.gox: encoding/ascii85.lo
3557         $(BUILDGOX)
3558 encoding/asn1.gox: encoding/asn1.lo
3559         $(BUILDGOX)
3560 encoding/base32.gox: encoding/base32.lo
3561         $(BUILDGOX)
3562 encoding/base64.gox: encoding/base64.lo
3563         $(BUILDGOX)
3564 encoding/binary.gox: encoding/binary.lo
3565         $(BUILDGOX)
3566 encoding/csv.gox: encoding/csv.lo
3567         $(BUILDGOX)
3568 encoding/gob.gox: encoding/gob.lo
3569         $(BUILDGOX)
3570 encoding/hex.gox: encoding/hex.lo
3571         $(BUILDGOX)
3572 encoding/json.gox: encoding/json.lo
3573         $(BUILDGOX)
3574 encoding/pem.gox: encoding/pem.lo
3575         $(BUILDGOX)
3576 encoding/xml.gox: encoding/xml.lo
3577         $(BUILDGOX)
3579 exp/proxy.gox: exp/proxy.lo
3580         $(BUILDGOX)
3581 exp/terminal.gox: exp/terminal.lo
3582         $(BUILDGOX)
3584 html/template.gox: html/template.lo
3585         $(BUILDGOX)
3587 go/ast.gox: go/ast.lo
3588         $(BUILDGOX)
3589 go/build.gox: go/build.lo
3590         $(BUILDGOX)
3591 go/doc.gox: go/doc.lo
3592         $(BUILDGOX)
3593 go/format.gox: go/format.lo
3594         $(BUILDGOX)
3595 go/parser.gox: go/parser.lo
3596         $(BUILDGOX)
3597 go/printer.gox: go/printer.lo
3598         $(BUILDGOX)
3599 go/scanner.gox: go/scanner.lo
3600         $(BUILDGOX)
3601 go/token.gox: go/token.lo
3602         $(BUILDGOX)
3604 hash/adler32.gox: hash/adler32.lo
3605         $(BUILDGOX)
3606 hash/crc32.gox: hash/crc32.lo
3607         $(BUILDGOX)
3608 hash/crc64.gox: hash/crc64.lo
3609         $(BUILDGOX)
3610 hash/fnv.gox: hash/fnv.lo
3611         $(BUILDGOX)
3613 image/color.gox: image/color.lo
3614         $(BUILDGOX)
3615 image/draw.gox: image/draw.lo
3616         $(BUILDGOX)
3617 image/gif.gox: image/gif.lo
3618         $(BUILDGOX)
3619 image/jpeg.gox: image/jpeg.lo
3620         $(BUILDGOX)
3621 image/png.gox: image/png.lo
3622         $(BUILDGOX)
3624 image/color/palette.gox: image/color/palette.lo
3625         $(BUILDGOX)
3627 index/suffixarray.gox: index/suffixarray.lo
3628         $(BUILDGOX)
3630 io/ioutil.gox: io/ioutil.lo
3631         $(BUILDGOX)
3633 log/syslog.gox: log/syslog.lo
3634         $(BUILDGOX)
3636 math/big.gox: math/big.lo
3637         $(BUILDGOX)
3638 math/cmplx.gox: math/cmplx.lo
3639         $(BUILDGOX)
3640 math/rand.gox: math/rand.lo
3641         $(BUILDGOX)
3643 mime/multipart.gox: mime/multipart.lo
3644         $(BUILDGOX)
3646 net/http.gox: net/http.lo
3647         $(BUILDGOX)
3648 net/mail.gox: net/mail.lo
3649         $(BUILDGOX)
3650 net/rpc.gox: net/rpc.lo
3651         $(BUILDGOX)
3652 net/smtp.gox: net/smtp.lo
3653         $(BUILDGOX)
3654 net/textproto.gox: net/textproto.lo
3655         $(BUILDGOX)
3656 net/url.gox: net/url.lo
3657         $(BUILDGOX)
3659 net/http/cgi.gox: net/http/cgi.lo
3660         $(BUILDGOX)
3661 net/http/cookiejar.gox: net/http/cookiejar.lo
3662         $(BUILDGOX)
3663 net/http/fcgi.gox: net/http/fcgi.lo
3664         $(BUILDGOX)
3665 net/http/httptest.gox: net/http/httptest.lo
3666         $(BUILDGOX)
3667 net/http/httputil.gox: net/http/httputil.lo
3668         $(BUILDGOX)
3669 net/http/pprof.gox: net/http/pprof.lo
3670         $(BUILDGOX)
3672 net/http/internal.gox: net/http/internal.lo
3673         $(BUILDGOX)
3675 net/rpc/jsonrpc.gox: net/rpc/jsonrpc.lo
3676         $(BUILDGOX)
3678 old/regexp.gox: old/regexp.lo
3679         $(BUILDGOX)
3680 old/template.gox: old/template.lo
3681         $(BUILDGOX)
3683 os/exec.gox: os/exec.lo
3684         $(BUILDGOX)
3685 os/signal.gox: os/signal.lo
3686         $(BUILDGOX)
3687 os/user.gox: os/user.lo
3688         $(BUILDGOX)
3690 path/filepath.gox: path/filepath.lo
3691         $(BUILDGOX)
3693 regexp/syntax.gox: regexp/syntax.lo
3694         $(BUILDGOX)
3696 runtime/debug.gox: runtime/debug.lo
3697         $(BUILDGOX)
3698 runtime/pprof.gox: runtime/pprof.lo
3699         $(BUILDGOX)
3701 sync/atomic.gox: sync/atomic.lo
3702         $(BUILDGOX)
3704 internal/syscall.gox: internal/syscall.lo
3705         $(BUILDGOX)
3707 text/scanner.gox: text/scanner.lo
3708         $(BUILDGOX)
3709 text/tabwriter.gox: text/tabwriter.lo
3710         $(BUILDGOX)
3711 text/template.gox: text/template.lo
3712         $(BUILDGOX)
3713 text/template/parse.gox: text/template/parse.lo
3714         $(BUILDGOX)
3716 testing/iotest.gox: testing/iotest.lo
3717         $(BUILDGOX)
3718 testing/quick.gox: testing/quick.lo
3719         $(BUILDGOX)
3721 unicode/utf16.gox: unicode/utf16.lo
3722         $(BUILDGOX)
3723 unicode/utf8.gox: unicode/utf8.lo
3724         $(BUILDGOX)
3726 TEST_PACKAGES = \
3727         bufio/check \
3728         bytes/check \
3729         errors/check \
3730         expvar/check \
3731         flag/check \
3732         fmt/check \
3733         html/check \
3734         image/check \
3735         io/check \
3736         log/check \
3737         math/check \
3738         mime/check \
3739         net/check \
3740         os/check \
3741         path/check \
3742         reflect/check \
3743         regexp/check \
3744         runtime/check \
3745         sort/check \
3746         strconv/check \
3747         strings/check \
3748         sync/check \
3749         syscall/check \
3750         time/check \
3751         unicode/check \
3752         archive/tar/check \
3753         archive/zip/check \
3754         compress/bzip2/check \
3755         compress/flate/check \
3756         compress/gzip/check \
3757         compress/lzw/check \
3758         compress/zlib/check \
3759         container/heap/check \
3760         container/list/check \
3761         container/ring/check \
3762         crypto/aes/check \
3763         crypto/cipher/check \
3764         crypto/des/check \
3765         crypto/dsa/check \
3766         crypto/ecdsa/check \
3767         crypto/elliptic/check \
3768         crypto/hmac/check \
3769         crypto/md5/check \
3770         crypto/rand/check \
3771         crypto/rc4/check \
3772         crypto/rsa/check \
3773         crypto/sha1/check \
3774         crypto/sha256/check \
3775         crypto/sha512/check \
3776         crypto/subtle/check \
3777         crypto/tls/check \
3778         crypto/x509/check \
3779         database/sql/check \
3780         database/sql/driver/check \
3781         debug/dwarf/check \
3782         debug/elf/check \
3783         debug/macho/check \
3784         debug/pe/check \
3785         debug/plan9obj/check \
3786         encoding/ascii85/check \
3787         encoding/asn1/check \
3788         encoding/base32/check \
3789         encoding/base64/check \
3790         encoding/binary/check \
3791         encoding/csv/check \
3792         encoding/gob/check \
3793         encoding/hex/check \
3794         encoding/json/check \
3795         encoding/pem/check \
3796         encoding/xml/check \
3797         exp/proxy/check \
3798         exp/terminal/check \
3799         html/template/check \
3800         go/ast/check \
3801         $(go_build_check_omitted_since_it_calls_6g) \
3802         go/doc/check \
3803         go/format/check \
3804         go/parser/check \
3805         go/printer/check \
3806         go/scanner/check \
3807         go/token/check \
3808         hash/adler32/check \
3809         hash/crc32/check \
3810         hash/crc64/check \
3811         hash/fnv/check \
3812         image/color/check \
3813         image/draw/check \
3814         image/jpeg/check \
3815         image/png/check \
3816         index/suffixarray/check \
3817         io/ioutil/check \
3818         log/syslog/check \
3819         math/big/check \
3820         math/cmplx/check \
3821         math/rand/check \
3822         mime/multipart/check \
3823         net/http/check \
3824         net/http/cgi/check \
3825         net/http/cookiejar/check \
3826         net/http/fcgi/check \
3827         net/http/httptest/check \
3828         net/http/httputil/check \
3829         net/http/internal/check \
3830         net/mail/check \
3831         net/rpc/check \
3832         net/smtp/check \
3833         net/textproto/check \
3834         net/url/check \
3835         net/rpc/jsonrpc/check \
3836         old/regexp/check \
3837         old/template/check \
3838         os/exec/check \
3839         os/signal/check \
3840         os/user/check \
3841         path/filepath/check \
3842         regexp/syntax/check \
3843         runtime/pprof/check \
3844         sync/atomic/check \
3845         text/scanner/check \
3846         text/tabwriter/check \
3847         text/template/check \
3848         text/template/parse/check \
3849         testing/quick/check \
3850         unicode/utf16/check \
3851         unicode/utf8/check
3853 check: check-tail
3854 check-recursive: check-head
3856 check-head:
3857         @echo "Test Run By $${USER} on `date`" > libgo.head
3858         @echo "Native configuration is $(host_triplet)" >> libgo.head
3859         @echo >> libgo.head
3860         @echo "         === libgo tests ===" >> libgo.head
3861         @echo >> libgo.head
3863 check-tail: check-recursive check-multi
3864         @if test "$(USE_DEJAGNU)" = "yes"; then \
3865           exit 0; \
3866         fi; \
3867         lib=`${PWD_COMMAND} | sed -e 's,^.*/\([^/][^/]*\)$$,\1,'`; \
3868         for dir in . $(MULTIDIRS); do \
3869           mv ../$${dir}/$${lib}/libgo.sum ../$${dir}/$${lib}/libgo.sum.sep; \
3870           mv ../$${dir}/$${lib}/libgo.log ../$${dir}/$${lib}/libgo.log.sep; \
3871         done; \
3872         mv libgo.head libgo.sum; \
3873         cp libgo.sum libgo.log; \
3874         echo "Schedule of variations:" >> libgo.sum; \
3875         for dir in . $(MULTIDIRS); do \
3876           multidir=../$${dir}/$${lib}; \
3877           multivar=`cat $${multidir}/libgo.var`; \
3878           echo "    $${multivar}" >> libgo.sum; \
3879         done; \
3880         echo >> libgo.sum; \
3881         pass=0; fail=0; untested=0; \
3882         for dir in . $(MULTIDIRS); do \
3883           multidir=../$${dir}/$${lib}; \
3884           multivar=`cat $${multidir}/libgo.var`; \
3885           echo "Running target $${multivar}" >> libgo.sum; \
3886           echo "Running $(srcdir)/libgo.exp ..." >> libgo.sum; \
3887           cat $${multidir}/libgo.sum.sep >> libgo.sum; \
3888           cat $${multidir}/libgo.log.sep >> libgo.log; \
3889           if test -n "${MULTIDIRS}"; then \
3890             echo "              === libgo Summary for $${multivar} ===" >> libgo.sum; \
3891             echo >> libgo.sum; \
3892           fi; \
3893           p=`grep -c PASS $${multidir}/libgo.sum.sep`; \
3894           pass=`expr $$pass + $$p`; \
3895           if test "$$p" -ne "0" && test -n "${MULTIDIRS}"; then \
3896             echo "# of expected passes          $$p" >> libgo.sum; \
3897           fi; \
3898           p=`grep -c FAIL $${multidir}/libgo.sum.sep`; \
3899           fail=`expr $$fail + $$p`; \
3900           if test "$$p" -ne "0" && test -n "${MULTIDIRS}"; then \
3901             echo "# of unexpected failures      $$p" >> libgo.sum; \
3902           fi; \
3903           p=`grep -c UNTESTED $${multidir}/libgo.sum.sep`; \
3904           untested=`expr $$untested + $$p`; \
3905           if test "$$p" -ne "0" && test -n "${MULTIDIRS}"; then \
3906             echo "# of untested testcases               $$p" >> libgo.sum; \
3907           fi; \
3908         done; \
3909         echo >> libgo.sum; \
3910         echo "          === libgo Summary ===" >> libgo.sum; \
3911         echo >> libgo.sum; \
3912         if test "$$pass" -ne "0"; then \
3913           echo "# of expected passes            $$pass" >> libgo.sum; \
3914         fi; \
3915         if test "$$fail" -ne "0"; then \
3916           echo "# of unexpected failures        $$fail" >> libgo.sum; \
3917         fi; \
3918         if test "$$untested" -ne "0"; then \
3919           echo "# of untested testcases         $$untested" >> libgo.sum; \
3920         fi; \
3921         echo `echo $(GOC) | sed -e 's/ .*//'`  `$(GOC) -v 2>&1 | grep " version" | sed -n -e 's/.* \(version.*$$\)/\1/p'` >> libgo.sum; \
3922         echo >> libgo.log; \
3923         echo "runtest completed at `date`" >> libgo.log; \
3924         if test "$$fail" -ne "0"; then \
3925           status=1; \
3926         else \
3927           status=0; \
3928         fi; \
3929         exit $$status
3931 check-am:
3932         @rm -f libgo.sum libgo.log libgo.tail
3933         @multivar="unix"; \
3934         [ -z "$(MULTIFLAGS)" ] || multivar="$${multivar}/$(MULTIFLAGS)"; \
3935         echo "$${multivar}" > libgo.var
3936         @for f in $(TEST_PACKAGES); do \
3937            rm -f $$f-testsum $$f-testlog; \
3938          done
3939         -@$(MAKE) -k $(TEST_PACKAGES)
3940         @for f in $(TEST_PACKAGES); do \
3941           if test -f $$f-testsum; then \
3942             cat $$f-testsum >> libgo.sum; \
3943           fi; \
3944           if test -f $$f-testlog; then \
3945             cat $$f-testlog >> libgo.log; \
3946           fi; \
3947         done
3949 check-multi:
3950         $(MULTIDO) $(AM_MAKEFLAGS) DO=check-am multi-do # $(MAKE)
3952 bench:
3953         -@$(MAKE) -k $(TEST_PACKAGES) GOBENCH=.
3955 MOSTLYCLEAN_FILES = libgo.head libgo.sum.sep libgo.log.sep
3957 mostlyclean-local:
3958         find . -name '*.lo' -print | xargs $(LIBTOOL) --mode=clean rm -f
3959         find . -name '*.$(OBJEXT)' -print | xargs rm -f
3960         find . -name '*-testsum' -print | xargs rm -f
3961         find . -name '*-testlog' -print | xargs rm -f
3963 CLEANFILES = *.go *.gox goc2c *.c s-version libgo.sum libgo.log
3965 clean-local:
3966         find . -name '*.la' -print | xargs $(LIBTOOL) --mode=clean rm -f
3967         find . -name '*.a' -print | xargs rm -f